| // prng4.js - uses Arcfour as a PRNG | 
| var Arcfour = /** @class */ (function () { | 
|     function Arcfour() { | 
|         this.i = 0; | 
|         this.j = 0; | 
|         this.S = []; | 
|     } | 
|     // Arcfour.prototype.init = ARC4init; | 
|     // Initialize arcfour context from key, an array of ints, each from [0..255] | 
|     Arcfour.prototype.init = function (key) { | 
|         var i; | 
|         var j; | 
|         var t; | 
|         for (i = 0; i < 256; ++i) { | 
|             this.S[i] = i; | 
|         } | 
|         j = 0; | 
|         for (i = 0; i < 256; ++i) { | 
|             j = (j + this.S[i] + key[i % key.length]) & 255; | 
|             t = this.S[i]; | 
|             this.S[i] = this.S[j]; | 
|             this.S[j] = t; | 
|         } | 
|         this.i = 0; | 
|         this.j = 0; | 
|     }; | 
|     // Arcfour.prototype.next = ARC4next; | 
|     Arcfour.prototype.next = function () { | 
|         var t; | 
|         this.i = (this.i + 1) & 255; | 
|         this.j = (this.j + this.S[this.i]) & 255; | 
|         t = this.S[this.i]; | 
|         this.S[this.i] = this.S[this.j]; | 
|         this.S[this.j] = t; | 
|         return this.S[(t + this.S[this.i]) & 255]; | 
|     }; | 
|     return Arcfour; | 
| }()); | 
| export { Arcfour }; | 
| // Plug in your RNG constructor here | 
| export function prng_newstate() { | 
|     return new Arcfour(); | 
| } | 
| // Pool size must be a multiple of 4 and greater than 32. | 
| // An array of bytes the size of the pool will be passed to init() | 
| export var rng_psize = 256; |