var oLetter = [ ['e', 0.12652068126521], ['t', 0.08760295720027], ['a', 0.08009669873034], ['o', 0.07856967112278], ['n', 0.06967698093754], ['h', 0.06122951107778], ['s', 0.05911276181103], ['r', 0.05644534529961], ['i', 0.05595716511816], ['d', 0.04211237517233], ['l', 0.04123365084572], ['u', 0.03121228808098], ['m', 0.02655700187071], ['c', 0.02282339984300], ['y', 0.02123779061366], ['w', 0.02044498599899], ['f', 0.01982792624964], ['g', 0.01812124833531], ['p', 0.01544602094098], ['b', 0.01155229581376], ['v', 0.01004479541345], ['I', 0.00927932888894], ['k', 0.00684623886461], ['A', 0.00258149679949], ['T', 0.00209331661804], ['G', 0.00208550573514], ['M', 0.00180431395063], ['x', 0.00167933982418], ['B', 0.00159732555369], ['P', 0.00157779834644], ['Y', 0.00146844598579], ['W', 0.00143329701273], ['q', 0.00138643171531], ['S', 0.00115601066967], ['H', 0.00099979301160], ['O', 0.00099979301160], ['E', 0.00099198212870], ['F', 0.00093730594838], ['N', 0.00087481888515], ['D', 0.00082795358773], ['R', 0.00076546652451], ['j', 0.00068735769548], ['C', 0.00061705974935], ['z', 0.00044131488403], ['L', 0.00041007135242], ['U', 0.00026166457726], ['V', 0.00011716324355], ['J', 0.00009373059484], ['K', 0.00005077073887], ['Q', 0.00005077073887], ['Z', 0.00005077073887], ['X', 0.00000781088290], ] function getRandomLetter(bRand) { if (!bRand) { return (Math.floor(Math.random() * 26) + 10).toString(36); } else { while (true) { var nRandom = Math.random(); for (var z = 0; z < oLetter.length; z++) { nRandom -= oLetter[z][1]; if (nRandom <= 0) { return oLetter[z][0]; } } } } }