[{"data":1,"prerenderedAt":985},["ShallowReactive",2],{"i-lucide:menu":3,"i-lucide:arrow-up-right":8,"i-lucide:moon":10,"i-lucide:sun":12,"i-lucide:rss":14,"i-simple-icons:github":16,"i-simple-icons:linkedin":18,"post-\u002F2010\u002Fjava-awt-md5-applet-thingy":21,"surround-\u002F2010\u002Fjava-awt-md5-applet-thingy":56,"i-lucide:arrow-left":65,"i-lucide:arrow-right":67,"gist-2656982":69},{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":7},0,24,false,"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 5h16M4 12h16M4 19h16\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":9},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M7 7h10v10M7 17L17 7\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":11},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":13},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Ccircle cx=\"12\" cy=\"12\" r=\"4\"\u002F>\u003Cpath d=\"M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41\"\u002F>\u003C\u002Fg>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":15},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M4 11a9 9 0 0 1 9 9M4 4a16 16 0 0 1 16 16\"\u002F>\u003Ccircle cx=\"5\" cy=\"19\" r=\"1\"\u002F>\u003C\u002Fg>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":17},"\u003Cpath fill=\"currentColor\" d=\"M12 .297c-6.63 0-12 5.373-12 12c0 5.303 3.438 9.8 8.205 11.385c.6.113.82-.258.82-.577c0-.285-.01-1.04-.015-2.04c-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729c1.205.084 1.838 1.236 1.838 1.236c1.07 1.835 2.809 1.305 3.495.998c.108-.776.417-1.305.76-1.605c-2.665-.3-5.466-1.332-5.466-5.93c0-1.31.465-2.38 1.235-3.22c-.135-.303-.54-1.523.105-3.176c0 0 1.005-.322 3.3 1.23c.96-.267 1.98-.399 3-.405c1.02.006 2.04.138 3 .405c2.28-1.552 3.285-1.23 3.285-1.23c.645 1.653.24 2.873.12 3.176c.765.84 1.23 1.91 1.23 3.22c0 4.61-2.805 5.625-5.475 5.92c.42.36.81 1.096.81 2.22c0 1.606-.015 2.896-.015 3.286c0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":19,"hidden":20},"\u003Cpath fill=\"currentColor\" d=\"M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037c-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85c3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.06 2.06 0 0 1-2.063-2.065a2.064 2.064 0 1 1 2.063 2.065m1.782 13.019H3.555V9h3.564zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0z\"\u002F>",true,{"id":22,"title":23,"body":24,"category":39,"comments":40,"date":41,"description":30,"excerpt":40,"extension":42,"image":40,"meta":43,"navigation":20,"path":44,"readingTime":45,"seo":46,"stem":47,"subtitle":40,"tags":48,"wordCount":54,"__hash__":55},"posts\u002F2010\u002Fjava-awt-md5-applet-thingy.md","Java AWT MD5 applet-thingy",{"type":25,"value":26,"toc":35},"minimark",[27,31],[28,29,30],"p",{},"I made this little...thing as an exercise for my upcoming Java exam. It's a a graphical MD5 generator with a label, textbox and a button, using the AWT toolkit.",[32,33],"gist",{"id":34},"2656982",{"title":36,"searchDepth":37,"depth":37,"links":38},"",2,[],"Learning",null,"2010-11-19","md",{},"\u002F2010\u002Fjava-awt-md5-applet-thingy","less than 1 minute",{"title":23,"description":30},"2010\u002Fjava-awt-md5-applet-thingy",[49,50,51,52,53],"java","applet","awt","md5","programming",31,"jmJP7UjT3DvSZPj05Sa6ATy_5E17X5tTV4ERf-k4IV4",[57,61],{"title":58,"path":59,"stem":60,"children":-1},"thepledgeboard.com","\u002F2010\u002Fthepledgeboard-com","2010\u002Fthepledgeboard-com",{"title":62,"path":63,"stem":64,"children":-1},"Juhuslikud mõtted avaliku liikluse turvamisest","\u002F2010\u002Fjuhuslikud-motted-avaliku-liikluse-turvamisest","2010\u002Fjuhuslikud-motted-avaliku-liikluse-turvamisest",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":66},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m12 19l-7-7l7-7m7 7H5\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":68},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M5 12h14m-7-7l7 7l-7 7\"\u002F>",{"id":70,"title":71,"body":72,"createdAt":976,"description":36,"extension":42,"files":977,"gistId":34,"meta":978,"navigation":20,"owner":979,"path":980,"seo":981,"stem":982,"url":983,"__hash__":984},"gists\u002Fgists\u002F2656982.md","A graphical Java program that calculates the MD5 has of it's input.",{"type":25,"value":73,"toc":974},[74,970],[75,76,80],"pre",{"className":77,"code":78,"filename":79,"language":49,"meta":36,"style":36},"language-java shiki shiki-themes github-light github-dark","import java.awt.*;\nimport java.awt.event.*;\nimport java.security.*;\nimport java.math.*;\n\n\u002F**\n * A graphical Java program that calculates the MD5 has of it's input.\n * @author anroots\n *\n *\u002F\npublic class Hasher {\n\n    Frame window;\n    public static void main(String[] args) {\n    Hasher md5 = new Hasher();\n    }\n\n    \u002F**\n     * Build the GUI and display it's contents. Call a method when the button is pressed.\n     *\u002F\n    public Hasher() {\n    window = new Frame();\n    window.setSize(400,200);\n    window.setBackground(Color.pink);\n    window.setTitle(\"MD5 hash generator\");\n\n    Label intro = new Label(\"Enter some text to generate a MD5 hash.\");\n    intro.setForeground(Color.black);\n    TextField input = new TextField(10);\n    Button submit = new Button(\"Generate\");\n\n    submit.addActionListener(new ActionListener() {\n\n        public void actionPerformed(ActionEvent e)\n        {\n        String input = ((TextField)((Component)e.getSource()).\n            getParent().getComponent (1)).getText();\n        ((TextField)((Component)e.getSource()).\n            getParent().getComponent (1)).setText(hashThis(input));\n        }\n    });\n\n    window.setLayout(new GridLayout(3,2));\n    window.add(intro);\n    window.add(input);\n    window.add(submit);\n    window.setVisible(true);\n\n    }\n\n    \u002F**\n     * Calculates the MD5 hash\n     * @param plaintext Input string\n     * @return MD5 of plaintext\n     *\u002F\n    private static String hashThis(String plaintext) {\n    try {\n        \u002F\u002F MD5 calculation code from:\n        \u002F\u002Fhttp:\u002F\u002Fstackoverflow.com\u002Fquestions\u002F415953\u002Fgenerate-md5-hash-in-java\u002F421696#421696\n        MessageDigest m = MessageDigest.getInstance(\"MD5\");\n        m.reset();\n        m.update(plaintext.getBytes());\n        byte[] digest = m.digest();\n        BigInteger bigInt = new BigInteger(1,digest);\n        String hashtext = bigInt.toString(16);\n        \u002F\u002F Now we need to zero pad it if you actually want the full 32 chars.\n        while(hashtext.length() \u003C 32 ){\n        hashtext = \"0\"+hashtext;\n        }\n        return hashtext;\n    } catch (Exception e) {\n        return \"Computation error\";\n    }\n    }\n}\n","Hasher.java",[81,82,83,103,114,126,138,144,151,157,169,175,181,197,202,208,239,256,262,267,273,279,285,295,310,333,343,359,364,384,396,416,436,440,459,464,484,490,507,533,543,569,575,581,586,614,625,635,645,660,665,670,675,680,686,701,712,717,738,746,752,758,779,790,807,826,846,867,873,897,914,919,928,944,954,959,964],"code",{"__ignoreMap":36},[84,85,88,92,96,100],"span",{"class":86,"line":87},"line",1,[84,89,91],{"class":90},"szBVR","import",[84,93,95],{"class":94},"sVt8B"," java.awt.",[84,97,99],{"class":98},"sj4cs","*",[84,101,102],{"class":94},";\n",[84,104,105,107,110,112],{"class":86,"line":37},[84,106,91],{"class":90},[84,108,109],{"class":94}," java.awt.event.",[84,111,99],{"class":98},[84,113,102],{"class":94},[84,115,117,119,122,124],{"class":86,"line":116},3,[84,118,91],{"class":90},[84,120,121],{"class":94}," java.security.",[84,123,99],{"class":98},[84,125,102],{"class":94},[84,127,129,131,134,136],{"class":86,"line":128},4,[84,130,91],{"class":90},[84,132,133],{"class":94}," java.math.",[84,135,99],{"class":98},[84,137,102],{"class":94},[84,139,141],{"class":86,"line":140},5,[84,142,143],{"emptyLinePlaceholder":20},"\n",[84,145,147],{"class":86,"line":146},6,[84,148,150],{"class":149},"sJ8bj","\u002F**\n",[84,152,154],{"class":86,"line":153},7,[84,155,156],{"class":149}," * A graphical Java program that calculates the MD5 has of it's input.\n",[84,158,160,163,166],{"class":86,"line":159},8,[84,161,162],{"class":149}," * ",[84,164,165],{"class":90},"@author",[84,167,168],{"class":149}," anroots\n",[84,170,172],{"class":86,"line":171},9,[84,173,174],{"class":149}," *\n",[84,176,178],{"class":86,"line":177},10,[84,179,180],{"class":149}," *\u002F\n",[84,182,184,187,190,194],{"class":86,"line":183},11,[84,185,186],{"class":90},"public",[84,188,189],{"class":90}," class",[84,191,193],{"class":192},"sScJk"," Hasher",[84,195,196],{"class":94}," {\n",[84,198,200],{"class":86,"line":199},12,[84,201,143],{"emptyLinePlaceholder":20},[84,203,205],{"class":86,"line":204},13,[84,206,207],{"class":94},"    Frame window;\n",[84,209,211,214,217,220,223,226,229,232,236],{"class":86,"line":210},14,[84,212,213],{"class":90},"    public",[84,215,216],{"class":90}," static",[84,218,219],{"class":90}," void",[84,221,222],{"class":192}," main",[84,224,225],{"class":94},"(",[84,227,228],{"class":90},"String",[84,230,231],{"class":94},"[] ",[84,233,235],{"class":234},"s4XuR","args",[84,237,238],{"class":94},") {\n",[84,240,242,245,248,251,253],{"class":86,"line":241},15,[84,243,244],{"class":94},"    Hasher md5 ",[84,246,247],{"class":90},"=",[84,249,250],{"class":90}," new",[84,252,193],{"class":192},[84,254,255],{"class":94},"();\n",[84,257,259],{"class":86,"line":258},16,[84,260,261],{"class":94},"    }\n",[84,263,265],{"class":86,"line":264},17,[84,266,143],{"emptyLinePlaceholder":20},[84,268,270],{"class":86,"line":269},18,[84,271,272],{"class":149},"    \u002F**\n",[84,274,276],{"class":86,"line":275},19,[84,277,278],{"class":149},"     * Build the GUI and display it's contents. Call a method when the button is pressed.\n",[84,280,282],{"class":86,"line":281},20,[84,283,284],{"class":149},"     *\u002F\n",[84,286,288,290,292],{"class":86,"line":287},21,[84,289,213],{"class":90},[84,291,193],{"class":192},[84,293,294],{"class":94},"() {\n",[84,296,298,301,303,305,308],{"class":86,"line":297},22,[84,299,300],{"class":94},"    window ",[84,302,247],{"class":90},[84,304,250],{"class":90},[84,306,307],{"class":192}," Frame",[84,309,255],{"class":94},[84,311,313,316,319,321,324,327,330],{"class":86,"line":312},23,[84,314,315],{"class":94},"    window.",[84,317,318],{"class":192},"setSize",[84,320,225],{"class":94},[84,322,323],{"class":98},"400",[84,325,326],{"class":94},",",[84,328,329],{"class":98},"200",[84,331,332],{"class":94},");\n",[84,334,335,337,340],{"class":86,"line":5},[84,336,315],{"class":94},[84,338,339],{"class":192},"setBackground",[84,341,342],{"class":94},"(Color.pink);\n",[84,344,346,348,351,353,357],{"class":86,"line":345},25,[84,347,315],{"class":94},[84,349,350],{"class":192},"setTitle",[84,352,225],{"class":94},[84,354,356],{"class":355},"sZZnC","\"MD5 hash generator\"",[84,358,332],{"class":94},[84,360,362],{"class":86,"line":361},26,[84,363,143],{"emptyLinePlaceholder":20},[84,365,367,370,372,374,377,379,382],{"class":86,"line":366},27,[84,368,369],{"class":94},"    Label intro ",[84,371,247],{"class":90},[84,373,250],{"class":90},[84,375,376],{"class":192}," Label",[84,378,225],{"class":94},[84,380,381],{"class":355},"\"Enter some text to generate a MD5 hash.\"",[84,383,332],{"class":94},[84,385,387,390,393],{"class":86,"line":386},28,[84,388,389],{"class":94},"    intro.",[84,391,392],{"class":192},"setForeground",[84,394,395],{"class":94},"(Color.black);\n",[84,397,399,402,404,406,409,411,414],{"class":86,"line":398},29,[84,400,401],{"class":94},"    TextField input ",[84,403,247],{"class":90},[84,405,250],{"class":90},[84,407,408],{"class":192}," TextField",[84,410,225],{"class":94},[84,412,413],{"class":98},"10",[84,415,332],{"class":94},[84,417,419,422,424,426,429,431,434],{"class":86,"line":418},30,[84,420,421],{"class":94},"    Button submit ",[84,423,247],{"class":90},[84,425,250],{"class":90},[84,427,428],{"class":192}," Button",[84,430,225],{"class":94},[84,432,433],{"class":355},"\"Generate\"",[84,435,332],{"class":94},[84,437,438],{"class":86,"line":54},[84,439,143],{"emptyLinePlaceholder":20},[84,441,443,446,449,451,454,457],{"class":86,"line":442},32,[84,444,445],{"class":94},"    submit.",[84,447,448],{"class":192},"addActionListener",[84,450,225],{"class":94},[84,452,453],{"class":90},"new",[84,455,456],{"class":192}," ActionListener",[84,458,294],{"class":94},[84,460,462],{"class":86,"line":461},33,[84,463,143],{"emptyLinePlaceholder":20},[84,465,467,470,472,475,478,481],{"class":86,"line":466},34,[84,468,469],{"class":90},"        public",[84,471,219],{"class":90},[84,473,474],{"class":192}," actionPerformed",[84,476,477],{"class":94},"(ActionEvent ",[84,479,480],{"class":234},"e",[84,482,483],{"class":94},")\n",[84,485,487],{"class":86,"line":486},35,[84,488,489],{"class":94},"        {\n",[84,491,493,496,498,501,504],{"class":86,"line":492},36,[84,494,495],{"class":94},"        String input ",[84,497,247],{"class":90},[84,499,500],{"class":94}," ((TextField)((Component)e.",[84,502,503],{"class":192},"getSource",[84,505,506],{"class":94},"()).\n",[84,508,510,513,516,519,522,525,528,531],{"class":86,"line":509},37,[84,511,512],{"class":192},"            getParent",[84,514,515],{"class":94},"().",[84,517,518],{"class":192},"getComponent",[84,520,521],{"class":94}," (",[84,523,524],{"class":98},"1",[84,526,527],{"class":94},")).",[84,529,530],{"class":192},"getText",[84,532,255],{"class":94},[84,534,536,539,541],{"class":86,"line":535},38,[84,537,538],{"class":94},"        ((TextField)((Component)e.",[84,540,503],{"class":192},[84,542,506],{"class":94},[84,544,546,548,550,552,554,556,558,561,563,566],{"class":86,"line":545},39,[84,547,512],{"class":192},[84,549,515],{"class":94},[84,551,518],{"class":192},[84,553,521],{"class":94},[84,555,524],{"class":98},[84,557,527],{"class":94},[84,559,560],{"class":192},"setText",[84,562,225],{"class":94},[84,564,565],{"class":192},"hashThis",[84,567,568],{"class":94},"(input));\n",[84,570,572],{"class":86,"line":571},40,[84,573,574],{"class":94},"        }\n",[84,576,578],{"class":86,"line":577},41,[84,579,580],{"class":94},"    });\n",[84,582,584],{"class":86,"line":583},42,[84,585,143],{"emptyLinePlaceholder":20},[84,587,589,591,594,596,598,601,603,606,608,611],{"class":86,"line":588},43,[84,590,315],{"class":94},[84,592,593],{"class":192},"setLayout",[84,595,225],{"class":94},[84,597,453],{"class":90},[84,599,600],{"class":192}," GridLayout",[84,602,225],{"class":94},[84,604,605],{"class":98},"3",[84,607,326],{"class":94},[84,609,610],{"class":98},"2",[84,612,613],{"class":94},"));\n",[84,615,617,619,622],{"class":86,"line":616},44,[84,618,315],{"class":94},[84,620,621],{"class":192},"add",[84,623,624],{"class":94},"(intro);\n",[84,626,628,630,632],{"class":86,"line":627},45,[84,629,315],{"class":94},[84,631,621],{"class":192},[84,633,634],{"class":94},"(input);\n",[84,636,638,640,642],{"class":86,"line":637},46,[84,639,315],{"class":94},[84,641,621],{"class":192},[84,643,644],{"class":94},"(submit);\n",[84,646,648,650,653,655,658],{"class":86,"line":647},47,[84,649,315],{"class":94},[84,651,652],{"class":192},"setVisible",[84,654,225],{"class":94},[84,656,657],{"class":98},"true",[84,659,332],{"class":94},[84,661,663],{"class":86,"line":662},48,[84,664,143],{"emptyLinePlaceholder":20},[84,666,668],{"class":86,"line":667},49,[84,669,261],{"class":94},[84,671,673],{"class":86,"line":672},50,[84,674,143],{"emptyLinePlaceholder":20},[84,676,678],{"class":86,"line":677},51,[84,679,272],{"class":149},[84,681,683],{"class":86,"line":682},52,[84,684,685],{"class":149},"     * Calculates the MD5 hash\n",[84,687,689,692,695,698],{"class":86,"line":688},53,[84,690,691],{"class":149},"     * ",[84,693,694],{"class":90},"@param",[84,696,697],{"class":234}," plaintext",[84,699,700],{"class":149}," Input string\n",[84,702,704,706,709],{"class":86,"line":703},54,[84,705,691],{"class":149},[84,707,708],{"class":90},"@return",[84,710,711],{"class":149}," MD5 of plaintext\n",[84,713,715],{"class":86,"line":714},55,[84,716,284],{"class":149},[84,718,720,723,725,728,730,733,736],{"class":86,"line":719},56,[84,721,722],{"class":90},"    private",[84,724,216],{"class":90},[84,726,727],{"class":94}," String ",[84,729,565],{"class":192},[84,731,732],{"class":94},"(String ",[84,734,735],{"class":234},"plaintext",[84,737,238],{"class":94},[84,739,741,744],{"class":86,"line":740},57,[84,742,743],{"class":90},"    try",[84,745,196],{"class":94},[84,747,749],{"class":86,"line":748},58,[84,750,751],{"class":149},"        \u002F\u002F MD5 calculation code from:\n",[84,753,755],{"class":86,"line":754},59,[84,756,757],{"class":149},"        \u002F\u002Fhttp:\u002F\u002Fstackoverflow.com\u002Fquestions\u002F415953\u002Fgenerate-md5-hash-in-java\u002F421696#421696\n",[84,759,761,764,766,769,772,774,777],{"class":86,"line":760},60,[84,762,763],{"class":94},"        MessageDigest m ",[84,765,247],{"class":90},[84,767,768],{"class":94}," MessageDigest.",[84,770,771],{"class":192},"getInstance",[84,773,225],{"class":94},[84,775,776],{"class":355},"\"MD5\"",[84,778,332],{"class":94},[84,780,782,785,788],{"class":86,"line":781},61,[84,783,784],{"class":94},"        m.",[84,786,787],{"class":192},"reset",[84,789,255],{"class":94},[84,791,793,795,798,801,804],{"class":86,"line":792},62,[84,794,784],{"class":94},[84,796,797],{"class":192},"update",[84,799,800],{"class":94},"(plaintext.",[84,802,803],{"class":192},"getBytes",[84,805,806],{"class":94},"());\n",[84,808,810,813,816,818,821,824],{"class":86,"line":809},63,[84,811,812],{"class":90},"        byte",[84,814,815],{"class":94},"[] digest ",[84,817,247],{"class":90},[84,819,820],{"class":94}," m.",[84,822,823],{"class":192},"digest",[84,825,255],{"class":94},[84,827,829,832,834,836,839,841,843],{"class":86,"line":828},64,[84,830,831],{"class":94},"        BigInteger bigInt ",[84,833,247],{"class":90},[84,835,250],{"class":90},[84,837,838],{"class":192}," BigInteger",[84,840,225],{"class":94},[84,842,524],{"class":98},[84,844,845],{"class":94},",digest);\n",[84,847,849,852,854,857,860,862,865],{"class":86,"line":848},65,[84,850,851],{"class":94},"        String hashtext ",[84,853,247],{"class":90},[84,855,856],{"class":94}," bigInt.",[84,858,859],{"class":192},"toString",[84,861,225],{"class":94},[84,863,864],{"class":98},"16",[84,866,332],{"class":94},[84,868,870],{"class":86,"line":869},66,[84,871,872],{"class":149},"        \u002F\u002F Now we need to zero pad it if you actually want the full 32 chars.\n",[84,874,876,879,882,885,888,891,894],{"class":86,"line":875},67,[84,877,878],{"class":90},"        while",[84,880,881],{"class":94},"(hashtext.",[84,883,884],{"class":192},"length",[84,886,887],{"class":94},"() ",[84,889,890],{"class":90},"\u003C",[84,892,893],{"class":98}," 32",[84,895,896],{"class":94}," ){\n",[84,898,900,903,905,908,911],{"class":86,"line":899},68,[84,901,902],{"class":94},"        hashtext ",[84,904,247],{"class":90},[84,906,907],{"class":355}," \"0\"",[84,909,910],{"class":90},"+",[84,912,913],{"class":94},"hashtext;\n",[84,915,917],{"class":86,"line":916},69,[84,918,574],{"class":94},[84,920,922,925],{"class":86,"line":921},70,[84,923,924],{"class":90},"        return",[84,926,927],{"class":94}," hashtext;\n",[84,929,931,934,937,940,942],{"class":86,"line":930},71,[84,932,933],{"class":94},"    } ",[84,935,936],{"class":90},"catch",[84,938,939],{"class":94}," (Exception ",[84,941,480],{"class":234},[84,943,238],{"class":94},[84,945,947,949,952],{"class":86,"line":946},72,[84,948,924],{"class":90},[84,950,951],{"class":355}," \"Computation error\"",[84,953,102],{"class":94},[84,955,957],{"class":86,"line":956},73,[84,958,261],{"class":94},[84,960,962],{"class":86,"line":961},74,[84,963,261],{"class":94},[84,965,967],{"class":86,"line":966},75,[84,968,969],{"class":94},"}\n",[971,972,973],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":36,"searchDepth":37,"depth":37,"links":975},[],"2012-05-11T01:44:26Z",[79],{},"anroots","\u002Fgists\u002F2656982",{"title":71,"description":36},"gists\u002F2656982","https:\u002F\u002Fgist.github.com\u002Fanroots\u002F2656982","d-DLYN1guAWJnsMLPe3CVeoZ8r90Vlw5IF1VmGkbdYo",1790886932967]