# reviveBasePRNG
> Revive a JSON-serialized pseudorandom number generator (PRNG).
## Usage
```javascript
var reviveBasePRNG = require( '@stdlib/random/base/reviver' );
```
#### reviveBasePRNG( key, value )
Revives a JSON-serialized pseudorandom number generator (PRNG).
```javascript
var parseJSON = require( '@stdlib/utils/parse-json' );
var randu = require( '@stdlib/random/base/randu' );
var str = JSON.stringify( randu );
var rand = parseJSON( str, reviveBasePRNG );
// returns
```
For details on the JSON serialization format, see the `.toJSON()` method for, e.g., [`randu()`][@stdlib/random/base/randu].
## Examples
```javascript
var randu = require( '@stdlib/random/base/randu' );
var parseJSON = require( '@stdlib/utils/parse-json' );
var reviveBasePRNG = require( '@stdlib/random/base/reviver' );
var rand;
var str;
var r1;
var r2;
var i;
// Progress the PRNG state...
for ( i = 0; i < 100; i++ ) {
r1 = randu();
}
// Serialize the PRNG as a JSON string:
str = JSON.stringify( randu );
// Revive the JSON-serialized PRNG:
rand = parseJSON( str, reviveBasePRNG );
if ( rand instanceof Error ) {
console.error( rand.message );
}
// Generate duplicate sequences...
for ( i = 0; i < 100; i++ ) {
r1 = randu();
r2 = rand();
console.log( '%d == %d ? %s', r1, r2, ( r1 === r2 ).toString() );
}
```
[@stdlib/random/base/randu]: https://www.npmjs.com/package/@stdlib/random/tree/main/base/randu