{"ast":null,"code":"'use strict';\n\nvar assert = require('minimalistic-assert');\n\nvar inherits = require('inherits');\n\nvar proto = {};\n\nfunction CBCState(iv) {\n assert.equal(iv.length, 8, 'Invalid IV length');\n this.iv = new Array(8);\n\n for (var i = 0; i < this.iv.length; i++) this.iv[i] = iv[i];\n}\n\nfunction instantiate(Base) {\n function CBC(options) {\n Base.call(this, options);\n\n this._cbcInit();\n }\n\n inherits(CBC, Base);\n var keys = Object.keys(proto);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n CBC.prototype[key] = proto[key];\n }\n\n CBC.create = function create(options) {\n return new CBC(options);\n };\n\n return CBC;\n}\n\nexports.instantiate = instantiate;\n\nproto._cbcInit = function _cbcInit() {\n var state = new CBCState(this.options.iv);\n this._cbcState = state;\n};\n\nproto._update = function _update(inp, inOff, out, outOff) {\n var state = this._cbcState;\n var superProto = this.constructor.super_.prototype;\n var iv = state.iv;\n\n if (this.type === 'encrypt') {\n for (var i = 0; i < this.blockSize; i++) iv[i] ^= inp[inOff + i];\n\n superProto._update.call(this, iv, 0, out, outOff);\n\n for (var i = 0; i < this.blockSize; i++) iv[i] = out[outOff + i];\n } else {\n superProto._update.call(this, inp, inOff, out, outOff);\n\n for (var i = 0; i < this.blockSize; i++) out[outOff + i] ^= iv[i];\n\n for (var i = 0; i < this.blockSize; i++) iv[i] = inp[inOff + i];\n }\n};","map":{"version":3,"sources":["/Users/tylerkoenig/Code/personal/react-scss2/node_modules/des.js/lib/des/cbc.js"],"names":["assert","require","inherits","proto","CBCState","iv","equal","length","Array","i","instantiate","Base","CBC","options","call","_cbcInit","keys","Object","key","prototype","create","exports","state","_cbcState","_update","inp","inOff","out","outOff","superProto","constructor","super_","type","blockSize"],"mappings":"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","sourcesContent":["'use strict';\n\nvar assert = require('minimalistic-assert');\nvar inherits = require('inherits');\n\nvar proto = {};\n\nfunction CBCState(iv) {\n assert.equal(iv.length, 8, 'Invalid IV length');\n\n this.iv = new Array(8);\n for (var i = 0; i < this.iv.length; i++)\n this.iv[i] = iv[i];\n}\n\nfunction instantiate(Base) {\n function CBC(options) {\n Base.call(this, options);\n this._cbcInit();\n }\n inherits(CBC, Base);\n\n var keys = Object.keys(proto);\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n CBC.prototype[key] = proto[key];\n }\n\n CBC.create = function create(options) {\n return new CBC(options);\n };\n\n return CBC;\n}\n\nexports.instantiate = instantiate;\n\nproto._cbcInit = function _cbcInit() {\n var state = new CBCState(this.options.iv);\n this._cbcState = state;\n};\n\nproto._update = function _update(inp, inOff, out, outOff) {\n var state = this._cbcState;\n var superProto = this.constructor.super_.prototype;\n\n var iv = state.iv;\n if (this.type === 'encrypt') {\n for (var i = 0; i < this.blockSize; i++)\n iv[i] ^= inp[inOff + i];\n\n superProto._update.call(this, iv, 0, out, outOff);\n\n for (var i = 0; i < this.blockSize; i++)\n iv[i] = out[outOff + i];\n } else {\n superProto._update.call(this, inp, inOff, out, outOff);\n\n for (var i = 0; i < this.blockSize; i++)\n out[outOff + i] ^= iv[i];\n\n for (var i = 0; i < this.blockSize; i++)\n iv[i] = inp[inOff + i];\n }\n};\n"]},"metadata":{},"sourceType":"script"}