-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcomponent---src-templates-assignments-template-js-1d16f5c8afb9fda71a83.js.map
1 lines (1 loc) · 159 KB
/
component---src-templates-assignments-template-js-1d16f5c8afb9fda71a83.js.map
1
{"version":3,"sources":["webpack:///component---src-templates-assignments-template-js-1d16f5c8afb9fda71a83.js","webpack:///./~/base64-js/index.js","webpack:///./~/buffer/index.js","webpack:///./~/ieee754/index.js","webpack:///./src/templates/assignmentsTemplate.js"],"names":["webpackJsonp","230","module","exports","placeHoldersCount","b64","len","length","Error","byteLength","toByteArray","i","l","tmp","placeHolders","arr","Arr","L","revLookup","charCodeAt","tripletToBase64","num","lookup","encodeChunk","uint8","start","end","output","push","join","fromByteArray","extraBytes","parts","maxChunkLength","len2","Uint8Array","Array","code","231","__webpack_require__","global","typedArraySupport","__proto__","prototype","foo","subarray","e","kMaxLength","Buffer","TYPED_ARRAY_SUPPORT","createBuffer","that","RangeError","arg","encodingOrOffset","this","allocUnsafe","from","value","TypeError","ArrayBuffer","fromArrayBuffer","fromString","fromObject","assertSize","size","alloc","fill","encoding","undefined","checked","string","isEncoding","actual","write","slice","fromArrayLike","array","byteOffset","obj","isBuffer","copy","buffer","isnan","type","isArray","data","toString","SlowBuffer","isView","loweredCase","utf8ToBytes","base64ToBytes","toLowerCase","slowToString","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","b","n","m","bidirectionalIndexOf","val","dir","isNaN","arrayIndexOf","indexOf","call","lastIndexOf","read","buf","indexSize","readUInt16BE","arrLength","valLength","String","foundIndex","found","j","hexWrite","offset","Number","remaining","strLen","parsed","parseInt","substr","utf8Write","blitBuffer","asciiWrite","asciiToBytes","latin1Write","base64Write","ucs2Write","utf16leToBytes","base64","Math","min","res","firstByte","codePoint","bytesPerSequence","secondByte","thirdByte","fourthByte","tempCodePoint","decodeCodePointsArray","codePoints","MAX_ARGUMENTS_LENGTH","fromCharCode","apply","ret","out","toHex","bytes","checkOffset","ext","checkInt","max","objectWriteUInt16","littleEndian","objectWriteUInt32","checkIEEE754","writeFloat","noAssert","ieee754","writeDouble","base64clean","str","stringtrim","replace","INVALID_BASE64_RE","trim","units","Infinity","leadSurrogate","byteArray","c","hi","lo","src","dst","INSPECT_MAX_BYTES","poolSize","_augment","Symbol","species","Object","defineProperty","configurable","allocUnsafeSlow","_isBuffer","compare","a","x","y","concat","list","pos","swap16","swap32","swap64","arguments","equals","inspect","match","target","thisStart","thisEnd","thisCopy","targetCopy","includes","isFinite","toJSON","_arr","newBuf","sliceLen","readUIntLE","mul","readUIntBE","readUInt8","readUInt16LE","readUInt32LE","readUInt32BE","readIntLE","pow","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUIntLE","maxBytes","writeUIntBE","writeUInt8","floor","writeUInt16LE","writeUInt16BE","writeUInt32LE","writeUInt32BE","writeIntLE","limit","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","set","643","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","d","s","NaN","rt","abs","log","LN2","219","_interopRequireWildcard","__esModule","newObj","key","hasOwnProperty","default","_interopRequireDefault","_classCallCheck","instance","Constructor","_possibleConstructorReturn","self","ReferenceError","_inherits","subClass","superClass","create","constructor","enumerable","writable","setPrototypeOf","CampaignPageQuery","_react","_react2","_propTypes","PropTypes","_gatsbyLink","_gatsbyLink2","propTypes","object","isRequired","assignmentsTemplate","_React$Component","render","p_id","allcampagin","props","edges","assignments","pathid","location","pathname","str_array","split","identities","camName","arr1","forEach","_ref","node","campaigns","_ref2","id","name","contents","console","_ref3","identity","arr2","_ref4","assid","title","JSON","stringify","createElement","style","marginBottom","className","textAlign","listStyle","width","map","_ref5","to","textDecoration","Component"],"mappings":"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","file":"component---src-templates-assignments-template-js-1d16f5c8afb9fda71a83.js","sourcesContent":["webpackJsonp([34866721043124],{\n\n/***/ 230:\n/***/ (function(module, exports) {\n\n\t'use strict'\n\t\n\texports.byteLength = byteLength\n\texports.toByteArray = toByteArray\n\texports.fromByteArray = fromByteArray\n\t\n\tvar lookup = []\n\tvar revLookup = []\n\tvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\t\n\tvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\n\tfor (var i = 0, len = code.length; i < len; ++i) {\n\t lookup[i] = code[i]\n\t revLookup[code.charCodeAt(i)] = i\n\t}\n\t\n\t// Support decoding URL-safe base64 strings, as Node.js does.\n\t// See: https://en.wikipedia.org/wiki/Base64#URL_applications\n\trevLookup['-'.charCodeAt(0)] = 62\n\trevLookup['_'.charCodeAt(0)] = 63\n\t\n\tfunction placeHoldersCount (b64) {\n\t var len = b64.length\n\t if (len % 4 > 0) {\n\t throw new Error('Invalid string. Length must be a multiple of 4')\n\t }\n\t\n\t // the number of equal signs (place holders)\n\t // if there are two placeholders, than the two characters before it\n\t // represent one byte\n\t // if there is only one, then the three characters before it represent 2 bytes\n\t // this is just a cheap hack to not do indexOf twice\n\t return b64[len - 2] === '=' ? 2 : b64[len - 1] === '=' ? 1 : 0\n\t}\n\t\n\tfunction byteLength (b64) {\n\t // base64 is 4/3 + up to two characters of the original data\n\t return (b64.length * 3 / 4) - placeHoldersCount(b64)\n\t}\n\t\n\tfunction toByteArray (b64) {\n\t var i, l, tmp, placeHolders, arr\n\t var len = b64.length\n\t placeHolders = placeHoldersCount(b64)\n\t\n\t arr = new Arr((len * 3 / 4) - placeHolders)\n\t\n\t // if there are placeholders, only get up to the last complete 4 chars\n\t l = placeHolders > 0 ? len - 4 : len\n\t\n\t var L = 0\n\t\n\t for (i = 0; i < l; i += 4) {\n\t tmp = (revLookup[b64.charCodeAt(i)] << 18) | (revLookup[b64.charCodeAt(i + 1)] << 12) | (revLookup[b64.charCodeAt(i + 2)] << 6) | revLookup[b64.charCodeAt(i + 3)]\n\t arr[L++] = (tmp >> 16) & 0xFF\n\t arr[L++] = (tmp >> 8) & 0xFF\n\t arr[L++] = tmp & 0xFF\n\t }\n\t\n\t if (placeHolders === 2) {\n\t tmp = (revLookup[b64.charCodeAt(i)] << 2) | (revLookup[b64.charCodeAt(i + 1)] >> 4)\n\t arr[L++] = tmp & 0xFF\n\t } else if (placeHolders === 1) {\n\t tmp = (revLookup[b64.charCodeAt(i)] << 10) | (revLookup[b64.charCodeAt(i + 1)] << 4) | (revLookup[b64.charCodeAt(i + 2)] >> 2)\n\t arr[L++] = (tmp >> 8) & 0xFF\n\t arr[L++] = tmp & 0xFF\n\t }\n\t\n\t return arr\n\t}\n\t\n\tfunction tripletToBase64 (num) {\n\t return lookup[num >> 18 & 0x3F] + lookup[num >> 12 & 0x3F] + lookup[num >> 6 & 0x3F] + lookup[num & 0x3F]\n\t}\n\t\n\tfunction encodeChunk (uint8, start, end) {\n\t var tmp\n\t var output = []\n\t for (var i = start; i < end; i += 3) {\n\t tmp = ((uint8[i] << 16) & 0xFF0000) + ((uint8[i + 1] << 8) & 0xFF00) + (uint8[i + 2] & 0xFF)\n\t output.push(tripletToBase64(tmp))\n\t }\n\t return output.join('')\n\t}\n\t\n\tfunction fromByteArray (uint8) {\n\t var tmp\n\t var len = uint8.length\n\t var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n\t var output = ''\n\t var parts = []\n\t var maxChunkLength = 16383 // must be multiple of 3\n\t\n\t // go through the array every three bytes, we'll deal with trailing stuff later\n\t for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n\t parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n\t }\n\t\n\t // pad the end with zeros, but make sure to not forget the extra bytes\n\t if (extraBytes === 1) {\n\t tmp = uint8[len - 1]\n\t output += lookup[tmp >> 2]\n\t output += lookup[(tmp << 4) & 0x3F]\n\t output += '=='\n\t } else if (extraBytes === 2) {\n\t tmp = (uint8[len - 2] << 8) + (uint8[len - 1])\n\t output += lookup[tmp >> 10]\n\t output += lookup[(tmp >> 4) & 0x3F]\n\t output += lookup[(tmp << 2) & 0x3F]\n\t output += '='\n\t }\n\t\n\t parts.push(output)\n\t\n\t return parts.join('')\n\t}\n\n\n/***/ }),\n\n/***/ 231:\n/***/ (function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(global) {/*!\n\t * The buffer module from node.js, for the browser.\n\t *\n\t * @author Feross Aboukhadijeh <[email protected]> <http://feross.org>\n\t * @license MIT\n\t */\n\t/* eslint-disable no-proto */\n\t\n\t'use strict'\n\t\n\tvar base64 = __webpack_require__(230)\n\tvar ieee754 = __webpack_require__(643)\n\tvar isArray = __webpack_require__(168)\n\t\n\texports.Buffer = Buffer\n\texports.SlowBuffer = SlowBuffer\n\texports.INSPECT_MAX_BYTES = 50\n\t\n\t/**\n\t * If `Buffer.TYPED_ARRAY_SUPPORT`:\n\t * === true Use Uint8Array implementation (fastest)\n\t * === false Use Object implementation (most compatible, even IE6)\n\t *\n\t * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n\t * Opera 11.6+, iOS 4.2+.\n\t *\n\t * Due to various browser bugs, sometimes the Object implementation will be used even\n\t * when the browser supports typed arrays.\n\t *\n\t * Note:\n\t *\n\t * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n\t * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n\t *\n\t * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n\t *\n\t * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n\t * incorrect length in some situations.\n\t\n\t * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n\t * get the Object implementation, which is slower but behaves correctly.\n\t */\n\tBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n\t ? global.TYPED_ARRAY_SUPPORT\n\t : typedArraySupport()\n\t\n\t/*\n\t * Export kMaxLength after typed array support is determined.\n\t */\n\texports.kMaxLength = kMaxLength()\n\t\n\tfunction typedArraySupport () {\n\t try {\n\t var arr = new Uint8Array(1)\n\t arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}\n\t return arr.foo() === 42 && // typed array instances can be augmented\n\t typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n\t arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n\t } catch (e) {\n\t return false\n\t }\n\t}\n\t\n\tfunction kMaxLength () {\n\t return Buffer.TYPED_ARRAY_SUPPORT\n\t ? 0x7fffffff\n\t : 0x3fffffff\n\t}\n\t\n\tfunction createBuffer (that, length) {\n\t if (kMaxLength() < length) {\n\t throw new RangeError('Invalid typed array length')\n\t }\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t // Return an augmented `Uint8Array` instance, for best performance\n\t that = new Uint8Array(length)\n\t that.__proto__ = Buffer.prototype\n\t } else {\n\t // Fallback: Return an object instance of the Buffer class\n\t if (that === null) {\n\t that = new Buffer(length)\n\t }\n\t that.length = length\n\t }\n\t\n\t return that\n\t}\n\t\n\t/**\n\t * The Buffer constructor returns instances of `Uint8Array` that have their\n\t * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n\t * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n\t * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n\t * returns a single octet.\n\t *\n\t * The `Uint8Array` prototype remains unmodified.\n\t */\n\t\n\tfunction Buffer (arg, encodingOrOffset, length) {\n\t if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n\t return new Buffer(arg, encodingOrOffset, length)\n\t }\n\t\n\t // Common case.\n\t if (typeof arg === 'number') {\n\t if (typeof encodingOrOffset === 'string') {\n\t throw new Error(\n\t 'If encoding is specified then the first argument must be a string'\n\t )\n\t }\n\t return allocUnsafe(this, arg)\n\t }\n\t return from(this, arg, encodingOrOffset, length)\n\t}\n\t\n\tBuffer.poolSize = 8192 // not used by this implementation\n\t\n\t// TODO: Legacy, not needed anymore. Remove in next major version.\n\tBuffer._augment = function (arr) {\n\t arr.__proto__ = Buffer.prototype\n\t return arr\n\t}\n\t\n\tfunction from (that, value, encodingOrOffset, length) {\n\t if (typeof value === 'number') {\n\t throw new TypeError('\"value\" argument must not be a number')\n\t }\n\t\n\t if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n\t return fromArrayBuffer(that, value, encodingOrOffset, length)\n\t }\n\t\n\t if (typeof value === 'string') {\n\t return fromString(that, value, encodingOrOffset)\n\t }\n\t\n\t return fromObject(that, value)\n\t}\n\t\n\t/**\n\t * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n\t * if value is a number.\n\t * Buffer.from(str[, encoding])\n\t * Buffer.from(array)\n\t * Buffer.from(buffer)\n\t * Buffer.from(arrayBuffer[, byteOffset[, length]])\n\t **/\n\tBuffer.from = function (value, encodingOrOffset, length) {\n\t return from(null, value, encodingOrOffset, length)\n\t}\n\t\n\tif (Buffer.TYPED_ARRAY_SUPPORT) {\n\t Buffer.prototype.__proto__ = Uint8Array.prototype\n\t Buffer.__proto__ = Uint8Array\n\t if (typeof Symbol !== 'undefined' && Symbol.species &&\n\t Buffer[Symbol.species] === Buffer) {\n\t // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n\t Object.defineProperty(Buffer, Symbol.species, {\n\t value: null,\n\t configurable: true\n\t })\n\t }\n\t}\n\t\n\tfunction assertSize (size) {\n\t if (typeof size !== 'number') {\n\t throw new TypeError('\"size\" argument must be a number')\n\t } else if (size < 0) {\n\t throw new RangeError('\"size\" argument must not be negative')\n\t }\n\t}\n\t\n\tfunction alloc (that, size, fill, encoding) {\n\t assertSize(size)\n\t if (size <= 0) {\n\t return createBuffer(that, size)\n\t }\n\t if (fill !== undefined) {\n\t // Only pay attention to encoding if it's a string. This\n\t // prevents accidentally sending in a number that would\n\t // be interpretted as a start offset.\n\t return typeof encoding === 'string'\n\t ? createBuffer(that, size).fill(fill, encoding)\n\t : createBuffer(that, size).fill(fill)\n\t }\n\t return createBuffer(that, size)\n\t}\n\t\n\t/**\n\t * Creates a new filled Buffer instance.\n\t * alloc(size[, fill[, encoding]])\n\t **/\n\tBuffer.alloc = function (size, fill, encoding) {\n\t return alloc(null, size, fill, encoding)\n\t}\n\t\n\tfunction allocUnsafe (that, size) {\n\t assertSize(size)\n\t that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) {\n\t for (var i = 0; i < size; ++i) {\n\t that[i] = 0\n\t }\n\t }\n\t return that\n\t}\n\t\n\t/**\n\t * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n\t * */\n\tBuffer.allocUnsafe = function (size) {\n\t return allocUnsafe(null, size)\n\t}\n\t/**\n\t * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n\t */\n\tBuffer.allocUnsafeSlow = function (size) {\n\t return allocUnsafe(null, size)\n\t}\n\t\n\tfunction fromString (that, string, encoding) {\n\t if (typeof encoding !== 'string' || encoding === '') {\n\t encoding = 'utf8'\n\t }\n\t\n\t if (!Buffer.isEncoding(encoding)) {\n\t throw new TypeError('\"encoding\" must be a valid string encoding')\n\t }\n\t\n\t var length = byteLength(string, encoding) | 0\n\t that = createBuffer(that, length)\n\t\n\t var actual = that.write(string, encoding)\n\t\n\t if (actual !== length) {\n\t // Writing a hex string, for example, that contains invalid characters will\n\t // cause everything after the first invalid character to be ignored. (e.g.\n\t // 'abxxcd' will be treated as 'ab')\n\t that = that.slice(0, actual)\n\t }\n\t\n\t return that\n\t}\n\t\n\tfunction fromArrayLike (that, array) {\n\t var length = array.length < 0 ? 0 : checked(array.length) | 0\n\t that = createBuffer(that, length)\n\t for (var i = 0; i < length; i += 1) {\n\t that[i] = array[i] & 255\n\t }\n\t return that\n\t}\n\t\n\tfunction fromArrayBuffer (that, array, byteOffset, length) {\n\t array.byteLength // this throws if `array` is not a valid ArrayBuffer\n\t\n\t if (byteOffset < 0 || array.byteLength < byteOffset) {\n\t throw new RangeError('\\'offset\\' is out of bounds')\n\t }\n\t\n\t if (array.byteLength < byteOffset + (length || 0)) {\n\t throw new RangeError('\\'length\\' is out of bounds')\n\t }\n\t\n\t if (byteOffset === undefined && length === undefined) {\n\t array = new Uint8Array(array)\n\t } else if (length === undefined) {\n\t array = new Uint8Array(array, byteOffset)\n\t } else {\n\t array = new Uint8Array(array, byteOffset, length)\n\t }\n\t\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t // Return an augmented `Uint8Array` instance, for best performance\n\t that = array\n\t that.__proto__ = Buffer.prototype\n\t } else {\n\t // Fallback: Return an object instance of the Buffer class\n\t that = fromArrayLike(that, array)\n\t }\n\t return that\n\t}\n\t\n\tfunction fromObject (that, obj) {\n\t if (Buffer.isBuffer(obj)) {\n\t var len = checked(obj.length) | 0\n\t that = createBuffer(that, len)\n\t\n\t if (that.length === 0) {\n\t return that\n\t }\n\t\n\t obj.copy(that, 0, 0, len)\n\t return that\n\t }\n\t\n\t if (obj) {\n\t if ((typeof ArrayBuffer !== 'undefined' &&\n\t obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n\t if (typeof obj.length !== 'number' || isnan(obj.length)) {\n\t return createBuffer(that, 0)\n\t }\n\t return fromArrayLike(that, obj)\n\t }\n\t\n\t if (obj.type === 'Buffer' && isArray(obj.data)) {\n\t return fromArrayLike(that, obj.data)\n\t }\n\t }\n\t\n\t throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n\t}\n\t\n\tfunction checked (length) {\n\t // Note: cannot use `length < kMaxLength()` here because that fails when\n\t // length is NaN (which is otherwise coerced to zero.)\n\t if (length >= kMaxLength()) {\n\t throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n\t 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n\t }\n\t return length | 0\n\t}\n\t\n\tfunction SlowBuffer (length) {\n\t if (+length != length) { // eslint-disable-line eqeqeq\n\t length = 0\n\t }\n\t return Buffer.alloc(+length)\n\t}\n\t\n\tBuffer.isBuffer = function isBuffer (b) {\n\t return !!(b != null && b._isBuffer)\n\t}\n\t\n\tBuffer.compare = function compare (a, b) {\n\t if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n\t throw new TypeError('Arguments must be Buffers')\n\t }\n\t\n\t if (a === b) return 0\n\t\n\t var x = a.length\n\t var y = b.length\n\t\n\t for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n\t if (a[i] !== b[i]) {\n\t x = a[i]\n\t y = b[i]\n\t break\n\t }\n\t }\n\t\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t}\n\t\n\tBuffer.isEncoding = function isEncoding (encoding) {\n\t switch (String(encoding).toLowerCase()) {\n\t case 'hex':\n\t case 'utf8':\n\t case 'utf-8':\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t case 'base64':\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return true\n\t default:\n\t return false\n\t }\n\t}\n\t\n\tBuffer.concat = function concat (list, length) {\n\t if (!isArray(list)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\t\n\t if (list.length === 0) {\n\t return Buffer.alloc(0)\n\t }\n\t\n\t var i\n\t if (length === undefined) {\n\t length = 0\n\t for (i = 0; i < list.length; ++i) {\n\t length += list[i].length\n\t }\n\t }\n\t\n\t var buffer = Buffer.allocUnsafe(length)\n\t var pos = 0\n\t for (i = 0; i < list.length; ++i) {\n\t var buf = list[i]\n\t if (!Buffer.isBuffer(buf)) {\n\t throw new TypeError('\"list\" argument must be an Array of Buffers')\n\t }\n\t buf.copy(buffer, pos)\n\t pos += buf.length\n\t }\n\t return buffer\n\t}\n\t\n\tfunction byteLength (string, encoding) {\n\t if (Buffer.isBuffer(string)) {\n\t return string.length\n\t }\n\t if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n\t (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n\t return string.byteLength\n\t }\n\t if (typeof string !== 'string') {\n\t string = '' + string\n\t }\n\t\n\t var len = string.length\n\t if (len === 0) return 0\n\t\n\t // Use a for loop to avoid recursion\n\t var loweredCase = false\n\t for (;;) {\n\t switch (encoding) {\n\t case 'ascii':\n\t case 'latin1':\n\t case 'binary':\n\t return len\n\t case 'utf8':\n\t case 'utf-8':\n\t case undefined:\n\t return utf8ToBytes(string).length\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return len * 2\n\t case 'hex':\n\t return len >>> 1\n\t case 'base64':\n\t return base64ToBytes(string).length\n\t default:\n\t if (loweredCase) return utf8ToBytes(string).length // assume utf8\n\t encoding = ('' + encoding).toLowerCase()\n\t loweredCase = true\n\t }\n\t }\n\t}\n\tBuffer.byteLength = byteLength\n\t\n\tfunction slowToString (encoding, start, end) {\n\t var loweredCase = false\n\t\n\t // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n\t // property of a typed array.\n\t\n\t // This behaves neither like String nor Uint8Array in that we set start/end\n\t // to their upper/lower bounds if the value passed is out of range.\n\t // undefined is handled specially as per ECMA-262 6th Edition,\n\t // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n\t if (start === undefined || start < 0) {\n\t start = 0\n\t }\n\t // Return early if start > this.length. Done here to prevent potential uint32\n\t // coercion fail below.\n\t if (start > this.length) {\n\t return ''\n\t }\n\t\n\t if (end === undefined || end > this.length) {\n\t end = this.length\n\t }\n\t\n\t if (end <= 0) {\n\t return ''\n\t }\n\t\n\t // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n\t end >>>= 0\n\t start >>>= 0\n\t\n\t if (end <= start) {\n\t return ''\n\t }\n\t\n\t if (!encoding) encoding = 'utf8'\n\t\n\t while (true) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexSlice(this, start, end)\n\t\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Slice(this, start, end)\n\t\n\t case 'ascii':\n\t return asciiSlice(this, start, end)\n\t\n\t case 'latin1':\n\t case 'binary':\n\t return latin1Slice(this, start, end)\n\t\n\t case 'base64':\n\t return base64Slice(this, start, end)\n\t\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return utf16leSlice(this, start, end)\n\t\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = (encoding + '').toLowerCase()\n\t loweredCase = true\n\t }\n\t }\n\t}\n\t\n\t// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect\n\t// Buffer instances.\n\tBuffer.prototype._isBuffer = true\n\t\n\tfunction swap (b, n, m) {\n\t var i = b[n]\n\t b[n] = b[m]\n\t b[m] = i\n\t}\n\t\n\tBuffer.prototype.swap16 = function swap16 () {\n\t var len = this.length\n\t if (len % 2 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 16-bits')\n\t }\n\t for (var i = 0; i < len; i += 2) {\n\t swap(this, i, i + 1)\n\t }\n\t return this\n\t}\n\t\n\tBuffer.prototype.swap32 = function swap32 () {\n\t var len = this.length\n\t if (len % 4 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 32-bits')\n\t }\n\t for (var i = 0; i < len; i += 4) {\n\t swap(this, i, i + 3)\n\t swap(this, i + 1, i + 2)\n\t }\n\t return this\n\t}\n\t\n\tBuffer.prototype.swap64 = function swap64 () {\n\t var len = this.length\n\t if (len % 8 !== 0) {\n\t throw new RangeError('Buffer size must be a multiple of 64-bits')\n\t }\n\t for (var i = 0; i < len; i += 8) {\n\t swap(this, i, i + 7)\n\t swap(this, i + 1, i + 6)\n\t swap(this, i + 2, i + 5)\n\t swap(this, i + 3, i + 4)\n\t }\n\t return this\n\t}\n\t\n\tBuffer.prototype.toString = function toString () {\n\t var length = this.length | 0\n\t if (length === 0) return ''\n\t if (arguments.length === 0) return utf8Slice(this, 0, length)\n\t return slowToString.apply(this, arguments)\n\t}\n\t\n\tBuffer.prototype.equals = function equals (b) {\n\t if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n\t if (this === b) return true\n\t return Buffer.compare(this, b) === 0\n\t}\n\t\n\tBuffer.prototype.inspect = function inspect () {\n\t var str = ''\n\t var max = exports.INSPECT_MAX_BYTES\n\t if (this.length > 0) {\n\t str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n\t if (this.length > max) str += ' ... '\n\t }\n\t return '<Buffer ' + str + '>'\n\t}\n\t\n\tBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n\t if (!Buffer.isBuffer(target)) {\n\t throw new TypeError('Argument must be a Buffer')\n\t }\n\t\n\t if (start === undefined) {\n\t start = 0\n\t }\n\t if (end === undefined) {\n\t end = target ? target.length : 0\n\t }\n\t if (thisStart === undefined) {\n\t thisStart = 0\n\t }\n\t if (thisEnd === undefined) {\n\t thisEnd = this.length\n\t }\n\t\n\t if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n\t throw new RangeError('out of range index')\n\t }\n\t\n\t if (thisStart >= thisEnd && start >= end) {\n\t return 0\n\t }\n\t if (thisStart >= thisEnd) {\n\t return -1\n\t }\n\t if (start >= end) {\n\t return 1\n\t }\n\t\n\t start >>>= 0\n\t end >>>= 0\n\t thisStart >>>= 0\n\t thisEnd >>>= 0\n\t\n\t if (this === target) return 0\n\t\n\t var x = thisEnd - thisStart\n\t var y = end - start\n\t var len = Math.min(x, y)\n\t\n\t var thisCopy = this.slice(thisStart, thisEnd)\n\t var targetCopy = target.slice(start, end)\n\t\n\t for (var i = 0; i < len; ++i) {\n\t if (thisCopy[i] !== targetCopy[i]) {\n\t x = thisCopy[i]\n\t y = targetCopy[i]\n\t break\n\t }\n\t }\n\t\n\t if (x < y) return -1\n\t if (y < x) return 1\n\t return 0\n\t}\n\t\n\t// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n\t// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n\t//\n\t// Arguments:\n\t// - buffer - a Buffer to search\n\t// - val - a string, Buffer, or number\n\t// - byteOffset - an index into `buffer`; will be clamped to an int32\n\t// - encoding - an optional encoding, relevant is val is a string\n\t// - dir - true for indexOf, false for lastIndexOf\n\tfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n\t // Empty buffer means no match\n\t if (buffer.length === 0) return -1\n\t\n\t // Normalize byteOffset\n\t if (typeof byteOffset === 'string') {\n\t encoding = byteOffset\n\t byteOffset = 0\n\t } else if (byteOffset > 0x7fffffff) {\n\t byteOffset = 0x7fffffff\n\t } else if (byteOffset < -0x80000000) {\n\t byteOffset = -0x80000000\n\t }\n\t byteOffset = +byteOffset // Coerce to Number.\n\t if (isNaN(byteOffset)) {\n\t // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n\t byteOffset = dir ? 0 : (buffer.length - 1)\n\t }\n\t\n\t // Normalize byteOffset: negative offsets start from the end of the buffer\n\t if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n\t if (byteOffset >= buffer.length) {\n\t if (dir) return -1\n\t else byteOffset = buffer.length - 1\n\t } else if (byteOffset < 0) {\n\t if (dir) byteOffset = 0\n\t else return -1\n\t }\n\t\n\t // Normalize val\n\t if (typeof val === 'string') {\n\t val = Buffer.from(val, encoding)\n\t }\n\t\n\t // Finally, search either indexOf (if dir is true) or lastIndexOf\n\t if (Buffer.isBuffer(val)) {\n\t // Special case: looking for empty string/buffer always fails\n\t if (val.length === 0) {\n\t return -1\n\t }\n\t return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n\t } else if (typeof val === 'number') {\n\t val = val & 0xFF // Search for a byte value [0-255]\n\t if (Buffer.TYPED_ARRAY_SUPPORT &&\n\t typeof Uint8Array.prototype.indexOf === 'function') {\n\t if (dir) {\n\t return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n\t } else {\n\t return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n\t }\n\t }\n\t return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)\n\t }\n\t\n\t throw new TypeError('val must be string, number or Buffer')\n\t}\n\t\n\tfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n\t var indexSize = 1\n\t var arrLength = arr.length\n\t var valLength = val.length\n\t\n\t if (encoding !== undefined) {\n\t encoding = String(encoding).toLowerCase()\n\t if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n\t encoding === 'utf16le' || encoding === 'utf-16le') {\n\t if (arr.length < 2 || val.length < 2) {\n\t return -1\n\t }\n\t indexSize = 2\n\t arrLength /= 2\n\t valLength /= 2\n\t byteOffset /= 2\n\t }\n\t }\n\t\n\t function read (buf, i) {\n\t if (indexSize === 1) {\n\t return buf[i]\n\t } else {\n\t return buf.readUInt16BE(i * indexSize)\n\t }\n\t }\n\t\n\t var i\n\t if (dir) {\n\t var foundIndex = -1\n\t for (i = byteOffset; i < arrLength; i++) {\n\t if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n\t if (foundIndex === -1) foundIndex = i\n\t if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n\t } else {\n\t if (foundIndex !== -1) i -= i - foundIndex\n\t foundIndex = -1\n\t }\n\t }\n\t } else {\n\t if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n\t for (i = byteOffset; i >= 0; i--) {\n\t var found = true\n\t for (var j = 0; j < valLength; j++) {\n\t if (read(arr, i + j) !== read(val, j)) {\n\t found = false\n\t break\n\t }\n\t }\n\t if (found) return i\n\t }\n\t }\n\t\n\t return -1\n\t}\n\t\n\tBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n\t return this.indexOf(val, byteOffset, encoding) !== -1\n\t}\n\t\n\tBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n\t}\n\t\n\tBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n\t return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n\t}\n\t\n\tfunction hexWrite (buf, string, offset, length) {\n\t offset = Number(offset) || 0\n\t var remaining = buf.length - offset\n\t if (!length) {\n\t length = remaining\n\t } else {\n\t length = Number(length)\n\t if (length > remaining) {\n\t length = remaining\n\t }\n\t }\n\t\n\t // must be an even number of digits\n\t var strLen = string.length\n\t if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')\n\t\n\t if (length > strLen / 2) {\n\t length = strLen / 2\n\t }\n\t for (var i = 0; i < length; ++i) {\n\t var parsed = parseInt(string.substr(i * 2, 2), 16)\n\t if (isNaN(parsed)) return i\n\t buf[offset + i] = parsed\n\t }\n\t return i\n\t}\n\t\n\tfunction utf8Write (buf, string, offset, length) {\n\t return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\t\n\tfunction asciiWrite (buf, string, offset, length) {\n\t return blitBuffer(asciiToBytes(string), buf, offset, length)\n\t}\n\t\n\tfunction latin1Write (buf, string, offset, length) {\n\t return asciiWrite(buf, string, offset, length)\n\t}\n\t\n\tfunction base64Write (buf, string, offset, length) {\n\t return blitBuffer(base64ToBytes(string), buf, offset, length)\n\t}\n\t\n\tfunction ucs2Write (buf, string, offset, length) {\n\t return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n\t}\n\t\n\tBuffer.prototype.write = function write (string, offset, length, encoding) {\n\t // Buffer#write(string)\n\t if (offset === undefined) {\n\t encoding = 'utf8'\n\t length = this.length\n\t offset = 0\n\t // Buffer#write(string, encoding)\n\t } else if (length === undefined && typeof offset === 'string') {\n\t encoding = offset\n\t length = this.length\n\t offset = 0\n\t // Buffer#write(string, offset[, length][, encoding])\n\t } else if (isFinite(offset)) {\n\t offset = offset | 0\n\t if (isFinite(length)) {\n\t length = length | 0\n\t if (encoding === undefined) encoding = 'utf8'\n\t } else {\n\t encoding = length\n\t length = undefined\n\t }\n\t // legacy write(string, encoding, offset, length) - remove in v0.13\n\t } else {\n\t throw new Error(\n\t 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n\t )\n\t }\n\t\n\t var remaining = this.length - offset\n\t if (length === undefined || length > remaining) length = remaining\n\t\n\t if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n\t throw new RangeError('Attempt to write outside buffer bounds')\n\t }\n\t\n\t if (!encoding) encoding = 'utf8'\n\t\n\t var loweredCase = false\n\t for (;;) {\n\t switch (encoding) {\n\t case 'hex':\n\t return hexWrite(this, string, offset, length)\n\t\n\t case 'utf8':\n\t case 'utf-8':\n\t return utf8Write(this, string, offset, length)\n\t\n\t case 'ascii':\n\t return asciiWrite(this, string, offset, length)\n\t\n\t case 'latin1':\n\t case 'binary':\n\t return latin1Write(this, string, offset, length)\n\t\n\t case 'base64':\n\t // Warning: maxLength not taken into account in base64Write\n\t return base64Write(this, string, offset, length)\n\t\n\t case 'ucs2':\n\t case 'ucs-2':\n\t case 'utf16le':\n\t case 'utf-16le':\n\t return ucs2Write(this, string, offset, length)\n\t\n\t default:\n\t if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n\t encoding = ('' + encoding).toLowerCase()\n\t loweredCase = true\n\t }\n\t }\n\t}\n\t\n\tBuffer.prototype.toJSON = function toJSON () {\n\t return {\n\t type: 'Buffer',\n\t data: Array.prototype.slice.call(this._arr || this, 0)\n\t }\n\t}\n\t\n\tfunction base64Slice (buf, start, end) {\n\t if (start === 0 && end === buf.length) {\n\t return base64.fromByteArray(buf)\n\t } else {\n\t return base64.fromByteArray(buf.slice(start, end))\n\t }\n\t}\n\t\n\tfunction utf8Slice (buf, start, end) {\n\t end = Math.min(buf.length, end)\n\t var res = []\n\t\n\t var i = start\n\t while (i < end) {\n\t var firstByte = buf[i]\n\t var codePoint = null\n\t var bytesPerSequence = (firstByte > 0xEF) ? 4\n\t : (firstByte > 0xDF) ? 3\n\t : (firstByte > 0xBF) ? 2\n\t : 1\n\t\n\t if (i + bytesPerSequence <= end) {\n\t var secondByte, thirdByte, fourthByte, tempCodePoint\n\t\n\t switch (bytesPerSequence) {\n\t case 1:\n\t if (firstByte < 0x80) {\n\t codePoint = firstByte\n\t }\n\t break\n\t case 2:\n\t secondByte = buf[i + 1]\n\t if ((secondByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n\t if (tempCodePoint > 0x7F) {\n\t codePoint = tempCodePoint\n\t }\n\t }\n\t break\n\t case 3:\n\t secondByte = buf[i + 1]\n\t thirdByte = buf[i + 2]\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n\t if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n\t codePoint = tempCodePoint\n\t }\n\t }\n\t break\n\t case 4:\n\t secondByte = buf[i + 1]\n\t thirdByte = buf[i + 2]\n\t fourthByte = buf[i + 3]\n\t if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n\t tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n\t if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n\t codePoint = tempCodePoint\n\t }\n\t }\n\t }\n\t }\n\t\n\t if (codePoint === null) {\n\t // we did not generate a valid codePoint so insert a\n\t // replacement char (U+FFFD) and advance only 1 byte\n\t codePoint = 0xFFFD\n\t bytesPerSequence = 1\n\t } else if (codePoint > 0xFFFF) {\n\t // encode to utf16 (surrogate pair dance)\n\t codePoint -= 0x10000\n\t res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n\t codePoint = 0xDC00 | codePoint & 0x3FF\n\t }\n\t\n\t res.push(codePoint)\n\t i += bytesPerSequence\n\t }\n\t\n\t return decodeCodePointsArray(res)\n\t}\n\t\n\t// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n\t// the lowest limit is Chrome, with 0x10000 args.\n\t// We go 1 magnitude less, for safety\n\tvar MAX_ARGUMENTS_LENGTH = 0x1000\n\t\n\tfunction decodeCodePointsArray (codePoints) {\n\t var len = codePoints.length\n\t if (len <= MAX_ARGUMENTS_LENGTH) {\n\t return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n\t }\n\t\n\t // Decode in chunks to avoid \"call stack size exceeded\".\n\t var res = ''\n\t var i = 0\n\t while (i < len) {\n\t res += String.fromCharCode.apply(\n\t String,\n\t codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n\t )\n\t }\n\t return res\n\t}\n\t\n\tfunction asciiSlice (buf, start, end) {\n\t var ret = ''\n\t end = Math.min(buf.length, end)\n\t\n\t for (var i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i] & 0x7F)\n\t }\n\t return ret\n\t}\n\t\n\tfunction latin1Slice (buf, start, end) {\n\t var ret = ''\n\t end = Math.min(buf.length, end)\n\t\n\t for (var i = start; i < end; ++i) {\n\t ret += String.fromCharCode(buf[i])\n\t }\n\t return ret\n\t}\n\t\n\tfunction hexSlice (buf, start, end) {\n\t var len = buf.length\n\t\n\t if (!start || start < 0) start = 0\n\t if (!end || end < 0 || end > len) end = len\n\t\n\t var out = ''\n\t for (var i = start; i < end; ++i) {\n\t out += toHex(buf[i])\n\t }\n\t return out\n\t}\n\t\n\tfunction utf16leSlice (buf, start, end) {\n\t var bytes = buf.slice(start, end)\n\t var res = ''\n\t for (var i = 0; i < bytes.length; i += 2) {\n\t res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n\t }\n\t return res\n\t}\n\t\n\tBuffer.prototype.slice = function slice (start, end) {\n\t var len = this.length\n\t start = ~~start\n\t end = end === undefined ? len : ~~end\n\t\n\t if (start < 0) {\n\t start += len\n\t if (start < 0) start = 0\n\t } else if (start > len) {\n\t start = len\n\t }\n\t\n\t if (end < 0) {\n\t end += len\n\t if (end < 0) end = 0\n\t } else if (end > len) {\n\t end = len\n\t }\n\t\n\t if (end < start) end = start\n\t\n\t var newBuf\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t newBuf = this.subarray(start, end)\n\t newBuf.__proto__ = Buffer.prototype\n\t } else {\n\t var sliceLen = end - start\n\t newBuf = new Buffer(sliceLen, undefined)\n\t for (var i = 0; i < sliceLen; ++i) {\n\t newBuf[i] = this[i + start]\n\t }\n\t }\n\t\n\t return newBuf\n\t}\n\t\n\t/*\n\t * Need to make sure that buffer isn't trying to write out of bounds.\n\t */\n\tfunction checkOffset (offset, ext, length) {\n\t if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n\t if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n\t}\n\t\n\tBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkOffset(offset, byteLength, this.length)\n\t\n\t var val = this[offset]\n\t var mul = 1\n\t var i = 0\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul\n\t }\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) {\n\t checkOffset(offset, byteLength, this.length)\n\t }\n\t\n\t var val = this[offset + --byteLength]\n\t var mul = 1\n\t while (byteLength > 0 && (mul *= 0x100)) {\n\t val += this[offset + --byteLength] * mul\n\t }\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 1, this.length)\n\t return this[offset]\n\t}\n\t\n\tBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t return this[offset] | (this[offset + 1] << 8)\n\t}\n\t\n\tBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t return (this[offset] << 8) | this[offset + 1]\n\t}\n\t\n\tBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return ((this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16)) +\n\t (this[offset + 3] * 0x1000000)\n\t}\n\t\n\tBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return (this[offset] * 0x1000000) +\n\t ((this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t this[offset + 3])\n\t}\n\t\n\tBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkOffset(offset, byteLength, this.length)\n\t\n\t var val = this[offset]\n\t var mul = 1\n\t var i = 0\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t val += this[offset + i] * mul\n\t }\n\t mul *= 0x80\n\t\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) checkOffset(offset, byteLength, this.length)\n\t\n\t var i = byteLength\n\t var mul = 1\n\t var val = this[offset + --i]\n\t while (i > 0 && (mul *= 0x100)) {\n\t val += this[offset + --i] * mul\n\t }\n\t mul *= 0x80\n\t\n\t if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\t\n\t return val\n\t}\n\t\n\tBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 1, this.length)\n\t if (!(this[offset] & 0x80)) return (this[offset])\n\t return ((0xff - this[offset] + 1) * -1)\n\t}\n\t\n\tBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t var val = this[offset] | (this[offset + 1] << 8)\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t}\n\t\n\tBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 2, this.length)\n\t var val = this[offset + 1] | (this[offset] << 8)\n\t return (val & 0x8000) ? val | 0xFFFF0000 : val\n\t}\n\t\n\tBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return (this[offset]) |\n\t (this[offset + 1] << 8) |\n\t (this[offset + 2] << 16) |\n\t (this[offset + 3] << 24)\n\t}\n\t\n\tBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t\n\t return (this[offset] << 24) |\n\t (this[offset + 1] << 16) |\n\t (this[offset + 2] << 8) |\n\t (this[offset + 3])\n\t}\n\t\n\tBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t return ieee754.read(this, offset, true, 23, 4)\n\t}\n\t\n\tBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 4, this.length)\n\t return ieee754.read(this, offset, false, 23, 4)\n\t}\n\t\n\tBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 8, this.length)\n\t return ieee754.read(this, offset, true, 52, 8)\n\t}\n\t\n\tBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n\t if (!noAssert) checkOffset(offset, 8, this.length)\n\t return ieee754.read(this, offset, false, 52, 8)\n\t}\n\t\n\tfunction checkInt (buf, value, offset, ext, max, min) {\n\t if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n\t if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t}\n\t\n\tBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) {\n\t var maxBytes = Math.pow(2, 8 * byteLength) - 1\n\t checkInt(this, value, offset, byteLength, maxBytes, 0)\n\t }\n\t\n\t var mul = 1\n\t var i = 0\n\t this[offset] = value & 0xFF\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t byteLength = byteLength | 0\n\t if (!noAssert) {\n\t var maxBytes = Math.pow(2, 8 * byteLength) - 1\n\t checkInt(this, value, offset, byteLength, maxBytes, 0)\n\t }\n\t\n\t var i = byteLength - 1\n\t var mul = 1\n\t this[offset + i] = value & 0xFF\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t this[offset + i] = (value / mul) & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n\t this[offset] = (value & 0xff)\n\t return offset + 1\n\t}\n\t\n\tfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n\t if (value < 0) value = 0xffff + value + 1\n\t for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {\n\t buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n\t (littleEndian ? i : 1 - i) * 8\n\t }\n\t}\n\t\n\tBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value & 0xff)\n\t this[offset + 1] = (value >>> 8)\n\t } else {\n\t objectWriteUInt16(this, value, offset, true)\n\t }\n\t return offset + 2\n\t}\n\t\n\tBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 8)\n\t this[offset + 1] = (value & 0xff)\n\t } else {\n\t objectWriteUInt16(this, value, offset, false)\n\t }\n\t return offset + 2\n\t}\n\t\n\tfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n\t if (value < 0) value = 0xffffffff + value + 1\n\t for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {\n\t buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n\t }\n\t}\n\t\n\tBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset + 3] = (value >>> 24)\n\t this[offset + 2] = (value >>> 16)\n\t this[offset + 1] = (value >>> 8)\n\t this[offset] = (value & 0xff)\n\t } else {\n\t objectWriteUInt32(this, value, offset, true)\n\t }\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 24)\n\t this[offset + 1] = (value >>> 16)\n\t this[offset + 2] = (value >>> 8)\n\t this[offset + 3] = (value & 0xff)\n\t } else {\n\t objectWriteUInt32(this, value, offset, false)\n\t }\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) {\n\t var limit = Math.pow(2, 8 * byteLength - 1)\n\t\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit)\n\t }\n\t\n\t var i = 0\n\t var mul = 1\n\t var sub = 0\n\t this[offset] = value & 0xFF\n\t while (++i < byteLength && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n\t sub = 1\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) {\n\t var limit = Math.pow(2, 8 * byteLength - 1)\n\t\n\t checkInt(this, value, offset, byteLength, limit - 1, -limit)\n\t }\n\t\n\t var i = byteLength - 1\n\t var mul = 1\n\t var sub = 0\n\t this[offset + i] = value & 0xFF\n\t while (--i >= 0 && (mul *= 0x100)) {\n\t if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n\t sub = 1\n\t }\n\t this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n\t }\n\t\n\t return offset + byteLength\n\t}\n\t\n\tBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n\t if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n\t if (value < 0) value = 0xff + value + 1\n\t this[offset] = (value & 0xff)\n\t return offset + 1\n\t}\n\t\n\tBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value & 0xff)\n\t this[offset + 1] = (value >>> 8)\n\t } else {\n\t objectWriteUInt16(this, value, offset, true)\n\t }\n\t return offset + 2\n\t}\n\t\n\tBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 8)\n\t this[offset + 1] = (value & 0xff)\n\t } else {\n\t objectWriteUInt16(this, value, offset, false)\n\t }\n\t return offset + 2\n\t}\n\t\n\tBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value & 0xff)\n\t this[offset + 1] = (value >>> 8)\n\t this[offset + 2] = (value >>> 16)\n\t this[offset + 3] = (value >>> 24)\n\t } else {\n\t objectWriteUInt32(this, value, offset, true)\n\t }\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n\t value = +value\n\t offset = offset | 0\n\t if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n\t if (value < 0) value = 0xffffffff + value + 1\n\t if (Buffer.TYPED_ARRAY_SUPPORT) {\n\t this[offset] = (value >>> 24)\n\t this[offset + 1] = (value >>> 16)\n\t this[offset + 2] = (value >>> 8)\n\t this[offset + 3] = (value & 0xff)\n\t } else {\n\t objectWriteUInt32(this, value, offset, false)\n\t }\n\t return offset + 4\n\t}\n\t\n\tfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n\t if (offset + ext > buf.length) throw new RangeError('Index out of range')\n\t if (offset < 0) throw new RangeError('Index out of range')\n\t}\n\t\n\tfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n\t }\n\t ieee754.write(buf, value, offset, littleEndian, 23, 4)\n\t return offset + 4\n\t}\n\t\n\tBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, true, noAssert)\n\t}\n\t\n\tBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n\t return writeFloat(this, value, offset, false, noAssert)\n\t}\n\t\n\tfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n\t if (!noAssert) {\n\t checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n\t }\n\t ieee754.write(buf, value, offset, littleEndian, 52, 8)\n\t return offset + 8\n\t}\n\t\n\tBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, true, noAssert)\n\t}\n\t\n\tBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n\t return writeDouble(this, value, offset, false, noAssert)\n\t}\n\t\n\t// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\n\tBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n\t if (!start) start = 0\n\t if (!end && end !== 0) end = this.length\n\t if (targetStart >= target.length) targetStart = target.length\n\t if (!targetStart) targetStart = 0\n\t if (end > 0 && end < start) end = start\n\t\n\t // Copy 0 bytes; we're done\n\t if (end === start) return 0\n\t if (target.length === 0 || this.length === 0) return 0\n\t\n\t // Fatal error conditions\n\t if (targetStart < 0) {\n\t throw new RangeError('targetStart out of bounds')\n\t }\n\t if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n\t if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\t\n\t // Are we oob?\n\t if (end > this.length) end = this.length\n\t if (target.length - targetStart < end - start) {\n\t end = target.length - targetStart + start\n\t }\n\t\n\t var len = end - start\n\t var i\n\t\n\t if (this === target && start < targetStart && targetStart < end) {\n\t // descending copy from end\n\t for (i = len - 1; i >= 0; --i) {\n\t target[i + targetStart] = this[i + start]\n\t }\n\t } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n\t // ascending copy from start\n\t for (i = 0; i < len; ++i) {\n\t target[i + targetStart] = this[i + start]\n\t }\n\t } else {\n\t Uint8Array.prototype.set.call(\n\t target,\n\t this.subarray(start, start + len),\n\t targetStart\n\t )\n\t }\n\t\n\t return len\n\t}\n\t\n\t// Usage:\n\t// buffer.fill(number[, offset[, end]])\n\t// buffer.fill(buffer[, offset[, end]])\n\t// buffer.fill(string[, offset[, end]][, encoding])\n\tBuffer.prototype.fill = function fill (val, start, end, encoding) {\n\t // Handle string cases:\n\t if (typeof val === 'string') {\n\t if (typeof start === 'string') {\n\t encoding = start\n\t start = 0\n\t end = this.length\n\t } else if (typeof end === 'string') {\n\t encoding = end\n\t end = this.length\n\t }\n\t if (val.length === 1) {\n\t var code = val.charCodeAt(0)\n\t if (code < 256) {\n\t val = code\n\t }\n\t }\n\t if (encoding !== undefined && typeof encoding !== 'string') {\n\t throw new TypeError('encoding must be a string')\n\t }\n\t if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n\t throw new TypeError('Unknown encoding: ' + encoding)\n\t }\n\t } else if (typeof val === 'number') {\n\t val = val & 255\n\t }\n\t\n\t // Invalid ranges are not set to a default, so can range check early.\n\t if (start < 0 || this.length < start || this.length < end) {\n\t throw new RangeError('Out of range index')\n\t }\n\t\n\t if (end <= start) {\n\t return this\n\t }\n\t\n\t start = start >>> 0\n\t end = end === undefined ? this.length : end >>> 0\n\t\n\t if (!val) val = 0\n\t\n\t var i\n\t if (typeof val === 'number') {\n\t for (i = start; i < end; ++i) {\n\t this[i] = val\n\t }\n\t } else {\n\t var bytes = Buffer.isBuffer(val)\n\t ? val\n\t : utf8ToBytes(new Buffer(val, encoding).toString())\n\t var len = bytes.length\n\t for (i = 0; i < end - start; ++i) {\n\t this[i + start] = bytes[i % len]\n\t }\n\t }\n\t\n\t return this\n\t}\n\t\n\t// HELPER FUNCTIONS\n\t// ================\n\t\n\tvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\t\n\tfunction base64clean (str) {\n\t // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n\t str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n\t // Node converts strings with length < 2 to ''\n\t if (str.length < 2) return ''\n\t // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n\t while (str.length % 4 !== 0) {\n\t str = str + '='\n\t }\n\t return str\n\t}\n\t\n\tfunction stringtrim (str) {\n\t if (str.trim) return str.trim()\n\t return str.replace(/^\\s+|\\s+$/g, '')\n\t}\n\t\n\tfunction toHex (n) {\n\t if (n < 16) return '0' + n.toString(16)\n\t return n.toString(16)\n\t}\n\t\n\tfunction utf8ToBytes (string, units) {\n\t units = units || Infinity\n\t var codePoint\n\t var length = string.length\n\t var leadSurrogate = null\n\t var bytes = []\n\t\n\t for (var i = 0; i < length; ++i) {\n\t codePoint = string.charCodeAt(i)\n\t\n\t // is surrogate component\n\t if (codePoint > 0xD7FF && codePoint < 0xE000) {\n\t // last char was a lead\n\t if (!leadSurrogate) {\n\t // no lead yet\n\t if (codePoint > 0xDBFF) {\n\t // unexpected trail\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t continue\n\t } else if (i + 1 === length) {\n\t // unpaired lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t continue\n\t }\n\t\n\t // valid lead\n\t leadSurrogate = codePoint\n\t\n\t continue\n\t }\n\t\n\t // 2 leads in a row\n\t if (codePoint < 0xDC00) {\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t leadSurrogate = codePoint\n\t continue\n\t }\n\t\n\t // valid surrogate pair\n\t codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n\t } else if (leadSurrogate) {\n\t // valid bmp char, but last char was a lead\n\t if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n\t }\n\t\n\t leadSurrogate = null\n\t\n\t // encode utf8\n\t if (codePoint < 0x80) {\n\t if ((units -= 1) < 0) break\n\t bytes.push(codePoint)\n\t } else if (codePoint < 0x800) {\n\t if ((units -= 2) < 0) break\n\t bytes.push(\n\t codePoint >> 0x6 | 0xC0,\n\t codePoint & 0x3F | 0x80\n\t )\n\t } else if (codePoint < 0x10000) {\n\t if ((units -= 3) < 0) break\n\t bytes.push(\n\t codePoint >> 0xC | 0xE0,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t )\n\t } else if (codePoint < 0x110000) {\n\t if ((units -= 4) < 0) break\n\t bytes.push(\n\t codePoint >> 0x12 | 0xF0,\n\t codePoint >> 0xC & 0x3F | 0x80,\n\t codePoint >> 0x6 & 0x3F | 0x80,\n\t codePoint & 0x3F | 0x80\n\t )\n\t } else {\n\t throw new Error('Invalid code point')\n\t }\n\t }\n\t\n\t return bytes\n\t}\n\t\n\tfunction asciiToBytes (str) {\n\t var byteArray = []\n\t for (var i = 0; i < str.length; ++i) {\n\t // Node's code seems to be doing this and not & 0x7F..\n\t byteArray.push(str.charCodeAt(i) & 0xFF)\n\t }\n\t return byteArray\n\t}\n\t\n\tfunction utf16leToBytes (str, units) {\n\t var c, hi, lo\n\t var byteArray = []\n\t for (var i = 0; i < str.length; ++i) {\n\t if ((units -= 2) < 0) break\n\t\n\t c = str.charCodeAt(i)\n\t hi = c >> 8\n\t lo = c % 256\n\t byteArray.push(lo)\n\t byteArray.push(hi)\n\t }\n\t\n\t return byteArray\n\t}\n\t\n\tfunction base64ToBytes (str) {\n\t return base64.toByteArray(base64clean(str))\n\t}\n\t\n\tfunction blitBuffer (src, dst, offset, length) {\n\t for (var i = 0; i < length; ++i) {\n\t if ((i + offset >= dst.length) || (i >= src.length)) break\n\t dst[i + offset] = src[i]\n\t }\n\t return i\n\t}\n\t\n\tfunction isnan (val) {\n\t return val !== val // eslint-disable-line no-self-compare\n\t}\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))\n\n/***/ }),\n\n/***/ 643:\n/***/ (function(module, exports) {\n\n\texports.read = function (buffer, offset, isLE, mLen, nBytes) {\n\t var e, m\n\t var eLen = (nBytes * 8) - mLen - 1\n\t var eMax = (1 << eLen) - 1\n\t var eBias = eMax >> 1\n\t var nBits = -7\n\t var i = isLE ? (nBytes - 1) : 0\n\t var d = isLE ? -1 : 1\n\t var s = buffer[offset + i]\n\t\n\t i += d\n\t\n\t e = s & ((1 << (-nBits)) - 1)\n\t s >>= (-nBits)\n\t nBits += eLen\n\t for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\t\n\t m = e & ((1 << (-nBits)) - 1)\n\t e >>= (-nBits)\n\t nBits += mLen\n\t for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\t\n\t if (e === 0) {\n\t e = 1 - eBias\n\t } else if (e === eMax) {\n\t return m ? NaN : ((s ? -1 : 1) * Infinity)\n\t } else {\n\t m = m + Math.pow(2, mLen)\n\t e = e - eBias\n\t }\n\t return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n\t}\n\t\n\texports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n\t var e, m, c\n\t var eLen = (nBytes * 8) - mLen - 1\n\t var eMax = (1 << eLen) - 1\n\t var eBias = eMax >> 1\n\t var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n\t var i = isLE ? 0 : (nBytes - 1)\n\t var d = isLE ? 1 : -1\n\t var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\t\n\t value = Math.abs(value)\n\t\n\t if (isNaN(value) || value === Infinity) {\n\t m = isNaN(value) ? 1 : 0\n\t e = eMax\n\t } else {\n\t e = Math.floor(Math.log(value) / Math.LN2)\n\t if (value * (c = Math.pow(2, -e)) < 1) {\n\t e--\n\t c *= 2\n\t }\n\t if (e + eBias >= 1) {\n\t value += rt / c\n\t } else {\n\t value += rt * Math.pow(2, 1 - eBias)\n\t }\n\t if (value * c >= 2) {\n\t e++\n\t c /= 2\n\t }\n\t\n\t if (e + eBias >= eMax) {\n\t m = 0\n\t e = eMax\n\t } else if (e + eBias >= 1) {\n\t m = ((value * c) - 1) * Math.pow(2, mLen)\n\t e = e + eBias\n\t } else {\n\t m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n\t e = 0\n\t }\n\t }\n\t\n\t for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\t\n\t e = (e << mLen) | m\n\t eLen += mLen\n\t for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\t\n\t buffer[offset + i - d] |= s * 128\n\t}\n\n\n/***/ }),\n\n/***/ 219:\n/***/ (function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(Buffer) {\"use strict\";\n\t\n\texports.__esModule = true;\n\texports.CampaignPageQuery = undefined;\n\t\n\tvar _react = __webpack_require__(3);\n\t\n\tvar _react2 = _interopRequireDefault(_react);\n\t\n\tvar _propTypes = __webpack_require__(7);\n\t\n\tvar PropTypes = _interopRequireWildcard(_propTypes);\n\t\n\tvar _gatsbyLink = __webpack_require__(69);\n\t\n\tvar _gatsbyLink2 = _interopRequireDefault(_gatsbyLink);\n\t\n\tfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }\n\t\n\tfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\t\n\tfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\t\n\tfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\t\n\tfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\t\n\tvar propTypes = {\n\t data: PropTypes.object.isRequired\n\t};\n\t\n\tvar assignmentsTemplate = function (_React$Component) {\n\t _inherits(assignmentsTemplate, _React$Component);\n\t\n\t function assignmentsTemplate() {\n\t _classCallCheck(this, assignmentsTemplate);\n\t\n\t return _possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n\t }\n\t\n\t assignmentsTemplate.prototype.render = function render() {\n\t var allcampagin = this.props.data.allcampagin.edges;\n\t var assignments = this.props.data.assignments.edges;\n\t //console.log(\"allcampagin\"+allcampagin); \n\t var pathid = this.props.location.pathname;\n\t var str_array = pathid.split('/');\n\t var p_id;\n\t for (var i = 0; i < str_array.length; i++) {\n\t str_array[i] = str_array[i].replace(/^\\s*/, \"\").replace(/\\s*$/, \"\");\n\t p_id = str_array[i];\n\t }\n\t //console.log(p_id)\n\t //console.log(this.props.match.params.id);\n\t var arr1 = new Array();\n\t var identities;\n\t var camName;\n\t allcampagin.forEach(function (_ref) {\n\t var node = _ref.node;\n\t\n\t node.campaigns.forEach(function (_ref2) {\n\t var id = _ref2.id,\n\t name = _ref2.name,\n\t contents = _ref2.contents;\n\t\n\t if (id == p_id) {\n\t console.log(name);\n\t\n\t camName = name;\n\t contents.forEach(function (_ref3) {\n\t var id = _ref3.id,\n\t name = _ref3.name,\n\t identity = _ref3.identity;\n\t\n\t //console.log(id);\n\t // console.log(name);\n\t //console.log(identity);\n\t identities = Buffer.from(\"assignment:\" + identity).toString('base64');\n\t //console.log(identities);\n\t arr1.push(identities);\n\t });\n\t }\n\t });\n\t });\n\t\n\t var arr2 = new Array();\n\t var arr_title = new Array();\n\t assignments.forEach(function (_ref4) {\n\t var node = _ref4.node;\n\t\n\t var assid;\n\t var i;\n\t for (i = 0; i <= arr1.length; i++) {\n\t assid = node.id;\n\t if (arr1[i] == assid) {\n\t arr2.push({ id: node.id, title: node.title });\n\t // console.log(node.id);\n\t // console.log(node.title);\n\t }\n\t }\n\t });\n\t console.log(\"aa=>\" + JSON.stringify(arr2));\n\t return _react2.default.createElement(\n\t \"div\",\n\t { style: { marginBottom: \"5rem\" } },\n\t _react2.default.createElement(\n\t \"section\",\n\t { className: \"campagin\", style: { textAlign: \"center\" } },\n\t _react2.default.createElement(\n\t \"h2\",\n\t null,\n\t camName\n\t ),\n\t _react2.default.createElement(\n\t \"nav\",\n\t null,\n\t _react2.default.createElement(\n\t \"ul\",\n\t {\n\t style: {\n\t listStyle: \"none\",\n\t width: \"100%\"\n\t }\n\t },\n\t arr2.map(function (_ref5, i) {\n\t var id = _ref5.id,\n\t title = _ref5.title;\n\t return _react2.default.createElement(\n\t \"div\",\n\t null,\n\t _react2.default.createElement(\n\t \"li\",\n\t null,\n\t _react2.default.createElement(\n\t _gatsbyLink2.default,\n\t {\n\t to: \"/assignmentdetails/\" + id,\n\t style: {\n\t textDecoration: \"none\"\n\t }\n\t },\n\t \" \",\n\t title\n\t )\n\t )\n\t );\n\t })\n\t )\n\t )\n\t )\n\t );\n\t };\n\t\n\t return assignmentsTemplate;\n\t}(_react2.default.Component);\n\t\n\tassignmentsTemplate.propTypes = propTypes;\n\t\n\texports.default = assignmentsTemplate;\n\tvar CampaignPageQuery = exports.CampaignPageQuery = \"** extracted graphql fragment **\";\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(231).Buffer))\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// component---src-templates-assignments-template-js-1d16f5c8afb9fda71a83.js","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction placeHoldersCount (b64) {\n var len = b64.length\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // the number of equal signs (place holders)\n // if there are two placeholders, than the two characters before it\n // represent one byte\n // if there is only one, then the three characters before it represent 2 bytes\n // this is just a cheap hack to not do indexOf twice\n return b64[len - 2] === '=' ? 2 : b64[len - 1] === '=' ? 1 : 0\n}\n\nfunction byteLength (b64) {\n // base64 is 4/3 + up to two characters of the original data\n return (b64.length * 3 / 4) - placeHoldersCount(b64)\n}\n\nfunction toByteArray (b64) {\n var i, l, tmp, placeHolders, arr\n var len = b64.length\n placeHolders = placeHoldersCount(b64)\n\n arr = new Arr((len * 3 / 4) - placeHolders)\n\n // if there are placeholders, only get up to the last complete 4 chars\n l = placeHolders > 0 ? len - 4 : len\n\n var L = 0\n\n for (i = 0; i < l; i += 4) {\n tmp = (revLookup[b64.charCodeAt(i)] << 18) | (revLookup[b64.charCodeAt(i + 1)] << 12) | (revLookup[b64.charCodeAt(i + 2)] << 6) | revLookup[b64.charCodeAt(i + 3)]\n arr[L++] = (tmp >> 16) & 0xFF\n arr[L++] = (tmp >> 8) & 0xFF\n arr[L++] = tmp & 0xFF\n }\n\n if (placeHolders === 2) {\n tmp = (revLookup[b64.charCodeAt(i)] << 2) | (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[L++] = tmp & 0xFF\n } else if (placeHolders === 1) {\n tmp = (revLookup[b64.charCodeAt(i)] << 10) | (revLookup[b64.charCodeAt(i + 1)] << 4) | (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[L++] = (tmp >> 8) & 0xFF\n arr[L++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] + lookup[num >> 12 & 0x3F] + lookup[num >> 6 & 0x3F] + lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp = ((uint8[i] << 16) & 0xFF0000) + ((uint8[i + 1] << 8) & 0xFF00) + (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var output = ''\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n output += lookup[tmp >> 2]\n output += lookup[(tmp << 4) & 0x3F]\n output += '=='\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + (uint8[len - 1])\n output += lookup[tmp >> 10]\n output += lookup[(tmp >> 4) & 0x3F]\n output += lookup[(tmp << 2) & 0x3F]\n output += '='\n }\n\n parts.push(output)\n\n return parts.join('')\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/base64-js/index.js\n// module id = 230\n// module chunks = 34866721043124","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <[email protected]> <http://feross.org>\n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('isarray')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Due to various browser bugs, sometimes the Object implementation will be used even\n * when the browser supports typed arrays.\n *\n * Note:\n *\n * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n * get the Object implementation, which is slower but behaves correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n ? global.TYPED_ARRAY_SUPPORT\n : typedArraySupport()\n\n/*\n * Export kMaxLength after typed array support is determined.\n */\nexports.kMaxLength = kMaxLength()\n\nfunction typedArraySupport () {\n try {\n var arr = new Uint8Array(1)\n arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}\n return arr.foo() === 42 && // typed array instances can be augmented\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n}\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\nfunction createBuffer (that, length) {\n if (kMaxLength() < length) {\n throw new RangeError('Invalid typed array length')\n }\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = new Uint8Array(length)\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n if (that === null) {\n that = new Buffer(length)\n }\n that.length = length\n }\n\n return that\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n return new Buffer(arg, encodingOrOffset, length)\n }\n\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new Error(\n 'If encoding is specified then the first argument must be a string'\n )\n }\n return allocUnsafe(this, arg)\n }\n return from(this, arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\n// TODO: Legacy, not needed anymore. Remove in next major version.\nBuffer._augment = function (arr) {\n arr.__proto__ = Buffer.prototype\n return arr\n}\n\nfunction from (that, value, encodingOrOffset, length) {\n if (typeof value === 'number') {\n throw new TypeError('\"value\" argument must not be a number')\n }\n\n if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n return fromArrayBuffer(that, value, encodingOrOffset, length)\n }\n\n if (typeof value === 'string') {\n return fromString(that, value, encodingOrOffset)\n }\n\n return fromObject(that, value)\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(null, value, encodingOrOffset, length)\n}\n\nif (Buffer.TYPED_ARRAY_SUPPORT) {\n Buffer.prototype.__proto__ = Uint8Array.prototype\n Buffer.__proto__ = Uint8Array\n if (typeof Symbol !== 'undefined' && Symbol.species &&\n Buffer[Symbol.species] === Buffer) {\n // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n Object.defineProperty(Buffer, Symbol.species, {\n value: null,\n configurable: true\n })\n }\n}\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be a number')\n } else if (size < 0) {\n throw new RangeError('\"size\" argument must not be negative')\n }\n}\n\nfunction alloc (that, size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(that, size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpretted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(that, size).fill(fill, encoding)\n : createBuffer(that, size).fill(fill)\n }\n return createBuffer(that, size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(null, size, fill, encoding)\n}\n\nfunction allocUnsafe (that, size) {\n assertSize(size)\n that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < size; ++i) {\n that[i] = 0\n }\n }\n return that\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(null, size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(null, size)\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('\"encoding\" must be a valid string encoding')\n }\n\n var length = byteLength(string, encoding) | 0\n that = createBuffer(that, length)\n\n var actual = that.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n that = that.slice(0, actual)\n }\n\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = array.length < 0 ? 0 : checked(array.length) | 0\n that = createBuffer(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayBuffer (that, array, byteOffset, length) {\n array.byteLength // this throws if `array` is not a valid ArrayBuffer\n\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\\'offset\\' is out of bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\\'length\\' is out of bounds')\n }\n\n if (byteOffset === undefined && length === undefined) {\n array = new Uint8Array(array)\n } else if (length === undefined) {\n array = new Uint8Array(array, byteOffset)\n } else {\n array = new Uint8Array(array, byteOffset, length)\n }\n\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = array\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n that = fromArrayLike(that, array)\n }\n return that\n}\n\nfunction fromObject (that, obj) {\n if (Buffer.isBuffer(obj)) {\n var len = checked(obj.length) | 0\n that = createBuffer(that, len)\n\n if (that.length === 0) {\n return that\n }\n\n obj.copy(that, 0, 0, len)\n return that\n }\n\n if (obj) {\n if ((typeof ArrayBuffer !== 'undefined' &&\n obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n if (typeof obj.length !== 'number' || isnan(obj.length)) {\n return createBuffer(that, 0)\n }\n return fromArrayLike(that, obj)\n }\n\n if (obj.type === 'Buffer' && isArray(obj.data)) {\n return fromArrayLike(that, obj.data)\n }\n }\n\n throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength()` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n var buffer = Buffer.allocUnsafe(length)\n var pos = 0\n for (i = 0; i < list.length; ++i) {\n var buf = list[i]\n if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n buf.copy(buffer, pos)\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n string = '' + string\n }\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n case undefined:\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect\n// Buffer instances.\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n var i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n var len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (var i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n var len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (var i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n var len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (var i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return '<Buffer ' + str + '>'\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (!Buffer.isBuffer(target)) {\n throw new TypeError('Argument must be a Buffer')\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n var x = thisEnd - thisStart\n var y = end - start\n var len = Math.min(x, y)\n\n var thisCopy = this.slice(thisStart, thisEnd)\n var targetCopy = target.slice(start, end)\n\n for (var i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (isNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (Buffer.TYPED_ARRAY_SUPPORT &&\n typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n var indexSize = 1\n var arrLength = arr.length\n var valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n var i\n if (dir) {\n var foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n var found = true\n for (var j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; ++i) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction latin1Write (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'latin1':\n case 'binary':\n return latin1Write(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; ++i) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = this.subarray(start, end)\n newBuf.__proto__ = Buffer.prototype\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; ++i) {\n newBuf[i] = this[i + start]\n }\n }\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n var i\n\n if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (i = len - 1; i >= 0; --i) {\n target[i + targetStart] = this[i + start]\n }\n } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n // ascending copy from start\n for (i = 0; i < len; ++i) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, start + len),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (val.length === 1) {\n var code = val.charCodeAt(0)\n if (code < 256) {\n val = code\n }\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n } else if (typeof val === 'number') {\n val = val & 255\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n var i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n var bytes = Buffer.isBuffer(val)\n ? val\n : utf8ToBytes(new Buffer(val, encoding).toString())\n var len = bytes.length\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\nfunction isnan (val) {\n return val !== val // eslint-disable-line no-self-compare\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/buffer/index.js\n// module id = 231\n// module chunks = 34866721043124","exports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/ieee754/index.js\n// module id = 643\n// module chunks = 34866721043124","import React from \"react\";\nimport * as PropTypes from \"prop-types\";\nimport Link from \"gatsby-link\";\n\nconst propTypes = {\n data: PropTypes.object.isRequired\n};\n\nclass assignmentsTemplate extends React.Component {\n render() {\n const allcampagin = this.props.data.allcampagin.edges; \n const assignments = this.props.data.assignments.edges;\n //console.log(\"allcampagin\"+allcampagin); \n const pathid = this.props.location.pathname; \n var str_array = pathid.split('/');\n var p_id;\n for(var i = 0; i < str_array.length; i++) {\n str_array[i] = str_array[i].replace(/^\\s*/, \"\").replace(/\\s*$/, \"\");\n p_id = str_array[i];\n }\n //console.log(p_id)\n //console.log(this.props.match.params.id);\n var arr1 = new Array();\n var identities;\n var camName;\n allcampagin.forEach(({ node }) => {\n node.campaigns.forEach(({ id,name,contents }) => {\n if(id==p_id){\n console.log(name);\n\n camName = name;\n contents.forEach(({ id,name,identity }) => {\n //console.log(id);\n // console.log(name);\n //console.log(identity);\n identities = Buffer.from(\"assignment:\"+identity).toString('base64');\n //console.log(identities);\n arr1.push(identities);\n });\n } \n });\n });\n\n var arr2 = new Array();\n var arr_title = new Array();\n assignments.forEach(({ node }) => { \n var assid;\n var i;\n for(i=0;i<=arr1.length;i++){ \n assid =node.id;\n if(arr1[i]==assid){\n arr2.push({id:node.id, title:node.title});\n // console.log(node.id);\n // console.log(node.title);\n }\n }\n\n \n });\n console.log(\"aa=>\"+JSON.stringify(arr2));\n return (\n \n\n<div style={{ marginBottom: `5rem` }}>\n<section className=\"campagin\" style={{ textAlign: `center` }}>\n <h2>\n {camName}\n </h2>\n <nav>\n <ul\n style={{\n listStyle: `none`,\n width: `100%`\n }}\n > \n {arr2.map(({ id,title }, i) => (\n <div> \n <li> \n <Link\n to={`/assignmentdetails/` + id}\n style={{\n textDecoration: `none`\n }}\n > {title}\n \n </Link> \n </li> \n </div>\n ))}\n </ul>\n </nav>\n</section>\n\n</div>\n );\n }\n}\n\nassignmentsTemplate.propTypes = propTypes;\n\nexport default assignmentsTemplate;\n\nexport const CampaignPageQuery = graphql`\n query getAllCampaigns{\n allcampagin: allCampaignNameSpace{\n edges{\n node{\n id\n namespace\n campaigns{\n id\n name\n contents{\n id\n name\n identity\n }\n } \n }\n }\n }\n assignments: allAssignment{\n edges{\n node{\n id\n title\n postId\n }\n }\n }\n }\n`;\n\n\n\n// WEBPACK FOOTER //\n// ./src/templates/assignmentsTemplate.js"],"sourceRoot":""}