为什么 要这样说:人生苦短,我用 Python - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
silianbo
V2EX    程序员

为什么 要这样说:人生苦短,我用 Python

  •  
  •   silianbo 2015-06-18 17:00:37 +08:00 20156 次点击
    这是一个创建于 3816 天前的主题,其中的信息可能已经有所发展或发生改变。
    95 条回复    2015-07-23 01:57:21 +08:00
    yahoo21cn
        1
    yahoo21cn  
       2015-06-18 17:01:50 +08:00
    开发效率高
    moliliang
        2
    moliliang  
       2015-06-18 17:02:07 +08:00
    其实我觉得ruby的开发效率也很高~
    POP
        3
    POP  
       2015-06-18 17:02:20 +08:00
    俩字,好用
    ericzhan
        4
    ericzhan  
       2015-06-18 17:06:16 +08:00
    我觉得golang的开发效率也很高
    aszxqw
        5
    aszxqw  
       2015-06-18 17:07:47 +08:00
    @ericzhan 强类型和弱类型的语言还是有差别的。
    BOYPT
        6
    BOYPT  
       2015-06-18 17:14:01 +08:00   2
    这是python社区普遍认同的哲学信仰,具体“碑文”在任意python运行环境运行import this可显示。

    也许存在比Python更加爽的语言,更有效率的语言,这并不影响这个哲学的流行。
    blacktulip
        7
    blacktulip  
       2015-06-18 17:16:14 +08:00   1
    这句话是 2002, 2003 年的时候说的,那时候主流开发语言都比较繁琐,开发效率低,所以有这说法。现在脚本语言和各种类库已经非常普及,这句话的适用性已经很小了。
    ivenvd
        8
    ivenvd  
       2015-06-18 17:25:29 +08:00
    这两句话拆开来看,你就理解了。
    yakczh
        9
    yakczh  
       2015-06-18 17:29:57 +08:00
    import React from 'react';


    class Hello extends React.Component {
    render() {
    return <div>Hello {this.props.name}</div>;
    }
    }

    export default Hello;

    Javascript才是王道
    hhkbp2
        10
    hhkbp2  
       2015-06-18 17:34:13 +08:00
    因为用了Python之后人生就变长了
    robertlyc
        11
    robertlyc  
       2015-06-18 17:37:21 +08:00   8
    因为 他们没学过ruby
    tini20
        12
    tini20  
       2015-06-18 17:37:26 +08:00
    节省的时间:
    1、写的时候节省
    2、读代码、维护的时候节省(python的杀手锏)
    silianbo
        13
    silianbo  
    OP
       2015-06-18 17:39:45 +08:00
    @hhkbp2 不太明白!
    wasabia
        14
    wasabia  
       2015-06-18 17:39:50 +08:00
    lilydjwg
        15
    lilydjwg  
       2015-06-18 17:44:28 +08:00   1
    @aszxqw 这里有人提到了某个弱类型语言吗?

    Python 是动态类型的语言,程序不跑起来你没法准确地推知指定名字的数据类型。Go 是静态类型的语言,变量的类型在写代码时已经确定了。
    aszxqw
        16
    aszxqw  
       2015-06-18 17:53:34 +08:00
    @lilydjwg 我说的弱类型语言就是指动态类型语言
    realityone
        17
    realityone  
       2015-06-18 17:57:35 +08:00
    @aszxqw 弱类型和动态类型是不一样的吧……
    tonyluj
        18
    tonyluj  
       2015-06-18 18:01:54 +08:00
    @aszxqw C/C++是弱类型静态类型语言
    wizardoz
        19
    wizardoz  
       2015-06-18 18:10:02 +08:00
    @ivenvd 我虽然不同意你吐槽的内容,但是被你吐槽的技巧深深折服了
    MForever78
        20
    MForever78  
       2015-06-18 18:11:58 +08:00
    为了压韵,他们什么都说得出来。
    paw
        21
    paw  
       2015-06-18 18:12:26 +08:00
    好用,公司其他组提供的API是C++的,我宁可写个cpp文件编译成动态链接库,然后在python加载这个so用,也不愿意直接写C++
    AndersQ
        22
    AndersQ  
       2015-06-18 18:21:28 +08:00
    这是一种编程哲学与生活态度的统一。
    Python的特点之一就是简单易用,能够数行代码解决问题,干嘛要加入一大堆琐碎无用的东西?
    人生苦短,难道不该用最简单的办法解决问题节省时间吗?
    开发效率低就是在浪费生命,所以你需要用Python!
    caoyue
        23
    caoyue  
       2015-06-18 18:26:51 +08:00
    你知道什么叫安利嘛~
    kslr
        24
    kslr  
       2015-06-18 18:52:50 +08:00
    代码写出来赏心悦目,被自己陶醉。
    silianbo
        25
    silianbo  
    OP
       2015-06-18 18:53:28 +08:00
    @kslr 贴一段 你的艺术品呗!
    kslr
        26
    kslr  
       2015-06-18 18:57:59 +08:00
    @silianbo 这里不是指代码牛逼,是指语法和风格,刚开始被空格虐的死去活来,后来就觉得棒棒哒。
    junnplus
        27
    junnplus  
       2015-06-18 19:01:16 +08:00
    两个字,任性
    hbkdsm
        28
    hbkdsm  
       2015-06-18 19:07:12 +08:00
    because it's true
    ajianrelease
        29
    ajianrelease  
       2015-06-18 19:24:28 +08:00
    学了Python你就知道为什么了,上手易,编程快,不像C++那样有那么多复杂的语法。效率(时间)就是生命
    chrishine
        30
    chrishine  
       2015-06-18 19:26:09 +08:00
    还有 Death is coming, Let's go
    leavic
        31
    leavic  
       2015-06-18 19:26:46 +08:00
    上手快,什么都有人帮你做好了,不用重复发明轮子。
    ZHenJ
        32
    ZHenJ  
       2015-06-18 20:03:58 +08:00
    和 PHP是宇宙最好的语言 同理
    yxzblue
        33
    yxzblue  
       2015-06-18 20:28:24 +08:00
    其实我学得php开发起了挺快的
    yxzblue
        34
    yxzblue  
       2015-06-18 20:29:21 +08:00
    @chrishine go dead
    tony1016
        35
    tony1016  
       2015-06-18 20:40:41 +08:00
    和java比一比在控制台输出个hello world就明白了
    jun4rui
        36
    jun4rui  
       2015-06-18 21:12:40 +08:00 via Android
    @moliliang ruby面窄了。。。
    jun4rui
        37
    jun4rui  
       2015-06-18 21:14:46 +08:00 via Android
    @yahoo21cn 不是开发效率高,是做事情直截了当,Java是绕啊绕的,一个简单的事情你要绕一圈。

    Python的直接让你的思维都直观一些,效率高是思维精简后带来的成果。
    chaucerling
        38
    chaucerling  
       2015-06-18 21:16:13 +08:00
    python最像锤子
    lilydjwg
        39
    lilydjwg  
       2015-06-18 21:18:33 +08:00
    @aszxqw 如果你看到某美国人谈论汉语和英语的巨大差别,但仔细一看,其实他谈论的是日语和英语。你不觉得坑爹吗?欺骗感情吗?混乱不堪吗?
    lilydjwg
        40
    lilydjwg  
       2015-06-18 21:22:09 +08:00
    @aszxqw 静态类型语言的类型系统没办法特别弱,因为太弱就分辨不了了。但是动态类型的语言的类型可以很强,虽然 Python,尤其是 Python 2 的类型系统并不是太强。通常认为 C 已经是强类型语言了,Python 更不用说也是。

    这两种划分类型的方法虽然不完全正交,但是静态强类型、动态强类型、动态弱类型这三种是毫无疑问存在的。
    hbkdsm
        41
    hbkdsm  
       2015-06-18 21:31:23 +08:00
    @chaucerling 不是像瑞士军刀吗?
    darrenxyli
        42
    darrenxyli  
       2015-06-18 21:38:06 +08:00
    一个粉转路路转黑的人来吐槽两句,确实如@jun4rui 所说,python的优势就在于弱类型动态,让程序员心思负担轻了,只需要关心业务逻辑,思维直观。但是不谈应用场景说语言就是耍流氓,大型应用使用Python就是个巨大的坑,一来动态语言不编译起来根本不知道哪出错,试想一下面对几十万行代码发布前期改bug的场景,虽然JAVA是我最不喜欢的语言,但是几十年工业界打磨出来的IDE预编译检测和本身的静态特性,发布过程不是痛苦的。再来就是“人生苦短,我用Python”这句话后面还要加一句话
    darrenxyli
        43
    darrenxyli  
       2015-06-18 21:40:55 +08:00   2
    接上条,再加一句,“Python一时爽,重构火葬场”,我就不解释了,这才是真zhi巨坑。[冲动脸]。个人觉得Python让程序员该有的专业思维变懒惰了,当然Python也有很好的适用场景,胶水胶水胶水和做项目原型。
    silianbo
        44
    silianbo  
    OP
       2015-06-18 21:42:30 +08:00
    @darrenxyli 哈哈,大哥,看来 你这是被python伤痛了心
    issues
        45
    issues &nsp;
       2015-06-18 21:50:57 +08:00
    我安利golang
    elgoog1970
        46
    elgoog1970  
       2015-06-18 21:56:05 +08:00
    效率高,效率又低
    darrenxyli
        47
    darrenxyli  
       2015-06-18 22:06:26 +08:00
    @silianbo Twitter上面有个人说了一句话“Python能进工业界就是奇葩”,简直不能同意得更多,它不进工业界我们还能愉快的玩耍。
    jusonalien
        48
    jusonalien  
       2015-06-18 22:30:38 +08:00
    我用Python 人生苦短
    Lucups
        49
    Lucups  
       2015-06-18 22:33:47 +08:00
    也可以这么说:

    人生苦短,我选Golang
    人生苦短,快拍(P)黄(H)片(P)
    人生苦短,来杯Coffee(Script)
    ...
    mulog
        50
    mulog  
       2015-06-18 23:10:16 +08:00
    @darrenxyli
    连 Javascript 和 PHP 都。。。。(逃
    chaucerling
        51
    chaucerling  
       2015-06-19 00:16:02 +08:00
    @mulog 他都说了大型应用,Javascript 和 php 都偏 web 快速开发
    publicID321
        52
    publicID321  
       2015-06-19 00:51:56 +08:00
    Axurez
        53
    Axurez  
       2015-06-19 01:41:14 +08:00
    这是好多好多好多好多好多年前的话吧。。最近新出的语言都是强类型了
    http://www.zhihu.com/question/31100089
    laoyuan
        54
    laoyuan  
       2015-06-19 06:57:32 +08:00
    人生苦短,我用 Python、PHP、Ruby
    Imyssed
        55
    Imyssed  
       2015-06-19 07:29:12 +08:00 via Android
    @chrishine http://jimmykuu.sinaapp.com 你说起来我就想到这个哈哈
    vietor
        56
    vietor  
       2015-06-19 08:22:15 +08:00 via Android
    是当初合伙出书的那批人想出的口号。可爱的Python。垃圾的小圈子,早散伙了。
    ryanking8215
        57
    ryanking8215  
       2015-06-19 08:36:42 +08:00   1
    发现大伙对动态语言和静态语言,强类型和弱类型都没搞清楚啊...
    python是动态语言,强类型
    js是动态语言,弱类型

    至于静态语言,一般都是强类型的,否则就失去编译时类型检测的优势了
    Tiande
        58
    Tiande  
    PRO
       2015-06-19 08:53:46 +08:00
    @ryanking8215 谢谢安利
    thirtiseven
        59
    thirtiseven  
       2015-06-19 09:03:25 +08:00
    人生苦短,我来给perl站个队。。。
    fork3rt
        60
    fork3rt   div class="badges">   2015-06-19 09:34:57 +08:00
    刚好今天穿了这件T恤
    Tink
        61
    Tink  
    PRO
       2015-06-19 09:37:07 +08:00
    时间就是生命啊
    est
        62
    est  
       2015-06-19 09:41:31 +08:00
    说python不能做大型系统的,写你们代码的团队几个人组成?其中有没有人有大型系统开发经验?重构了几次?单元测试覆盖率有多少?code review有进行么?
    fortunezhang
        63
    fortunezhang  
       2015-06-19 09:46:00 +08:00
    @yakczh 我到不喜欢在class里面拼html,总感觉怪怪的。
    geeklian
        64
    geeklian  
       2015-06-19 09:58:09 +08:00 via iPhone
    这话放十年前没任何问题吧。
    那时候有人用ruby?有人用go lang?
    robertlyc
        65
    robertlyc  
       2015-06-19 10:02:13 +08:00
    @geeklian 10年前的twitter就是ruby写的 7年前的github现在依然是ruby写的
    geeklian
        66
    geeklian  
       2015-06-19 10:11:54 +08:00 via iPhone
    @robertlyc 那就再往前算5年吧……
    robertlyc
        67
    robertlyc  
       2015-06-19 10:12:57 +08:00
    @geeklian python先解决版本号 再来吹
    geeklian
        68
    geeklian  
       2015-06-19 10:17:27 +08:00 via iPhone
    @robertlyc 吹啥吹,就事论事,楼主这句话写在import this时,有人用ruby么?go lang诞生了么?有python3么?

    为啥ruby,go lang这些后来以致现在会流行,还不是因为都是一致的哲学理念。
    robertlyc
        69
    robertlyc  
       2015-06-19 10:32:11 +08:00
    @geeklian 哈哈哈哈 是是是 作为一个鼓吹"有且仅有一个最优解"的语言 搞出两个分裂的版本 真是先进的哲♂学理念
    superxzr
        70
    superxzr  
       2015-06-19 10:34:00 +08:00
    Python的开发效率高吧
    zonghua
        71
    zonghua  
       2015-06-19 11:38:10 +08:00
    @publicID321 有mono C#,C# .NET更快把。另外你们不是经常诋毁微软的都是拖控件吗?一行代码都不用写。人生苦短,我用C#。
    yetone
        72
    yetone  
       2015-06-19 11:58:04 +08:00
    楼主你好,反正我用 Python 从没加过班。我那个开发 Java 的大学同学天天是加班狗,端午放个假都高兴半天 = =
    wezzard
        73
    wezzard  
       2015-06-19 12:17:09 +08:00
    Life is short, learn PHP.
    mathgl
        74
    mathgl  
       2015-06-19 12:25:28 +08:00
    @est 现在基本放弃推荐使用Python了,如果大家有相近爱好,坐下来聊聊,没有就算了。懒得浪费时间,多说无益。

    自己用得好就是了。
    Feiox
        75
    Feiox  
       2015-06-19 12:45:04 +08:00
    @tini20 写和读都是那么的舒畅,简单明了,甚至可以直接读出来,I like it ~ 倒时不太喜欢 Ruby 的一袋子语法糖,太甜了 :P ~ (BTW :Python 中可恶的 lambda 函数限制,伤了伤了)

    @darrenxyli 这样说一切弱类型的语言都是玩具。但,paypal 具他们自己用的说,很多核心模块是用 node 写的,更不要说 GitHub 之类的基本不用 java 的巨型站点了。个人是觉得 java 是外包(比如银行、证券类似的可慢不可错,或者几百人的“培训班”开发团队)最终归宿,动态语言是互联网的最好落脚点。如果要看吐槽,你搜一下 ruby js 这些语言的吐槽,大多也如此。BTW ~ JVM 的运行效率我是服气的很哈 :P
    qaulau
        76
    qaulau  
       2015-06-19 12:58:10 +08:00
    简洁易用,节省时间,类库和包很多(可以避免自己重复制造轮子),总的来说就是省时、效率高
    asassas
        77
    asassas  
       2015-06-19 13:08:18 +08:00
    本来就事论事讨论python语言特性之类的主题又成了语言战争。
    而且又是赞ruby贬python。
    ruby确实优美,rails也确实魔法。
    但是国内的大型UGC网站已经有douban,zhihu,guokr等用python实现的了,
    rubyer们先别拿github嘲讽python了,加油啊。
    shuson
        78
    shuson  
       2015-06-19 13:16:32 +08:00
    人生苦短,我去泡妞了
    Axurez
        79
    Axurez  
       2015-06-19 13:25:10 +08:00
    @ryanking8215 可是C是弱类型的
    celon
        80
    celon  
       2015-06-19 14:01:01 +08:00
    如果真的觉得人生苦短,这方面ruby比python好太多
    tabris17
        81
    tabris17  
       2015-06-19 14:06:28 +08:00
    因为用了python你会觉得人生很漫长
    darrenxyli
        82
    darrenxyli  
       2015-06-19 14:16:21 +08:00
    @Feiox 不能说是玩具呀,Ruby没写过,NodeJS写了不少,NodeJS的坑就不说了反正社区也一直在想办法优化这个坑,嗯我主要表达一个观点“不谈场景就是耍流氓”,“人生苦短”的大字报也不是100%恰当的,各有优劣当然都有吐槽的地方,我对任何语言都没有偏见,lisp这种我都在写。互联网就是要快快快所以一来上动态肯定有优势,不过落脚点我持保留意见,普遍思路都是见坑填坑,拿其他优势(换语言,重构或者堆设备)填,例如G家200X年的爬虫是拿Python重写的,后来似乎是改C++重写了?Dropbox拿Python搭的,后来想开发Python的VM来优化编译?Douban似乎很早很多模块都不用Python了?。JVM我也是服气的,全世界大大小小组织至少也是砸了亿级的成本进去优化。喜欢你讨论问题的语气,嘿嘿。个人觉得语言战真没意思啊,技能属性不同,打火系怪物要用水系魔法,打火系黑暗怪要用水系光明魔法,见招拆招千里取贞操,嗯~以上全是愚见,各位不服莫辩因为我肯定辩不赢你的~
    Feiox
        83
    Feiox  
       2015-06-19 14:49:15 +08:00
    @darrenxyli 哈哈,所以,对于牛X or 装B 用 Scheme(Racket) 写算法那是极好的,对于一大堆杂牌军并附带 2.5k 月薪的大学实习生来说,javavavava ~ 对于快快快快快上线的互联网,用 PyRuNo 那就是对了。但,对于 PHP (<7)的语法我真的无力吐槽。
    所以,人生苦短,我用Python 这句话的真正奥义,我觉得是把 Py3 (我一定要强调,是 py3k !)作为生活学习小秘书 ,而非严谨高效可**流水化生产**的工业语言。
    在《黑客与画家》中谈到过,你用 java 才写完一个包的时候人家都开始谈融资了。不过我认为,如果团队里有水平不高的开发者时,你用 java 写的都开始数钱了,他们 PyRuNo 还在 debug。
    P.S. 性能敏感的还是老老实实静态语言吧,但大多数产品都死在了没钱为继的晚上。
    jun4rui
        84
    jun4rui  
       2015-06-19 15:05:25 +08:00
    @celon 如果能在非Web开发方面和非*nix系统上能更给力就好了……
    ryanking8215
        85
    ryanking8215  
       2015-06-19 15:22:57 +08:00
    @Axurez 为什么是弱类型?你指C的隐式参数类型提升吗?
    gzxultra
        86
    gzxultra  
       2015-06-19 15:24:27 +08:00
    @AndersQ 刚开始学习Python,请教一下Python能开发桌面应用么,比如做一个类似QQ的即时通讯软件
    popu111
        87
    popu111  
       2015-06-19 15:26:25 +08:00
    @caoyue 知道啊,不就是你的组织么
    Axurez
        88
    Axurez  
       2015-06-19 17:59:44 +08:00
    levn
        89
    levn  
       2015-06-19 19:19:27 +08:00
    为了押韵
    FranHB
        90
    FrankHB  
       2015-06-19 20:22:46 +08:00
    @ryanking8215
    你至少搞错了两点。
    1.你楼上讨论的除了一个在黑python的的都是动态类型语言和静态类型语言,什么时候在说动态语言和静态语言了?两者完全不是一回事,前者是指类型检查发生的时机,后者是指是否在运行时允许改变程序自身的构造。(顺便,上面那个动态语言的说法没有问题。)
    2.强类型和弱类型这样的说法的意义早就乱了,各种鸡同鸭讲所以不能指望在不确定具体上下文时知道意思。非得要直接给一个定义来强行说清楚反而是有问题的。
    如果要说原意,强类型=要求类型检查,弱类型=不要求类型检查,就是“有”和“没有”的区别,不是现在许多人经常以为的只有相对含义却说不清界限的玩意儿。
    young
        91
    young  
       2015-06-19 22:09:21 +08:00
    好奇问一下, 人生苦短? 到底有多短?
    stranbird
        92
    stranbird  
       2015-06-20 10:49:30 +08:00
    Python:
    1.
    dict.viewkeys
    dict.setdefaults
    dict.popitem
    ...
    ...
    dict.has_key # <- wtf?

    2.
    Decimal("1024") is not JSON serializable. # <- wtf?

    3.
    string.upper
    string.strip
    ...
    ...
    len(string) # <- wtf?

    4.
    ascii, gbk, unicode, utf-8
    can't decode ascii character at position 1-2 ... # <- wtf?

    5.
    lambda 只能一行

    个人觉得当时说出这句口号就像是刘姥姥进大观园没见过世面,看到了新世界也无可厚非。但都进入二十一世纪这么多年了,还抱着这样的优越感就有点无语了。
    hitsmaxft
        93
    hitsmaxft  
       2015-06-20 19:31:32 +08:00
    几年前挺喜欢 python, 如果在3.x能有实质性的突破,也许就不是今天这个样子。在我主要关注的web这个领域里, python 已经没地位了。 系统编程方面还可以一用, 但是 go 摆在那里也不是吃素的。

    唉,看到这个话题好想说点什么, 但是却什么也说不出来。
    noli
        94
    noli  
       2015-07-23 01:52:12 +08:00
    @FrankHB
    strong typing weak typing 还是有一定的标准的,例如维基百科上的说法:

    In computer programming, programming languages are often colloquially referred to as strongly typed or weakly typed. These terms do not have a precise definition, but in general, a strongly typed language is more likely to generate an error or refuse to compile if the argument passed to a function does not closely match the expected type. On the other hand, a very weakly typed language may produce unpredictable results or may perform implicit type conversion.

    概括点来说就是是否 ill-behaved 作为标准:

    对于strong typing 来说,类型不符合预期不会导致 ill-behaved 是因为会报错(编译时或运行时都可以),程序无法继续运行。

    对于 weak typing 来说,类型不符合预期,会通过隐式类型转换或者忽略而继续执行,导致产生预期以外的结果进而影响程序产生 ill-behaved。

    区别在于行为是否在语言预期之中。
    silianbo
        95
    silianbo  
    OP
       2015-07-23 01:57:21 +08:00
    @noli 大半夜还不睡觉!怎么翻出这个主题了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2273 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 38ms UTC 00:50 PVG 08:50 LAX 16:50 JFK 19:50
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86