Search
Search

Transaction: DvuT43V...psF6

Status
Failed
Transaction Fee
0.00024 
Deposit Value
0 
Gas Used
2 Tgas
Attached Gas
30 Tgas
Created
June 18, 2024 at 1:53:50am
Hash
DvuT43VHTpRjCv446hU1ELMeFzi1iACmdmCuQxzgpsF6

Actions

Called method: 'fs_store' in contract: kiwikiwikiwi.near
Arguments:
00000000: 72 65 6e 74 29 2e 70 6f 73 69 74 69 6f 6e 20 21 rent).position ! 00000010: 3d 3d 20 27 73 74 61 74 69 63 27 20 26 26 20 70 == 'static' && p 00000020: 6f 73 69 74 69 6f 6e 20 3d 3d 3d 20 27 61 62 73 osition === 'abs 00000030: 6f 6c 75 74 65 27 29 20 7b 5c 6e 20 20 20 20 20 olute') {\n 00000040: 20 20 20 68 65 69 67 68 74 50 72 6f 70 20 3d 20 heightProp = 00000050: 27 73 63 72 6f 6c 6c 48 65 69 67 68 74 27 3b 5c 'scrollHeight';\ 00000060: 6e 20 20 20 20 20 20 20 20 77 69 64 74 68 50 72 n widthPr 00000070: 6f 70 20 3d 20 27 73 63 72 6f 6c 6c 57 69 64 74 op = 'scrollWidt 00000080: 68 27 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 h';\n }\n 00000090: 20 20 7d 20 2f 2f 20 24 46 6c 6f 77 46 69 78 4d } // $FlowFixM 000000a0: 65 5b 69 6e 63 6f 6d 70 61 74 69 62 6c 65 2d 63 e[incompatible-c 000000b0: 61 73 74 5d 3a 20 66 6f 72 63 65 20 74 79 70 65 ast]: force type 000000c0: 20 72 65 66 69 6e 65 6d 65 6e 74 2c 20 77 65 20 refinement, we 000000d0: 63 6f 6d 70 61 72 65 20 6f 66 66 73 65 74 50 61 compare offsetPa 000000e0: 72 65 6e 74 20 77 69 74 68 20 77 69 6e 64 6f 77 rent with window 000000f0: 20 61 62 6f 76 65 2c 20 62 75 74 20 46 6c 6f 77 above, but Flow 00000100: 20 64 6f 65 73 6e 27 74 20 64 65 74 65 63 74 20 doesn't detect 00000110: 69 74 5c 6e 5c 6e 5c 6e 20 20 20 20 6f 66 66 73 it\n\n\n offs 00000120: 65 74 50 61 72 65 6e 74 20 3d 20 6f 66 66 73 65 etParent = offse 00000130: 74 50 61 72 65 6e 74 3b 5c 6e 5c 6e 20 20 20 20 tParent;\n\n 00000140: 69 66 20 28 70 6c 61 63 65 6d 65 6e 74 20 3d 3d if (placement == 00000150: 3d 20 74 6f 70 20 7c 7c 20 28 70 6c 61 63 65 6d = top || (placem 00000160: 65 6e 74 20 3d 3d 3d 20 6c 65 66 74 20 7c 7c 20 ent === left || 00000170: 70 6c 61 63 65 6d 65 6e 74 20 3d 3d 3d 20 72 69 placement === ri 00000180: 67 68 74 29 20 26 26 20 76 61 72 69 61 74 69 6f ght) && variatio 00000190: 6e 20 3d 3d 3d 20 65 6e 64 29 20 7b 5c 6e 20 20 n === end) {\n 000001a0: 20 20 20 20 73 69 64 65 59 20 3d 20 62 6f 74 74 sideY = bott 000001b0: 6f 6d 3b 5c 6e 20 20 20 20 20 20 76 61 72 20 6f om;\n var o 000001c0: 66 66 73 65 74 59 20 3d 20 69 73 46 69 78 65 64 ffsetY = isFixed 000001d0: 20 26 26 20 6f 66 66 73 65 74 50 61 72 65 6e 74 && offsetParent 000001e0: 20 3d 3d 3d 20 77 69 6e 20 26 26 20 77 69 6e 2e === win && win. 000001f0: 76 69 73 75 61 6c 56 69 65 77 70 6f 72 74 20 3f visualViewport ? 00000200: 20 77 69 6e 2e 76 69 73 75 61 6c 56 69 65 77 70 win.visualViewp 00000210: 6f 72 74 2e 68 65 69 67 68 74 20 3a 20 2f 2f 20 ort.height : // 00000220: 24 46 6c 6f 77 46 69 78 4d 65 5b 70 72 6f 70 2d $FlowFixMe[prop- 00000230: 6d 69 73 73 69 6e 67 5d 5c 6e 20 20 20 20 20 20 missing]\n 00000240: 6f 66 66 73 65 74 50 61 72 65 6e 74 5b 68 65 69 offsetParent[hei 00000250: 67 68 74 50 72 6f 70 5d 3b 5c 6e 20 20 20 20 20 ghtProp];\n 00000260: 20 79 20 2d 3d 20 6f 66 66 73 65 74 59 20 2d 20 y -= offsetY - 00000270: 70 6f 70 70 65 72 52 65 63 74 2e 68 65 69 67 68 popperRect.heigh 00000280: 74 3b 5c 6e 20 20 20 20 20 20 79 20 2a 3d 20 67 t;\n y *= g 00000290: 70 75 41 63 63 65 6c 65 72 61 74 69 6f 6e 20 3f puAcceleration ? 000002a0: 20 31 20 3a 20 2d 31 3b 5c 6e 20 20 20 20 7d 5c 1 : -1;\n }\ 000002b0: 6e 5c 6e 20 20 20 20 69 66 20 28 70 6c 61 63 65 n\n if (place 000002c0: 6d 65 6e 74 20 3d 3d 3d 20 6c 65 66 74 20 7c 7c ment === left || 000002d0: 20 28 70 6c 61 63 65 6d 65 6e 74 20 3d 3d 3d 20 (placement === 000002e0: 74 6f 70 20 7c 7c 20 70 6c 61 63 65 6d 65 6e 74 top || placement 000002f0: 20 3d 3d 3d 20 62 6f 74 74 6f 6d 29 20 26 26 20 === bottom) && 00000300: 76 61 72 69 61 74 69 6f 6e 20 3d 3d 3d 20 65 6e variation === en 00000310: 64 29 20 7b 5c 6e 20 20 20 20 20 20 73 69 64 65 d) {\n side 00000320: 58 20 3d 20 72 69 67 68 74 3b 5c 6e 20 20 20 20 X = right;\n 00000330: 20 20 76 61 72 20 6f 66 66 73 65 74 58 20 3d 20 var offsetX = 00000340: 69 73 46 69 78 65 64 20 26 26 20 6f 66 66 73 65 isFixed && offse 00000350: 74 50 61 72 65 6e 74 20 3d 3d 3d 20 77 69 6e 20 tParent === win 00000360: 26 26 20 77 69 6e 2e 76 69 73 75 61 6c 56 69 65 && win.visualVie 00000370: 77 70 6f 72 74 20 3f 20 77 69 6e 2e 76 69 73 75 wport ? win.visu 00000380: 61 6c 56 69 65 77 70 6f 72 74 2e 77 69 64 74 68 alViewport.width 00000390: 20 3a 20 2f 2f 20 24 46 6c 6f 77 46 69 78 4d 65 : // $FlowFixMe 000003a0: 5b 70 72 6f 70 2d 6d 69 73 73 69 6e 67 5d 5c 6e [prop-missing]\n 000003b0: 20 20 20 20 20 20 6f 66 66 73 65 74 50 61 72 65 offsetPare 000003c0: 6e 74 5b 77 69 64 74 68 50 72 6f 70 5d 3b 5c 6e nt[widthProp];\n 000003d0: 20 20 20 20 20 20 78 20 2d 3d 20 6f 66 66 73 65 x -= offse 000003e0: 74 58 20 2d 20 70 6f 70 70 65 72 52 65 63 74 2e tX - popperRect. 000003f0: 77 69 64 74 68 3b 5c 6e 20 20 20 20 20 20 78 20 width;\n x 00000400: 2a 3d 20 67 70 75 41 63 63 65 6c 65 72 61 74 69 *= gpuAccelerati 00000410: 6f 6e 20 3f 20 31 20 3a 20 2d 31 3b 5c 6e 20 20 on ? 1 : -1;\n 00000420: 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 76 61 }\n }\n\n va 00000430: 72 20 63 6f 6d 6d 6f 6e 53 74 79 6c 65 73 20 3d r commonStyles = 00000440: 20 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b Object.assign({ 00000450: 5c 6e 20 20 20 20 70 6f 73 69 74 69 6f 6e 3a 20 \n position: 00000460: 70 6f 73 69 74 69 6f 6e 5c 6e 20 20 7d 2c 20 61 position\n }, a 00000470: 64 61 70 74 69 76 65 20 26 26 20 75 6e 73 65 74 daptive && unset 00000480: 53 69 64 65 73 29 3b 5c 6e 5c 6e 20 20 76 61 72 Sides);\n\n var 00000490: 20 5f 72 65 66 34 20 3d 20 72 6f 75 6e 64 4f 66 _ref4 = roundOf 000004a0: 66 73 65 74 73 20 3d 3d 3d 20 74 72 75 65 20 3f fsets === true ? 000004b0: 20 72 6f 75 6e 64 4f 66 66 73 65 74 73 42 79 44 roundOffsetsByD 000004c0: 50 52 28 7b 5c 6e 20 20 20 20 78 3a 20 78 2c 5c PR({\n x: x,\ 000004d0: 6e 20 20 20 20 79 3a 20 79 5c 6e 20 20 7d 2c 20 n y: y\n }, 000004e0: 67 65 74 57 69 6e 64 6f 77 28 70 6f 70 70 65 72 getWindow(popper 000004f0: 29 29 20 3a 20 7b 5c 6e 20 20 20 20 78 3a 20 78 )) : {\n x: x 00000500: 2c 5c 6e 20 20 20 20 79 3a 20 79 5c 6e 20 20 7d ,\n y: y\n } 00000510: 3b 5c 6e 5c 6e 20 20 78 20 3d 20 5f 72 65 66 34 ;\n\n x = _ref4 00000520: 2e 78 3b 5c 6e 20 20 79 20 3d 20 5f 72 65 66 34 .x;\n y = _ref4 00000530: 2e 79 3b 5c 6e 5c 6e 20 20 69 66 20 28 67 70 75 .y;\n\n if (gpu 00000540: 41 63 63 65 6c 65 72 61 74 69 6f 6e 29 20 7b 5c Acceleration) {\ 00000550: 6e 20 20 20 20 76 61 72 20 5f 4f 62 6a 65 63 74 n var _Object 00000560: 24 61 73 73 69 67 6e 3b 5c 6e 5c 6e 20 20 20 20 $assign;\n\n 00000570: 72 65 74 75 72 6e 20 4f 62 6a 65 63 74 2e 61 73 return Object.as 00000580: 73 69 67 6e 28 7b 7d 2c 20 63 6f 6d 6d 6f 6e 53 sign({}, commonS 00000590: 74 79 6c 65 73 2c 20 28 5f 4f 62 6a 65 63 74 24 tyles, (_Object$ 000005a0: 61 73 73 69 67 6e 20 3d 20 7b 7d 2c 20 5f 4f 62 assign = {}, _Ob 000005b0: 6a 65 63 74 24 61 73 73 69 67 6e 5b 73 69 64 65 ject$assign[side 000005c0: 59 5d 20 3d 20 68 61 73 59 20 3f 20 27 30 27 20 Y] = hasY ? '0' 000005d0: 3a 20 27 27 2c 20 5f 4f 62 6a 65 63 74 24 61 73 : '', _Object$as 000005e0: 73 69 67 6e 5b 73 69 64 65 58 5d 20 3d 20 68 61 sign[sideX] = ha 000005f0: 73 58 20 3f 20 27 30 27 20 3a 20 27 27 2c 20 5f sX ? '0' : '', _ 00000600: 4f 62 6a 65 63 74 24 61 73 73 69 67 6e 2e 74 72 Object$assign.tr 00000610: 61 6e 73 66 6f 72 6d 20 3d 20 28 77 69 6e 2e 64 ansform = (win.d 00000620: 65 76 69 63 65 50 69 78 65 6c 52 61 74 69 6f 20 evicePixelRatio 00000630: 7c 7c 20 31 29 20 3c 3d 20 31 20 3f 20 5c 22 74 || 1) <= 1 ? \"t 00000640: 72 61 6e 73 6c 61 74 65 28 5c 22 20 2b 20 78 20 ranslate(\" + x 00000650: 2b 20 5c 22 70 78 2c 20 5c 22 20 2b 20 79 20 2b + \"px, \" + y + 00000660: 20 5c 22 70 78 29 5c 22 20 3a 20 5c 22 74 72 61 \"px)\" : \"tra 00000670: 6e 73 6c 61 74 65 33 64 28 5c 22 20 2b 20 78 20 nslate3d(\" + x 00000680: 2b 20 5c 22 70 78 2c 20 5c 22 20 2b 20 79 20 2b + \"px, \" + y + 00000690: 20 5c 22 70 78 2c 20 30 29 5c 22 2c 20 5f 4f 62 \"px, 0)\", _Ob 000006a0: 6a 65 63 74 24 61 73 73 69 67 6e 29 29 3b 5c 6e ject$assign));\n 000006b0: 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 }\n\n return 000006c0: 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b 7d Object.assign({} 000006d0: 2c 20 63 6f 6d 6d 6f 6e 53 74 79 6c 65 73 2c 20 , commonStyles, 000006e0: 28 5f 4f 62 6a 65 63 74 24 61 73 73 69 67 6e 32 (_Object$assign2 000006f0: 20 3d 20 7b 7d 2c 20 5f 4f 62 6a 65 63 74 24 61 = {}, _Object$a 00000700: 73 73 69 67 6e 32 5b 73 69 64 65 59 5d 20 3d 20 ssign2[sideY] = 00000710: 68 61 73 59 20 3f 20 79 20 2b 20 5c 22 70 78 5c hasY ? y + \"px\ 00000720: 22 20 3a 20 27 27 2c 20 5f 4f 62 6a 65 63 74 24 " : '', _Object$ 00000730: 61 73 73 69 67 6e 32 5b 73 69 64 65 58 5d 20 3d assign2[sideX] = 00000740: 20 68 61 73 58 20 3f 20 78 20 2b 20 5c 22 70 78 hasX ? x + \"px 00000750: 5c 22 20 3a 20 27 27 2c 20 5f 4f 62 6a 65 63 74 \" : '', _Object 00000760: 24 61 73 73 69 67 6e 32 2e 74 72 61 6e 73 66 6f $assign2.transfo 00000770: 72 6d 20 3d 20 27 27 2c 20 5f 4f 62 6a 65 63 74 rm = '', _Object 00000780: 24 61 73 73 69 67 6e 32 29 29 3b 5c 6e 7d 5c 6e $assign2));\n}\n 00000790: 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 70 75 \nfunction compu 000007a0: 74 65 53 74 79 6c 65 73 28 5f 72 65 66 35 29 20 teStyles(_ref5) 000007b0: 7b 5c 6e 20 20 76 61 72 20 73 74 61 74 65 20 3d {\n var state = 000007c0: 20 5f 72 65 66 35 2e 73 74 61 74 65 2c 5c 6e 20 _ref5.state,\n 000007d0: 20 20 20 20 20 6f 70 74 69 6f 6e 73 20 3d 20 5f options = _ 000007e0: 72 65 66 35 2e 6f 70 74 69 6f 6e 73 3b 5c 6e 20 ref5.options;\n 000007f0: 20 76 61 72 20 5f 6f 70 74 69 6f 6e 73 24 67 70 var _options$gp 00000800: 75 41 63 63 65 6c 65 72 61 74 20 3d 20 6f 70 74 uAccelerat = opt 00000810: 69 6f 6e 73 2e 67 70 75 41 63 63 65 6c 65 72 61 ions.gpuAccelera 00000820: 74 69 6f 6e 2c 5c 6e 20 20 20 20 20 20 67 70 75 tion,\n gpu 00000830: 41 63 63 65 6c 65 72 61 74 69 6f 6e 20 3d 20 5f Acceleration = _ 00000840: 6f 70 74 69 6f 6e 73 24 67 70 75 41 63 63 65 6c options$gpuAccel 00000850: 65 72 61 74 20 3d 3d 3d 20 76 6f 69 64 20 30 20 erat === void 0 00000860: 3f 20 74 72 75 65 20 3a 20 5f 6f 70 74 69 6f 6e ? true : _option 00000870: 73 24 67 70 75 41 63 63 65 6c 65 72 61 74 2c 5c s$gpuAccelerat,\ 00000880: 6e 20 20 20 20 20 20 5f 6f 70 74 69 6f 6e 73 24 n _options$ 00000890: 61 64 61 70 74 69 76 65 20 3d 20 6f 70 74 69 6f adaptive = optio 000008a0: 6e 73 2e 61 64 61 70 74 69 76 65 2c 5c 6e 20 20 ns.adaptive,\n 000008b0: 20 20 20 20 61 64 61 70 74 69 76 65 20 3d 20 5f adaptive = _ 000008c0: 6f 70 74 69 6f 6e 73 24 61 64 61 70 74 69 76 65 options$adaptive 000008d0: 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 74 72 === void 0 ? tr 000008e0: 75 65 20 3a 20 5f 6f 70 74 69 6f 6e 73 24 61 64 ue : _options$ad 000008f0: 61 70 74 69 76 65 2c 5c 6e 20 20 20 20 20 20 5f aptive,\n _ 00000900: 6f 70 74 69 6f 6e 73 24 72 6f 75 6e 64 4f 66 66 options$roundOff 00000910: 73 65 74 73 20 3d 20 6f 70 74 69 6f 6e 73 2e 72 sets = options.r 00000920: 6f 75 6e 64 4f 66 66 73 65 74 73 2c 5c 6e 20 20 oundOffsets,\n 00000930: 20 20 20 20 72 6f 75 6e 64 4f 66 66 73 65 74 73 roundOffsets 00000940: 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 72 6f 75 6e = _options$roun 00000950: 64 4f 66 66 73 65 74 73 20 3d 3d 3d 20 76 6f 69 dOffsets === voi 00000960: 64 20 30 20 3f 20 74 72 75 65 20 3a 20 5f 6f 70 d 0 ? true : _op 00000970: 74 69 6f 6e 73 24 72 6f 75 6e 64 4f 66 66 73 65 tions$roundOffse 00000980: 74 73 3b 5c 6e 20 20 76 61 72 20 63 6f 6d 6d 6f ts;\n var commo 00000990: 6e 53 74 79 6c 65 73 20 3d 20 7b 5c 6e 20 20 20 nStyles = {\n 000009a0: 20 70 6c 61 63 65 6d 65 6e 74 3a 20 67 65 74 42 placement: getB 000009b0: 61 73 65 50 6c 61 63 65 6d 65 6e 74 28 73 74 61 asePlacement(sta 000009c0: 74 65 2e 70 6c 61 63 65 6d 65 6e 74 29 2c 5c 6e te.placement),\n 000009d0: 20 20 20 20 76 61 72 69 61 74 69 6f 6e 3a 20 67 variation: g 000009e0: 65 74 56 61 72 69 61 74 69 6f 6e 28 73 74 61 74 etVariation(stat 000009f0: 65 2e 70 6c 61 63 65 6d 65 6e 74 29 2c 5c 6e 20 e.placement),\n 00000a00: 20 20 20 70 6f 70 70 65 72 3a 20 73 74 61 74 65 popper: state 00000a10: 2e 65 6c 65 6d 65 6e 74 73 2e 70 6f 70 70 65 72 .elements.popper 00000a20: 2c 5c 6e 20 20 20 20 70 6f 70 70 65 72 52 65 63 ,\n popperRec 00000a30: 74 3a 20 73 74 61 74 65 2e 72 65 63 74 73 2e 70 t: state.rects.p 00000a40: 6f 70 70 65 72 2c 5c 6e 20 20 20 20 67 70 75 41 opper,\n gpuA 00000a50: 63 63 65 6c 65 72 61 74 69 6f 6e 3a 20 67 70 75 cceleration: gpu 00000a60: 41 63 63 65 6c 65 72 61 74 69 6f 6e 2c 5c 6e 20 Acceleration,\n 00000a70: 20 20 20 69 73 46 69 78 65 64 3a 20 73 74 61 74 isFixed: stat 00000a80: 65 2e 6f 70 74 69 6f 6e 73 2e 73 74 72 61 74 65 e.options.strate 00000a90: 67 79 20 3d 3d 3d 20 27 66 69 78 65 64 27 5c 6e gy === 'fixed'\n 00000aa0: 20 20 7d 3b 5c 6e 5c 6e 20 20 69 66 20 28 73 74 };\n\n if (st 00000ab0: 61 74 65 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 ate.modifiersDat 00000ac0: 61 2e 70 6f 70 70 65 72 4f 66 66 73 65 74 73 20 a.popperOffsets 00000ad0: 21 3d 20 6e 75 6c 6c 29 20 7b 5c 6e 20 20 20 20 != null) {\n 00000ae0: 73 74 61 74 65 2e 73 74 79 6c 65 73 2e 70 6f 70 state.styles.pop 00000af0: 70 65 72 20 3d 20 4f 62 6a 65 63 74 2e 61 73 73 per = Object.ass 00000b00: 69 67 6e 28 7b 7d 2c 20 73 74 61 74 65 2e 73 74 ign({}, state.st 00000b10: 79 6c 65 73 2e 70 6f 70 70 65 72 2c 20 6d 61 70 yles.popper, map 00000b20: 54 6f 53 74 79 6c 65 73 28 4f 62 6a 65 63 74 2e ToStyles(Object. 00000b30: 61 73 73 69 67 6e 28 7b 7d 2c 20 63 6f 6d 6d 6f assign({}, commo 00000b40: 6e 53 74 79 6c 65 73 2c 20 7b 5c 6e 20 20 20 20 nStyles, {\n 00000b50: 20 20 6f 66 66 73 65 74 73 3a 20 73 74 61 74 65 offsets: state 00000b60: 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 2e 70 .modifiersData.p 00000b70: 6f 70 70 65 72 4f 66 66 73 65 74 73 2c 5c 6e 20 opperOffsets,\n 00000b80: 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 3a 20 73 position: s 00000b90: 74 61 74 65 2e 6f 70 74 69 6f 6e 73 2e 73 74 72 tate.options.str 00000ba0: 61 74 65 67 79 2c 5c 6e 20 20 20 20 20 20 61 64 ategy,\n ad 00000bb0: 61 70 74 69 76 65 3a 20 61 64 61 70 74 69 76 65 aptive: adaptive 00000bc0: 2c 5c 6e 20 20 20 20 20 20 72 6f 75 6e 64 4f 66 ,\n roundOf 00000bd0: 66 73 65 74 73 3a 20 72 6f 75 6e 64 4f 66 66 73 fsets: roundOffs 00000be0: 65 74 73 5c 6e 20 20 20 20 7d 29 29 29 3b 5c 6e ets\n })));\n 00000bf0: 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 73 74 61 }\n\n if (sta 00000c00: 74 65 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 te.modifiersData 00000c10: 2e 61 72 72 6f 77 20 21 3d 20 6e 75 6c 6c 29 20 .arrow != null) 00000c20: 7b 5c 6e 20 20 20 20 73 74 61 74 65 2e 73 74 79 {\n state.sty 00000c30: 6c 65 73 2e 61 72 72 6f 77 20 3d 20 4f 62 6a 65 les.arrow = Obje 00000c40: 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c 20 73 74 ct.assign({}, st 00000c50: 61 74 65 2e 73 74 79 6c 65 73 2e 61 72 72 6f 77 ate.styles.arrow 00000c60: 2c 20 6d 61 70 54 6f 53 74 79 6c 65 73 28 4f 62 , mapToStyles(Ob 00000c70: 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c 20 ject.assign({}, 00000c80: 63 6f 6d 6d 6f 6e 53 74 79 6c 65 73 2c 20 7b 5c commonStyles, {\ 00000c90: 6e 20 20 20 20 20 20 6f 66 66 73 65 74 73 3a 20 n offsets: 00000ca0: 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 72 73 44 state.modifiersD 00000cb0: 61 74 61 2e 61 72 72 6f 77 2c 5c 6e 20 20 20 20 ata.arrow,\n 00000cc0: 20 20 70 6f 73 69 74 69 6f 6e 3a 20 27 61 62 73 position: 'abs 00000cd0: 6f 6c 75 74 65 27 2c 5c 6e 20 20 20 20 20 20 61 olute',\n a 00000ce0: 64 61 70 74 69 76 65 3a 20 66 61 6c 73 65 2c 5c daptive: false,\ 00000cf0: 6e 20 20 20 20 20 20 72 6f 75 6e 64 4f 66 66 73 n roundOffs 00000d00: 65 74 73 3a 20 72 6f 75 6e 64 4f 66 66 73 65 74 ets: roundOffset 00000d10: 73 5c 6e 20 20 20 20 7d 29 29 29 3b 5c 6e 20 20 s\n })));\n 00000d20: 7d 5c 6e 5c 6e 20 20 73 74 61 74 65 2e 61 74 74 }\n\n state.att 00000d30: 72 69 62 75 74 65 73 2e 70 6f 70 70 65 72 20 3d ributes.popper = 00000d40: 20 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b Object.assign({ 00000d50: 7d 2c 20 73 74 61 74 65 2e 61 74 74 72 69 62 75 }, state.attribu 00000d60: 74 65 73 2e 70 6f 70 70 65 72 2c 20 7b 5c 6e 20 tes.popper, {\n 00000d70: 20 20 20 27 64 61 74 61 2d 70 6f 70 70 65 72 2d 'data-popper- 00000d80: 70 6c 61 63 65 6d 65 6e 74 27 3a 20 73 74 61 74 placement': stat 00000d90: 65 2e 70 6c 61 63 65 6d 65 6e 74 5c 6e 20 20 7d e.placement\n } 00000da0: 29 3b 5c 6e 7d 20 2f 2f 20 65 73 6c 69 6e 74 2d );\n} // eslint- 00000db0: 64 69 73 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e disable-next-lin 00000dc0: 65 20 69 6d 70 6f 72 74 2f 6e 6f 2d 75 6e 75 73 e import/no-unus 00000dd0: 65 64 2d 6d 6f 64 75 6c 65 73 5c 6e 5c 6e 5c 6e ed-modules\n\n\n 00000de0: 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 7b export default { 00000df0: 5c 6e 20 20 6e 61 6d 65 3a 20 27 63 6f 6d 70 75 \n name: 'compu 00000e00: 74 65 53 74 79 6c 65 73 27 2c 5c 6e 20 20 65 6e teStyles',\n en 00000e10: 61 62 6c 65 64 3a 20 74 72 75 65 2c 5c 6e 20 20 abled: true,\n 00000e20: 70 68 61 73 65 3a 20 27 62 65 66 6f 72 65 57 72 phase: 'beforeWr 00000e30: 69 74 65 27 2c 5c 6e 20 20 66 6e 3a 20 63 6f 6d ite',\n fn: com 00000e40: 70 75 74 65 53 74 79 6c 65 73 2c 5c 6e 20 20 64 puteStyles,\n d 00000e50: 61 74 61 3a 20 7b 7d 5c 6e 7d 3b 22 2c 22 69 6d ata: {}\n};","im 00000e60: 70 6f 72 74 20 67 65 74 57 69 6e 64 6f 77 20 66 port getWindow f 00000e70: 72 6f 6d 20 5c 22 2e 2e 2f 64 6f 6d 2d 75 74 69 rom \"../dom-uti 00000e80: 6c 73 2f 67 65 74 57 69 6e 64 6f 77 2e 6a 73 5c ls/getWindow.js\ 00000e90: 22 3b 20 2f 2f 20 65 73 6c 69 6e 74 2d 64 69 73 "; // eslint-dis 00000ea0: 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 20 69 able-next-line i 00000eb0: 6d 70 6f 72 74 2f 6e 6f 2d 75 6e 75 73 65 64 2d mport/no-unused- 00000ec0: 6d 6f 64 75 6c 65 73 5c 6e 5c 6e 76 61 72 20 70 modules\n\nvar p 00000ed0: 61 73 73 69 76 65 20 3d 20 7b 5c 6e 20 20 70 61 assive = {\n pa 00000ee0: 73 73 69 76 65 3a 20 74 72 75 65 5c 6e 7d 3b 5c ssive: true\n};\ 00000ef0: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 65 66 66 65 n\nfunction effe 00000f00: 63 74 28 5f 72 65 66 29 20 7b 5c 6e 20 20 76 61 ct(_ref) {\n va 00000f10: 72 20 73 74 61 74 65 20 3d 20 5f 72 65 66 2e 73 r state = _ref.s 00000f20: 74 61 74 65 2c 5c 6e 20 20 20 20 20 20 69 6e 73 tate,\n ins 00000f30: 74 61 6e 63 65 20 3d 20 5f 72 65 66 2e 69 6e 73 tance = _ref.ins 00000f40: 74 61 6e 63 65 2c 5c 6e 20 20 20 20 20 20 6f 70 tance,\n op 00000f50: 74 69 6f 6e 73 20 3d 20 5f 72 65 66 2e 6f 70 74 tions = _ref.opt 00000f60: 69 6f 6e 73 3b 5c 6e 20 20 76 61 72 20 5f 6f 70 ions;\n var _op 00000f70: 74 69 6f 6e 73 24 73 63 72 6f 6c 6c 20 3d 20 6f tions$scroll = o 00000f80: 70 74 69 6f 6e 73 2e 73 63 72 6f 6c 6c 2c 5c 6e ptions.scroll,\n 00000f90: 20 20 20 20 20 20 73 63 72 6f 6c 6c 20 3d 20 5f scroll = _ 00000fa0: 6f 70 74 69 6f 6e 73 24 73 63 72 6f 6c 6c 20 3d options$scroll = 00000fb0: 3d 3d 20 76 6f 69 64 20 30 20 3f 20 74 72 75 65 == void 0 ? true 00000fc0: 20 3a 20 5f 6f 70 74 69 6f 6e 73 24 73 63 72 6f : _options$scro 00000fd0: 6c 6c 2c 5c 6e 20 20 20 20 20 20 5f 6f 70 74 69 ll,\n _opti 00000fe0: 6f 6e 73 24 72 65 73 69 7a 65 20 3d 20 6f 70 74 ons$resize = opt 00000ff0: 69 6f 6e 73 2e 72 65 73 69 7a 65 2c 5c 6e 20 20 ions.resize,\n 00001000: 20 20 20 20 72 65 73 69 7a 65 20 3d 20 5f 6f 70 resize = _op 00001010: 74 69 6f 6e 73 24 72 65 73 69 7a 65 20 3d 3d 3d tions$resize === 00001020: 20 76 6f 69 64 20 30 20 3f 20 74 72 75 65 20 3a void 0 ? true : 00001030: 20 5f 6f 70 74 69 6f 6e 73 24 72 65 73 69 7a 65 _options$resize 00001040: 3b 5c 6e 20 20 76 61 72 20 77 69 6e 64 6f 77 20 ;\n var window 00001050: 3d 20 67 65 74 57 69 6e 64 6f 77 28 73 74 61 74 = getWindow(stat 00001060: 65 2e 65 6c 65 6d 65 6e 74 73 2e 70 6f 70 70 65 e.elements.poppe 00001070: 72 29 3b 5c 6e 20 20 76 61 72 20 73 63 72 6f 6c r);\n var scrol 00001080: 6c 50 61 72 65 6e 74 73 20 3d 20 5b 5d 2e 63 6f lParents = [].co 00001090: 6e 63 61 74 28 73 74 61 74 65 2e 73 63 72 6f 6c ncat(state.scrol 000010a0: 6c 50 61 72 65 6e 74 73 2e 72 65 66 65 72 65 6e lParents.referen 000010b0: 63 65 2c 20 73 74 61 74 65 2e 73 63 72 6f 6c 6c ce, state.scroll 000010c0: 50 61 72 65 6e 74 73 2e 70 6f 70 70 65 72 29 3b Parents.popper); 000010d0: 5c 6e 5c 6e 20 20 69 66 20 28 73 63 72 6f 6c 6c \n\n if (scroll 000010e0: 29 20 7b 5c 6e 20 20 20 20 73 63 72 6f 6c 6c 50 ) {\n scrollP 000010f0: 61 72 65 6e 74 73 2e 66 6f 72 45 61 63 68 28 66 arents.forEach(f 00001100: 75 6e 63 74 69 6f 6e 20 28 73 63 72 6f 6c 6c 50 unction (scrollP 00001110: 61 72 65 6e 74 29 20 7b 5c 6e 20 20 20 20 20 20 arent) {\n 00001120: 73 63 72 6f 6c 6c 50 61 72 65 6e 74 2e 61 64 64 scrollParent.add 00001130: 45 76 65 6e 74 4c 69 73 74 65 6e 65 72 28 27 73 EventListener('s 00001140: 63 72 6f 6c 6c 27 2c 20 69 6e 73 74 61 6e 63 65 croll', instance 00001150: 2e 75 70 64 61 74 65 2c 20 70 61 73 73 69 76 65 .update, passive 00001160: 29 3b 5c 6e 20 20 20 20 7d 29 3b 5c 6e 20 20 7d );\n });\n } 00001170: 5c 6e 5c 6e 20 20 69 66 20 28 72 65 73 69 7a 65 \n\n if (resize 00001180: 29 20 7b 5c 6e 20 20 20 20 77 69 6e 64 6f 77 2e ) {\n window. 00001190: 61 64 64 45 76 65 6e 74 4c 69 73 74 65 6e 65 72 addEventListener 000011a0: 28 27 72 65 73 69 7a 65 27 2c 20 69 6e 73 74 61 ('resize', insta 000011b0: 6e 63 65 2e 75 70 64 61 74 65 2c 20 70 61 73 73 nce.update, pass 000011c0: 69 76 65 29 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 ive);\n }\n\n 000011d0: 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 return function 000011e0: 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 73 63 () {\n if (sc 000011f0: 72 6f 6c 6c 29 20 7b 5c 6e 20 20 20 20 20 20 73 roll) {\n s 00001200: 63 72 6f 6c 6c 50 61 72 65 6e 74 73 2e 66 6f 72 crollParents.for 00001210: 45 61 63 68 28 66 75 6e 63 74 69 6f 6e 20 28 73 Each(function (s 00001220: 63 72 6f 6c 6c 50 61 72 65 6e 74 29 20 7b 5c 6e crollParent) {\n 00001230: 20 20 20 20 20 20 20 20 73 63 72 6f 6c 6c 50 61 scrollPa 00001240: 72 65 6e 74 2e 72 65 6d 6f 76 65 45 76 65 6e 74 rent.removeEvent 00001250: 4c 69 73 74 65 6e 65 72 28 27 73 63 72 6f 6c 6c Listener('scroll 00001260: 27 2c 20 69 6e 73 74 61 6e 63 65 2e 75 70 64 61 ', instance.upda 00001270: 74 65 2c 20 70 61 73 73 69 76 65 29 3b 5c 6e 20 te, passive);\n 00001280: 20 20 20 20 20 7d 29 3b 5c 6e 20 20 20 20 7d 5c });\n }\ 00001290: 6e 5c 6e 20 20 20 20 69 66 20 28 72 65 73 69 7a n\n if (resiz 000012a0: 65 29 20 7b 5c 6e 20 20 20 20 20 20 77 69 6e 64 e) {\n wind 000012b0: 6f 77 2e 72 65 6d 6f 76 65 45 76 65 6e 74 4c 69 ow.removeEventLi 000012c0: 73 74 65 6e 65 72 28 27 72 65 73 69 7a 65 27 2c stener('resize', 000012d0: 20 69 6e 73 74 61 6e 63 65 2e 75 70 64 61 74 65 instance.update 000012e0: 2c 20 70 61 73 73 69 76 65 29 3b 5c 6e 20 20 20 , passive);\n 000012f0: 20 7d 5c 6e 20 20 7d 3b 5c 6e 7d 20 2f 2f 20 65 }\n };\n} // e 00001300: 73 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 slint-disable-ne 00001310: 78 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e xt-line import/n 00001320: 6f 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 o-unused-modules 00001330: 5c 6e 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 \n\n\nexport def 00001340: 61 75 6c 74 20 7b 5c 6e 20 20 6e 61 6d 65 3a 20 ault {\n name: 00001350: 27 65 76 65 6e 74 4c 69 73 74 65 6e 65 72 73 27 'eventListeners' 00001360: 2c 5c 6e 20 20 65 6e 61 62 6c 65 64 3a 20 74 72 ,\n enabled: tr 00001370: 75 65 2c 5c 6e 20 20 70 68 61 73 65 3a 20 27 77 ue,\n phase: 'w 00001380: 72 69 74 65 27 2c 5c 6e 20 20 66 6e 3a 20 66 75 rite',\n fn: fu 00001390: 6e 63 74 69 6f 6e 20 66 6e 28 29 20 7b 7d 2c 5c nction fn() {},\ 000013a0: 6e 20 20 65 66 66 65 63 74 3a 20 65 66 66 65 63 n effect: effec 000013b0: 74 2c 5c 6e 20 20 64 61 74 61 3a 20 7b 7d 5c 6e t,\n data: {}\n 000013c0: 7d 3b 22 2c 22 76 61 72 20 68 61 73 68 20 3d 20 };","var hash = 000013d0: 7b 5c 6e 20 20 6c 65 66 74 3a 20 27 72 69 67 68 {\n left: 'righ 000013e0: 74 27 2c 5c 6e 20 20 72 69 67 68 74 3a 20 27 6c t',\n right: 'l 000013f0: 65 66 74 27 2c 5c 6e 20 20 62 6f 74 74 6f 6d 3a eft',\n bottom: 00001400: 20 27 74 6f 70 27 2c 5c 6e 20 20 74 6f 70 3a 20 'top',\n top: 00001410: 27 62 6f 74 74 6f 6d 27 5c 6e 7d 3b 5c 6e 65 78 'bottom'\n};\nex 00001420: 70 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e port default fun 00001430: 63 74 69 6f 6e 20 67 65 74 4f 70 70 6f 73 69 74 ction getOpposit 00001440: 65 50 6c 61 63 65 6d 65 6e 74 28 70 6c 61 63 65 ePlacement(place 00001450: 6d 65 6e 74 29 20 7b 5c 6e 20 20 72 65 74 75 72 ment) {\n retur 00001460: 6e 20 70 6c 61 63 65 6d 65 6e 74 2e 72 65 70 6c n placement.repl 00001470: 61 63 65 28 2f 6c 65 66 74 7c 72 69 67 68 74 7c ace(/left|right| 00001480: 62 6f 74 74 6f 6d 7c 74 6f 70 2f 67 2c 20 66 75 bottom|top/g, fu 00001490: 6e 63 74 69 6f 6e 20 28 6d 61 74 63 68 65 64 29 nction (matched) 000014a0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 68 {\n return h 000014b0: 61 73 68 5b 6d 61 74 63 68 65 64 5d 3b 5c 6e 20 ash[matched];\n 000014c0: 20 7d 29 3b 5c 6e 7d 22 2c 22 76 61 72 20 68 61 });\n}","var ha 000014d0: 73 68 20 3d 20 7b 5c 6e 20 20 73 74 61 72 74 3a sh = {\n start: 000014e0: 20 27 65 6e 64 27 2c 5c 6e 20 20 65 6e 64 3a 20 'end',\n end: 000014f0: 27 73 74 61 72 74 27 5c 6e 7d 3b 5c 6e 65 78 70 'start'\n};\nexp 00001500: 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e 63 ort default func 00001510: 74 69 6f 6e 20 67 65 74 4f 70 70 6f 73 69 74 65 tion getOpposite 00001520: 56 61 72 69 61 74 69 6f 6e 50 6c 61 63 65 6d 65 VariationPlaceme 00001530: 6e 74 28 70 6c 61 63 65 6d 65 6e 74 29 20 7b 5c nt(placement) {\ 00001540: 6e 20 20 72 65 74 75 72 6e 20 70 6c 61 63 65 6d n return placem 00001550: 65 6e 74 2e 72 65 70 6c 61 63 65 28 2f 73 74 61 ent.replace(/sta 00001560: 72 74 7c 65 6e 64 2f 67 2c 20 66 75 6e 63 74 69 rt|end/g, functi 00001570: 6f 6e 20 28 6d 61 74 63 68 65 64 29 20 7b 5c 6e on (matched) {\n 00001580: 20 20 20 20 72 65 74 75 72 6e 20 68 61 73 68 5b return hash[ 00001590: 6d 61 74 63 68 65 64 5d 3b 5c 6e 20 20 7d 29 3b matched];\n }); 000015a0: 5c 6e 7d 22 2c 22 69 6d 70 6f 72 74 20 67 65 74 \n}","import get 000015b0: 57 69 6e 64 6f 77 20 66 72 6f 6d 20 5c 22 2e 2f Window from \"./ 000015c0: 67 65 74 57 69 6e 64 6f 77 2e 6a 73 5c 22 3b 5c getWindow.js\";\ 000015d0: 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 nexport default 000015e0: 66 75 6e 63 74 69 6f 6e 20 67 65 74 57 69 6e 64 function getWind 000015f0: 6f 77 53 63 72 6f 6c 6c 28 6e 6f 64 65 29 20 7b owScroll(node) { 00001600: 5c 6e 20 20 76 61 72 20 77 69 6e 20 3d 20 67 65 \n var win = ge 00001610: 74 57 69 6e 64 6f 77 28 6e 6f 64 65 29 3b 5c 6e tWindow(node);\n 00001620: 20 20 76 61 72 20 73 63 72 6f 6c 6c 4c 65 66 74 var scrollLeft 00001630: 20 3d 20 77 69 6e 2e 70 61 67 65 58 4f 66 66 73 = win.pageXOffs 00001640: 65 74 3b 5c 6e 20 20 76 61 72 20 73 63 72 6f 6c et;\n var scrol 00001650: 6c 54 6f 70 20 3d 20 77 69 6e 2e 70 61 67 65 59 lTop = win.pageY 00001660: 4f 66 66 73 65 74 3b 5c 6e 20 20 72 65 74 75 72 Offset;\n retur 00001670: 6e 20 7b 5c 6e 20 20 20 20 73 63 72 6f 6c 6c 4c n {\n scrollL 00001680: 65 66 74 3a 20 73 63 72 6f 6c 6c 4c 65 66 74 2c eft: scrollLeft, 00001690: 5c 6e 20 20 20 20 73 63 72 6f 6c 6c 54 6f 70 3a \n scrollTop: 000016a0: 20 73 63 72 6f 6c 6c 54 6f 70 5c 6e 20 20 7d 3b scrollTop\n }; 000016b0: 5c 6e 7d 22 2c 22 69 6d 70 6f 72 74 20 67 65 74 \n}","import get 000016c0: 42 6f 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 BoundingClientRe 000016d0: 63 74 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 42 ct from \"./getB 000016e0: 6f 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 oundingClientRec 000016f0: 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 t.js\";\nimport 00001700: 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 getDocumentEleme 00001710: 6e 74 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 44 nt from \"./getD 00001720: 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 2e 6a ocumentElement.j 00001730: 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 s\";\nimport get 00001740: 57 69 6e 64 6f 77 53 63 72 6f 6c 6c 20 66 72 6f WindowScroll fro 00001750: 6d 20 5c 22 2e 2f 67 65 74 57 69 6e 64 6f 77 53 m \"./getWindowS 00001760: 63 72 6f 6c 6c 2e 6a 73 5c 22 3b 5c 6e 65 78 70 croll.js\";\nexp 00001770: 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e 63 ort default func 00001780: 74 69 6f 6e 20 67 65 74 57 69 6e 64 6f 77 53 63 tion getWindowSc 00001790: 72 6f 6c 6c 42 61 72 58 28 65 6c 65 6d 65 6e 74 rollBarX(element 000017a0: 29 20 7b 5c 6e 20 20 2f 2f 20 49 66 20 3c 68 74 ) {\n // If <ht 000017b0: 6d 6c 3e 20 68 61 73 20 61 20 43 53 53 20 77 69 ml> has a CSS wi 000017c0: 64 74 68 20 67 72 65 61 74 65 72 20 74 68 61 6e dth greater than 000017d0: 20 74 68 65 20 76 69 65 77 70 6f 72 74 2c 20 74 the viewport, t 000017e0: 68 65 6e 20 74 68 69 73 20 77 69 6c 6c 20 62 65 hen this will be 000017f0: 5c 6e 20 20 2f 2f 20 69 6e 63 6f 72 72 65 63 74 \n // incorrect 00001800: 20 66 6f 72 20 52 54 4c 2e 5c 6e 20 20 2f 2f 20 for RTL.\n // 00001810: 50 6f 70 70 65 72 20 31 20 69 73 20 62 72 6f 6b Popper 1 is brok 00001820: 65 6e 20 69 6e 20 74 68 69 73 20 63 61 73 65 20 en in this case 00001830: 61 6e 64 20 6e 65 76 65 72 20 68 61 64 20 61 20 and never had a 00001840: 62 75 67 20 72 65 70 6f 72 74 20 73 6f 20 6c 65 bug report so le 00001850: 74 27 73 20 61 73 73 75 6d 65 5c 6e 20 20 2f 2f t's assume\n // 00001860: 20 69 74 27 73 20 6e 6f 74 20 61 6e 20 69 73 73 it's not an iss 00001870: 75 65 2e 20 49 20 64 6f 6e 27 74 20 74 68 69 6e ue. I don't thin 00001880: 6b 20 61 6e 79 6f 6e 65 20 65 76 65 72 20 73 70 k anyone ever sp 00001890: 65 63 69 66 69 65 73 20 77 69 64 74 68 20 6f 6e ecifies width on 000018a0: 20 3c 68 74 6d 6c 3e 5c 6e 20 20 2f 2f 20 61 6e <html>\n // an 000018b0: 79 77 61 79 2e 5c 6e 20 20 2f 2f 20 42 72 6f 77 yway.\n // Brow 000018c0: 73 65 72 73 20 77 68 65 72 65 20 74 68 65 20 6c sers where the l 000018d0: 65 66 74 20 73 63 72 6f 6c 6c 62 61 72 20 64 6f eft scrollbar do 000018e0: 65 73 6e 27 74 20 63 61 75 73 65 20 61 6e 20 69 esn't cause an i 000018f0: 73 73 75 65 20 72 65 70 6f 72 74 20 60 30 60 20 ssue report `0` 00001900: 66 6f 72 5c 6e 20 20 2f 2f 20 74 68 69 73 20 28 for\n // this ( 00001910: 65 2e 67 2e 20 45 64 67 65 20 32 30 31 39 2c 20 e.g. Edge 2019, 00001920: 49 45 31 31 2c 20 53 61 66 61 72 69 29 5c 6e 20 IE11, Safari)\n 00001930: 20 72 65 74 75 72 6e 20 67 65 74 42 6f 75 6e 64 return getBound 00001940: 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 28 67 65 ingClientRect(ge 00001950: 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 tDocumentElement 00001960: 28 65 6c 65 6d 65 6e 74 29 29 2e 6c 65 66 74 20 (element)).left 00001970: 2b 20 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c + getWindowScrol 00001980: 6c 28 65 6c 65 6d 65 6e 74 29 2e 73 63 72 6f 6c l(element).scrol 00001990: 6c 4c 65 66 74 3b 5c 6e 7d 22 2c 22 69 6d 70 6f lLeft;\n}","impo 000019a0: 72 74 20 67 65 74 43 6f 6d 70 75 74 65 64 53 74 rt getComputedSt 000019b0: 79 6c 65 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 yle from \"./get 000019c0: 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 2e 6a 73 ComputedStyle.js 000019d0: 5c 22 3b 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 \";\nexport defa 000019e0: 75 6c 74 20 66 75 6e 63 74 69 6f 6e 20 69 73 53 ult function isS 000019f0: 63 72 6f 6c 6c 50 61 72 65 6e 74 28 65 6c 65 6d crollParent(elem 00001a00: 65 6e 74 29 20 7b 5c 6e 20 20 2f 2f 20 46 69 72 ent) {\n // Fir 00001a10: 65 66 6f 78 20 77 61 6e 74 73 20 75 73 20 74 6f efox wants us to 00001a20: 20 63 68 65 63 6b 20 60 2d 78 60 20 61 6e 64 20 check `-x` and 00001a30: 60 2d 79 60 20 76 61 72 69 61 74 69 6f 6e 73 20 `-y` variations 00001a40: 61 73 20 77 65 6c 6c 5c 6e 20 20 76 61 72 20 5f as well\n var _ 00001a50: 67 65 74 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 getComputedStyle 00001a60: 20 3d 20 67 65 74 43 6f 6d 70 75 74 65 64 53 74 = getComputedSt 00001a70: 79 6c 65 28 65 6c 65 6d 65 6e 74 29 2c 5c 6e 20 yle(element),\n 00001a80: 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 20 3d 20 overflow = 00001a90: 5f 67 65 74 43 6f 6d 70 75 74 65 64 53 74 79 6c _getComputedStyl 00001aa0: 65 2e 6f 76 65 72 66 6c 6f 77 2c 5c 6e 20 20 20 e.overflow,\n 00001ab0: 20 20 20 6f 76 65 72 66 6c 6f 77 58 20 3d 20 5f overflowX = _ 00001ac0: 67 65 74 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 getComputedStyle 00001ad0: 2e 6f 76 65 72 66 6c 6f 77 58 2c 5c 6e 20 20 20 .overflowX,\n 00001ae0: 20 20 20 6f 76 65 72 66 6c 6f 77 59 20 3d 20 5f overflowY = _ 00001af0: 67 65 74 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 getComputedStyle 00001b00: 2e 6f 76 65 72 66 6c 6f 77 59 3b 5c 6e 5c 6e 20 .overflowY;\n\n 00001b10: 20 72 65 74 75 72 6e 20 2f 61 75 74 6f 7c 73 63 return /auto|sc 00001b20: 72 6f 6c 6c 7c 6f 76 65 72 6c 61 79 7c 68 69 64 roll|overlay|hid 00001b30: 64 65 6e 2f 2e 74 65 73 74 28 6f 76 65 72 66 6c den/.test(overfl 00001b40: 6f 77 20 2b 20 6f 76 65 72 66 6c 6f 77 59 20 2b ow + overflowY + 00001b50: 20 6f 76 65 72 66 6c 6f 77 58 29 3b 5c 6e 7d 22 overflowX);\n}" 00001b60: 2c 22 69 6d 70 6f 72 74 20 67 65 74 53 63 72 6f ,"import getScro 00001b70: 6c 6c 50 61 72 65 6e 74 20 66 72 6f 6d 20 5c 22 llParent from \" 00001b80: 2e 2f 67 65 74 53 63 72 6f 6c 6c 50 61 72 65 6e ./getScrollParen 00001b90: 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 t.js\";\nimport 00001ba0: 67 65 74 50 61 72 65 6e 74 4e 6f 64 65 20 66 72 getParentNode fr 00001bb0: 6f 6d 20 5c 22 2e 2f 67 65 74 50 61 72 65 6e 74 om \"./getParent 00001bc0: 4e 6f 64 65 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f Node.js\";\nimpo 00001bd0: 72 74 20 67 65 74 57 69 6e 64 6f 77 20 66 72 6f rt getWindow fro 00001be0: 6d 20 5c 22 2e 2f 67 65 74 57 69 6e 64 6f 77 2e m \"./getWindow. 00001bf0: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 69 73 js\";\nimport is 00001c00: 53 63 72 6f 6c 6c 50 61 72 65 6e 74 20 66 72 6f ScrollParent fro 00001c10: 6d 20 5c 22 2e 2f 69 73 53 63 72 6f 6c 6c 50 61 m \"./isScrollPa 00001c20: 72 65 6e 74 2e 6a 73 5c 22 3b 5c 6e 2f 2a 5c 6e rent.js\";\n/*\n 00001c30: 67 69 76 65 6e 20 61 20 44 4f 4d 20 65 6c 65 6d given a DOM elem 00001c40: 65 6e 74 2c 20 72 65 74 75 72 6e 20 74 68 65 20 ent, return the 00001c50: 6c 69 73 74 20 6f 66 20 61 6c 6c 20 73 63 72 6f list of all scro 00001c60: 6c 6c 20 70 61 72 65 6e 74 73 2c 20 75 70 20 74 ll parents, up t 00001c70: 68 65 20 6c 69 73 74 20 6f 66 20 61 6e 63 65 73 he list of ances 00001c80: 6f 72 73 5c 6e 75 6e 74 69 6c 20 77 65 20 67 65 ors\nuntil we ge 00001c90: 74 20 74 6f 20 74 68 65 20 74 6f 70 20 77 69 6e t to the top win 00001ca0: 64 6f 77 20 6f 62 6a 65 63 74 2e 20 54 68 69 73 dow object. This 00001cb0: 20 6c 69 73 74 20 69 73 20 77 68 61 74 20 77 65 list is what we 00001cc0: 20 61 74 74 61 63 68 20 73 63 72 6f 6c 6c 20 6c attach scroll l 00001cd0: 69 73 74 65 6e 65 72 73 5c 6e 74 6f 2c 20 62 65 isteners\nto, be 00001ce0: 63 61 75 73 65 20 69 66 20 61 6e 79 20 6f 66 20 cause if any of 00001cf0: 74 68 65 73 65 20 70 61 72 65 6e 74 20 65 6c 65 these parent ele 00001d00: 6d 65 6e 74 73 20 73 63 72 6f 6c 6c 2c 20 77 65 ments scroll, we 00001d10: 27 6c 6c 20 6e 65 65 64 20 74 6f 20 72 65 2d 63 'll need to re-c 00001d20: 61 6c 63 75 6c 61 74 65 20 74 68 65 5c 6e 72 65 alculate the\nre 00001d30: 66 65 72 65 6e 63 65 20 65 6c 65 6d 65 6e 74 27 ference element' 00001d40: 73 20 70 6f 73 69 74 69 6f 6e 2e 5c 6e 2a 2f 5c s position.\n*/\ 00001d50: 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c n\nexport defaul 00001d60: 74 20 66 75 6e 63 74 69 6f 6e 20 6c 69 73 74 53 t function listS 00001d70: 63 72 6f 6c 6c 50 61 72 65 6e 74 73 28 65 6c 65 crollParents(ele 00001d80: 6d 65 6e 74 2c 20 6c 69 73 74 29 20 7b 5c 6e 20 ment, list) {\n 00001d90: 20 76 61 72 20 5f 65 6c 65 6d 65 6e 74 24 6f 77 var _element$ow 00001da0: 6e 65 72 44 6f 63 75 6d 65 6e 3b 5c 6e 5c 6e 20 nerDocumen;\n\n 00001db0: 20 69 66 20 28 6c 69 73 74 20 3d 3d 3d 20 76 6f if (list === vo 00001dc0: 69 64 20 30 29 20 7b 5c 6e 20 20 20 20 6c 69 73 id 0) {\n lis 00001dd0: 74 20 3d 20 5b 5d 3b 5c 6e 20 20 7d 5c 6e 5c 6e t = [];\n }\n\n 00001de0: 20 20 76 61 72 20 73 63 72 6f 6c 6c 50 61 72 65 var scrollPare 00001df0: 6e 74 20 3d 20 67 65 74 53 63 72 6f 6c 6c 50 61 nt = getScrollPa 00001e00: 72 65 6e 74 28 65 6c 65 6d 65 6e 74 29 3b 5c 6e rent(element);\n 00001e10: 20 20 76 61 72 20 69 73 42 6f 64 79 20 3d 20 73 var isBody = s 00001e20: 63 72 6f 6c 6c 50 61 72 65 6e 74 20 3d 3d 3d 20 crollParent === 00001e30: 28 28 5f 65 6c 65 6d 65 6e 74 24 6f 77 6e 65 72 ((_element$owner 00001e40: 44 6f 63 75 6d 65 6e 20 3d 20 65 6c 65 6d 65 6e Documen = elemen 00001e50: 74 2e 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 74 29 t.ownerDocument) 00001e60: 20 3d 3d 20 6e 75 6c 6c 20 3f 20 76 6f 69 64 20 == null ? void 00001e70: 30 20 3a 20 5f 65 6c 65 6d 65 6e 74 24 6f 77 6e 0 : _element$own 00001e80: 65 72 44 6f 63 75 6d 65 6e 2e 62 6f 64 79 29 3b erDocumen.body); 00001e90: 5c 6e 20 20 76 61 72 20 77 69 6e 20 3d 20 67 65 \n var win = ge 00001ea0: 74 57 69 6e 64 6f 77 28 73 63 72 6f 6c 6c 50 61 tWindow(scrollPa 00001eb0: 72 65 6e 74 29 3b 5c 6e 20 20 76 61 72 20 74 61 rent);\n var ta 00001ec0: 72 67 65 74 20 3d 20 69 73 42 6f 64 79 20 3f 20 rget = isBody ? 00001ed0: 5b 77 69 6e 5d 2e 63 6f 6e 63 61 74 28 77 69 6e [win].concat(win 00001ee0: 2e 76 69 73 75 61 6c 56 69 65 77 70 6f 72 74 20 .visualViewport 00001ef0: 7c 7c 20 5b 5d 2c 20 69 73 53 63 72 6f 6c 6c 50 || [], isScrollP 00001f00: 61 72 65 6e 74 28 73 63 72 6f 6c 6c 50 61 72 65 arent(scrollPare 00001f10: 6e 74 29 20 3f 20 73 63 72 6f 6c 6c 50 61 72 65 nt) ? scrollPare 00001f20: 6e 74 20 3a 20 5b 5d 29 20 3a 20 73 63 72 6f 6c nt : []) : scrol 00001f30: 6c 50 61 72 65 6e 74 3b 5c 6e 20 20 76 61 72 20 lParent;\n var 00001f40: 75 70 64 61 74 65 64 4c 69 73 74 20 3d 20 6c 69 updatedList = li 00001f50: 73 74 2e 63 6f 6e 63 61 74 28 74 61 72 67 65 74 st.concat(target 00001f60: 29 3b 5c 6e 20 20 72 65 74 75 72 6e 20 69 73 42 );\n return isB 00001f70: 6f 64 79 20 3f 20 75 70 64 61 74 65 64 4c 69 73 ody ? updatedLis 00001f80: 74 20 3a 20 2f 2f 20 24 46 6c 6f 77 46 69 78 4d t : // $FlowFixM 00001f90: 65 5b 69 6e 63 6f 6d 70 61 74 69 62 6c 65 2d 63 e[incompatible-c 00001fa0: 61 6c 6c 5d 3a 20 69 73 42 6f 64 79 20 74 65 6c all]: isBody tel 00001fb0: 6c 73 20 75 73 20 74 61 72 67 65 74 20 77 69 6c ls us target wil 00001fc0: 6c 20 62 65 20 61 6e 20 48 54 4d 4c 45 6c 65 6d l be an HTMLElem 00001fd0: 65 6e 74 20 68 65 72 65 5c 6e 20 20 75 70 64 61 ent here\n upda 00001fe0: 74 65 64 4c 69 73 74 2e 63 6f 6e 63 61 74 28 6c tedList.concat(l 00001ff0: 69 73 74 53 63 72 6f 6c 6c 50 61 72 65 6e 74 73 istScrollParents 00002000: 28 67 65 74 50 61 72 65 6e 74 4e 6f 64 65 28 74 (getParentNode(t 00002010: 61 72 67 65 74 29 29 29 3b 5c 6e 7d 22 2c 22 69 arget)));\n}","i 00002020: 6d 70 6f 72 74 20 67 65 74 50 61 72 65 6e 74 4e mport getParentN 00002030: 6f 64 65 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 ode from \"./get 00002040: 50 61 72 65 6e 74 4e 6f 64 65 2e 6a 73 5c 22 3b ParentNode.js\"; 00002050: 5c 6e 69 6d 70 6f 72 74 20 69 73 53 63 72 6f 6c \nimport isScrol 00002060: 6c 50 61 72 65 6e 74 20 66 72 6f 6d 20 5c 22 2e lParent from \". 00002070: 2f 69 73 53 63 72 6f 6c 6c 50 61 72 65 6e 74 2e /isScrollParent. 00002080: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 js\";\nimport ge 00002090: 74 4e 6f 64 65 4e 61 6d 65 20 66 72 6f 6d 20 5c tNodeName from \ 000020a0: 22 2e 2f 67 65 74 4e 6f 64 65 4e 61 6d 65 2e 6a "./getNodeName.j 000020b0: 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 69 s\";\nimport { i 000020c0: 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 20 7d 20 66 sHTMLElement } f 000020d0: 72 6f 6d 20 5c 22 2e 2f 69 6e 73 74 61 6e 63 65 rom \"./instance 000020e0: 4f 66 2e 6a 73 5c 22 3b 5c 6e 65 78 70 6f 72 74 Of.js\";\nexport 000020f0: 20 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f default functio 00002100: 6e 20 67 65 74 53 63 72 6f 6c 6c 50 61 72 65 6e n getScrollParen 00002110: 74 28 6e 6f 64 65 29 20 7b 5c 6e 20 20 69 66 20 t(node) {\n if 00002120: 28 5b 27 68 74 6d 6c 27 2c 20 27 62 6f 64 79 27 (['html', 'body' 00002130: 2c 20 27 23 64 6f 63 75 6d 65 6e 74 27 5d 2e 69 , '#document'].i 00002140: 6e 64 65 78 4f 66 28 67 65 74 4e 6f 64 65 4e 61 ndexOf(getNodeNa 00002150: 6d 65 28 6e 6f 64 65 29 29 20 3e 3d 20 30 29 20 me(node)) >= 0) 00002160: 7b 5c 6e 20 20 20 20 2f 2f 20 24 46 6c 6f 77 46 {\n // $FlowF 00002170: 69 78 4d 65 5b 69 6e 63 6f 6d 70 61 74 69 62 6c ixMe[incompatibl 00002180: 65 2d 72 65 74 75 72 6e 5d 3a 20 61 73 73 75 6d e-return]: assum 00002190: 65 20 62 6f 64 79 20 69 73 20 61 6c 77 61 79 73 e body is always 000021a0: 20 61 76 61 69 6c 61 62 6c 65 5c 6e 20 20 20 20 available\n 000021b0: 72 65 74 75 72 6e 20 6e 6f 64 65 2e 6f 77 6e 65 return node.owne 000021c0: 72 44 6f 63 75 6d 65 6e 74 2e 62 6f 64 79 3b 5c rDocument.body;\ 000021d0: 6e 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 69 73 n }\n\n if (is 000021e0: 48 54 4d 4c 45 6c 65 6d 65 6e 74 28 6e 6f 64 65 HTMLElement(node 000021f0: 29 20 26 26 20 69 73 53 63 72 6f 6c 6c 50 61 72 ) && isScrollPar 00002200: 65 6e 74 28 6e 6f 64 65 29 29 20 7b 5c 6e 20 20 ent(node)) {\n 00002210: 20 20 72 65 74 75 72 6e 20 6e 6f 64 65 3b 5c 6e return node;\n 00002220: 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 }\n\n return 00002230: 67 65 74 53 63 72 6f 6c 6c 50 61 72 65 6e 74 28 getScrollParent( 00002240: 67 65 74 50 61 72 65 6e 74 4e 6f 64 65 28 6e 6f getParentNode(no 00002250: 64 65 29 29 3b 5c 6e 7d 22 2c 22 65 78 70 6f 72 de));\n}","expor 00002260: 74 20 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 t default functi 00002270: 6f 6e 20 72 65 63 74 54 6f 43 6c 69 65 6e 74 52 on rectToClientR 00002280: 65 63 74 28 72 65 63 74 29 20 7b 5c 6e 20 20 72 ect(rect) {\n r 00002290: 65 74 75 72 6e 20 4f 62 6a 65 63 74 2e 61 73 73 eturn Object.ass 000022a0: 69 67 6e 28 7b 7d 2c 20 72 65 63 74 2c 20 7b 5c ign({}, rect, {\ 000022b0: 6e 20 20 20 20 6c 65 66 74 3a 20 72 65 63 74 2e n left: rect. 000022c0: 78 2c 5c 6e 20 20 20 20 74 6f 70 3a 20 72 65 63 x,\n top: rec 000022d0: 74 2e 79 2c 5c 6e 20 20 20 20 72 69 67 68 74 3a t.y,\n right: 000022e0: 20 72 65 63 74 2e 78 20 2b 20 72 65 63 74 2e 77 rect.x + rect.w 000022f0: 69 64 74 68 2c 5c 6e 20 20 20 20 62 6f 74 74 6f idth,\n botto 00002300: 6d 3a 20 72 65 63 74 2e 79 20 2b 20 72 65 63 74 m: rect.y + rect 00002310: 2e 68 65 69 67 68 74 5c 6e 20 20 7d 29 3b 5c 6e .height\n });\n 00002320: 7d 22 2c 22 69 6d 70 6f 72 74 20 7b 20 76 69 65 }","import { vie 00002330: 77 70 6f 72 74 20 7d 20 66 72 6f 6d 20 5c 22 2e wport } from \". 00002340: 2e 2f 65 6e 75 6d 73 2e 6a 73 5c 22 3b 5c 6e 69 ./enums.js\";\ni 00002350: 6d 70 6f 72 74 20 67 65 74 56 69 65 77 70 6f 72 mport getViewpor 00002360: 74 52 65 63 74 20 66 72 6f 6d 20 5c 22 2e 2f 67 tRect from \"./g 00002370: 65 74 56 69 65 77 70 6f 72 74 52 65 63 74 2e 6a etViewportRect.j 00002380: 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 s\";\nimport get 00002390: 44 6f 63 75 6d 65 6e 74 52 65 63 74 20 66 72 6f DocumentRect fro 000023a0: 6d 20 5c 22 2e 2f 67 65 74 44 6f 63 75 6d 65 6e m \"./getDocumen 000023b0: 74 52 65 63 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 tRect.js\";\nimp 000023c0: 6f 72 74 20 6c 69 73 74 53 63 72 6f 6c 6c 50 61 ort listScrollPa 000023d0: 72 65 6e 74 73 20 66 72 6f 6d 20 5c 22 2e 2f 6c rents from \"./l 000023e0: 69 73 74 53 63 72 6f 6c 6c 50 61 72 65 6e 74 73 istScrollParents 000023f0: 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 .js\";\nimport g 00002400: 65 74 4f 66 66 73 65 74 50 61 72 65 6e 74 20 66 etOffsetParent f 00002410: 72 6f 6d 20 5c 22 2e 2f 67 65 74 4f 66 66 73 65 rom \"./getOffse 00002420: 74 50 61 72 65 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 tParent.js\";\ni 00002430: 6d 70 6f 72 74 20 67 65 74 44 6f 63 75 6d 65 6e mport getDocumen 00002440: 74 45 6c 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 tElement from \" 00002450: 2e 2f 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 ./getDocumentEle 00002460: 6d 65 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f ment.js\";\nimpo 00002470: 72 74 20 67 65 74 43 6f 6d 70 75 74 65 64 53 74 rt getComputedSt 00002480: 79 6c 65 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 yle from \"./get 00002490: 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 2e 6a 73 ComputedStyle.js 000024a0: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 69 73 \";\nimport { is 000024b0: 45 6c 65 6d 65 6e 74 2c 20 69 73 48 54 4d 4c 45 Element, isHTMLE 000024c0: 6c 65 6d 65 6e 74 20 7d 20 66 72 6f 6d 20 5c 22 lement } from \" 000024d0: 2e 2f 69 6e 73 74 61 6e 63 65 4f 66 2e 6a 73 5c ./instanceOf.js\ 000024e0: 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 42 6f ";\nimport getBo 000024f0: 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 undingClientRect 00002500: 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 42 6f 75 from \"./getBou 00002510: 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 2e ndingClientRect. 00002520: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 js\";\nimport ge 00002530: 74 50 61 72 65 6e 74 4e 6f 64 65 20 66 72 6f 6d tParentNode from 00002540: 20 5c 22 2e 2f 67 65 74 50 61 72 65 6e 74 4e 6f \"./getParentNo 00002550: 64 65 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 de.js\";\nimport 00002560: 20 63 6f 6e 74 61 69 6e 73 20 66 72 6f 6d 20 5c contains from \ 00002570: 22 2e 2f 63 6f 6e 74 61 69 6e 73 2e 6a 73 5c 22 "./contains.js\" 00002580: 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 4e 6f 64 ;\nimport getNod 00002590: 65 4e 61 6d 65 20 66 72 6f 6d 20 5c 22 2e 2f 67 eName from \"./g 000025a0: 65 74 4e 6f 64 65 4e 61 6d 65 2e 6a 73 5c 22 3b etNodeName.js\"; 000025b0: 5c 6e 69 6d 70 6f 72 74 20 72 65 63 74 54 6f 43 \nimport rectToC 000025c0: 6c 69 65 6e 74 52 65 63 74 20 66 72 6f 6d 20 5c lientRect from \ 000025d0: 22 2e 2e 2f 75 74 69 6c 73 2f 72 65 63 74 54 6f "../utils/rectTo 000025e0: 43 6c 69 65 6e 74 52 65 63 74 2e 6a 73 5c 22 3b ClientRect.js\"; 000025f0: 5c 6e 69 6d 70 6f 72 74 20 7b 20 6d 61 78 2c 20 \nimport { max, 00002600: 6d 69 6e 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e 2f min } from \"../ 00002610: 75 74 69 6c 73 2f 6d 61 74 68 2e 6a 73 5c 22 3b utils/math.js\"; 00002620: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 67 65 74 \n\nfunction get 00002630: 49 6e 6e 65 72 42 6f 75 6e 64 69 6e 67 43 6c 69 InnerBoundingCli 00002640: 65 6e 74 52 65 63 74 28 65 6c 65 6d 65 6e 74 2c entRect(element, 00002650: 20 73 74 72 61 74 65 67 79 29 20 7b 5c 6e 20 20 strategy) {\n 00002660: 76 61 72 20 72 65 63 74 20 3d 20 67 65 74 42 6f var rect = getBo 00002670: 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 undingClientRect 00002680: 28 65 6c 65 6d 65 6e 74 2c 20 66 61 6c 73 65 2c (element, false, 00002690: 20 73 74 72 61 74 65 67 79 20 3d 3d 3d 20 27 66 strategy === 'f 000026a0: 69 78 65 64 27 29 3b 5c 6e 20 20 72 65 63 74 2e ixed');\n rect. 000026b0: 74 6f 70 20 3d 20 72 65 63 74 2e 74 6f 70 20 2b top = rect.top + 000026c0: 20 65 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 54 element.clientT 000026d0: 6f 70 3b 5c 6e 20 20 72 65 63 74 2e 6c 65 66 74 op;\n rect.left 000026e0: 20 3d 20 72 65 63 74 2e 6c 65 66 74 20 2b 20 65 = rect.left + e 000026f0: 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 4c 65 66 lement.clientLef 00002700: 74 3b 5c 6e 20 20 72 65 63 74 2e 62 6f 74 74 6f t;\n rect.botto 00002710: 6d 20 3d 20 72 65 63 74 2e 74 6f 70 20 2b 20 65 m = rect.top + e 00002720: 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 48 65 69 lement.clientHei 00002730: 67 68 74 3b 5c 6e 20 20 72 65 63 74 2e 72 69 67 ght;\n rect.rig 00002740: 68 74 20 3d 20 72 65 63 74 2e 6c 65 66 74 20 2b ht = rect.left + 00002750: 20 65 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 57 element.clientW 00002760: 69 64 74 68 3b 5c 6e 20 20 72 65 63 74 2e 77 69 idth;\n rect.wi 00002770: 64 74 68 20 3d 20 65 6c 65 6d 65 6e 74 2e 63 6c dth = element.cl 00002780: 69 65 6e 74 57 69 64 74 68 3b 5c 6e 20 20 72 65 ientWidth;\n re 00002790: 63 74 2e 68 65 69 67 68 74 20 3d 20 65 6c 65 6d ct.height = elem 000027a0: 65 6e 74 2e 63 6c 69 65 6e 74 48 65 69 67 68 74 ent.clientHeight 000027b0: 3b 5c 6e 20 20 72 65 63 74 2e 78 20 3d 20 72 65 ;\n rect.x = re 000027c0: 63 74 2e 6c 65 66 74 3b 5c 6e 20 20 72 65 63 74 ct.left;\n rect 000027d0: 2e 79 20 3d 20 72 65 63 74 2e 74 6f 70 3b 5c 6e .y = rect.top;\n 000027e0: 20 20 72 65 74 75 72 6e 20 72 65 63 74 3b 5c 6e return rect;\n 000027f0: 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 67 65 }\n\nfunction ge 00002800: 74 43 6c 69 65 6e 74 52 65 63 74 46 72 6f 6d 4d tClientRectFromM 00002810: 69 78 65 64 54 79 70 65 28 65 6c 65 6d 65 6e 74 ixedType(element 00002820: 2c 20 63 6c 69 70 70 69 6e 67 50 61 72 65 6e 74 , clippingParent 00002830: 2c 20 73 74 72 61 74 65 67 79 29 20 7b 5c 6e 20 , strategy) {\n 00002840: 20 72 65 74 75 72 6e 20 63 6c 69 70 70 69 6e 67 return clipping 00002850: 50 61 72 65 6e 74 20 3d 3d 3d 20 76 69 65 77 70 Parent === viewp 00002860: 6f 72 74 20 3f 20 72 65 63 74 54 6f 43 6c 69 65 ort ? rectToClie 00002870: 6e 74 52 65 63 74 28 67 65 74 56 69 65 77 70 6f ntRect(getViewpo 00002880: 72 74 52 65 63 74 28 65 6c 65 6d 65 6e 74 2c 20 rtRect(element, 00002890: 73 74 72 61 74 65 67 79 29 29 20 3a 20 69 73 45 strategy)) : isE 000028a0: 6c 65 6d 65 6e 74 28 63 6c 69 70 70 69 6e 67 50 lement(clippingP 000028b0: 61 72 65 6e 74 29 20 3f 20 67 65 74 49 6e 6e 65 arent) ? getInne 000028c0: 72 42 6f 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 rBoundingClientR 000028d0: 65 63 74 28 63 6c 69 70 70 69 6e 67 50 61 72 65 ect(clippingPare 000028e0: 6e 74 2c 20 73 74 72 61 74 65 67 79 29 20 3a 20 nt, strategy) : 000028f0: 72 65 63 74 54 6f 43 6c 69 65 6e 74 52 65 63 74 rectToClientRect 00002900: 28 67 65 74 44 6f 63 75 6d 65 6e 74 52 65 63 74 (getDocumentRect 00002910: 28 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d (getDocumentElem 00002920: 65 6e 74 28 65 6c 65 6d 65 6e 74 29 29 29 3b 5c ent(element)));\ 00002930: 6e 7d 20 2f 2f 20 41 20 5c 22 63 6c 69 70 70 69 n} // A \"clippi 00002940: 6e 67 20 70 61 72 65 6e 74 5c 22 20 69 73 20 61 ng parent\" is a 00002950: 6e 20 6f 76 65 72 66 6c 6f 77 61 62 6c 65 20 63 n overflowable c 00002960: 6f 6e 74 61 69 6e 65 72 20 77 69 74 68 20 74 68 ontainer with th 00002970: 65 20 63 68 61 72 61 63 74 65 72 69 73 74 69 63 e characteristic 00002980: 20 6f 66 5c 6e 2f 2f 20 63 6c 69 70 70 69 6e 67 of\n// clipping 00002990: 20 28 6f 72 20 68 69 64 69 6e 67 29 20 6f 76 65 (or hiding) ove 000029a0: 72 66 6c 6f 77 69 6e 67 20 65 6c 65 6d 65 6e 74 rflowing element 000029b0: 73 20 77 69 74 68 20 61 20 70 6f 73 69 74 69 6f s with a positio 000029c0: 6e 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f 6d n different from 000029d0: 5c 6e 2f 2f 20 60 69 6e 69 74 69 61 6c 60 5c 6e \n// `initial`\n 000029e0: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 67 65 74 \n\nfunction get 000029f0: 43 6c 69 70 70 69 6e 67 50 61 72 65 6e 74 73 28 ClippingParents( 00002a00: 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 76 61 element) {\n va 00002a10: 72 20 63 6c 69 70 70 69 6e 67 50 61 72 65 6e 74 r clippingParent 00002a20: 73 20 3d 20 6c 69 73 74 53 63 72 6f 6c 6c 50 61 s = listScrollPa 00002a30: 72 65 6e 74 73 28 67 65 74 50 61 72 65 6e 74 4e rents(getParentN 00002a40: 6f 64 65 28 65 6c 65 6d 65 6e 74 29 29 3b 5c 6e ode(element));\n 00002a50: 20 20 76 61 72 20 63 61 6e 45 73 63 61 70 65 43 var canEscapeC 00002a60: 6c 69 70 70 69 6e 67 20 3d 20 5b 27 61 62 73 6f lipping = ['abso 00002a70: 6c 75 74 65 27 2c 20 27 66 69 78 65 64 27 5d 2e lute', 'fixed']. 00002a80: 69 6e 64 65 78 4f 66 28 67 65 74 43 6f 6d 70 75 indexOf(getCompu 00002a90: 74 65 64 53 74 79 6c 65 28 65 6c 65 6d 65 6e 74 tedStyle(element 00002aa0: 29 2e 70 6f 73 69 74 69 6f 6e 29 20 3e 3d 20 30 ).position) >= 0 00002ab0: 3b 5c 6e 20 20 76 61 72 20 63 6c 69 70 70 65 72 ;\n var clipper 00002ac0: 45 6c 65 6d 65 6e 74 20 3d 20 63 61 6e 45 73 63 Element = canEsc 00002ad0: 61 70 65 43 6c 69 70 70 69 6e 67 20 26 26 20 69 apeClipping && i 00002ae0: 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 28 65 6c 65 sHTMLElement(ele 00002af0: 6d 65 6e 74 29 20 3f 20 67 65 74 4f 66 66 73 65 ment) ? getOffse 00002b00: 74 50 61 72 65 6e 74 28 65 6c 65 6d 65 6e 74 29 tParent(element) 00002b10: 20 3a 20 65 6c 65 6d 65 6e 74 3b 5c 6e 5c 6e 20 : element;\n\n 00002b20: 20 69 66 20 28 21 69 73 45 6c 65 6d 65 6e 74 28 if (!isElement( 00002b30: 63 6c 69 70 70 65 72 45 6c 65 6d 65 6e 74 29 29 clipperElement)) 00002b40: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 5b {\n return [ 00002b50: 5d 3b 5c 6e 20 20 7d 20 2f 2f 20 24 46 6c 6f 77 ];\n } // $Flow 00002b60: 46 69 78 4d 65 5b 69 6e 63 6f 6d 70 61 74 69 62 FixMe[incompatib 00002b70: 6c 65 2d 72 65 74 75 72 6e 5d 3a 20 68 74 74 70 le-return]: http 00002b80: 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 66 s://github.com/f 00002b90: 61 63 65 62 6f 6f 6b 2f 66 6c 6f 77 2f 69 73 73 acebook/flow/iss 00002ba0: 75 65 73 2f 31 34 31 34 5c 6e 5c 6e 5c 6e 20 20 ues/1414\n\n\n 00002bb0: 72 65 74 75 72 6e 20 63 6c 69 70 70 69 6e 67 50 return clippingP 00002bc0: 61 72 65 6e 74 73 2e 66 69 6c 74 65 72 28 66 75 arents.filter(fu 00002bd0: 6e 63 74 69 6f 6e 20 28 63 6c 69 70 70 69 6e 67 nction (clipping 00002be0: 50 61 72 65 6e 74 29 20 7b 5c 6e 20 20 20 20 72 Parent) {\n r 00002bf0: 65 74 75 72 6e 20 69 73 45 6c 65 6d 65 6e 74 28 eturn isElement( 00002c00: 63 6c 69 70 70 69 6e 67 50 61 72 65 6e 74 29 20 clippingParent) 00002c10: 26 26 20 63 6f 6e 74 61 69 6e 73 28 63 6c 69 70 && contains(clip 00002c20: 70 69 6e 67 50 61 72 65 6e 74 2c 20 63 6c 69 70 pingParent, clip 00002c30: 70 65 72 45 6c 65 6d 65 6e 74 29 20 26 26 20 67 perElement) && g 00002c40: 65 74 4e 6f 64 65 4e 61 6d 65 28 63 6c 69 70 70 etNodeName(clipp 00002c50: 69 6e 67 50 61 72 65 6e 74 29 20 21 3d 3d 20 27 ingParent) !== ' 00002c60: 62 6f 64 79 27 3b 5c 6e 20 20 7d 29 3b 5c 6e 7d body';\n });\n} 00002c70: 20 2f 2f 20 47 65 74 73 20 74 68 65 20 6d 61 78 // Gets the max 00002c80: 69 6d 75 6d 20 61 72 65 61 20 74 68 61 74 20 74 imum area that t 00002c90: 68 65 20 65 6c 65 6d 65 6e 74 20 69 73 20 76 69 he element is vi 00002ca0: 73 69 62 6c 65 20 69 6e 20 64 75 65 20 74 6f 20 sible in due to 00002cb0: 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66 5c 6e 2f any number of\n/ 00002cc0: 2f 20 63 6c 69 70 70 69 6e 67 20 70 61 72 65 6e / clipping paren 00002cd0: 74 73 5c 6e 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 ts\n\n\nexport d 00002ce0: 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f 6e 20 efault function 00002cf0: 67 65 74 43 6c 69 70 70 69 6e 67 52 65 63 74 28 getClippingRect( 00002d00: 65 6c 65 6d 65 6e 74 2c 20 62 6f 75 6e 64 61 72 element, boundar 00002d10: 79 2c 20 72 6f 6f 74 42 6f 75 6e 64 61 72 79 2c y, rootBoundary, 00002d20: 20 73 74 72 61 74 65 67 79 29 20 7b 5c 6e 20 20 strategy) {\n 00002d30: 76 61 72 20 6d 61 69 6e 43 6c 69 70 70 69 6e 67 var mainClipping 00002d40: 50 61 72 65 6e 74 73 20 3d 20 62 6f 75 6e 64 61 Parents = bounda 00002d50: 72 79 20 3d 3d 3d 20 27 63 6c 69 70 70 69 6e 67 ry === 'clipping 00002d60: 50 61 72 65 6e 74 73 27 20 3f 20 67 65 74 43 6c Parents' ? getCl 00002d70: 69 70 70 69 6e 67 50 61 72 65 6e 74 73 28 65 6c ippingParents(el 00002d80: 65 6d 65 6e 74 29 20 3a 20 5b 5d 2e 63 6f 6e 63 ement) : [].conc 00002d90: 61 74 28 62 6f 75 6e 64 61 72 79 29 3b 5c 6e 20 at(boundary);\n 00002da0: 20 76 61 72 20 63 6c 69 70 70 69 6e 67 50 61 72 var clippingPar 00002db0: 65 6e 74 73 20 3d 20 5b 5d 2e 63 6f 6e 63 61 74 ents = [].concat 00002dc0: 28 6d 61 69 6e 43 6c 69 70 70 69 6e 67 50 61 72 (mainClippingPar 00002dd0: 65 6e 74 73 2c 20 5b 72 6f 6f 74 42 6f 75 6e 64 ents, [rootBound 00002de0: 61 72 79 5d 29 3b 5c 6e 20 20 76 61 72 20 66 69 ary]);\n var fi 00002df0: 72 73 74 43 6c 69 70 70 69 6e 67 50 61 72 65 6e rstClippingParen 00002e00: 74 20 3d 20 63 6c 69 70 70 69 6e 67 50 61 72 65 t = clippingPare 00002e10: 6e 74 73 5b 30 5d 3b 5c 6e 20 20 76 61 72 20 63 nts[0];\n var c 00002e20: 6c 69 70 70 69 6e 67 52 65 63 74 20 3d 20 63 6c lippingRect = cl 00002e30: 69 70 70 69 6e 67 50 61 72 65 6e 74 73 2e 72 65 ippingParents.re 00002e40: 64 75 63 65 28 66 75 6e 63 74 69 6f 6e 20 28 61 duce(function (a 00002e50: 63 63 52 65 63 74 2c 20 63 6c 69 70 70 69 6e 67 ccRect, clipping 00002e60: 50 61 72 65 6e 74 29 20 7b 5c 6e 20 20 20 20 76 Parent) {\n v 00002e70: 61 72 20 72 65 63 74 20 3d 20 67 65 74 43 6c 69 ar rect = getCli 00002e80: 65 6e 74 52 65 63 74 46 72 6f 6d 4d 69 78 65 64 entRectFromMixed 00002e90: 54 79 70 65 28 65 6c 65 6d 65 6e 74 2c 20 63 6c Type(element, cl 00002ea0: 69 70 70 69 6e 67 50 61 72 65 6e 74 2c 20 73 74 ippingParent, st 00002eb0: 72 61 74 65 67 79 29 3b 5c 6e 20 20 20 20 61 63 rategy);\n ac 00002ec0: 63 52 65 63 74 2e 74 6f 70 20 3d 20 6d 61 78 28 cRect.top = max( 00002ed0: 72 65 63 74 2e 74 6f 70 2c 20 61 63 63 52 65 63 rect.top, accRec 00002ee0: 74 2e 74 6f 70 29 3b 5c 6e 20 20 20 20 61 63 63 t.top);\n acc 00002ef0: 52 65 63 74 2e 72 69 67 68 74 20 3d 20 6d 69 6e Rect.right = min 00002f00: 28 72 65 63 74 2e 72 69 67 68 74 2c 20 61 63 63 (rect.right, acc 00002f10: 52 65 63 74 2e 72 69 67 68 74 29 3b 5c 6e 20 20 Rect.right);\n 00002f20: 20 20 61 63 63 52 65 63 74 2e 62 6f 74 74 6f 6d accRect.bottom 00002f30: 20 3d 20 6d 69 6e 28 72 65 63 74 2e 62 6f 74 74 = min(rect.bott 00002f40: 6f 6d 2c 20 61 63 63 52 65 63 74 2e 62 6f 74 74 om, accRect.bott 00002f50: 6f 6d 29 3b 5c 6e 20 20 20 20 61 63 63 52 65 63 om);\n accRec 00002f60: 74 2e 6c 65 66 74 20 3d 20 6d 61 78 28 72 65 63 t.left = max(rec 00002f70: 74 2e 6c 65 66 74 2c 20 61 63 63 52 65 63 74 2e t.left, accRect. 00002f80: 6c 65 66 74 29 3b 5c 6e 20 20 20 20 72 65 74 75 left);\n retu 00002f90: 72 6e 20 61 63 63 52 65 63 74 3b 5c 6e 20 20 7d rn accRect;\n } 00002fa0: 2c 20 67 65 74 43 6c 69 65 6e 74 52 65 63 74 46 , getClientRectF 00002fb0: 72 6f 6d 4d 69 78 65 64 54 79 70 65 28 65 6c 65 romMixedType(ele 00002fc0: 6d 65 6e 74 2c 20 66 69 72 73 74 43 6c 69 70 70 ment, firstClipp 00002fd0: 69 6e 67 50 61 72 65 6e 74 2c 20 73 74 72 61 74 ingParent, strat 00002fe0: 65 67 79 29 29 3b 5c 6e 20 20 63 6c 69 70 70 69 egy));\n clippi 00002ff0: 6e 67 52 65 63 74 2e 77 69 64 74 68 20 3d 20 63 ngRect.width = c 00003000: 6c 69 70 70 69 6e 67 52 65 63 74 2e 72 69 67 68 lippingRect.righ 00003010: 74 20 2d 20 63 6c 69 70 70 69 6e 67 52 65 63 74 t - clippingRect 00003020: 2e 6c 65 66 74 3b 5c 6e 20 20 63 6c 69 70 70 69 .left;\n clippi 00003030: 6e 67 52 65 63 74 2e 68 65 69 67 68 74 20 3d 20 ngRect.height = 00003040: 63 6c 69 70 70 69 6e 67 52 65 63 74 2e 62 6f 74 clippingRect.bot 00003050: 74 6f 6d 20 2d 20 63 6c 69 70 70 69 6e 67 52 65 tom - clippingRe 00003060: 63 74 2e 74 6f 70 3b 5c 6e 20 20 63 6c 69 70 70 ct.top;\n clipp 00003070: 69 6e 67 52 65 63 74 2e 78 20 3d 20 63 6c 69 70 ingRect.x = clip 00003080: 70 69 6e 67 52 65 63 74 2e 6c 65 66 74 3b 5c 6e pingRect.left;\n 00003090: 20 20 63 6c 69 70 70 69 6e 67 52 65 63 74 2e 79 clippingRect.y 000030a0: 20 3d 20 63 6c 69 70 70 69 6e 67 52 65 63 74 2e = clippingRect. 000030b0: 74 6f 70 3b 5c 6e 20 20 72 65 74 75 72 6e 20 63 top;\n return c 000030c0: 6c 69 70 70 69 6e 67 52 65 63 74 3b 5c 6e 7d 22 lippingRect;\n}" 000030d0: 2c 22 69 6d 70 6f 72 74 20 67 65 74 57 69 6e 64 ,"import getWind 000030e0: 6f 77 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 57 ow from \"./getW 000030f0: 69 6e 64 6f 77 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 indow.js\";\nimp 00003100: 6f 72 74 20 67 65 74 44 6f 63 75 6d 65 6e 74 45 ort getDocumentE 00003110: 6c 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e 2f lement from \"./ 00003120: 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 getDocumentEleme 00003130: 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 nt.js\";\nimport 00003140: 20 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c getWindowScroll 00003150: 42 61 72 58 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 BarX from \"./ge 00003160: 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c 42 61 72 tWindowScrollBar 00003170: 58 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 X.js\";\nimport 00003180: 69 73 4c 61 79 6f 75 74 56 69 65 77 70 6f 72 74 isLayoutViewport 00003190: 20 66 72 6f 6d 20 5c 22 2e 2f 69 73 4c 61 79 6f from \"./isLayo 000031a0: 75 74 56 69 65 77 70 6f 72 74 2e 6a 73 5c 22 3b utViewport.js\"; 000031b0: 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 \nexport default 000031c0: 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 56 69 65 function getVie 000031d0: 77 70 6f 72 74 52 65 63 74 28 65 6c 65 6d 65 6e wportRect(elemen 000031e0: 74 2c 20 73 74 72 61 74 65 67 79 29 20 7b 5c 6e t, strategy) {\n 000031f0: 20 20 76 61 72 20 77 69 6e 20 3d 20 67 65 74 57 var win = getW 00003200: 69 6e 64 6f 77 28 65 6c 65 6d 65 6e 74 29 3b 5c indow(element);\ 00003210: 6e 20 20 76 61 72 20 68 74 6d 6c 20 3d 20 67 65 n var html = ge 00003220: 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 tDocumentElement 00003230: 28 65 6c 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 61 (element);\n va 00003240: 72 20 76 69 73 75 61 6c 56 69 65 77 70 6f 72 74 r visualViewport 00003250: 20 3d 20 77 69 6e 2e 76 69 73 75 61 6c 56 69 65 = win.visualVie 00003260: 77 70 6f 72 74 3b 5c 6e 20 20 76 61 72 20 77 69 wport;\n var wi 00003270: 64 74 68 20 3d 20 68 74 6d 6c 2e 63 6c 69 65 6e dth = html.clien 00003280: 74 57 69 64 74 68 3b 5c 6e 20 20 76 61 72 20 68 tWidth;\n var h 00003290: 65 69 67 68 74 20 3d 20 68 74 6d 6c 2e 63 6c 69 eight = html.cli 000032a0: 65 6e 74 48 65 69 67 68 74 3b 5c 6e 20 20 76 61 entHeight;\n va 000032b0: 72 20 78 20 3d 20 30 3b 5c 6e 20 20 76 61 72 20 r x = 0;\n var 000032c0: 79 20 3d 20 30 3b 5c 6e 5c 6e 20 20 69 66 20 28 y = 0;\n\n if ( 000032d0: 76 69 73 75 61 6c 56 69 65 77 70 6f 72 74 29 20 visualViewport) 000032e0: 7b 5c 6e 20 20 20 20 77 69 64 74 68 20 3d 20 76 {\n width = v 000032f0: 69 73 75 61 6c 56 69 65 77 70 6f 72 74 2e 77 69 isualViewport.wi 00003300: 64 74 68 3b 5c 6e 20 20 20 20 68 65 69 67 68 74 dth;\n height 00003310: 20 3d 20 76 69 73 75 61 6c 56 69 65 77 70 6f 72 = visualViewpor 00003320: 74 2e 68 65 69 67 68 74 3b 5c 6e 20 20 20 20 76 t.height;\n v 00003330: 61 72 20 6c 61 79 6f 75 74 56 69 65 77 70 6f 72 ar layoutViewpor 00003340: 74 20 3d 20 69 73 4c 61 79 6f 75 74 56 69 65 77 t = isLayoutView 00003350: 70 6f 72 74 28 29 3b 5c 6e 5c 6e 20 20 20 20 69 port();\n\n i 00003360: 66 20 28 6c 61 79 6f 75 74 56 69 65 77 70 6f 72 f (layoutViewpor 00003370: 74 20 7c 7c 20 21 6c 61 79 6f 75 74 56 69 65 77 t || !layoutView 00003380: 70 6f 72 74 20 26 26 20 73 74 72 61 74 65 67 79 port && strategy 00003390: 20 3d 3d 3d 20 27 66 69 78 65 64 27 29 20 7b 5c === 'fixed') {\ 000033a0: 6e 20 20 20 20 20 20 78 20 3d 20 76 69 73 75 61 n x = visua 000033b0: 6c 56 69 65 77 70 6f 72 74 2e 6f 66 66 73 65 74 lViewport.offset 000033c0: 4c 65 66 74 3b 5c 6e 20 20 20 20 20 20 79 20 3d Left;\n y = 000033d0: 20 76 69 73 75 61 6c 56 69 65 77 70 6f 72 74 2e visualViewport. 000033e0: 6f 66 66 73 65 74 54 6f 70 3b 5c 6e 20 20 20 20 offsetTop;\n 000033f0: 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 }\n }\n\n retu 00003400: 72 6e 20 7b 5c 6e 20 20 20 20 77 69 64 74 68 3a rn {\n width: 00003410: 20 77 69 64 74 68 2c 5c 6e 20 20 20 20 68 65 69 width,\n hei 00003420: 67 68 74 3a 20 68 65 69 67 68 74 2c 5c 6e 20 20 ght: height,\n 00003430: 20 20 78 3a 20 78 20 2b 20 67 65 74 57 69 6e 64 x: x + getWind 00003440: 6f 77 53 63 72 6f 6c 6c 42 61 72 58 28 65 6c 65 owScrollBarX(ele 00003450: 6d 65 6e 74 29 2c 5c 6e 20 20 20 20 79 3a 20 79 ment),\n y: y 00003460: 5c 6e 20 20 7d 3b 5c 6e 7d 22 2c 22 69 6d 70 6f \n };\n}","impo 00003470: 72 74 20 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c rt getDocumentEl 00003480: 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e 2f 67 ement from \"./g 00003490: 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e etDocumentElemen 000034a0: 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 t.js\";\nimport 000034b0: 67 65 74 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 getComputedStyle 000034c0: 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 43 6f 6d from \"./getCom 000034d0: 70 75 74 65 64 53 74 79 6c 65 2e 6a 73 5c 22 3b putedStyle.js\"; 000034e0: 5c 6e 69 6d 70 6f 72 74 20 67 65 74 57 69 6e 64 \nimport getWind 000034f0: 6f 77 53 63 72 6f 6c 6c 42 61 72 58 20 66 72 6f owScrollBarX fro 00003500: 6d 20 5c 22 2e 2f 67 65 74 57 69 6e 64 6f 77 53 m \"./getWindowS 00003510: 63 72 6f 6c 6c 42 61 72 58 2e 6a 73 5c 22 3b 5c crollBarX.js\";\ 00003520: 6e 69 6d 70 6f 72 74 20 67 65 74 57 69 6e 64 6f nimport getWindo 00003530: 77 53 63 72 6f 6c 6c 20 66 72 6f 6d 20 5c 22 2e wScroll from \". 00003540: 2f 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c /getWindowScroll 00003550: 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b .js\";\nimport { 00003560: 20 6d 61 78 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e max } from \".. 00003570: 2f 75 74 69 6c 73 2f 6d 61 74 68 2e 6a 73 5c 22 /utils/math.js\" 00003580: 3b 20 2f 2f 20 47 65 74 73 20 74 68 65 20 65 6e ; // Gets the en 00003590: 74 69 72 65 20 73 69 7a 65 20 6f 66 20 74 68 65 tire size of the 000035a0: 20 73 63 72 6f 6c 6c 61 62 6c 65 20 64 6f 63 75 scrollable docu 000035b0: 6d 65 6e 74 20 61 72 65 61 2c 20 65 76 65 6e 20 ment area, even 000035c0: 65 78 74 65 6e 64 69 6e 67 20 6f 75 74 73 69 64 extending outsid 000035d0: 65 5c 6e 2f 2f 20 6f 66 20 74 68 65 20 60 3c 68 e\n// of the `<h 000035e0: 74 6d 6c 3e 60 20 61 6e 64 20 60 3c 62 6f 64 79 tml>` and `<body 000035f0: 3e 60 20 72 65 63 74 20 62 6f 75 6e 64 73 20 69 >` rect bounds i 00003600: 66 20 68 6f 72 69 7a 6f 6e 74 61 6c 6c 79 20 73 f horizontally s 00003610: 63 72 6f 6c 6c 61 62 6c 65 5c 6e 5c 6e 65 78 70 crollable\n\nexp 00003620: 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e 63 ort default func 00003630: 74 69 6f 6e 20 67 65 74 44 6f 63 75 6d 65 6e 74 tion getDocument 00003640: 52 65 63 74 28 65 6c 65 6d 65 6e 74 29 20 7b 5c Rect(element) {\ 00003650: 6e 20 20 76 61 72 20 5f 65 6c 65 6d 65 6e 74 24 n var _element$ 00003660: 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 3b 5c 6e 5c ownerDocumen;\n\ 00003670: 6e 20 20 76 61 72 20 68 74 6d 6c 20 3d 20 67 65 n var html = ge 00003680: 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 tDocumentElement 00003690: 28 65 6c 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 61 (element);\n va 000036a0: 72 20 77 69 6e 53 63 72 6f 6c 6c 20 3d 20 67 65 r winScroll = ge 000036b0: 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c 28 65 6c tWindowScroll(el 000036c0: 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 61 72 20 62 ement);\n var b 000036d0: 6f 64 79 20 3d 20 28 5f 65 6c 65 6d 65 6e 74 24 ody = (_element$ 000036e0: 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 20 3d 20 65 ownerDocumen = e 000036f0: 6c 65 6d 65 6e 74 2e 6f 77 6e 65 72 44 6f 63 75 lement.ownerDocu 00003700: 6d 65 6e 74 29 20 3d 3d 20 6e 75 6c 6c 20 3f 20 ment) == null ? 00003710: 76 6f 69 64 20 30 20 3a 20 5f 65 6c 65 6d 65 6e void 0 : _elemen 00003720: 74 24 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 2e 62 t$ownerDocumen.b 00003730: 6f 64 79 3b 5c 6e 20 20 76 61 72 20 77 69 64 74 ody;\n var widt 00003740: 68 20 3d 20 6d 61 78 28 68 74 6d 6c 2e 73 63 72 h = max(html.scr 00003750: 6f 6c 6c 57 69 64 74 68 2c 20 68 74 6d 6c 2e 63 ollWidth, html.c 00003760: 6c 69 65 6e 74 57 69 64 74 68 2c 20 62 6f 64 79 lientWidth, body 00003770: 20 3f 20 62 6f 64 79 2e 73 63 72 6f 6c 6c 57 69 ? body.scrollWi 00003780: 64 74 68 20 3a 20 30 2c 20 62 6f 64 79 20 3f 20 dth : 0, body ? 00003790: 62 6f 64 79 2e 63 6c 69 65 6e 74 57 69 64 74 68 body.clientWidth 000037a0: 20 3a 20 30 29 3b 5c 6e 20 20 76 61 72 20 68 65 : 0);\n var he 000037b0: 69 67 68 74 20 3d 20 6d 61 78 28 68 74 6d 6c 2e ight = max(html. 000037c0: 73 63 72 6f 6c 6c 48 65 69 67 68 74 2c 20 68 74 scrollHeight, ht 000037d0: 6d 6c 2e 63 6c 69 65 6e 74 48 65 69 67 68 74 2c ml.clientHeight, 000037e0: 20 62 6f 64 79 20 3f 20 62 6f 64 79 2e 73 63 72 body ? body.scr 000037f0: 6f 6c 6c 48 65 69 67 68 74 20 3a 20 30 2c 20 62 ollHeight : 0, b 00003800: 6f 64 79 20 3f 20 62 6f 64 79 2e 63 6c 69 65 6e ody ? body.clien 00003810: 74 48 65 69 67 68 74 20 3a 20 30 29 3b 5c 6e 20 tHeight : 0);\n 00003820: 20 76 61 72 20 78 20 3d 20 2d 77 69 6e 53 63 72 var x = -winScr 00003830: 6f 6c 6c 2e 73 63 72 6f 6c 6c 4c 65 66 74 20 2b oll.scrollLeft + 00003840: 20 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c getWindowScroll 00003850: 42 61 72 58 28 65 6c 65 6d 65 6e 74 29 3b 5c 6e BarX(element);\n 00003860: 20 20 76 61 72 20 79 20 3d 20 2d 77 69 6e 53 63 var y = -winSc 00003870: 72 6f 6c 6c 2e 73 63 72 6f 6c 6c 54 6f 70 3b 5c roll.scrollTop;\ 00003880: 6e 5c 6e 20 20 69 66 20 28 67 65 74 43 6f 6d 70 n\n if (getComp 00003890: 75 74 65 64 53 74 79 6c 65 28 62 6f 64 79 20 7c utedStyle(body | 000038a0: 7c 20 68 74 6d 6c 29 2e 64 69 72 65 63 74 69 6f | html).directio 000038b0: 6e 20 3d 3d 3d 20 27 72 74 6c 27 29 20 7b 5c 6e n === 'rtl') {\n 000038c0: 20 20 20 20 78 20 2b 3d 20 6d 61 78 28 68 74 6d x += max(htm 000038d0: 6c 2e 63 6c 69 65 6e 74 57 69 64 74 68 2c 20 62 l.clientWidth, b 000038e0: 6f 64 79 20 3f 20 62 6f 64 79 2e 63 6c 69 65 6e ody ? body.clien 000038f0: 74 57 69 64 74 68 20 3a 20 30 29 20 2d 20 77 69 tWidth : 0) - wi 00003900: 64 74 68 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 72 dth;\n }\n\n r 00003910: 65 74 75 72 6e 20 7b 5c 6e 20 20 20 20 77 69 64 eturn {\n wid 00003920: 74 68 3a 20 77 69 64 74 68 2c 5c 6e 20 20 20 20 th: width,\n 00003930: 68 65 69 67 68 74 3a 20 68 65 69 67 68 74 2c 5c height: height,\ 00003940: 6e 20 20 20 20 78 3a 20 78 2c 5c 6e 20 20 20 20 n x: x,\n 00003950: 79 3a 20 79 5c 6e 20 20 7d 3b 5c 6e 7d 22 2c 22 y: y\n };\n}"," 00003960: 69 6d 70 6f 72 74 20 67 65 74 42 61 73 65 50 6c import getBasePl 00003970: 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e acement from \". 00003980: 2f 67 65 74 42 61 73 65 50 6c 61 63 65 6d 65 6e /getBasePlacemen 00003990: 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 t.js\";\nimport 000039a0: 67 65 74 56 61 72 69 61 74 69 6f 6e 20 66 72 6f getVariation fro 000039b0: 6d 20 5c 22 2e 2f 67 65 74 56 61 72 69 61 74 69 m \"./getVariati 000039c0: 6f 6e 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 on.js\";\nimport 000039d0: 20 67 65 74 4d 61 69 6e 41 78 69 73 46 72 6f 6d getMainAxisFrom 000039e0: 50 6c 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c Placement from \ 000039f0: 22 2e 2f 67 65 74 4d 61 69 6e 41 78 69 73 46 72 "./getMainAxisFr 00003a00: 6f 6d 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 5c 22 omPlacement.js\" 00003a10: 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 74 6f 70 2c ;\nimport { top, 00003a20: 20 72 69 67 68 74 2c 20 62 6f 74 74 6f 6d 2c 20 right, bottom, 00003a30: 6c 65 66 74 2c 20 73 74 61 72 74 2c 20 65 6e 64 left, start, end 00003a40: 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e 2f 65 6e 75 } from \"../enu 00003a50: 6d 73 2e 6a 73 5c 22 3b 5c 6e 65 78 70 6f 72 74 ms.js\";\nexport 00003a60: 20 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f default functio 00003a70: 6e 20 63 6f 6d 70 75 74 65 4f 66 66 73 65 74 73 n computeOffsets 00003a80: 28 5f 72 65 66 29 20 7b 5c 6e 20 20 76 61 72 20 (_ref) {\n var 00003a90: 72 65 66 65 72 65 6e 63 65 20 3d 20 5f 72 65 66 reference = _ref 00003aa0: 2e 72 65 66 65 72 65 6e 63 65 2c 5c 6e 20 20 20 .reference,\n 00003ab0: 20 20 20 65 6c 65 6d 65 6e 74 20 3d 20 5f 72 65 element = _re 00003ac0: 66 2e 65 6c 65 6d 65 6e 74 2c 5c 6e 20 20 20 20 f.element,\n 00003ad0: 20 20 70 6c 61 63 65 6d 65 6e 74 20 3d 20 5f 72 placement = _r 00003ae0: 65 66 2e 70 6c 61 63 65 6d 65 6e 74 3b 5c 6e 20 ef.placement;\n 00003af0: 20 76 61 72 20 62 61 73 65 50 6c 61 63 65 6d 65 var basePlaceme 00003b00: 6e 74 20 3d 20 70 6c 61 63 65 6d 65 6e 74 20 3f nt = placement ? 00003b10: 20 67 65 74 42 61 73 65 50 6c 61 63 65 6d 65 6e getBasePlacemen 00003b20: 74 28 70 6c 61 63 65 6d 65 6e 74 29 20 3a 20 6e t(placement) : n 00003b30: 75 6c 6c 3b 5c 6e 20 20 76 61 72 20 76 61 72 69 ull;\n var vari 00003b40: 61 74 69 6f 6e 20 3d 20 70 6c 61 63 65 6d 65 6e ation = placemen 00003b50: 74 20 3f 20 67 65 74 56 61 72 69 61 74 69 6f 6e t ? getVariation 00003b60: 28 70 6c 61 63 65 6d 65 6e 74 29 20 3a 20 6e 75 (placement) : nu 00003b70: 6c 6c 3b 5c 6e 20 20 76 61 72 20 63 6f 6d 6d 6f ll;\n var commo 00003b80: 6e 58 20 3d 20 72 65 66 65 72 65 6e 63 65 2e 78 nX = reference.x 00003b90: 20 2b 20 72 65 66 65 72 65 6e 63 65 2e 77 69 64 + reference.wid 00003ba0: 74 68 20 2f 20 32 20 2d 20 65 6c 65 6d 65 6e 74 th / 2 - element 00003bb0: 2e 77 69 64 74 68 20 2f 20 32 3b 5c 6e 20 20 76 .width / 2;\n v 00003bc0: 61 72 20 63 6f 6d 6d 6f 6e 59 20 3d 20 72 65 66 ar commonY = ref 00003bd0: 65 72 65 6e 63 65 2e 79 20 2b 20 72 65 66 65 72 erence.y + refer 00003be0: 65 6e 63 65 2e 68 65 69 67 68 74 20 2f 20 32 20 ence.height / 2 00003bf0: 2d 20 65 6c 65 6d 65 6e 74 2e 68 65 69 67 68 74 - element.height 00003c00: 20 2f 20 32 3b 5c 6e 20 20 76 61 72 20 6f 66 66 / 2;\n var off 00003c10: 73 65 74 73 3b 5c 6e 5c 6e 20 20 73 77 69 74 63 sets;\n\n switc 00003c20: 68 20 28 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 h (basePlacement 00003c30: 29 20 7b 5c 6e 20 20 20 20 63 61 73 65 20 74 6f ) {\n case to 00003c40: 70 3a 5c 6e 20 20 20 20 20 20 6f 66 66 73 65 74 p:\n offset 00003c50: 73 20 3d 20 7b 5c 6e 20 20 20 20 20 20 20 20 78 s = {\n x 00003c60: 3a 20 63 6f 6d 6d 6f 6e 58 2c 5c 6e 20 20 20 20 : commonX,\n 00003c70: 20 20 20 20 79 3a 20 72 65 66 65 72 65 6e 63 65 y: reference 00003c80: 2e 79 20 2d 20 65 6c 65 6d 65 6e 74 2e 68 65 69 .y - element.hei 00003c90: 67 68 74 5c 6e 20 20 20 20 20 20 7d 3b 5c 6e 20 ght\n };\n 00003ca0: 20 20 20 20 20 62 72 65 61 6b 3b 5c 6e 5c 6e 20 break;\n\n 00003cb0: 20 20 20 63 61 73 65 20 62 6f 74 74 6f 6d 3a 5c case bottom:\ 00003cc0: 6e 20 20 20 20 20 20 6f 66 66 73 65 74 73 20 3d n offsets = 00003cd0: 20 7b 5c 6e 20 20 20 20 20 20 20 20 78 3a 20 63 {\n x: c 00003ce0: 6f 6d 6d 6f 6e 58 2c 5c 6e 20 20 20 20 20 20 20 ommonX,\n 00003cf0: 20 79 3a 20 72 65 66 65 72 65 6e 63 65 2e 79 20 y: reference.y 00003d00: 2b 20 72 65 66 65 72 65 6e 63 65 2e 68 65 69 67 + reference.heig 00003d10: 68 74 5c 6e 20 20 20 20 20 20 7d 3b 5c 6e 20 20 ht\n };\n 00003d20: 20 20 20 20 62 72 65 61 6b 3b 5c 6e 5c 6e 20 20 break;\n\n 00003d30: 20 20 63 61 73 65 20 72 69 67 68 74 3a 5c 6e 20 case right:\n 00003d40: 20 20 20 20 20 6f 66 66 73 65 74 73 20 3d 20 7b offsets = { 00003d50: 5c 6e 20 20 20 20 20 20 20 20 78 3a 20 72 65 66 \n x: ref 00003d60: 65 72 65 6e 63 65 2e 78 20 2b 20 72 65 66 65 72 erence.x + refer 00003d70: 65 6e 63 65 2e 77 69 64 74 68 2c 5c 6e 20 20 20 ence.width,\n 00003d80: 20 20 20 20 20 79 3a 20 63 6f 6d 6d 6f 6e 59 5c y: commonY\ 00003d90: 6e 20 20 20 20 20 20 7d 3b 5c 6e 20 20 20 20 20 n };\n 00003da0: 20 62 72 65 61 6b 3b 5c 6e 5c 6e 20 20 20 20 63 break;\n\n c 00003db0: 61 73 65 20 6c 65 66 74 3a 5c 6e 20 20 20 20 20 ase left:\n 00003dc0: 20 6f 66 66 73 65 74 73 20 3d 20 7b 5c 6e 20 20 offsets = {\n 00003dd0: 20 20 20 20 20 20 78 3a 20 72 65 66 65 72 65 6e x: referen 00003de0: 63 65 2e 78 20 2d 20 65 6c 65 6d 65 6e 74 2e 77 ce.x - element.w 00003df0: 69 64 74 68 2c 5c 6e 20 20 20 20 20 20 20 20 79 idth,\n y 00003e00: 3a 20 63 6f 6d 6d 6f 6e 59 5c 6e 20 20 20 20 20 : commonY\n 00003e10: 20 7d 3b 5c 6e 20 20 20 20 20 20 62 72 65 61 6b };\n break 00003e20: 3b 5c 6e 5c 6e 20 20 20 20 64 65 66 61 75 6c 74 ;\n\n default 00003e30: 3a 5c 6e 20 20 20 20 20 20 6f 66 66 73 65 74 73 :\n offsets 00003e40: 20 3d 20 7b 5c 6e 20 20 20 20 20 20 20 20 78 3a = {\n x: 00003e50: 20 72 65 66 65 72 65 6e 63 65 2e 78 2c 5c 6e 20 reference.x,\n 00003e60: 20 20 20 20 20 20 20 79 3a 20 72 65 66 65 72 65 y: refere 00003e70: 6e 63 65 2e 79 5c 6e 20 20 20 20 20 20 7d 3b 5c nce.y\n };\ 00003e80: 6e 20 20 7d 5c 6e 5c 6e 20 20 76 61 72 20 6d 61 n }\n\n var ma 00003e90: 69 6e 41 78 69 73 20 3d 20 62 61 73 65 50 6c 61 inAxis = basePla 00003ea0: 63 65 6d 65 6e 74 20 3f 20 67 65 74 4d 61 69 6e cement ? getMain 00003eb0: 41 78 69 73 46 72 6f 6d 50 6c 61 63 65 6d 65 6e AxisFromPlacemen 00003ec0: 74 28 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 29 t(basePlacement) 00003ed0: 20 3a 20 6e 75 6c 6c 3b 5c 6e 5c 6e 20 20 69 66 : null;\n\n if 00003ee0: 20 28 6d 61 69 6e 41 78 69 73 20 21 3d 20 6e 75 (mainAxis != nu 00003ef0: 6c 6c 29 20 7b 5c 6e 20 20 20 20 76 61 72 20 6c ll) {\n var l 00003f00: 65 6e 20 3d 20 6d 61 69 6e 41 78 69 73 20 3d 3d en = mainAxis == 00003f10: 3d 20 27 79 27 20 3f 20 27 68 65 69 67 68 74 27 = 'y' ? 'height' 00003f20: 20 3a 20 27 77 69 64 74 68 27 3b 5c 6e 5c 6e 20 : 'width';\n\n 00003f30: 20 20 20 73 77 69 74 63 68 20 28 76 61 72 69 61 switch (varia 00003f40: 74 69 6f 6e 29 20 7b 5c 6e 20 20 20 20 20 20 63 tion) {\n c 00003f50: 61 73 65 20 73 74 61 72 74 3a 5c 6e 20 20 20 20 ase start:\n 00003f60: 20 20 20 20 6f 66 66 73 65 74 73 5b 6d 61 69 6e offsets[main 00003f70: 41 78 69 73 5d 20 3d 20 6f 66 66 73 65 74 73 5b Axis] = offsets[ 00003f80: 6d 61 69 6e 41 78 69 73 5d 20 2d 20 28 72 65 66 mainAxis] - (ref 00003f90: 65 72 65 6e 63 65 5b 6c 65 6e 5d 20 2f 20 32 20 erence[len] / 2 00003fa0: 2d 20 65 6c 65 6d 65 6e 74 5b 6c 65 6e 5d 20 2f - element[len] / 00003fb0: 20 32 29 3b 5c 6e 20 20 20 20 20 20 20 20 62 72 2);\n br 00003fc0: 65 61 6b 3b 5c 6e 5c 6e 20 20 20 20 20 20 63 61 eak;\n\n ca 00003fd0: 73 65 20 65 6e 64 3a 5c 6e 20 20 20 20 20 20 20 se end:\n 00003fe0: 20 6f 66 66 73 65 74 73 5b 6d 61 69 6e 41 78 69 offsets[mainAxi 00003ff0: 73 5d 20 3d 20 6f 66 66 73 65 74 73 5b 6d 61 69 s] = offsets[mai 00004000: 6e 41 78 69 73 5d 20 2b 20 28 72 65 66 65 72 65 nAxis] + (refere 00004010: 6e 63 65 5b 6c 65 6e 5d 20 2f 20 32 20 2d 20 65 nce[len] / 2 - e 00004020: 6c 65 6d 65 6e 74 5b 6c 65 6e 5d 20 2f 20 32 29 lement[len] / 2) 00004030: 3b 5c 6e 20 20 20 20 20 20 20 20 62 72 65 61 6b ;\n break 00004040: 3b 5c 6e 5c 6e 20 20 20 20 20 20 64 65 66 61 75 ;\n\n defau 00004050: 6c 74 3a 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c lt:\n }\n }\ 00004060: 6e 5c 6e 20 20 72 65 74 75 72 6e 20 6f 66 66 73 n\n return offs 00004070: 65 74 73 3b 5c 6e 7d 22 2c 22 69 6d 70 6f 72 74 ets;\n}","import 00004080: 20 67 65 74 43 6c 69 70 70 69 6e 67 52 65 63 74 getClippingRect 00004090: 20 66 72 6f 6d 20 5c 22 2e 2e 2f 64 6f 6d 2d 75 from \"../dom-u 000040a0: 74 69 6c 73 2f 67 65 74 43 6c 69 70 70 69 6e 67 tils/getClipping 000040b0: 52 65 63 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f Rect.js\";\nimpo 000040c0: 72 74 20 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c rt getDocumentEl 000040d0: 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e 2e 2f ement from \"../ 000040e0: 64 6f 6d 2d 75 74 69 6c 73 2f 67 65 74 44 6f 63 dom-utils/getDoc 000040f0: 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 2e 6a 73 5c umentElement.js\ 00004100: 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 42 6f ";\nimport getBo 00004110: 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 undingClientRect 00004120: 20 66 72 6f 6d 20 5c 22 2e 2e 2f 64 6f 6d 2d 75 from \"../dom-u 00004130: 74 69 6c 73 2f 67 65 74 42 6f 75 6e 64 69 6e 67 tils/getBounding 00004140: 43 6c 69 65 6e 74 52 65 63 74 2e 6a 73 5c 22 3b ClientRect.js\"; 00004150: 5c 6e 69 6d 70 6f 72 74 20 63 6f 6d 70 75 74 65 \nimport compute 00004160: 4f 66 66 73 65 74 73 20 66 72 6f 6d 20 5c 22 2e Offsets from \". 00004170: 2f 63 6f 6d 70 75 74 65 4f 66 66 73 65 74 73 2e /computeOffsets. 00004180: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 72 65 js\";\nimport re 00004190: 63 74 54 6f 43 6c 69 65 6e 74 52 65 63 74 20 66 ctToClientRect f 000041a0: 72 6f 6d 20 5c 22 2e 2f 72 65 63 74 54 6f 43 6c rom \"./rectToCl 000041b0: 69 65 6e 74 52 65 63 74 2e 6a 73 5c 22 3b 5c 6e ientRect.js\";\n 000041c0: 69 6d 70 6f 72 74 20 7b 20 63 6c 69 70 70 69 6e import { clippin 000041d0: 67 50 61 72 65 6e 74 73 2c 20 72 65 66 65 72 65 gParents, refere 000041e0: 6e 63 65 2c 20 70 6f 70 70 65 72 2c 20 62 6f 74 nce, popper, bot 000041f0: 74 6f 6d 2c 20 74 6f 70 2c 20 72 69 67 68 74 2c tom, top, right, 00004200: 20 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 73 2c basePlacements, 00004210: 20 76 69 65 77 70 6f 72 74 20 7d 20 66 72 6f 6d viewport } from 00004220: 20 5c 22 2e 2e 2f 65 6e 75 6d 73 2e 6a 73 5c 22 \"../enums.js\" 00004230: 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 69 73 45 6c ;\nimport { isEl 00004240: 65 6d 65 6e 74 20 7d 20 66 72 6f 6d 20 5c 22 2e ement } from \". 00004250: 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 69 6e 73 74 ./dom-utils/inst 00004260: 61 6e 63 65 4f 66 2e 6a 73 5c 22 3b 5c 6e 69 6d anceOf.js\";\nim 00004270: 70 6f 72 74 20 6d 65 72 67 65 50 61 64 64 69 6e port mergePaddin 00004280: 67 4f 62 6a 65 63 74 20 66 72 6f 6d 20 5c 22 2e gObject from \". 00004290: 2f 6d 65 72 67 65 50 61 64 64 69 6e 67 4f 62 6a /mergePaddingObj 000042a0: 65 63 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 ect.js\";\nimpor 000042b0: 74 20 65 78 70 61 6e 64 54 6f 48 61 73 68 4d 61 t expandToHashMa 000042c0: 70 20 66 72 6f 6d 20 5c 22 2e 2f 65 78 70 61 6e p from \"./expan 000042d0: 64 54 6f 48 61 73 68 4d 61 70 2e 6a 73 5c 22 3b dToHashMap.js\"; 000042e0: 20 2f 2f 20 65 73 6c 69 6e 74 2d 64 69 73 61 62 // eslint-disab 000042f0: 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 20 69 6d 70 le-next-line imp 00004300: 6f 72 74 2f 6e 6f 2d 75 6e 75 73 65 64 2d 6d 6f ort/no-unused-mo 00004310: 64 75 6c 65 73 5c 6e 5c 6e 65 78 70 6f 72 74 20 dules\n\nexport 00004320: 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f 6e default function 00004330: 20 64 65 74 65 63 74 4f 76 65 72 66 6c 6f 77 28 detectOverflow( 00004340: 73 74 61 74 65 2c 20 6f 70 74 69 6f 6e 73 29 20 state, options) 00004350: 7b 5c 6e 20 20 69 66 20 28 6f 70 74 69 6f 6e 73 {\n if (options 00004360: 20 3d 3d 3d 20 76 6f 69 64 20 30 29 20 7b 5c 6e === void 0) {\n 00004370: 20 20 20 20 6f 70 74 69 6f 6e 73 20 3d 20 7b 7d options = {} 00004380: 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 76 61 72 20 ;\n }\n\n var 00004390: 5f 6f 70 74 69 6f 6e 73 20 3d 20 6f 70 74 69 6f _options = optio 000043a0: 6e 73 2c 5c 6e 20 20 20 20 20 20 5f 6f 70 74 69 ns,\n _opti 000043b0: 6f 6e 73 24 70 6c 61 63 65 6d 65 6e 74 20 3d 20 ons$placement = 000043c0: 5f 6f 70 74 69 6f 6e 73 2e 70 6c 61 63 65 6d 65 _options.placeme 000043d0: 6e 74 2c 5c 6e 20 20 20 20 20 20 70 6c 61 63 65 nt,\n place 000043e0: 6d 65 6e 74 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 ment = _options$ 000043f0: 70 6c 61 63 65 6d 65 6e 74 20 3d 3d 3d 20 76 6f placement === vo 00004400: 69 64 20 30 20 3f 20 73 74 61 74 65 2e 70 6c 61 id 0 ? state.pla 00004410: 63 65 6d 65 6e 74 20 3a 20 5f 6f 70 74 69 6f 6e cement : _option 00004420: 73 24 70 6c 61 63 65 6d 65 6e 74 2c 5c 6e 20 20 s$placement,\n 00004430: 20 20 20 20 5f 6f 70 74 69 6f 6e 73 24 73 74 72 _options$str 00004440: 61 74 65 67 79 20 3d 20 5f 6f 70 74 69 6f 6e 73 ategy = _options 00004450: 2e 73 74 72 61 74 65 67 79 2c 5c 6e 20 20 20 20 .strategy,\n 00004460: 20 20 73 74 72 61 74 65 67 79 20 3d 20 5f 6f 70 strategy = _op 00004470: 74 69 6f 6e 73 24 73 74 72 61 74 65 67 79 20 3d tions$strategy = 00004480: 3d 3d 20 76 6f 69 64 20 30 20 3f 20 73 74 61 74 == void 0 ? stat 00004490: 65 2e 73 74 72 61 74 65 67 79 20 3a 20 5f 6f 70 e.strategy : _op 000044a0: 74 69 6f 6e 73 24 73 74 72 61 74 65 67 79 2c 5c tions$strategy,\ 000044b0: 6e 20 20 20 20 20 20 5f 6f 70 74 69 6f 6e 73 24 n _options$ 000044c0: 62 6f 75 6e 64 61 72 79 20 3d 20 5f 6f 70 74 69 boundary = _opti 000044d0: 6f 6e 73 2e 62 6f 75 6e 64 61 72 79 2c 5c 6e 20 ons.boundary,\n 000044e0: 20 20 20 20 20 62 6f 75 6e 64 61 72 79 20 3d 20 boundary = 000044f0: 5f 6f 70 74 69 6f 6e 73 24 62 6f 75 6e 64 61 72 _options$boundar 00004500: 79 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 63 y === void 0 ? c 00004510: 6c 69 70 70 69 6e 67 50 61 72 65 6e 74 73 20 3a lippingParents : 00004520: 20 5f 6f 70 74 69 6f 6e 73 24 62 6f 75 6e 64 61 _options$bounda 00004530: 72 79 2c 5c 6e 20 20 20 20 20 20 5f 6f 70 74 69 ry,\n _opti 00004540: 6f 6e 73 24 72 6f 6f 74 42 6f 75 6e 64 61 72 79 ons$rootBoundary 00004550: 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 72 6f 6f 74 = _options.root 00004560: 42 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 20 20 Boundary,\n 00004570: 20 72 6f 6f 74 42 6f 75 6e 64 61 72 79 20 3d 20 rootBoundary = 00004580: 5f 6f 70 74 69 6f 6e 73 24 72 6f 6f 74 42 6f 75 _options$rootBou 00004590: 6e 64 61 72 79 20 3d 3d 3d 20 76 6f 69 64 20 30 ndary === void 0 000045a0: 20 3f 20 76 69 65 77 70 6f 72 74 20 3a 20 5f 6f ? viewport : _o 000045b0: 70 74 69 6f 6e 73 24 72 6f 6f 74 42 6f 75 6e 64 ptions$rootBound 000045c0: 61 72 79 2c 5c 6e 20 20 20 20 20 20 5f 6f 70 74 ary,\n _opt 000045d0: 69 6f 6e 73 24 65 6c 65 6d 65 6e 74 43 6f 6e 74 ions$elementCont 000045e0: 65 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 65 6c 65 e = _options.ele 000045f0: 6d 65 6e 74 43 6f 6e 74 65 78 74 2c 5c 6e 20 20 mentContext,\n 00004600: 20 20 20 20 65 6c 65 6d 65 6e 74 43 6f 6e 74 65 elementConte 00004610: 78 74 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 65 6c xt = _options$el 00004620: 65 6d 65 6e 74 43 6f 6e 74 65 20 3d 3d 3d 20 76 ementConte === v 00004630: 6f 69 64 20 30 20 3f 20 70 6f 70 70 65 72 20 3a oid 0 ? popper : 00004640: 20 5f 6f 70 74 69 6f 6e 73 24 65 6c 65 6d 65 6e _options$elemen 00004650: 74 43 6f 6e 74 65 2c 5c 6e 20 20 20 20 20 20 5f tConte,\n _ 00004660: 6f 70 74 69 6f 6e 73 24 61 6c 74 42 6f 75 6e 64 options$altBound 00004670: 61 72 79 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 61 ary = _options.a 00004680: 6c 74 42 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 ltBoundary,\n 00004690: 20 20 20 61 6c 74 42 6f 75 6e 64 61 72 79 20 3d altBoundary = 000046a0: 20 5f 6f 70 74 69 6f 6e 73 24 61 6c 74 42 6f 75 _options$altBou 000046b0: 6e 64 61 72 79 20 3d 3d 3d 20 76 6f 69 64 20 30 ndary === void 0 000046c0: 20 3f 20 66 61 6c 73 65 20 3a 20 5f 6f 70 74 69 ? false : _opti 000046d0: 6f 6e 73 24 61 6c 74 42 6f 75 6e 64 61 72 79 2c ons$altBoundary, 000046e0: 5c 6e 20 20 20 20 20 20 5f 6f 70 74 69 6f 6e 73 \n _options 000046f0: 24 70 61 64 64 69 6e 67 20 3d 20 5f 6f 70 74 69 $padding = _opti 00004700: 6f 6e 73 2e 70 61 64 64 69 6e 67 2c 5c 6e 20 20 ons.padding,\n 00004710: 20 20 20 20 70 61 64 64 69 6e 67 20 3d 20 5f 6f padding = _o 00004720: 70 74 69 6f 6e 73 24 70 61 64 64 69 6e 67 20 3d ptions$padding = 00004730: 3d 3d 20 76 6f 69 64 20 30 20 3f 20 30 20 3a 20 == void 0 ? 0 : 00004740: 5f 6f 70 74 69 6f 6e 73 24 70 61 64 64 69 6e 67 _options$padding 00004750: 3b 5c 6e 20 20 76 61 72 20 70 61 64 64 69 6e 67 ;\n var padding 00004760: 4f 62 6a 65 63 74 20 3d 20 6d 65 72 67 65 50 61 Object = mergePa 00004770: 64 64 69 6e 67 4f 62 6a 65 63 74 28 74 79 70 65 ddingObject(type 00004780: 6f 66 20 70 61 64 64 69 6e 67 20 21 3d 3d 20 27 of padding !== ' 00004790: 6e 75 6d 62 65 72 27 20 3f 20 70 61 64 64 69 6e number' ? paddin 000047a0: 67 20 3a 20 65 78 70 61 6e 64 54 6f 48 61 73 68 g : expandToHash 000047b0: 4d 61 70 28 70 61 64 64 69 6e 67 2c 20 62 61 73 Map(padding, bas 000047c0: 65 50 6c 61 63 65 6d 65 6e 74 73 29 29 3b 5c 6e ePlacements));\n 000047d0: 20 20 76 61 72 20 61 6c 74 43 6f 6e 74 65 78 74 var altContext 000047e0: 20 3d 20 65 6c 65 6d 65 6e 74 43 6f 6e 74 65 78 = elementContex 000047f0: 74 20 3d 3d 3d 20 70 6f 70 70 65 72 20 3f 20 72 t === popper ? r 00004800: 65 66 65 72 65 6e 63 65 20 3a 20 70 6f 70 70 65 eference : poppe 00004810: 72 3b 5c 6e 20 20 76 61 72 20 70 6f 70 70 65 72 r;\n var popper 00004820: 52 65 63 74 20 3d 20 73 74 61 74 65 2e 72 65 63 Rect = state.rec 00004830: 74 73 2e 70 6f 70 70 65 72 3b 5c 6e 20 20 76 61 ts.popper;\n va 00004840: 72 20 65 6c 65 6d 65 6e 74 20 3d 20 73 74 61 74 r element = stat 00004850: 65 2e 65 6c 65 6d 65 6e 74 73 5b 61 6c 74 42 6f e.elements[altBo 00004860: 75 6e 64 61 72 79 20 3f 20 61 6c 74 43 6f 6e 74 undary ? altCont 00004870: 65 78 74 20 3a 20 65 6c 65 6d 65 6e 74 43 6f 6e ext : elementCon 00004880: 74 65 78 74 5d 3b 5c 6e 20 20 76 61 72 20 63 6c text];\n var cl 00004890: 69 70 70 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 ippingClientRect 000048a0: 20 3d 20 67 65 74 43 6c 69 70 70 69 6e 67 52 65 = getClippingRe 000048b0: 63 74 28 69 73 45 6c 65 6d 65 6e 74 28 65 6c 65 ct(isElement(ele 000048c0: 6d 65 6e 74 29 20 3f 20 65 6c 65 6d 65 6e 74 20 ment) ? element 000048d0: 3a 20 65 6c 65 6d 65 6e 74 2e 63 6f 6e 74 65 78 : element.contex 000048e0: 74 45 6c 65 6d 65 6e 74 20 7c 7c 20 67 65 74 44 tElement || getD 000048f0: 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 28 73 ocumentElement(s 00004900: 74 61 74 65 2e 65 6c 65 6d 65 6e 74 73 2e 70 6f tate.elements.po 00004910: 70 70 65 72 29 2c 20 62 6f 75 6e 64 61 72 79 2c pper), boundary, 00004920: 20 72 6f 6f 74 42 6f 75 6e 64 61 72 79 2c 20 73 rootBoundary, s 00004930: 74 72 61 74 65 67 79 29 3b 5c 6e 20 20 76 61 72 trategy);\n var 00004940: 20 72 65 66 65 72 65 6e 63 65 43 6c 69 65 6e 74 referenceClient 00004950: 52 65 63 74 20 3d 20 67 65 74 42 6f 75 6e 64 69 Rect = getBoundi 00004960: 6e 67 43 6c 69 65 6e 74 52 65 63 74 28 73 74 61 ngClientRect(sta 00004970: 74 65 2e 65 6c 65 6d 65 6e 74 73 2e 72 65 66 65 te.elements.refe 00004980: 72 65 6e 63 65 29 3b 5c 6e 20 20 76 61 72 20 70 rence);\n var p 00004990: 6f 70 70 65 72 4f 66 66 73 65 74 73 20 3d 20 63 opperOffsets = c 000049a0: 6f 6d 70 75 74 65 4f 66 66 73 65 74 73 28 7b 5c omputeOffsets({\ 000049b0: 6e 20 20 20 20 72 65 66 65 72 65 6e 63 65 3a 20 n reference: 000049c0: 72 65 66 65 72 65 6e 63 65 43 6c 69 65 6e 74 52 referenceClientR 000049d0: 65 63 74 2c 5c 6e 20 20 20 20 65 6c 65 6d 65 6e ect,\n elemen 000049e0: 74 3a 20 70 6f 70 70 65 72 52 65 63 74 2c 5c 6e t: popperRect,\n 000049f0: 20 20 20 20 73 74 72 61 74 65 67 79 3a 20 27 61 strategy: 'a 00004a00: 62 73 6f 6c 75 74 65 27 2c 5c 6e 20 20 20 20 70 bsolute',\n p 00004a10: 6c 61 63 65 6d 65 6e 74 3a 20 70 6c 61 63 65 6d lacement: placem 00004a20: 65 6e 74 5c 6e 20 20 7d 29 3b 5c 6e 20 20 76 61 ent\n });\n va 00004a30: 72 20 70 6f 70 70 65 72 43 6c 69 65 6e 74 52 65 r popperClientRe 00004a40: 63 74 20 3d 20 72 65 63 74 54 6f 43 6c 69 65 6e ct = rectToClien 00004a50: 74 52 65 63 74 28 4f 62 6a 65 63 74 2e 61 73 73 tRect(Object.ass 00004a60: 69 67 6e 28 7b 7d 2c 20 70 6f 70 70 65 72 52 65 ign({}, popperRe 00004a70: 63 74 2c 20 70 6f 70 70 65 72 4f 66 66 73 65 74 ct, popperOffset 00004a80: 73 29 29 3b 5c 6e 20 20 76 61 72 20 65 6c 65 6d s));\n var elem 00004a90: 65 6e 74 43 6c 69 65 6e 74 52 65 63 74 20 3d 20 entClientRect = 00004aa0: 65 6c 65 6d 65 6e 74 43 6f 6e 74 65 78 74 20 3d elementContext = 00004ab0: 3d 3d 20 70 6f 70 70 65 72 20 3f 20 70 6f 70 70 == popper ? popp 00004ac0: 65 72 43 6c 69 65 6e 74 52 65 63 74 20 3a 20 72 erClientRect : r 00004ad0: 65 66 65 72 65 6e 63 65 43 6c 69 65 6e 74 52 65 eferenceClientRe 00004ae0: 63 74 3b 20 2f 2f 20 70 6f 73 69 74 69 76 65 20 ct; // positive 00004af0: 3d 20 6f 76 65 72 66 6c 6f 77 69 6e 67 20 74 68 = overflowing th 00004b00: 65 20 63 6c 69 70 70 69 6e 67 20 72 65 63 74 5c e clipping rect\ 00004b10: 6e 20 20 2f 2f 20 30 20 6f 72 20 6e 65 67 61 74 n // 0 or negat 00004b20: 69 76 65 20 3d 20 77 69 74 68 69 6e 20 74 68 65 ive = within the 00004b30: 20 63 6c 69 70 70 69 6e 67 20 72 65 63 74 5c 6e clipping rect\n 00004b40: 5c 6e 20 20 76 61 72 20 6f 76 65 72 66 6c 6f 77 \n var overflow 00004b50: 4f 66 66 73 65 74 73 20 3d 20 7b 5c 6e 20 20 20 Offsets = {\n 00004b60: 20 74 6f 70 3a 20 63 6c 69 70 70 69 6e 67 43 6c top: clippingCl 00004b70: 69 65 6e 74 52 65 63 74 2e 74 6f 70 20 2d 20 65 ientRect.top - e 00004b80: 6c 65 6d 65 6e 74 43 6c 69 65 6e 74 52 65 63 74 lementClientRect 00004b90: 2e 74 6f 70 20 2b 20 70 61 64 64 69 6e 67 4f 62 .top + paddingOb 00004ba0: 6a 65 63 74 2e 74 6f 70 2c 5c 6e 20 20 20 20 62 ject.top,\n b 00004bb0: 6f 74 74 6f 6d 3a 20 65 6c 65 6d 65 6e 74 43 6c ottom: elementCl 00004bc0: 69 65 6e 74 52 65 63 74 2e 62 6f 74 74 6f 6d 20 ientRect.bottom 00004bd0: 2d 20 63 6c 69 70 70 69 6e 67 43 6c 69 65 6e 74 - clippingClient 00004be0: 52 65 63 74 2e 62 6f 74 74 6f 6d 20 2b 20 70 61 Rect.bottom + pa 00004bf0: 64 64 69 6e 67 4f 62 6a 65 63 74 2e 62 6f 74 74 ddingObject.bott 00004c00: 6f 6d 2c 5c 6e 20 20 20 20 6c 65 66 74 3a 20 63 om,\n left: c 00004c10: 6c 69 70 70 69 6e 67 43 6c 69 65 6e 74 52 65 63 lippingClientRec 00004c20: 74 2e 6c 65 66 74 20 2d 20 65 6c 65 6d 65 6e 74 t.left - element 00004c30: 43 6c 69 65 6e 74 52 65 63 74 2e 6c 65 66 74 20 ClientRect.left 00004c40: 2b 20 70 61 64 64 69 6e 67 4f 62 6a 65 63 74 2e + paddingObject. 00004c50: 6c 65 66 74 2c 5c 6e 20 20 20 20 72 69 67 68 74 left,\n right 00004c60: 3a 20 65 6c 65 6d 65 6e 74 43 6c 69 65 6e 74 52 : elementClientR 00004c70: 65 63 74 2e 72 69 67 68 74 20 2d 20 63 6c 69 70 ect.right - clip 00004c80: 70 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 2e 72 pingClientRect.r 00004c90: 69 67 68 74 20 2b 20 70 61 64 64 69 6e 67 4f 62 ight + paddingOb 00004ca0: 6a 65 63 74 2e 72 69 67 68 74 5c 6e 20 20 7d 3b ject.right\n }; 00004cb0: 5c 6e 20 20 76 61 72 20 6f 66 66 73 65 74 44 61 \n var offsetDa 00004cc0: 74 61 20 3d 20 73 74 61 74 65 2e 6d 6f 64 69 66 ta = state.modif 00004cd0: 69 65 72 73 44 61 74 61 2e 6f 66 66 73 65 74 3b iersData.offset; 00004ce0: 20 2f 2f 20 4f 66 66 73 65 74 73 20 63 61 6e 20 // Offsets can 00004cf0: 62 65 20 61 70 70 6c 69 65 64 20 6f 6e 6c 79 20 be applied only 00004d00: 74 6f 20 74 68 65 20 70 6f 70 70 65 72 20 65 6c to the popper el 00004d10: 65 6d 65 6e 74 5c 6e 5c 6e 20 20 69 66 20 28 65 ement\n\n if (e 00004d20: 6c 65 6d 65 6e 74 43 6f 6e 74 65 78 74 20 3d 3d lementContext == 00004d30: 3d 20 70 6f 70 70 65 72 20 26 26 20 6f 66 66 73 = popper && offs 00004d40: 65 74 44 61 74 61 29 20 7b 5c 6e 20 20 20 20 76 etData) {\n v 00004d50: 61 72 20 6f 66 66 73 65 74 20 3d 20 6f 66 66 73 ar offset = offs 00004d60: 65 74 44 61 74 61 5b 70 6c 61 63 65 6d 65 6e 74 etData[placement 00004d70: 5d 3b 5c 6e 20 20 20 20 4f 62 6a 65 63 74 2e 6b ];\n Object.k 00004d80: 65 79 73 28 6f 76 65 72 66 6c 6f 77 4f 66 66 73 eys(overflowOffs 00004d90: 65 74 73 29 2e 66 6f 72 45 61 63 68 28 66 75 6e ets).forEach(fun 00004da0: 63 74 69 6f 6e 20 28 6b 65 79 29 20 7b 5c 6e 20 ction (key) {\n 00004db0: 20 20 20 20 20 76 61 72 20 6d 75 6c 74 69 70 6c var multipl 00004dc0: 79 20 3d 20 5b 72 69 67 68 74 2c 20 62 6f 74 74 y = [right, bott 00004dd0: 6f 6d 5d 2e 69 6e 64 65 78 4f 66 28 6b 65 79 29 om].indexOf(key) 00004de0: 20 3e 3d 20 30 20 3f 20 31 20 3a 20 2d 31 3b 5c >= 0 ? 1 : -1;\ 00004df0: 6e 20 20 20 20 20 20 76 61 72 20 61 78 69 73 20 n var axis 00004e00: 3d 20 5b 74 6f 70 2c 20 62 6f 74 74 6f 6d 5d 2e = [top, bottom]. 00004e10: 69 6e 64 65 78 4f 66 28 6b 65 79 29 20 3e 3d 20 indexOf(key) >= 00004e20: 30 20 3f 20 27 79 27 20 3a 20 27 78 27 3b 5c 6e 0 ? 'y' : 'x';\n 00004e30: 20 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 4f 66 overflowOf 00004e40: 66 73 65 74 73 5b 6b 65 79 5d 20 2b 3d 20 6f 66 fsets[key] += of 00004e50: 66 73 65 74 5b 61 78 69 73 5d 20 2a 20 6d 75 6c fset[axis] * mul 00004e60: 74 69 70 6c 79 3b 5c 6e 20 20 20 20 7d 29 3b 5c tiply;\n });\ 00004e70: 6e 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 72 6e n }\n\n return 00004e80: 20 6f 76 65 72 66 6c 6f 77 4f 66 66 73 65 74 73 overflowOffsets 00004e90: 3b 5c 6e 7d 22 2c 22 69 6d 70 6f 72 74 20 67 65 ;\n}","import ge 00004ea0: 74 56 61 72 69 61 74 69 6f 6e 20 66 72 6f 6d 20 tVariation from 00004eb0: 5c 22 2e 2f 67 65 74 56 61 72 69 61 74 69 6f 6e \"./getVariation 00004ec0: 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b .js\";\nimport { 00004ed0: 20 76 61 72 69 61 74 69 6f 6e 50 6c 61 63 65 6d variationPlacem 00004ee0: 65 6e 74 73 2c 20 62 61 73 65 50 6c 61 63 65 6d ents, basePlacem 00004ef0: 65 6e 74 73 2c 20 70 6c 61 63 65 6d 65 6e 74 73 ents, placements 00004f00: 20 61 73 20 61 6c 6c 50 6c 61 63 65 6d 65 6e 74 as allPlacement 00004f10: 73 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e 2f 65 6e s } from \"../en 00004f20: 75 6d 73 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 ums.js\";\nimpor 00004f30: 74 20 64 65 74 65 63 74 4f 76 65 72 66 6c 6f 77 t detectOverflow 00004f40: 20 66 72 6f 6d 20 5c 22 2e 2f 64 65 74 65 63 74 from \"./detect 00004f50: 4f 76 65 72 66 6c 6f 77 2e 6a 73 5c 22 3b 5c 6e Overflow.js\";\n 00004f60: 69 6d 70 6f 72 74 20 67 65 74 42 61 73 65 50 6c import getBasePl 00004f70: 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e acement from \". 00004f80: 2f 67 65 74 42 61 73 65 50 6c 61 63 65 6d 65 6e /getBasePlacemen 00004f90: 74 2e 6a 73 5c 22 3b 5c 6e 65 78 70 6f 72 74 20 t.js\";\nexport 00004fa0: 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f 6e default function 00004fb0: 20 63 6f 6d 70 75 74 65 41 75 74 6f 50 6c 61 63 computeAutoPlac 00004fc0: 65 6d 65 6e 74 28 73 74 61 74 65 2c 20 6f 70 74 ement(state, opt 00004fd0: 69 6f 6e 73 29 20 7b 5c 6e 20 20 69 66 20 28 6f ions) {\n if (o 00004fe0: 70 74 69 6f 6e 73 20 3d 3d 3d 20 76 6f 69 64 20 ptions === void 00004ff0: 30 29 20 7b 5c 6e 20 20 20 20 6f 70 74 69 6f 6e 0) {\n option 00005000: 73 20 3d 20 7b 7d 3b 5c 6e 20 20 7d 5c 6e 5c 6e s = {};\n }\n\n 00005010: 20 20 76 61 72 20 5f 6f 70 74 69 6f 6e 73 20 3d var _options = 00005020: 20 6f 70 74 69 6f 6e 73 2c 5c 6e 20 20 20 20 20 options,\n 00005030: 20 70 6c 61 63 65 6d 65 6e 74 20 3d 20 5f 6f 70 placement = _op 00005040: 74 69 6f 6e 73 2e 70 6c 61 63 65 6d 65 6e 74 2c tions.placement, 00005050: 5c 6e 20 20 20 20 20 20 62 6f 75 6e 64 61 72 79 \n boundary 00005060: 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 62 6f 75 6e = _options.boun 00005070: 64 61 72 79 2c 5c 6e 20 20 20 20 20 20 72 6f 6f dary,\n roo 00005080: 74 42 6f 75 6e 64 61 72 79 20 3d 20 5f 6f 70 74 tBoundary = _opt 00005090: 69 6f 6e 73 2e 72 6f 6f 74 42 6f 75 6e 64 61 72 ions.rootBoundar 000050a0: 79 2c 5c 6e 20 20 20 20 20 20 70 61 64 64 69 6e y,\n paddin 000050b0: 67 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 70 61 64 g = _options.pad 000050c0: 64 69 6e 67 2c 5c 6e 20 20 20 20 20 20 66 6c 69 ding,\n fli 000050d0: 70 56 61 72 69 61 74 69 6f 6e 73 20 3d 20 5f 6f pVariations = _o 000050e0: 70 74 69 6f 6e 73 2e 66 6c 69 70 56 61 72 69 61 ptions.flipVaria 000050f0: 74 69 6f 6e 73 2c 5c 6e 20 20 20 20 20 20 5f 6f tions,\n _o 00005100: 70 74 69 6f 6e 73 24 61 6c 6c 6f 77 65 64 41 75 ptions$allowedAu 00005110: 74 6f 50 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 61 toP = _options.a 00005120: 6c 6c 6f 77 65 64 41 75 74 6f 50 6c 61 63 65 6d llowedAutoPlacem 00005130: 65 6e 74 73 2c 5c 6e 20 20 20 20 20 20 61 6c 6c ents,\n all 00005140: 6f 77 65 64 41 75 74 6f 50 6c 61 63 65 6d 65 6e owedAutoPlacemen 00005150: 74 73 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 61 6c ts = _options$al 00005160: 6c 6f 77 65 64 41 75 74 6f 50 20 3d 3d 3d 20 76 lowedAutoP === v 00005170: 6f 69 64 20 30 20 3f 20 61 6c 6c 50 6c 61 63 65 oid 0 ? allPlace 00005180: 6d 65 6e 74 73 20 3a 20 5f 6f 70 74 69 6f 6e 73 ments : _options 00005190: 24 61 6c 6c 6f 77 65 64 41 75 74 6f 50 3b 5c 6e $allowedAutoP;\n 000051a0: 20 20 76 61 72 20 76 61 72 69 61 74 69 6f 6e 20 var variation 000051b0: 3d 20 67 65 74 56 61 72 69 61 74 69 6f 6e 28 70 = getVariation(p 000051c0: 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 61 lacement);\n va 000051d0: 72 20 70 6c 61 63 65 6d 65 6e 74 73 20 3d 20 76 r placements = v 000051e0: 61 72 69 61 74 69 6f 6e 20 3f 20 66 6c 69 70 56 ariation ? flipV 000051f0: 61 72 69 61 74 69 6f 6e 73 20 3f 20 76 61 72 69 ariations ? vari 00005200: 61 74 69 6f 6e 50 6c 61 63 65 6d 65 6e 74 73 20 ationPlacements 00005210: 3a 20 76 61 72 69 61 74 69 6f 6e 50 6c 61 63 65 : variationPlace 00005220: 6d 65 6e 74 73 2e 66 69 6c 74 65 72 28 66 75 6e ments.filter(fun 00005230: 63 74 69 6f 6e 20 28 70 6c 61 63 65 6d 65 6e 74 ction (placement 00005240: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 00005250: 67 65 74 56 61 72 69 61 74 69 6f 6e 28 70 6c 61 getVariation(pla 00005260: 63 65 6d 65 6e 74 29 20 3d 3d 3d 20 76 61 72 69 cement) === vari 00005270: 61 74 69 6f 6e 3b 5c 6e 20 20 7d 29 20 3a 20 62 ation;\n }) : b 00005280: 61 73 65 50 6c 61 63 65 6d 65 6e 74 73 3b 5c 6e asePlacements;\n 00005290: 20 20 76 61 72 20 61 6c 6c 6f 77 65 64 50 6c 61 var allowedPla 000052a0: 63 65 6d 65 6e 74 73 20 3d 20 70 6c 61 63 65 6d cements = placem 000052b0: 65 6e 74 73 2e 66 69 6c 74 65 72 28 66 75 6e 63 ents.filter(func 000052c0: 74 69 6f 6e 20 28 70 6c 61 63 65 6d 65 6e 74 29 tion (placement) 000052d0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 61 {\n return a 000052e0: 6c 6c 6f 77 65 64 41 75 74 6f 50 6c 61 63 65 6d llowedAutoPlacem 000052f0: 65 6e 74 73 2e 69 6e 64 65 78 4f 66 28 70 6c 61 ents.indexOf(pla 00005300: 63 65 6d 65 6e 74 29 20 3e 3d 20 30 3b 5c 6e 20 cement) >= 0;\n 00005310: 20 7d 29 3b 5c 6e 5c 6e 20 20 69 66 20 28 61 6c });\n\n if (al 00005320: 6c 6f 77 65 64 50 6c 61 63 65 6d 65 6e 74 73 2e lowedPlacements. 00005330: 6c 65 6e 67 74 68 20 3d 3d 3d 20 30 29 20 7b 5c length === 0) {\ 00005340: 6e 20 20 20 20 61 6c 6c 6f 77 65 64 50 6c 61 63 n allowedPlac 00005350: 65 6d 65 6e 74 73 20 3d 20 70 6c 61 63 65 6d 65 ements = placeme 00005360: 6e 74 73 3b 5c 6e 20 20 7d 20 2f 2f 20 24 46 6c nts;\n } // $Fl 00005370: 6f 77 46 69 78 4d 65 5b 69 6e 63 6f 6d 70 61 74 owFixMe[incompat 00005380: 69 62 6c 65 2d 74 79 70 65 5d 3a 20 46 6c 6f 77 ible-type]: Flow 00005390: 20 73 65 65 6d 73 20 74 6f 20 68 61 76 65 20 70 seems to have p 000053a0: 72 6f 62 6c 65 6d 73 20 77 69 74 68 20 74 77 6f roblems with two 000053b0: 20 61 72 72 61 79 20 75 6e 69 6f 6e 73 2e 2e 2e array unions... 000053c0: 5c 6e 5c 6e 5c 6e 20 20 76 61 72 20 6f 76 65 72 \n\n\n var over 000053d0: 66 6c 6f 77 73 20 3d 20 61 6c 6c 6f 77 65 64 50 flows = allowedP 000053e0: 6c 61 63 65 6d 65 6e 74 73 2e 72 65 64 75 63 65 lacements.reduce 000053f0: 28 66 75 6e 63 74 69 6f 6e 20 28 61 63 63 2c 20 (function (acc, 00005400: 70 6c 61 63 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 placement) {\n 00005410: 20 20 61 63 63 5b 70 6c 61 63 65 6d 65 6e 74 5d acc[placement] 00005420: 20 3d 20 64 65 74 65 63 74 4f 76 65 72 66 6c 6f = detectOverflo 00005430: 77 28 73 74 61 74 65 2c 20 7b 5c 6e 20 20 20 20 w(state, {\n 00005440: 20 20 70 6c 61 63 65 6d 65 6e 74 3a 20 70 6c 61 placement: pla 00005450: 63 65 6d 65 6e 74 2c 5c 6e 20 20 20 20 20 20 62 cement,\n b 00005460: 6f 75 6e 64 61 72 79 3a 20 62 6f 75 6e 64 61 72 oundary: boundar 00005470: 79 2c 5c 6e 20 20 20 20 20 20 72 6f 6f 74 42 6f y,\n rootBo 00005480: 75 6e 64 61 72 79 3a 20 72 6f 6f 74 42 6f 75 6e undary: rootBoun 00005490: 64 61 72 79 2c 5c 6e 20 20 20 20 20 20 70 61 64 dary,\n pad 000054a0: 64 69 6e 67 3a 20 70 61 64 64 69 6e 67 5c 6e 20 ding: padding\n 000054b0: 20 20 20 7d 29 5b 67 65 74 42 61 73 65 50 6c 61 })[getBasePla 000054c0: 63 65 6d 65 6e 74 28 70 6c 61 63 65 6d 65 6e 74 cement(placement 000054d0: 29 5d 3b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 )];\n return 000054e0: 61 63 63 3b 5c 6e 20 20 7d 2c 20 7b 7d 29 3b 5c acc;\n }, {});\ 000054f0: 6e 20 20 72 65 74 75 72 6e 20 4f 62 6a 65 63 74 n return Object 00005500: 2e 6b 65 79 73 28 6f 76 65 72 66 6c 6f 77 73 29 .keys(overflows) 00005510: 2e 73 6f 72 74 28 66 75 6e 63 74 69 6f 6e 20 28 .sort(function ( 00005520: 61 2c 20 62 29 20 7b 5c 6e 20 20 20 20 72 65 74 a, b) {\n ret 00005530: 75 72 6e 20 6f 76 65 72 66 6c 6f 77 73 5b 61 5d urn overflows[a] 00005540: 20 2d 20 6f 76 65 72 66 6c 6f 77 73 5b 62 5d 3b - overflows[b]; 00005550: 5c 6e 20 20 7d 29 3b 5c 6e 7d 22 2c 22 69 6d 70 \n });\n}","imp 00005560: 6f 72 74 20 67 65 74 4f 70 70 6f 73 69 74 65 50 ort getOppositeP 00005570: 6c 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 lacement from \" 00005580: 2e 2e 2f 75 74 69 6c 73 2f 67 65 74 4f 70 70 6f ../utils/getOppo 00005590: 73 69 74 65 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 sitePlacement.js 000055a0: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 42 \";\nimport getB 000055b0: 61 73 65 50 6c 61 63 65 6d 65 6e 74 20 66 72 6f asePlacement fro 000055c0: 6d 20 5c 22 2e 2e 2f 75 74 69 6c 73 2f 67 65 74 m \"../utils/get 000055d0: 42 61 73 65 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 BasePlacement.js 000055e0: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 4f \";\nimport getO 000055f0: 70 70 6f 73 69 74 65 56 61 72 69 61 74 69 6f 6e ppositeVariation 00005600: 50 6c 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c Placement from \ 00005610: 22 2e 2e 2f 75 74 69 6c 73 2f 67 65 74 4f 70 70 "../utils/getOpp 00005620: 6f 73 69 74 65 56 61 72 69 61 74 69 6f 6e 50 6c ositeVariationPl 00005630: 61 63 65 6d 65 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 acement.js\";\ni 00005640: 6d 70 6f 72 74 20 64 65 74 65 63 74 4f 76 65 72 mport detectOver 00005650: 66 6c 6f 77 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 flow from \"../u 00005660: 74 69 6c 73 2f 64 65 74 65 63 74 4f 76 65 72 66 tils/detectOverf 00005670: 6c 6f 77 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 low.js\";\nimpor 00005680: 74 20 63 6f 6d 70 75 74 65 41 75 74 6f 50 6c 61 t computeAutoPla 00005690: 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e 2e cement from \".. 000056a0: 2f 75 74 69 6c 73 2f 63 6f 6d 70 75 74 65 41 75 /utils/computeAu 000056b0: 74 6f 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 5c 22 toPlacement.js\" 000056c0: 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 62 6f 74 74 ;\nimport { bott 000056d0: 6f 6d 2c 20 74 6f 70 2c 20 73 74 61 72 74 2c 20 om, top, start, 000056e0: 72 69 67 68 74 2c 20 6c 65 66 74 2c 20 61 75 74 right, left, aut 000056f0: 6f 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e 2f 65 6e o } from \"../en 00005700: 75 6d 73 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 ums.js\";\nimpor 00005710: 74 20 67 65 74 56 61 72 69 61 74 69 6f 6e 20 66 t getVariation f 00005720: 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 6c 73 2f 67 rom \"../utils/g 00005730: 65 74 56 61 72 69 61 74 69 6f 6e 2e 6a 73 5c 22 etVariation.js\" 00005740: 3b 20 2f 2f 20 65 73 6c 69 6e 74 2d 64 69 73 61 ; // eslint-disa 00005750: 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 20 69 6d ble-next-line im 00005760: 70 6f 72 74 2f 6e 6f 2d 75 6e 75 73 65 64 2d 6d port/no-unused-m 00005770: 6f 64 75 6c 65 73 5c 6e 5c 6e 66 75 6e 63 74 69 odules\n\nfuncti 00005780: 6f 6e 20 67 65 74 45 78 70 61 6e 64 65 64 46 61 on getExpandedFa 00005790: 6c 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e 74 73 llbackPlacements 000057a0: 28 70 6c 61 63 65 6d 65 6e 74 29 20 7b 5c 6e 20 (placement) {\n 000057b0: 20 69 66 20 28 67 65 74 42 61 73 65 50 6c 61 63 if (getBasePlac 000057c0: 65 6d 65 6e 74 28 70 6c 61 63 65 6d 65 6e 74 29 ement(placement) 000057d0: 20 3d 3d 3d 20 61 75 74 6f 29 20 7b 5c 6e 20 20 === auto) {\n 000057e0: 20 20 72 65 74 75 72 6e 20 5b 5d 3b 5c 6e 20 20 return [];\n 000057f0: 7d 5c 6e 5c 6e 20 20 76 61 72 20 6f 70 70 6f 73 }\n\n var oppos 00005800: 69 74 65 50 6c 61 63 65 6d 65 6e 74 20 3d 20 67 itePlacement = g 00005810: 65 74 4f 70 70 6f 73 69 74 65 50 6c 61 63 65 6d etOppositePlacem 00005820: 65 6e 74 28 70 6c 61 63 65 6d 65 6e 74 29 3b 5c ent(placement);\ 00005830: 6e 20 20 72 65 74 75 72 6e 20 5b 67 65 74 4f 70 n return [getOp 00005840: 70 6f 73 69 74 65 56 61 72 69 61 74 69 6f 6e 50 positeVariationP 00005850: 6c 61 63 65 6d 65 6e 74 28 70 6c 61 63 65 6d 65 lacement(placeme 00005860: 6e 74 29 2c 20 6f 70 70 6f 73 69 74 65 50 6c 61 nt), oppositePla 00005870: 63 65 6d 65 6e 74 2c 20 67 65 74 4f 70 70 6f 73 cement, getOppos 00005880: 69 74 65 56 61 72 69 61 74 69 6f 6e 50 6c 61 63 iteVariationPlac 00005890: 65 6d 65 6e 74 28 6f 70 70 6f 73 69 74 65 50 6c ement(oppositePl 000058a0: 61 63 65 6d 65 6e 74 29 5d 3b 5c 6e 7d 5c 6e 5c acement)];\n}\n\ 000058b0: 6e 66 75 6e 63 74 69 6f 6e 20 66 6c 69 70 28 5f nfunction flip(_ 000058c0: 72 65 66 29 20 7b 5c 6e 20 20 76 61 72 20 73 74 ref) {\n var st 000058d0: 61 74 65 20 3d 20 5f 72 65 66 2e 73 74 61 74 65 ate = _ref.state 000058e0: 2c 5c 6e 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 ,\n options 000058f0: 20 3d 20 5f 72 65 66 2e 6f 70 74 69 6f 6e 73 2c = _ref.options, 00005900: 5c 6e 20 20 20 20 20 20 6e 61 6d 65 20 3d 20 5f \n name = _ 00005910: 72 65 66 2e 6e 61 6d 65 3b 5c 6e 5c 6e 20 20 69 ref.name;\n\n i 00005920: 66 20 28 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 f (state.modifie 00005930: 72 73 44 61 74 61 5b 6e 61 6d 65 5d 2e 5f 73 6b rsData[name]._sk 00005940: 69 70 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 ip) {\n retur 00005950: 6e 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 76 61 72 n;\n }\n\n var 00005960: 20 5f 6f 70 74 69 6f 6e 73 24 6d 61 69 6e 41 78 _options$mainAx 00005970: 69 73 20 3d 20 6f 70 74 69 6f 6e 73 2e 6d 61 69 is = options.mai 00005980: 6e 41 78 69 73 2c 5c 6e 20 20 20 20 20 20 63 68 nAxis,\n ch 00005990: 65 63 6b 4d 61 69 6e 41 78 69 73 20 3d 20 5f 6f eckMainAxis = _o 000059a0: 70 74 69 6f 6e 73 24 6d 61 69 6e 41 78 69 73 20 ptions$mainAxis 000059b0: 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 74 72 75 === void 0 ? tru 000059c0: 65 20 3a 20 5f 6f 70 74 69 6f 6e 73 24 6d 61 69 e : _options$mai 000059d0: 6e 41 78 69 73 2c 5c 6e 20 20 20 20 20 20 5f 6f nAxis,\n _o 000059e0: 70 74 69 6f 6e 73 24 61 6c 74 41 78 69 73 20 3d ptions$altAxis = 000059f0: 20 6f 70 74 69 6f 6e 73 2e 61 6c 74 41 78 69 73 options.altAxis 00005a00: 2c 5c 6e 20 20 20 20 20 20 63 68 65 63 6b 41 6c ,\n checkAl 00005a10: 74 41 78 69 73 20 3d 20 5f 6f 70 74 69 6f 6e 73 tAxis = _options 00005a20: 24 61 6c 74 41 78 69 73 20 3d 3d 3d 20 76 6f 69 $altAxis === voi 00005a30: 64 20 30 20 3f 20 74 72 75 65 20 3a 20 5f 6f 70 d 0 ? true : _op 00005a40: 74 69 6f 6e 73 24 61 6c 74 41 78 69 73 2c 5c 6e tions$altAxis,\n 00005a50: 20 20 20 20 20 20 73 70 65 63 69 66 69 65 64 46 specifiedF 00005a60: 61 6c 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e 74 allbackPlacement 00005a70: 73 20 3d 20 6f 70 74 69 6f 6e 73 2e 66 61 6c 6c s = options.fall 00005a80: 62 61 63 6b 50 6c 61 63 65 6d 65 6e 74 73 2c 5c backPlacements,\ 00005a90: 6e 20 20 20 20 20 20 70 61 64 64 69 6e 67 20 3d n padding = 00005aa0: 20 6f 70 74 69 6f 6e 73 2e 70 61 64 64 69 6e 67 options.padding 00005ab0: 2c 5c 6e 20 20 20 20 20 20 62 6f 75 6e 64 61 72 ,\n boundar 00005ac0: 79 20 3d 20 6f 70 74 69 6f 6e 73 2e 62 6f 75 6e y = options.boun 00005ad0: 64 61 72 79 2c 5c 6e 20 20 20 20 20 20 72 6f 6f dary,\n roo 00005ae0: 74 42 6f 75 6e 64 61 72 79 20 3d 20 6f 70 74 69 tBoundary = opti 00005af0: 6f 6e 73 2e 72 6f 6f 74 42 6f 75 6e 64 61 72 79 ons.rootBoundary 00005b00: 2c 5c 6e 20 20 20 20 20 20 61 6c 74 42 6f 75 6e ,\n altBoun 00005b10: 64 61 72 79 20 3d 20 6f 70 74 69 6f 6e 73 2e 61 dary = options.a 00005b20: 6c 74 42 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 ltBoundary,\n 00005b30: 20 20 20 5f 6f 70 74 69 6f 6e 73 24 66 6c 69 70 _options$flip 00005b40: 56 61 72 69 61 74 69 6f 20 3d 20 6f 70 74 69 6f Variatio = optio 00005b50: 6e 73 2e 66 6c 69 70 56 61 72 69 61 74 69 6f 6e ns.flipVariation 00005b60: 73 2c 5c 6e 20 20 20 20 20 20 66 6c 69 70 56 61 s,\n flipVa 00005b70: 72 69 61 74 69 6f 6e 73 20 3d 20 5f 6f 70 74 69 riations = _opti 00005b80: 6f 6e 73 24 66 6c 69 70 56 61 72 69 61 74 69 6f ons$flipVariatio 00005b90: 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 74 72 === void 0 ? tr 00005ba0: 75 65 20 3a 20 5f 6f 70 74 69 6f 6e 73 24 66 6c ue : _options$fl 00005bb0: 69 70 56 61 72 69 61 74 69 6f 2c 5c 6e 20 20 20 ipVariatio,\n 00005bc0: 20 20 20 61 6c 6c 6f 77 65 64 41 75 74 6f 50 6c allowedAutoPl 00005bd0: 61 63 65 6d 65 6e 74 73 20 3d 20 6f 70 74 69 6f acements = optio 00005be0: 6e 73 2e 61 6c 6c 6f 77 65 64 41 75 74 6f 50 6c ns.allowedAutoPl 00005bf0: 61 63 65 6d 65 6e 74 73 3b 5c 6e 20 20 76 61 72 acements;\n var 00005c00: 20 70 72 65 66 65 72 72 65 64 50 6c 61 63 65 6d preferredPlacem 00005c10: 65 6e 74 20 3d 20 73 74 61 74 65 2e 6f 70 74 69 ent = state.opti 00005c20: 6f 6e 73 2e 70 6c 61 63 65 6d 65 6e 74 3b 5c 6e ons.placement;\n 00005c30: 20 20 76 61 72 20 62 61 73 65 50 6c 61 63 65 6d var basePlacem 00005c40: 65 6e 74 20 3d 20 67 65 74 42 61 73 65 50 6c 61 ent = getBasePla 00005c50: 63 65 6d 65 6e 74 28 70 72 65 66 65 72 72 65 64 cement(preferred 00005c60: 50 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 Placement);\n v 00005c70: 61 72 20 69 73 42 61 73 65 50 6c 61 63 65 6d 65 ar isBasePlaceme 00005c80: 6e 74 20 3d 20 62 61 73 65 50 6c 61 63 65 6d 65 nt = basePlaceme 00005c90: 6e 74 20 3d 3d 3d 20 70 72 65 66 65 72 72 65 64 nt === preferred 00005ca0: 50 6c 61 63 65 6d 65 6e 74 3b 5c 6e 20 20 76 61 Placement;\n va 00005cb0: 72 20 66 61 6c 6c 62 61 63 6b 50 6c 61 63 65 6d r fallbackPlacem 00005cc0: 65 6e 74 73 20 3d 20 73 70 65 63 69 66 69 65 64 ents = specified 00005cd0: 46 61 6c 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e FallbackPlacemen 00005ce0: 74 73 20 7c 7c 20 28 69 73 42 61 73 65 50 6c 61 ts || (isBasePla 00005cf0: 63 65 6d 65 6e 74 20 7c 7c 20 21 66 6c 69 70 56 cement || !flipV 00005d00: 61 72 69 61 74 69 6f 6e 73 20 3f 20 5b 67 65 74 ariations ? [get 00005d10: 4f 70 70 6f 73 69 74 65 50 6c 61 63 65 6d 65 6e OppositePlacemen 00005d20: 74 28 70 72 65 66 65 72 72 65 64 50 6c 61 63 65 t(preferredPlace 00005d30: 6d 65 6e 74 29 5d 20 3a 20 67 65 74 45 78 70 61 ment)] : getExpa 00005d40: 6e 64 65 64 46 61 6c 6c 62 61 63 6b 50 6c 61 63 ndedFallbackPlac 00005d50: 65 6d 65 6e 74 73 28 70 72 65 66 65 72 72 65 64 ements(preferred 00005d60: 50 6c 61 63 65 6d 65 6e 74 29 29 3b 5c 6e 20 20 Placement));\n 00005d70: 76 61 72 20 70 6c 61 63 65 6d 65 6e 74 73 20 3d var placements = 00005d80: 20 5b 70 72 65 66 65 72 72 65 64 50 6c 61 63 65 [preferredPlace 00005d90: 6d 65 6e 74 5d 2e 63 6f 6e 63 61 74 28 66 61 6c ment].concat(fal 00005da0: 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e 74 73 29 lbackPlacements) 00005db0: 2e 72 65 64 75 63 65 28 66 75 6e 63 74 69 6f 6e .reduce(function 00005dc0: 20 28 61 63 63 2c 20 70 6c 61 63 65 6d 65 6e 74 (acc, placement 00005dd0: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 00005de0: 61 63 63 2e 63 6f 6e 63 61 74 28 67 65 74 42 61 acc.concat(getBa 00005df0: 73 65 50 6c 61 63 65 6d 65 6e 74 28 70 6c 61 63 sePlacement(plac 00005e00: 65 6d 65 6e 74 29 20 3d 3d 3d 20 61 75 74 6f 20 ement) === auto 00005e10: 3f 20 63 6f 6d 70 75 74 65 41 75 74 6f 50 6c 61 ? computeAutoPla 00005e20: 63 65 6d 65 6e 74 28 73 74 61 74 65 2c 20 7b 5c cement(state, {\ 00005e30: 6e 20 20 20 20 20 20 70 6c 61 63 65 6d 65 6e 74 n placement 00005e40: 3a 20 70 6c 61 63 65 6d 65 6e 74 2c 5c 6e 20 20 : placement,\n 00005e50: 20 20 20 20 62 6f 75 6e 64 61 72 79 3a 20 62 6f boundary: bo 00005e60: 75 6e 64 61 72 79 2c 5c 6e 20 20 20 20 20 20 72 undary,\n r 00005e70: 6f 6f 74 42 6f 75 6e 64 61 72 79 3a 20 72 6f 6f ootBoundary: roo 00005e80: 74 42 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 20 tBoundary,\n 00005e90: 20 20 70 61 64 64 69 6e 67 3a 20 70 61 64 64 69 padding: paddi 00005ea0: 6e 67 2c 5c 6e 20 20 20 20 20 20 66 6c 69 70 56 ng,\n flipV 00005eb0: 61 72 69 61 74 69 6f 6e 73 3a 20 66 6c 69 70 56 ariations: flipV 00005ec0: 61 72 69 61 74 69 6f 6e 73 2c 5c 6e 20 20 20 20 ariations,\n 00005ed0: 20 20 61 6c 6c 6f 77 65 64 41 75 74 6f 50 6c 61 allowedAutoPla 00005ee0: 63 65 6d 65 6e 74 73 3a 20 61 6c 6c 6f 77 65 64 cements: allowed 00005ef0: 41 75 74 6f 50 6c 61 63 65 6d 65 6e 74 73 5c 6e AutoPlacements\n 00005f00: 20 20 20 20 7d 29 20 3a 20 70 6c 61 63 65 6d 65 }) : placeme 00005f10: 6e 74 29 3b 5c 6e 20 20 7d 2c 20 5b 5d 29 3b 5c nt);\n }, []);\ 00005f20: 6e 20 20 76 61 72 20 72 65 66 65 72 65 6e 63 65 n var reference 00005f30: 52 65 63 74 20 3d 20 73 74 61 74 65 2e 72 65 63 Rect = state.rec 00005f40: 74 73 2e 72 65 66 65 72 65 6e 63 65 3b 5c 6e 20 ts.reference;\n 00005f50: 20 76 61 72 20 70 6f 70 70 65 72 52 65 63 74 20 var popperRect 00005f60: 3d 20 73 74 61 74 65 2e 72 65 63 74 73 2e 70 6f = state.rects.po 00005f70: 70 70 65 72 3b 5c 6e 20 20 76 61 72 20 63 68 65 pper;\n var che 00005f80: 63 6b 73 4d 61 70 20 3d 20 6e 65 77 20 4d 61 70 cksMap = new Map 00005f90: 28 29 3b 5c 6e 20 20 76 61 72 20 6d 61 6b 65 46 ();\n var makeF 00005fa0: 61 6c 6c 62 61 63 6b 43 68 65 63 6b 73 20 3d 20 allbackChecks = 00005fb0: 74 72 75 65 3b 5c 6e 20 20 76 61 72 20 66 69 72 true;\n var fir 00005fc0: 73 74 46 69 74 74 69 6e 67 50 6c 61 63 65 6d 65 stFittingPlaceme 00005fd0: 6e 74 20 3d 20 70 6c 61 63 65 6d 65 6e 74 73 5b nt = placements[ 00005fe0: 30 5d 3b 5c 6e 5c 6e 20 20 66 6f 72 20 28 76 61 0];\n\n for (va 00005ff0: 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 70 6c 61 r i = 0; i < pla 00006000: 63 65 6d 65 6e 74 73 2e 6c 65 6e 67 74 68 3b 20 cements.length; 00006010: 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 76 61 72 20 i++) {\n var 00006020: 70 6c 61 63 65 6d 65 6e 74 20 3d 20 70 6c 61 63 placement = plac 00006030: 65 6d 65 6e 74 73 5b 69 5d 3b 5c 6e 5c 6e 20 20 ements[i];\n\n 00006040: 20 20 76 61 72 20 5f 62 61 73 65 50 6c 61 63 65 var _basePlace 00006050: 6d 65 6e 74 20 3d 20 67 65 74 42 61 73 65 50 6c ment = getBasePl 00006060: 61 63 65 6d 65 6e 74 28 70 6c 61 63 65 6d 65 6e acement(placemen 00006070: 74 29 3b 5c 6e 5c 6e 20 20 20 20 76 61 72 20 69 t);\n\n var i 00006080: 73 53 74 61 72 74 56 61 72 69 61 74 69 6f 6e 20 sStartVariation 00006090: 3d 20 67 65 74 56 61 72 69 61 74 69 6f 6e 28 70 = getVariation(p 000060a0: 6c 61 63 65 6d 65 6e 74 29 20 3d 3d 3d 20 73 74 lacement) === st 000060b0: 61 72 74 3b 5c 6e 20 20 20 20 76 61 72 20 69 73 art;\n var is 000060c0: 56 65 72 74 69 63 61 6c 20 3d 20 5b 74 6f 70 2c Vertical = [top, 000060d0: 20 62 6f 74 74 6f 6d 5d 2e 69 6e 64 65 78 4f 66 bottom].indexOf 000060e0: 28 5f 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 29 (_basePlacement) 000060f0: 20 3e 3d 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 >= 0;\n var 00006100: 6c 65 6e 20 3d 20 69 73 56 65 72 74 69 63 61 6c len = isVertical 00006110: 20 3f 20 27 77 69 64 74 68 27 20 3a 20 27 68 65 ? 'width' : 'he 00006120: 69 67 68 74 27 3b 5c 6e 20 20 20 20 76 61 72 20 ight';\n var 00006130: 6f 76 65 72 66 6c 6f 77 20 3d 20 64 65 74 65 63 overflow = detec 00006140: 74 4f 76 65 72 66 6c 6f 77 28 73 74 61 74 65 2c tOverflow(state, 00006150: 20 7b 5c 6e 20 20 20 20 20 20 70 6c 61 63 65 6d {\n placem 00006160: 65 6e 74 3a 20 70 6c 61 63 65 6d 65 6e 74 2c 5c ent: placement,\ 00006170: 6e 20 20 20 20 20 20 62 6f 75 6e 64 61 72 79 3a n boundary: 00006180: 20 62 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 20 boundary,\n 00006190: 20 20 72 6f 6f 74 42 6f 75 6e 64 61 72 79 3a 20 rootBoundary: 000061a0: 72 6f 6f 74 42 6f 75 6e 64 61 72 79 2c 5c 6e 20 rootBoundary,\n 000061b0: 20 20 20 20 20 61 6c 74 42 6f 75 6e 64 61 72 79 altBoundary 000061c0: 3a 20 61 6c 74 42 6f 75 6e 64 61 72 79 2c 5c 6e : altBoundary,\n 000061d0: 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 70 padding: p 000061e0: 61 64 64 69 6e 67 5c 6e 20 20 20 20 7d 29 3b 5c adding\n });\ 000061f0: 6e 20 20 20 20 76 61 72 20 6d 61 69 6e 56 61 72 n var mainVar 00006200: 69 61 74 69 6f 6e 53 69 64 65 20 3d 20 69 73 56 iationSide = isV 00006210: 65 72 74 69 63 61 6c 20 3f 20 69 73 53 74 61 72 ertical ? isStar 00006220: 74 56 61 72 69 61 74 69 6f 6e 20 3f 20 72 69 67 tVariation ? rig 00006230: 68 74 20 3a 20 6c 65 66 74 20 3a 20 69 73 53 74 ht : left : isSt 00006240: 61 72 74 56 61 72 69 61 74 69 6f 6e 20 3f 20 62 artVariation ? b 00006250: 6f 74 74 6f 6d 20 3a 20 74 6f 70 3b 5c 6e 5c 6e ottom : top;\n\n 00006260: 20 20 20 20 69 66 20 28 72 65 66 65 72 65 6e 63 if (referenc 00006270: 65 52 65 63 74 5b 6c 65 6e 5d 20 3e 20 70 6f 70 eRect[len] > pop 00006280: 70 65 72 52 65 63 74 5b 6c 65 6e 5d 29 20 7b 5c perRect[len]) {\ 00006290: 6e 20 20 20 20 20 20 6d 61 69 6e 56 61 72 69 61 n mainVaria 000062a0: 74 69 6f 6e 53 69 64 65 20 3d 20 67 65 74 4f 70 tionSide = getOp 000062b0: 70 6f 73 69 74 65 50 6c 61 63 65 6d 65 6e 74 28 positePlacement( 000062c0: 6d 61 69 6e 56 61 72 69 61 74 69 6f 6e 53 69 64 mainVariationSid 000062d0: 65 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 e);\n }\n\n 000062e0: 20 20 76 61 72 20 61 6c 74 56 61 72 69 61 74 69 var altVariati 000062f0: 6f 6e 53 69 64 65 20 3d 20 67 65 74 4f 70 70 6f onSide = getOppo 00006300: 73 69 74 65 50 6c 61 63 65 6d 65 6e 74 28 6d 61 sitePlacement(ma 00006310: 69 6e 56 61 72 69 61 74 69 6f 6e 53 69 64 65 29 inVariationSide) 00006320: 3b 5c 6e 20 20 20 20 76 61 72 20 63 68 65 63 6b ;\n var check 00006330: 73 20 3d 20 5b 5d 3b 5c 6e 5c 6e 20 20 20 20 69 s = [];\n\n i 00006340: 66 20 28 63 68 65 63 6b 4d 61 69 6e 41 78 69 73 f (checkMainAxis 00006350: 29 20 7b 5c 6e 20 20 20 20 20 20 63 68 65 63 6b ) {\n check 00006360: 73 2e 70 75 73 68 28 6f 76 65 72 66 6c 6f 77 5b s.push(overflow[ 00006370: 5f 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 5d 20 _basePlacement] 00006380: 3c 3d 20 30 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c <= 0);\n }\n\ 00006390: 6e 20 20 20 20 69 66 20 28 63 68 65 63 6b 41 6c n if (checkAl 000063a0: 74 41 78 69 73 29 20 7b 5c 6e 20 20 20 20 20 20 tAxis) {\n 000063b0: 63 68 65 63 6b 73 2e 70 75 73 68 28 6f 76 65 72 checks.push(over 000063c0: 66 6c 6f 77 5b 6d 61 69 6e 56 61 72 69 61 74 69 flow[mainVariati 000063d0: 6f 6e 53 69 64 65 5d 20 3c 3d 20 30 2c 20 6f 76 onSide] <= 0, ov 000063e0: 65 72 66 6c 6f 77 5b 61 6c 74 56 61 72 69 61 74 erflow[altVariat 000063f0: 69 6f 6e 53 69 64 65 5d 20 3c 3d 20 30 29 3b 5c ionSide] <= 0);\ 00006400: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 n }\n\n if 00006410: 20 28 63 68 65 63 6b 73 2e 65 76 65 72 79 28 66 (checks.every(f 00006420: 75 6e 63 74 69 6f 6e 20 28 63 68 65 63 6b 29 20 unction (check) 00006430: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 {\n return 00006440: 63 68 65 63 6b 3b 5c 6e 20 20 20 20 7d 29 29 20 check;\n })) 00006450: 7b 5c 6e 20 20 20 20 20 20 66 69 72 73 74 46 69 {\n firstFi 00006460: 74 74 69 6e 67 50 6c 61 63 65 6d 65 6e 74 20 3d ttingPlacement = 00006470: 20 70 6c 61 63 65 6d 65 6e 74 3b 5c 6e 20 20 20 placement;\n 00006480: 20 20 20 6d 61 6b 65 46 61 6c 6c 62 61 63 6b 43 makeFallbackC 00006490: 68 65 63 6b 73 20 3d 20 66 61 6c 73 65 3b 5c 6e hecks = false;\n 000064a0: 20 20 20 20 20 20 62 72 65 61 6b 3b 5c 6e 20 20 break;\n 000064b0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 68 65 63 6b }\n\n check 000064c0: 73 4d 61 70 2e 73 65 74 28 70 6c 61 63 65 6d 65 sMap.set(placeme 000064d0: 6e 74 2c 20 63 68 65 63 6b 73 29 3b 5c 6e 20 20 nt, checks);\n 000064e0: 7d 5c 6e 5c 6e 20 20 69 66 20 28 6d 61 6b 65 46 }\n\n if (makeF 000064f0: 61 6c 6c 62 61 63 6b 43 68 65 63 6b 73 29 20 7b allbackChecks) { 00006500: 5c 6e 20 20 20 20 2f 2f 20 60 32 60 20 6d 61 79 \n // `2` may 00006510: 20 62 65 20 64 65 73 69 72 65 64 20 69 6e 20 73 be desired in s 00006520: 6f 6d 65 20 63 61 73 65 73 20 e2 80 93 20 72 65 ome cases ... re 00006530: 73 65 61 72 63 68 20 6c 61 74 65 72 5c 6e 20 20 search later\n 00006540: 20 20 76 61 72 20 6e 75 6d 62 65 72 4f 66 43 68 var numberOfCh 00006550: 65 63 6b 73 20 3d 20 66 6c 69 70 56 61 72 69 61 ecks = flipVaria 00006560: 74 69 6f 6e 73 20 3f 20 33 20 3a 20 31 3b 5c 6e tions ? 3 : 1;\n 00006570: 5c 6e 20 20 20 20 76 61 72 20 5f 6c 6f 6f 70 20 \n var _loop 00006580: 3d 20 66 75 6e 63 74 69 6f 6e 20 5f 6c 6f 6f 70 = function _loop 00006590: 28 5f 69 29 20 7b 5c 6e 20 20 20 20 20 20 76 61 (_i) {\n va 000065a0: 72 20 66 69 74 74 69 6e 67 50 6c 61 63 65 6d 65 r fittingPlaceme 000065b0: 6e 74 20 3d 20 70 6c 61 63 65 6d 65 6e 74 73 2e nt = placements. 000065c0: 66 69 6e 64 28 66 75 6e 63 74 69 6f 6e 20 28 70 find(function (p 000065d0: 6c 61 63 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 20 lacement) {\n 000065e0: 20 20 20 20 20 76 61 72 20 63 68 65 63 6b 73 20 var checks 000065f0: 3d 20 63 68 65 63 6b 73 4d 61 70 2e 67 65 74 28 = checksMap.get( 00006600: 70 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 5c 6e 20 placement);\n\n 00006610: 20 20 20 20 20 20 20 69 66 20 28 63 68 65 63 6b if (check 00006620: 73 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 s) {\n 00006630: 72 65 74 75 72 6e 20 63 68 65 63 6b 73 2e 73 6c return checks.sl 00006640: 69 63 65 28 30 2c 20 5f 69 29 2e 65 76 65 72 79 ice(0, _i).every 00006650: 28 66 75 6e 63 74 69 6f 6e 20 28 63 68 65 63 6b (function (check 00006660: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 20 ) {\n 00006670: 20 72 65 74 75 72 6e 20 63 68 65 63 6b 3b 5c 6e return check;\n 00006680: 20 20 20 20 20 20 20 20 20 20 7d 29 3b 5c 6e 20 });\n 00006690: 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 }\n 000066a0: 7d 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 });\n\n if 000066b0: 28 66 69 74 74 69 6e 67 50 6c 61 63 65 6d 65 6e (fittingPlacemen 000066c0: 74 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 66 69 t) {\n fi 000066d0: 72 73 74 46 69 74 74 69 6e 67 50 6c 61 63 65 6d rstFittingPlacem 000066e0: 65 6e 74 20 3d 20 66 69 74 74 69 6e 67 50 6c 61 ent = fittingPla 000066f0: 63 65 6d 65 6e 74 3b 5c 6e 20 20 20 20 20 20 20 cement;\n 00006700: 20 72 65 74 75 72 6e 20 5c 22 62 72 65 61 6b 5c return \"break\ 00006710: 22 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 ";\n }\n 00006720: 20 7d 3b 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 };\n\n for ( 00006730: 76 61 72 20 5f 69 20 3d 20 6e 75 6d 62 65 72 4f var _i = numberO 00006740: 66 43 68 65 63 6b 73 3b 20 5f 69 20 3e 20 30 3b fChecks; _i > 0; 00006750: 20 5f 69 2d 2d 29 20 7b 5c 6e 20 20 20 20 20 20 _i--) {\n 00006760: 76 61 72 20 5f 72 65 74 20 3d 20 5f 6c 6f 6f 70 var _ret = _loop 00006770: 28 5f 69 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 69 (_i);\n\n i 00006780: 66 20 28 5f 72 65 74 20 3d 3d 3d 20 5c 22 62 72 f (_ret === \"br 00006790: 65 61 6b 5c 22 29 20 62 72 65 61 6b 3b 5c 6e 20 eak\") break;\n 000067a0: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 69 }\n }\n\n i 000067b0: 66 20 28 73 74 61 74 65 2e 70 6c 61 63 65 6d 65 f (state.placeme 000067c0: 6e 74 20 21 3d 3d 20 66 69 72 73 74 46 69 74 74 nt !== firstFitt 000067d0: 69 6e 67 50 6c 61 63 65 6d 65 6e 74 29 20 7b 5c ingPlacement) {\ 000067e0: 6e 20 20 20 20 73 74 61 74 65 2e 6d 6f 64 69 66 n state.modif 000067f0: 69 65 72 73 44 61 74 61 5b 6e 61 6d 65 5d 2e 5f iersData[name]._ 00006800: 73 6b 69 70 20 3d 20 74 72 75 65 3b 5c 6e 20 20 skip = true;\n 00006810: 20 20 73 74 61 74 65 2e 70 6c 61 63 65 6d 65 6e state.placemen 00006820: 74 20 3d 20 66 69 72 73 74 46 69 74 74 69 6e 67 t = firstFitting 00006830: 50 6c 61 63 65 6d 65 6e 74 3b 5c 6e 20 20 20 20 Placement;\n 00006840: 73 74 61 74 65 2e 72 65 73 65 74 20 3d 20 74 72 state.reset = tr 00006850: 75 65 3b 5c 6e 20 20 7d 5c 6e 7d 20 2f 2f 20 65 ue;\n }\n} // e 00006860: 73 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 slint-disable-ne 00006870: 78 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e xt-line import/n 00006880: 6f 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 o-unused-modules 00006890: 5c 6e 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 \n\n\nexport def 000068a0: 61 75 6c 74 20 7b 5c 6e 20 20 6e 61 6d 65 3a 20 ault {\n name: 000068b0: 27 66 6c 69 70 27 2c 5c 6e 20 20 65 6e 61 62 6c 'flip',\n enabl 000068c0: 65 64 3a 20 74 72 75 65 2c 5c 6e 20 20 70 68 61 ed: true,\n pha 000068d0: 73 65 3a 20 27 6d 61 69 6e 27 2c 5c 6e 20 20 66 se: 'main',\n f 000068e0: 6e 3a 20 66 6c 69 70 2c 5c 6e 20 20 72 65 71 75 n: flip,\n requ 000068f0: 69 72 65 73 49 66 45 78 69 73 74 73 3a 20 5b 27 iresIfExists: [' 00006900: 6f 66 66 73 65 74 27 5d 2c 5c 6e 20 20 64 61 74 offset'],\n dat 00006910: 61 3a 20 7b 5c 6e 20 20 20 20 5f 73 6b 69 70 3a a: {\n _skip: 00006920: 20 66 61 6c 73 65 5c 6e 20 20 7d 5c 6e 7d 3b 22 false\n }\n};" 00006930: 2c 22 69 6d 70 6f 72 74 20 7b 20 74 6f 70 2c 20 ,"import { top, 00006940: 62 6f 74 74 6f 6d 2c 20 6c 65 66 74 2c 20 72 69 bottom, left, ri 00006950: 67 68 74 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e 2f ght } from \"../ 00006960: 65 6e 75 6d 73 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 enums.js\";\nimp 00006970: 6f 72 74 20 64 65 74 65 63 74 4f 76 65 72 66 6c ort detectOverfl 00006980: 6f 77 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 ow from \"../uti 00006990: 6c 73 2f 64 65 74 65 63 74 4f 76 65 72 66 6c 6f ls/detectOverflo 000069a0: 77 2e 6a 73 5c 22 3b 5c 6e 5c 6e 66 75 6e 63 74 w.js\";\n\nfunct 000069b0: 69 6f 6e 20 67 65 74 53 69 64 65 4f 66 66 73 65 ion getSideOffse 000069c0: 74 73 28 6f 76 65 72 66 6c 6f 77 2c 20 72 65 63 ts(overflow, rec 000069d0: 74 2c 20 70 72 65 76 65 6e 74 65 64 4f 66 66 73 t, preventedOffs 000069e0: 65 74 73 29 20 7b 5c 6e 20 20 69 66 20 28 70 72 ets) {\n if (pr 000069f0: 65 76 65 6e 74 65 64 4f 66 66 73 65 74 73 20 3d eventedOffsets = 00006a00: 3d 3d 20 76 6f 69 64 20 30 29 20 7b 5c 6e 20 20 == void 0) {\n 00006a10: 20 20 70 72 65 76 65 6e 74 65 64 4f 66 66 73 65 preventedOffse 00006a20: 74 73 20 3d 20 7b 5c 6e 20 20 20 20 20 20 78 3a ts = {\n x: 00006a30: 20 30 2c 5c 6e 20 20 20 20 20 20 79 3a 20 30 5c 0,\n y: 0\ 00006a40: 6e 20 20 20 20 7d 3b 5c 6e 20 20 7d 5c 6e 5c 6e n };\n }\n\n 00006a50: 20 20 72 65 74 75 72 6e 20 7b 5c 6e 20 20 20 20 return {\n 00006a60: 74 6f 70 3a 20 6f 76 65 72 66 6c 6f 77 2e 74 6f top: overflow.to 00006a70: 70 20 2d 20 72 65 63 74 2e 68 65 69 67 68 74 20 p - rect.height 00006a80: 2d 20 70 72 65 76 65 6e 74 65 64 4f 66 66 73 65 - preventedOffse 00006a90: 74 73 2e 79 2c 5c 6e 20 20 20 20 72 69 67 68 74 ts.y,\n right 00006aa0: 3a 20 6f 76 65 72 66 6c 6f 77 2e 72 69 67 68 74 : overflow.right 00006ab0: 20 2d 20 72 65 63 74 2e 77 69 64 74 68 20 2b 20 - rect.width + 00006ac0: 70 72 65 76 65 6e 74 65 64 4f 66 66 73 65 74 73 preventedOffsets 00006ad0: 2e 78 2c 5c 6e 20 20 20 20 62 6f 74 74 6f 6d 3a .x,\n bottom: 00006ae0: 20 6f 76 65 72 66 6c 6f 77 2e 62 6f 74 74 6f 6d overflow.bottom 00006af0: 20 2d 20 72 65 63 74 2e 68 65 69 67 68 74 20 2b - rect.height + 00006b00: 20 70 72 65 76 65 6e 74 65 64 4f 66 66 73 65 74 preventedOffset 00006b10: 73 2e 79 2c 5c 6e 20 20 20 20 6c 65 66 74 3a 20 s.y,\n left: 00006b20: 6f 76 65 72 66 6c 6f 77 2e 6c 65 66 74 20 2d 20 overflow.left - 00006b30: 72 65 63 74 2e 77 69 64 74 68 20 2d 20 70 72 65 rect.width - pre 00006b40: 76 65 6e 74 65 64 4f 66 66 73 65 74 73 2e 78 5c ventedOffsets.x\ 00006b50: 6e 20 20 7d 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 n };\n}\n\nfunc 00006b60: 74 69 6f 6e 20 69 73 41 6e 79 53 69 64 65 46 75 tion isAnySideFu 00006b70: 6c 6c 79 43 6c 69 70 70 65 64 28 6f 76 65 72 66 llyClipped(overf 00006b80: 6c 6f 77 29 20 7b 5c 6e 20 20 72 65 74 75 72 6e low) {\n return 00006b90: 20 5b 74 6f 70 2c 20 72 69 67 68 74 2c 20 62 6f [top, right, bo 00006ba0: 74 74 6f 6d 2c 20 6c 65 66 74 5d 2e 73 6f 6d 65 ttom, left].some 00006bb0: 28 66 75 6e 63 74 69 6f 6e 20 28 73 69 64 65 29 (function (side) 00006bc0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6f {\n return o 00006bd0: 76 65 72 66 6c 6f 77 5b 73 69 64 65 5d 20 3e 3d verflow[side] >= 00006be0: 20 30 3b 5c 6e 20 20 7d 29 3b 5c 6e 7d 5c 6e 5c 0;\n });\n}\n\ 00006bf0: 6e 66 75 6e 63 74 69 6f 6e 20 68 69 64 65 28 5f nfunction hide(_ 00006c00: 72 65 66 29 20 7b 5c 6e 20 20 76 61 72 20 73 74 ref) {\n var st 00006c10: 61 74 65 20 3d 20 5f 72 65 66 2e 73 74 61 74 65 ate = _ref.state 00006c20: 2c 5c 6e 20 20 20 20 20 20 6e 61 6d 65 20 3d 20 ,\n name = 00006c30: 5f 72 65 66 2e 6e 61 6d 65 3b 5c 6e 20 20 76 61 _ref.name;\n va 00006c40: 72 20 72 65 66 65 72 65 6e 63 65 52 65 63 74 20 r referenceRect 00006c50: 3d 20 73 74 61 74 65 2e 72 65 63 74 73 2e 72 65 = state.rects.re 00006c60: 66 65 72 65 6e 63 65 3b 5c 6e 20 20 76 61 72 20 ference;\n var 00006c70: 70 6f 70 70 65 72 52 65 63 74 20 3d 20 73 74 61 popperRect = sta 00006c80: 74 65 2e 72 65 63 74 73 2e 70 6f 70 70 65 72 3b te.rects.popper; 00006c90: 5c 6e 20 20 76 61 72 20 70 72 65 76 65 6e 74 65 \n var prevente 00006ca0: 64 4f 66 66 73 65 74 73 20 3d 20 73 74 61 74 65 dOffsets = state 00006cb0: 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 2e 70 .modifiersData.p 00006cc0: 72 65 76 65 6e 74 4f 76 65 72 66 6c 6f 77 3b 5c reventOverflow;\ 00006cd0: 6e 20 20 76 61 72 20 72 65 66 65 72 65 6e 63 65 n var reference 00006ce0: 4f 76 65 72 66 6c 6f 77 20 3d 20 64 65 74 65 63 Overflow = detec 00006cf0: 74 4f 76 65 72 66 6c 6f 77 28 73 74 61 74 65 2c tOverflow(state, 00006d00: 20 7b 5c 6e 20 20 20 20 65 6c 65 6d 65 6e 74 43 {\n elementC 00006d10: 6f 6e 74 65 78 74 3a 20 27 72 65 66 65 72 65 6e ontext: 'referen 00006d20: 63 65 27 5c 6e 20 20 7d 29 3b 5c 6e 20 20 76 61 ce'\n });\n va 00006d30: 72 20 70 6f 70 70 65 72 41 6c 74 4f 76 65 72 66 r popperAltOverf 00006d40: 6c 6f 77 20 3d 20 64 65 74 65 63 74 4f 76 65 72 low = detectOver 00006d50: 66 6c 6f 77 28 73 74 61 74 65 2c 20 7b 5c 6e 20 flow(state, {\n 00006d60: 20 20 20 61 6c 74 42 6f 75 6e 64 61 72 79 3a 20 altBoundary: 00006d70: 74 72 75 65 5c 6e 20 20 7d 29 3b 5c 6e 20 20 76 true\n });\n v 00006d80: 61 72 20 72 65 66 65 72 65 6e 63 65 43 6c 69 70 ar referenceClip 00006d90: 70 69 6e 67 4f 66 66 73 65 74 73 20 3d 20 67 65 pingOffsets = ge 00006da0: 74 53 69 64 65 4f 66 66 73 65 74 73 28 72 65 66 tSideOffsets(ref 00006db0: 65 72 65 6e 63 65 4f 76 65 72 66 6c 6f 77 2c 20 erenceOverflow, 00006dc0: 72 65 66 65 72 65 6e 63 65 52 65 63 74 29 3b 5c referenceRect);\ 00006dd0: 6e 20 20 76 61 72 20 70 6f 70 70 65 72 45 73 63 n var popperEsc 00006de0: 61 70 65 4f 66 66 73 65 74 73 20 3d 20 67 65 74 apeOffsets = get 00006df0: 53 69 64 65 4f 66 66 73 65 74 73 28 70 6f 70 70 SideOffsets(popp 00006e00: 65 72 41 6c 74 4f 76 65 72 66 6c 6f 77 2c 20 70 erAltOverflow, p 00006e10: 6f 70 70 65 72 52 65 63 74 2c 20 70 72 65 76 65 opperRect, preve 00006e20: 6e 74 65 64 4f 66 66 73 65 74 73 29 3b 5c 6e 20 ntedOffsets);\n 00006e30: 20 76 61 72 20 69 73 52 65 66 65 72 65 6e 63 65 var isReference 00006e40: 48 69 64 64 65 6e 20 3d 20 69 73 41 6e 79 53 69 Hidden = isAnySi 00006e50: 64 65 46 75 6c 6c 79 43 6c 69 70 70 65 64 28 72 deFullyClipped(r 00006e60: 65 66 65 72 65 6e 63 65 43 6c 69 70 70 69 6e 67 eferenceClipping 00006e70: 4f 66 66 73 65 74 73 29 3b 5c 6e 20 20 76 61 72 Offsets);\n var 00006e80: 20 68 61 73 50 6f 70 70 65 72 45 73 63 61 70 65 hasPopperEscape 00006e90: 64 20 3d 20 69 73 41 6e 79 53 69 64 65 46 75 6c d = isAnySideFul 00006ea0: 6c 79 43 6c 69 70 70 65 64 28 70 6f 70 70 65 72 lyClipped(popper 00006eb0: 45 73 63 61 70 65 4f 66 66 73 65 74 73 29 3b 5c EscapeOffsets);\ 00006ec0: 6e 20 20 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 n state.modifie 00006ed0: 72 73 44 61 74 61 5b 6e 61 6d 65 5d 20 3d 20 7b rsData[name] = { 00006ee0: 5c 6e 20 20 20 20 72 65 66 65 72 65 6e 63 65 43 \n referenceC 00006ef0: 6c 69 70 70 69 6e 67 4f 66 66 73 65 74 73 3a 20 lippingOffsets: 00006f00: 72 65 66 65 72 65 6e 63 65 43 6c 69 70 70 69 6e referenceClippin 00006f10: 67 4f 66 66 73 65 74 73 2c 5c 6e 20 20 20 20 70 gOffsets,\n p 00006f20: 6f 70 70 65 72 45 73 63 61 70 65 4f 66 66 73 65 opperEscapeOffse 00006f30: 74 73 3a 20 70 6f 70 70 65 72 45 73 63 61 70 65 ts: popperEscape 00006f40: 4f 66 66 73 65 74 73 2c 5c 6e 20 20 20 20 69 73 Offsets,\n is 00006f50: 52 65 66 65 72 65 6e 63 65 48 69 64 64 65 6e 3a ReferenceHidden: 00006f60: 20 69 73 52 65 66 65 72 65 6e 63 65 48 69 64 64 isReferenceHidd 00006f70: 65 6e 2c 5c 6e 20 20 20 20 68 61 73 50 6f 70 70 en,\n hasPopp 00006f80: 65 72 45 73 63 61 70 65 64 3a 20 68 61 73 50 6f erEscaped: hasPo 00006f90: 70 70 65 72 45 73 63 61 70 65 64 5c 6e 20 20 7d pperEscaped\n } 00006fa0: 3b 5c 6e 20 20 73 74 61 74 65 2e 61 74 74 72 69 ;\n state.attri 00006fb0: 62 75 74 65 73 2e 70 6f 70 70 65 72 20 3d 20 4f butes.popper = O 00006fc0: 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c bject.assign({}, 00006fd0: 20 73 74 61 74 65 2e 61 74 74 72 69 62 75 74 65 state.attribute 00006fe0: 73 2e 70 6f 70 70 65 72 2c 20 7b 5c 6e 20 20 20 s.popper, {\n 00006ff0: 20 27 64 61 74 61 2d 70 6f 70 70 65 72 2d 72 65 'data-popper-re 00007000: 66 65 72 65 6e 63 65 2d 68 69 64 64 65 6e 27 3a ference-hidden': 00007010: 20 69 73 52 65 66 65 72 65 6e 63 65 48 69 64 64 isReferenceHidd 00007020: 65 6e 2c 5c 6e 20 20 20 20 27 64 61 74 61 2d 70 en,\n 'data-p 00007030: 6f 70 70 65 72 2d 65 73 63 61 70 65 64 27 3a 20 opper-escaped': 00007040: 68 61 73 50 6f 70 70 65 72 45 73 63 61 70 65 64 hasPopperEscaped 00007050: 5c 6e 20 20 7d 29 3b 5c 6e 7d 20 2f 2f 20 65 73 \n });\n} // es 00007060: 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 78 lint-disable-nex 00007070: 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f t-line import/no 00007080: 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 5c -unused-modules\ 00007090: 6e 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 n\n\nexport defa 000070a0: 75 6c 74 20 7b 5c 6e 20 20 6e 61 6d 65 3a 20 27 ult {\n name: ' 000070b0: 68 69 64 65 27 2c 5c 6e 20 20 65 6e 61 62 6c 65 hide',\n enable 000070c0: 64 3a 20 74 72 75 65 2c 5c 6e 20 20 70 68 61 73 d: true,\n phas 000070d0: 65 3a 20 27 6d 61 69 6e 27 2c 5c 6e 20 20 72 65 e: 'main',\n re 000070e0: 71 75 69 72 65 73 49 66 45 78 69 73 74 73 3a 20 quiresIfExists: 000070f0: 5b 27 70 72 65 76 65 6e 74 4f 76 65 72 66 6c 6f ['preventOverflo 00007100: 77 27 5d 2c 5c 6e 20 20 66 6e 3a 20 68 69 64 65 w'],\n fn: hide 00007110: 5c 6e 7d 3b 22 2c 22 69 6d 70 6f 72 74 20 67 65 \n};","import ge 00007120: 74 42 61 73 65 50 6c 61 63 65 6d 65 6e 74 20 66 tBasePlacement f 00007130: 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 6c 73 2f 67 rom \"../utils/g 00007140: 65 74 42 61 73 65 50 6c 61 63 65 6d 65 6e 74 2e etBasePlacement. 00007150: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 js\";\nimport { 00007160: 74 6f 70 2c 20 6c 65 66 74 2c 20 72 69 67 68 74 top, left, right 00007170: 2c 20 70 6c 61 63 65 6d 65 6e 74 73 20 7d 20 66 , placements } f 00007180: 72 6f 6d 20 5c 22 2e 2e 2f 65 6e 75 6d 73 2e 6a rom \"../enums.j 00007190: 73 5c 22 3b 20 2f 2f 20 65 73 6c 69 6e 74 2d 64 s\"; // eslint-d 000071a0: 69 73 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 isable-next-line 000071b0: 20 69 6d 70 6f 72 74 2f 6e 6f 2d 75 6e 75 73 65 import/no-unuse 000071c0: 64 2d 6d 6f 64 75 6c 65 73 5c 6e 5c 6e 65 78 70 d-modules\n\nexp 000071d0: 6f 72 74 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 ort function dis 000071e0: 74 61 6e 63 65 41 6e 64 53 6b 69 64 64 69 6e 67 tanceAndSkidding 000071f0: 54 6f 58 59 28 70 6c 61 63 65 6d 65 6e 74 2c 20 ToXY(placement, 00007200: 72 65 63 74 73 2c 20 6f 66 66 73 65 74 29 20 7b rects, offset) { 00007210: 5c 6e 20 20 76 61 72 20 62 61 73 65 50 6c 61 63 \n var basePlac 00007220: 65 6d 65 6e 74 20 3d 20 67 65 74 42 61 73 65 50 ement = getBaseP 00007230: 6c 61 63 65 6d 65 6e 74 28 70 6c 61 63 65 6d 65 lacement(placeme 00007240: 6e 74 29 3b 5c 6e 20 20 76 61 72 20 69 6e 76 65 nt);\n var inve 00007250: 72 74 44 69 73 74 61 6e 63 65 20 3d 20 5b 6c 65 rtDistance = [le 00007260: 66 74 2c 20 74 6f 70 5d 2e 69 6e 64 65 78 4f 66 ft, top].indexOf 00007270: 28 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 29 20 (basePlacement) 00007280: 3e 3d 20 30 20 3f 20 2d 31 20 3a 20 31 3b 5c 6e >= 0 ? -1 : 1;\n 00007290: 5c 6e 20 20 76 61 72 20 5f 72 65 66 20 3d 20 74 \n var _ref = t 000072a0: 79 70 65 6f 66 20 6f 66 66 73 65 74 20 3d 3d 3d ypeof offset === 000072b0: 20 27 66 75 6e 63 74 69 6f 6e 27 20 3f 20 6f 66 'function' ? of 000072c0: 66 73 65 74 28 4f 62 6a 65 63 74 2e 61 73 73 69 fset(Object.assi 000072d0: 67 6e 28 7b 7d 2c 20 72 65 63 74 73 2c 20 7b 5c gn({}, rects, {\ 000072e0: 6e 20 20 20 20 70 6c 61 63 65 6d 65 6e 74 3a 20 n placement: 000072f0: 70 6c 61 63 65 6d 65 6e 74 5c 6e 20 20 7d 29 29 placement\n })) 00007300: 20 3a 20 6f 66 66 73 65 74 2c 5c 6e 20 20 20 20 : offset,\n 00007310: 20 20 73 6b 69 64 64 69 6e 67 20 3d 20 5f 72 65 skidding = _re 00007320: 66 5b 30 5d 2c 5c 6e 20 20 20 20 20 20 64 69 73 f[0],\n dis 00007330: 74 61 6e 63 65 20 3d 20 5f 72 65 66 5b 31 5d 3b tance = _ref[1]; 00007340: 5c 6e 5c 6e 20 20 73 6b 69 64 64 69 6e 67 20 3d \n\n skidding = 00007350: 20 73 6b 69 64 64 69 6e 67 20 7c 7c 20 30 3b 5c skidding || 0;\ 00007360: 6e 20 20 64 69 73 74 61 6e 63 65 20 3d 20 28 64 n distance = (d 00007370: 69 73 74 61 6e 63 65 20 7c 7c 20 30 29 20 2a 20 istance || 0) * 00007380: 69 6e 76 65 72 74 44 69 73 74 61 6e 63 65 3b 5c invertDistance;\ 00007390: 6e 20 20 72 65 74 75 72 6e 20 5b 6c 65 66 74 2c n return [left, 000073a0: 20 72 69 67 68 74 5d 2e 69 6e 64 65 78 4f 66 28 right].indexOf( 000073b0: 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 29 20 3e basePlacement) > 000073c0: 3d 20 30 20 3f 20 7b 5c 6e 20 20 20 20 78 3a 20 = 0 ? {\n x: 000073d0: 64 69 73 74 61 6e 63 65 2c 5c 6e 20 20 20 20 79 distance,\n y 000073e0: 3a 20 73 6b 69 64 64 69 6e 67 5c 6e 20 20 7d 20 : skidding\n } 000073f0: 3a 20 7b 5c 6e 20 20 20 20 78 3a 20 73 6b 69 64 : {\n x: skid 00007400: 64 69 6e 67 2c 5c 6e 20 20 20 20 79 3a 20 64 69 ding,\n y: di 00007410: 73 74 61 6e 63 65 5c 6e 20 20 7d 3b 5c 6e 7d 5c stance\n };\n}\ 00007420: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 6f 66 66 73 n\nfunction offs 00007430: 65 74 28 5f 72 65 66 32 29 20 7b 5c 6e 20 20 76 et(_ref2) {\n v 00007440: 61 72 20 73 74 61 74 65 20 3d 20 5f 72 65 66 32 ar state = _ref2 00007450: 2e 73 74 61 74 65 2c 5c 6e 20 20 20 20 20 20 6f .state,\n o 00007460: 70 74 69 6f 6e 73 20 3d 20 5f 72 65 66 32 2e 6f ptions = _ref2.o 00007470: 70 74 69 6f 6e 73 2c 5c 6e 20 20 20 20 20 20 6e ptions,\n n 00007480: 61 6d 65 20 3d 20 5f 72 65 66 32 2e 6e 61 6d 65 ame = _ref2.name 00007490: 3b 5c 6e 20 20 76 61 72 20 5f 6f 70 74 69 6f 6e ;\n var _option 000074a0: 73 24 6f 66 66 73 65 74 20 3d 20 6f 70 74 69 6f s$offset = optio 000074b0: 6e 73 2e 6f 66 66 73 65 74 2c 5c 6e 20 20 20 20 ns.offset,\n 000074c0: 20 20 6f 66 66 73 65 74 20 3d 20 5f 6f 70 74 69 offset = _opti 000074d0: 6f 6e 73 24 6f 66 66 73 65 74 20 3d 3d 3d 20 76 ons$offset === v 000074e0: 6f 69 64 20 30 20 3f 20 5b 30 2c 20 30 5d 20 3a oid 0 ? [0, 0] : 000074f0: 20 5f 6f 70 74 69 6f 6e 73 24 6f 66 66 73 65 74 _options$offset 00007500: 3b 5c 6e 20 20 76 61 72 20 64 61 74 61 20 3d 20 ;\n var data = 00007510: 70 6c 61 63 65 6d 65 6e 74 73 2e 72 65 64 75 63 placements.reduc 00007520: 65 28 66 75 6e 63 74 69 6f 6e 20 28 61 63 63 2c e(function (acc, 00007530: 20 70 6c 61 63 65 6d 65 6e 74 29 20 7b 5c 6e 20 placement) {\n 00007540: 20 20 20 61 63 63 5b 70 6c 61 63 65 6d 65 6e 74 acc[placement 00007550: 5d 20 3d 20 64 69 73 74 61 6e 63 65 41 6e 64 53 ] = distanceAndS 00007560: 6b 69 64 64 69 6e 67 54 6f 58 59 28 70 6c 61 63 kiddingToXY(plac 00007570: 65 6d 65 6e 74 2c 20 73 74 61 74 65 2e 72 65 63 ement, state.rec 00007580: 74 73 2c 20 6f 66 66 73 65 74 29 3b 5c 6e 20 20 ts, offset);\n 00007590: 20 20 72 65 74 75 72 6e 20 61 63 63 3b 5c 6e 20 return acc;\n 000075a0: 20 7d 2c 20 7b 7d 29 3b 5c 6e 20 20 76 61 72 20 }, {});\n var 000075b0: 5f 64 61 74 61 24 73 74 61 74 65 24 70 6c 61 63 _data$state$plac 000075c0: 65 6d 65 6e 74 20 3d 20 64 61 74 61 5b 73 74 61 ement = data[sta 000075d0: 74 65 2e 70 6c 61 63 65 6d 65 6e 74 5d 2c 5c 6e te.placement],\n 000075e0: 20 20 20 20 20 20 78 20 3d 20 5f 64 61 74 61 24 x = _data$ 000075f0: 73 74 61 74 65 24 70 6c 61 63 65 6d 65 6e 74 2e state$placement. 00007600: 78 2c 5c 6e 20 20 20 20 20 20 79 20 3d 20 5f 64 x,\n y = _d 00007610: 61 74 61 24 73 74 61 74 65 24 70 6c 61 63 65 6d ata$state$placem 00007620: 65 6e 74 2e 79 3b 5c 6e 5c 6e 20 20 69 66 20 28 ent.y;\n\n if ( 00007630: 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 72 73 44 state.modifiersD 00007640: 61 74 61 2e 70 6f 70 70 65 72 4f 66 66 73 65 74 ata.popperOffset 00007650: 73 20 21 3d 20 6e 75 6c 6c 29 20 7b 5c 6e 20 20 s != null) {\n 00007660: 20 20 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 72 state.modifier 00007670: 73 44 61 74 61 2e 70 6f 70 70 65 72 4f 66 66 73 sData.popperOffs 00007680: 65 74 73 2e 78 20 2b 3d 20 78 3b 5c 6e 20 20 20 ets.x += x;\n 00007690: 20 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 72 73 state.modifiers 000076a0: 44 61 74 61 2e 70 6f 70 70 65 72 4f 66 66 73 65 Data.popperOffse 000076b0: 74 73 2e 79 20 2b 3d 20 79 3b 5c 6e 20 20 7d 5c ts.y += y;\n }\ 000076c0: 6e 5c 6e 20 20 73 74 61 74 65 2e 6d 6f 64 69 66 n\n state.modif 000076d0: 69 65 72 73 44 61 74 61 5b 6e 61 6d 65 5d 20 3d iersData[name] = 000076e0: 20 64 61 74 61 3b 5c 6e 7d 20 2f 2f 20 65 73 6c data;\n} // esl 000076f0: 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 78 74 int-disable-next 00007700: 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f 2d -line import/no- 00007710: 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 5c 6e unused-modules\n 00007720: 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 \n\nexport defau 00007730: 6c 74 20 7b 5c 6e 20 20 6e 61 6d 65 3a 20 27 6f lt {\n name: 'o 00007740: 66 66 73 65 74 27 2c 5c 6e 20 20 65 6e 61 62 6c ffset',\n enabl 00007750: 65 64 3a 20 74 72 75 65 2c 5c 6e 20 20 70 68 61 ed: true,\n pha 00007760: 73 65 3a 20 27 6d 61 69 6e 27 2c 5c 6e 20 20 72 se: 'main',\n r 00007770: 65 71 75 69 72 65 73 3a 20 5b 27 70 6f 70 70 65 equires: ['poppe 00007780: 72 4f 66 66 73 65 74 73 27 5d 2c 5c 6e 20 20 66 rOffsets'],\n f 00007790: 6e 3a 20 6f 66 66 73 65 74 5c 6e 7d 3b 22 2c 22 n: offset\n};"," 000077a0: 69 6d 70 6f 72 74 20 63 6f 6d 70 75 74 65 4f 66 import computeOf 000077b0: 66 73 65 74 73 20 66 72 6f 6d 20 5c 22 2e 2e 2f fsets from \"../ 000077c0: 75 74 69 6c 73 2f 63 6f 6d 70 75 74 65 4f 66 66 utils/computeOff 000077d0: 73 65 74 73 2e 6a 73 5c 22 3b 5c 6e 5c 6e 66 75 sets.js\";\n\nfu 000077e0: 6e 63 74 69 6f 6e 20 70 6f 70 70 65 72 4f 66 66 nction popperOff 000077f0: 73 65 74 73 28 5f 72 65 66 29 20 7b 5c 6e 20 20 sets(_ref) {\n 00007800: 76 61 72 20 73 74 61 74 65 20 3d 20 5f 72 65 66 var state = _ref 00007810: 2e 73 74 61 74 65 2c 5c 6e 20 20 20 20 20 20 6e .state,\n n 00007820: 61 6d 65 20 3d 20 5f 72 65 66 2e 6e 61 6d 65 3b ame = _ref.name; 00007830: 5c 6e 20 20 2f 2f 20 4f 66 66 73 65 74 73 20 61 \n // Offsets a 00007840: 72 65 20 74 68 65 20 61 63 74 75 61 6c 20 70 6f re the actual po 00007850: 73 69 74 69 6f 6e 20 74 68 65 20 70 6f 70 70 65 sition the poppe 00007860: 72 20 6e 65 65 64 73 20 74 6f 20 68 61 76 65 20 r needs to have 00007870: 74 6f 20 62 65 5c 6e 20 20 2f 2f 20 70 72 6f 70 to be\n // prop 00007880: 65 72 6c 79 20 70 6f 73 69 74 69 6f 6e 65 64 20 erly positioned 00007890: 6e 65 61 72 20 69 74 73 20 72 65 66 65 72 65 6e near its referen 000078a0: 63 65 20 65 6c 65 6d 65 6e 74 5c 6e 20 20 2f 2f ce element\n // 000078b0: 20 54 68 69 73 20 69 73 20 74 68 65 20 6d 6f 73 This is the mos 000078c0: 74 20 62 61 73 69 63 20 70 6c 61 63 65 6d 65 6e t basic placemen 000078d0: 74 2c 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 61 t, and will be a 000078e0: 64 6a 75 73 74 65 64 20 62 79 5c 6e 20 20 2f 2f djusted by\n // 000078f0: 20 74 68 65 20 6d 6f 64 69 66 69 65 72 73 20 69 the modifiers i 00007900: 6e 20 74 68 65 20 6e 65 78 74 20 73 74 65 70 5c n the next step\ 00007910: 6e 20 20 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 n state.modifie 00007920: 72 73 44 61 74 61 5b 6e 61 6d 65 5d 20 3d 20 63 rsData[name] = c 00007930: 6f 6d 70 75 74 65 4f 66 66 73 65 74 73 28 7b 5c omputeOffsets({\ 00007940: 6e 20 20 20 20 72 65 66 65 72 65 6e 63 65 3a 20 n reference: 00007950: 73 74 61 74 65 2e 72 65 63 74 73 2e 72 65 66 65 state.rects.refe 00007960: 72 65 6e 63 65 2c 5c 6e 20 20 20 20 65 6c 65 6d rence,\n elem 00007970: 65 6e 74 3a 20 73 74 61 74 65 2e 72 65 63 74 73 ent: state.rects 00007980: 2e 70 6f 70 70 65 72 2c 5c 6e 20 20 20 20 73 74 .popper,\n st 00007990: 72 61 74 65 67 79 3a 20 27 61 62 73 6f 6c 75 74 rategy: 'absolut 000079a0: 65 27 2c 5c 6e 20 20 20 20 70 6c 61 63 65 6d 65 e',\n placeme 000079b0: 6e 74 3a 20 73 74 61 74 65 2e 70 6c 61 63 65 6d nt: state.placem 000079c0: 65 6e 74 5c 6e 20 20 7d 29 3b 5c 6e 7d 20 2f 2f ent\n });\n} // 000079d0: 20 65 73 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d eslint-disable- 000079e0: 6e 65 78 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 next-line import 000079f0: 2f 6e 6f 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c /no-unused-modul 00007a00: 65 73 5c 6e 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 es\n\n\nexport d 00007a10: 65 66 61 75 6c 74 20 7b 5c 6e 20 20 6e 61 6d 65 efault {\n name 00007a20: 3a 20 27 70 6f 70 70 65 72 4f 66 66 73 65 74 73 : 'popperOffsets 00007a30: 27 2c 5c 6e 20 20 65 6e 61 62 6c 65 64 3a 20 74 ',\n enabled: t 00007a40: 72 75 65 2c 5c 6e 20 20 70 68 61 73 65 3a 20 27 rue,\n phase: ' 00007a50: 72 65 61 64 27 2c 5c 6e 20 20 66 6e 3a 20 70 6f read',\n fn: po 00007a60: 70 70 65 72 4f 66 66 73 65 74 73 2c 5c 6e 20 20 pperOffsets,\n 00007a70: 64 61 74 61 3a 20 7b 7d 5c 6e 7d 3b 22 2c 22 69 data: {}\n};","i 00007a80: 6d 70 6f 72 74 20 7b 20 74 6f 70 2c 20 6c 65 66 mport { top, lef 00007a90: 74 2c 20 72 69 67 68 74 2c 20 62 6f 74 74 6f 6d t, right, bottom 00007aa0: 2c 20 73 74 61 72 74 20 7d 20 66 72 6f 6d 20 5c , start } from \ 00007ab0: 22 2e 2e 2f 65 6e 75 6d 73 2e 6a 73 5c 22 3b 5c "../enums.js\";\ 00007ac0: 6e 69 6d 70 6f 72 74 20 67 65 74 42 61 73 65 50 nimport getBaseP 00007ad0: 6c 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 lacement from \" 00007ae0: 2e 2e 2f 75 74 69 6c 73 2f 67 65 74 42 61 73 65 ../utils/getBase 00007af0: 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 5c 22 3b 5c Placement.js\";\ 00007b00: 6e 69 6d 70 6f 72 74 20 67 65 74 4d 61 69 6e 41 nimport getMainA 00007b10: 78 69 73 46 72 6f 6d 50 6c 61 63 65 6d 65 6e 74 xisFromPlacement 00007b20: 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 6c 73 from \"../utils 00007b30: 2f 67 65 74 4d 61 69 6e 41 78 69 73 46 72 6f 6d /getMainAxisFrom 00007b40: 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 5c 22 3b 5c Placement.js\";\ 00007b50: 6e 69 6d 70 6f 72 74 20 67 65 74 41 6c 74 41 78 nimport getAltAx 00007b60: 69 73 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 is from \"../uti 00007b70: 6c 73 2f 67 65 74 41 6c 74 41 78 69 73 2e 6a 73 ls/getAltAxis.js 00007b80: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 77 69 \";\nimport { wi 00007b90: 74 68 69 6e 2c 20 77 69 74 68 69 6e 4d 61 78 43 thin, withinMaxC 00007ba0: 6c 61 6d 70 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e lamp } from \".. 00007bb0: 2f 75 74 69 6c 73 2f 77 69 74 68 69 6e 2e 6a 73 /utils/within.js 00007bc0: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 4c \";\nimport getL 00007bd0: 61 79 6f 75 74 52 65 63 74 20 66 72 6f 6d 20 5c ayoutRect from \ 00007be0: 22 2e 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 67 65 "../dom-utils/ge 00007bf0: 74 4c 61 79 6f 75 74 52 65 63 74 2e 6a 73 5c 22 tLayoutRect.js\" 00007c00: 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 4f 66 66 ;\nimport getOff 00007c10: 73 65 74 50 61 72 65 6e 74 20 66 72 6f 6d 20 5c setParent from \ 00007c20: 22 2e 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 67 65 "../dom-utils/ge 00007c30: 74 4f 66 66 73 65 74 50 61 72 65 6e 74 2e 6a 73 tOffsetParent.js 00007c40: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 64 65 74 65 \";\nimport dete 00007c50: 63 74 4f 76 65 72 66 6c 6f 77 20 66 72 6f 6d 20 ctOverflow from 00007c60: 5c 22 2e 2e 2f 75 74 69 6c 73 2f 64 65 74 65 63 \"../utils/detec 00007c70: 74 4f 76 65 72 66 6c 6f 77 2e 6a 73 5c 22 3b 5c tOverflow.js\";\ 00007c80: 6e 69 6d 70 6f 72 74 20 67 65 74 56 61 72 69 61 nimport getVaria 00007c90: 74 69 6f 6e 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 tion from \"../u 00007ca0: 74 69 6c 73 2f 67 65 74 56 61 72 69 61 74 69 6f tils/getVariatio 00007cb0: 6e 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 n.js\";\nimport 00007cc0: 67 65 74 46 72 65 73 68 53 69 64 65 4f 62 6a 65 getFreshSideObje 00007cd0: 63 74 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 ct from \"../uti 00007ce0: 6c 73 2f 67 65 74 46 72 65 73 68 53 69 64 65 4f ls/getFreshSideO 00007cf0: 62 6a 65 63 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 bject.js\";\nimp 00007d00: 6f 72 74 20 7b 20 6d 69 6e 20 61 73 20 6d 61 74 ort { min as mat 00007d10: 68 4d 69 6e 2c 20 6d 61 78 20 61 73 20 6d 61 74 hMin, max as mat 00007d20: 68 4d 61 78 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e hMax } from \".. 00007d30: 2f 75 74 69 6c 73 2f 6d 61 74 68 2e 6a 73 5c 22 /utils/math.js\" 00007d40: 3b 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 70 72 ;\n\nfunction pr 00007d50: 65 76 65 6e 74 4f 76 65 72 66 6c 6f 77 28 5f 72 eventOverflow(_r 00007d60: 65 66 29 20 7b 5c 6e 20 20 76 61 72 20 73 74 61 ef) {\n var sta 00007d70: 74 65 20 3d 20 5f 72 65 66 2e 73 74 61 74 65 2c te = _ref.state, 00007d80: 5c 6e 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 20 \n options 00007d90: 3d 20 5f 72 65 66 2e 6f 70 74 69 6f 6e 73 2c 5c = _ref.options,\ 00007da0: 6e 20 20 20 20 20 20 6e 61 6d 65 20 3d 20 5f 72 n name = _r 00007db0: 65 66 2e 6e 61 6d 65 3b 5c 6e 20 20 76 61 72 20 ef.name;\n var 00007dc0: 5f 6f 70 74 69 6f 6e 73 24 6d 61 69 6e 41 78 69 _options$mainAxi 00007dd0: 73 20 3d 20 6f 70 74 69 6f 6e 73 2e 6d 61 69 6e s = options.main 00007de0: 41 78 69 73 2c 5c 6e 20 20 20 20 20 20 63 68 65 Axis,\n che 00007df0: 63 6b 4d 61 69 6e 41 78 69 73 20 3d 20 5f 6f 70 ckMainAxis = _op 00007e00: 74 69 6f 6e 73 24 6d 61 69 6e 41 78 69 73 20 3d tions$mainAxis = 00007e10: 3d 3d 20 76 6f 69 64 20 30 20 3f 20 74 72 75 65 == void 0 ? true 00007e20: 20 3a 20 5f 6f 70 74 69 6f 6e 73 24 6d 61 69 6e : _options$main 00007e30: 41 78 69 73 2c 5c 6e 20 20 20 20 20 20 5f 6f 70 Axis,\n _op 00007e40: 74 69 6f 6e 73 24 61 6c 74 41 78 69 73 20 3d 20 tions$altAxis = 00007e50: 6f 70 74 69 6f 6e 73 2e 61 6c 74 41 78 69 73 2c options.altAxis, 00007e60: 5c 6e 20 20 20 20 20 20 63 68 65 63 6b 41 6c 74 \n checkAlt 00007e70: 41 78 69 73 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 Axis = _options$ 00007e80: 61 6c 74 41 78 69 73 20 3d 3d 3d 20 76 6f 69 64 altAxis === void 00007e90: 20 30 20 3f 20 66 61 6c 73 65 20 3a 20 5f 6f 70 0 ? false : _op 00007ea0: 74 69 6f 6e 73 24 61 6c 74 41 78 69 73 2c 5c 6e tions$altAxis,\n 00007eb0: 20 20 20 20 20 20 62 6f 75 6e 64 61 72 79 20 3d boundary = 00007ec0: 20 6f 70 74 69 6f 6e 73 2e 62 6f 75 6e 64 61 72 options.boundar 00007ed0: 79 2c 5c 6e 20 20 20 20 20 20 72 6f 6f 74 42 6f y,\n rootBo 00007ee0: 75 6e 64 61 72 79 20 3d 20 6f 70 74 69 6f 6e 73 undary = options 00007ef0: 2e 72 6f 6f 74 42 6f 75 6e 64 61 72 79 2c 5c 6e .rootBoundary,\n 00007f00: 20 20 20 20 20 20 61 6c 74 42 6f 75 6e 64 61 72 altBoundar 00007f10: 79 20 3d 20 6f 70 74 69 6f 6e 73 2e 61 6c 74 42 y = options.altB 00007f20: 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 20 20 20 oundary,\n 00007f30: 70 61 64 64 69 6e 67 20 3d 20 6f 70 74 69 6f 6e padding = option 00007f40: 73 2e 70 61 64 64 69 6e 67 2c 5c 6e 20 20 20 20 s.padding,\n 00007f50: 20 20 5f 6f 70 74 69 6f 6e 73 24 74 65 74 68 65 _options$tethe 00007f60: 72 20 3d 20 6f 70 74 69 6f 6e 73 2e 74 65 74 68 r = options.teth 00007f70: 65 72 2c 5c 6e 20 20 20 20 20 20 74 65 74 68 65 er,\n tethe 00007f80: 72 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 74 65 74 r = _options$tet 00007f90: 68 65 72 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f her === void 0 ? 00007fa0: 20 74 72 75 65 20 3a 20 5f 6f 70 74 69 6f 6e 73 true : _options 00007fb0: 24 74 65 74 68 65 72 2c 5c 6e 20 20 20 20 20 20 $tether,\n 00007fc0: 5f 6f 70 74 69 6f 6e 73 24 74 65 74 68 65 72 4f _options$tetherO 00007fd0: 66 66 73 65 74 20 3d 20 6f 70 74 69 6f 6e 73 2e ffset = options. 00007fe0: 74 65 74 68 65 72 4f 66 66 73 65 74 2c 5c 6e 20 tetherOffset,\n 00007ff0: 20 20 20 20 20 74 65 74 68 65 72 4f 66 66 73 65 tetherOffse 00008000: 74 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 74 65 74 t = _options$tet 00008010: 68 65 72 4f 66 66 73 65 74 20 3d 3d 3d 20 76 6f herOffset === vo 00008020: 69 64 20 30 20 3f 20 30 20 3a 20 5f 6f 70 74 69 id 0 ? 0 : _opti 00008030: 6f 6e 73 24 74 65 74 68 65 72 4f 66 66 73 65 74 ons$tetherOffset 00008040: 3b 5c 6e 20 20 76 61 72 20 6f 76 65 72 66 6c 6f ;\n var overflo 00008050: 77 20 3d 20 64 65 74 65 63 74 4f 76 65 72 66 6c w = detectOverfl 00008060: 6f 77 28 73 74 61 74 65 2c 20 7b 5c 6e 20 20 20 ow(state, {\n 00008070: 20 62 6f 75 6e 64 61 72 79 3a 20 62 6f 75 6e 64 boundary: bound 00008080: 61 72 79 2c 5c 6e 20 20 20 20 72 6f 6f 74 42 6f ary,\n rootBo 00008090: 75 6e 64 61 72 79 3a 20 72 6f 6f 74 42 6f 75 6e undary: rootBoun 000080a0: 64 61 72 79 2c 5c 6e 20 20 20 20 70 61 64 64 69 dary,\n paddi 000080b0: 6e 67 3a 20 70 61 64 64 69 6e 67 2c 5c 6e 20 20 ng: padding,\n 000080c0: 20 20 61 6c 74 42 6f 75 6e 64 61 72 79 3a 20 61 altBoundary: a 000080d0: 6c 74 42 6f 75 6e 64 61 72 79 5c 6e 20 20 7d 29 ltBoundary\n }) 000080e0: 3b 5c 6e 20 20 76 61 72 20 62 61 73 65 50 6c 61 ;\n var basePla 000080f0: 63 65 6d 65 6e 74 20 3d 20 67 65 74 42 61 73 65 cement = getBase 00008100: 50 6c 61 63 65 6d 65 6e 74 28 73 74 61 74 65 2e Placement(state. 00008110: 70 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 placement);\n v 00008120: 61 72 20 76 61 72 69 61 74 69 6f 6e 20 3d 20 67 ar variation = g 00008130: 65 74 56 61 72 69 61 74 69 6f 6e 28 73 74 61 74 etVariation(stat 00008140: 65 2e 70 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 20 e.placement);\n 00008150: 20 76 61 72 20 69 73 42 61 73 65 50 6c 61 63 65 var isBasePlace 00008160: 6d 65 6e 74 20 3d 20 21 76 61 72 69 61 74 69 6f ment = !variatio 00008170: 6e 3b 5c 6e 20 20 76 61 72 20 6d 61 69 6e 41 78 n;\n var mainAx 00008180: 69 73 20 3d 20 67 65 74 4d 61 69 6e 41 78 69 73 is = getMainAxis 00008190: 46 72 6f 6d 50 6c 61 63 65 6d 65 6e 74 28 62 61 FromPlacement(ba 000081a0: 73 65 50 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 20 sePlacement);\n 000081b0: 20 76 61 72 20 61 6c 74 41 78 69 73 20 3d 20 67 var altAxis = g 000081c0: 65 74 41 6c 74 41 78 69 73 28 6d 61 69 6e 41 78 etAltAxis(mainAx 000081d0: 69 73 29 3b 5c 6e 20 20 76 61 72 20 70 6f 70 70 is);\n var popp 000081e0: 65 72 4f 66 66 73 65 74 73 20 3d 20 73 74 61 74 erOffsets = stat 000081f0: 65 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 2e e.modifiersData. 00008200: 70 6f 70 70 65 72 4f 66 66 73 65 74 73 3b 5c 6e popperOffsets;\n 00008210: 20 20 76 61 72 20 72 65 66 65 72 65 6e 63 65 52 var referenceR 00008220: 65 63 74 20 3d 20 73 74 61 74 65 2e 72 65 63 74 ect = state.rect 00008230: 73 2e 72 65 66 65 72 65 6e 63 65 3b 5c 6e 20 20 s.reference;\n 00008240: 76 61 72 20 70 6f 70 70 65 72 52 65 63 74 20 3d var popperRect = 00008250: 20 73 74 61 74 65 2e 72 65 63 74 73 2e 70 6f 70 state.rects.pop 00008260: 70 65 72 3b 5c 6e 20 20 76 61 72 20 74 65 74 68 per;\n var teth 00008270: 65 72 4f 66 66 73 65 74 56 61 6c 75 65 20 3d 20 erOffsetValue = 00008280: 74 79 70 65 6f 66 20 74 65 74 68 65 72 4f 66 66 typeof tetherOff 00008290: 73 65 74 20 3d 3d 3d 20 27 66 75 6e 63 74 69 6f set === 'functio 000082a0: 6e 27 20 3f 20 74 65 74 68 65 72 4f 66 66 73 65 n' ? tetherOffse 000082b0: 74 28 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 t(Object.assign( 000082c0: 7b 7d 2c 20 73 74 61 74 65 2e 72 65 63 74 73 2c {}, state.rects, 000082d0: 20 7b 5c 6e 20 20 20 20 70 6c 61 63 65 6d 65 6e {\n placemen 000082e0: 74 3a 20 73 74 61 74 65 2e 70 6c 61 63 65 6d 65 t: state.placeme 000082f0: 6e 74 5c 6e 20 20 7d 29 29 20 3a 20 74 65 74 68 nt\n })) : teth 00008300: 65 72 4f 66 66 73 65 74 3b 5c 6e 20 20 76 61 72 erOffset;\n var 00008310: 20 6e 6f 72 6d 61 6c 69 7a 65 64 54 65 74 68 65 normalizedTethe 00008320: 72 4f 66 66 73 65 74 56 61 6c 75 65 20 3d 20 74 rOffsetValue = t 00008330: 79 70 65 6f 66 20 74 65 74 68 65 72 4f 66 66 73 ypeof tetherOffs 00008340: 65 74 56 61 6c 75 65 20 3d 3d 3d 20 27 6e 75 6d etValue === 'num 00008350: 62 65 72 27 20 3f 20 7b 5c 6e 20 20 20 20 6d 61 ber' ? {\n ma 00008360: 69 6e 41 78 69 73 3a 20 74 65 74 68 65 72 4f 66 inAxis: tetherOf 00008370: 66 73 65 74 56 61 6c 75 65 2c 5c 6e 20 20 20 20 fsetValue,\n 00008380: 61 6c 74 41 78 69 73 3a 20 74 65 74 68 65 72 4f altAxis: tetherO 00008390: 66 66 73 65 74 56 61 6c 75 65 5c 6e 20 20 7d 20 ffsetValue\n } 000083a0: 3a 20 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 : Object.assign( 000083b0: 7b 5c 6e 20 20 20 20 6d 61 69 6e 41 78 69 73 3a {\n mainAxis: 000083c0: 20 30 2c 5c 6e 20 20 20 20 61 6c 74 41 78 69 73 0,\n altAxis 000083d0: 3a 20 30 5c 6e 20 20 7d 2c 20 74 65 74 68 65 72 : 0\n }, tether 000083e0: 4f 66 66 73 65 74 56 61 6c 75 65 29 3b 5c 6e 20 OffsetValue);\n 000083f0: 20 76 61 72 20 6f 66 66 73 65 74 4d 6f 64 69 66 var offsetModif 00008400: 69 65 72 53 74 61 74 65 20 3d 20 73 74 61 74 65 ierState = state 00008410: 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 2e 6f .modifiersData.o 00008420: 66 66 73 65 74 20 3f 20 73 74 61 74 65 2e 6d 6f ffset ? state.mo 00008430: 64 69 66 69 65 72 73 44 61 74 61 2e 6f 66 66 73 difiersData.offs 00008440: 65 74 5b 73 74 61 74 65 2e 70 6c 61 63 65 6d 65 et[state.placeme 00008450: 6e 74 5d 20 3a 20 6e 75 6c 6c 3b 5c 6e 20 20 76 nt] : null;\n v 00008460: 61 72 20 64 61 74 61 20 3d 20 7b 5c 6e 20 20 20 ar data = {\n 00008470: 20 78 3a 20 30 2c 5c 6e 20 20 20 20 79 3a 20 30 x: 0,\n y: 0 00008480: 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 69 66 20 28 \n };\n\n if ( 00008490: 21 70 6f 70 70 65 72 4f 66 66 73 65 74 73 29 20 !popperOffsets) 000084a0: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 3b 5c 6e {\n return;\n 000084b0: 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 63 68 65 }\n\n if (che 000084c0: 63 6b 4d 61 69 6e 41 78 69 73 29 20 7b 5c 6e 20 ckMainAxis) {\n 000084d0: 20 20 20 76 61 72 20 5f 6f 66 66 73 65 74 4d 6f var _offsetMo 000084e0: 64 69 66 69 65 72 53 74 61 74 65 24 3b 5c 6e 5c difierState$;\n\ 000084f0: 6e 20 20 20 20 76 61 72 20 6d 61 69 6e 53 69 64 n var mainSid 00008500: 65 20 3d 20 6d 61 69 6e 41 78 69 73 20 3d 3d 3d e = mainAxis === 00008510: 20 27 79 27 20 3f 20 74 6f 70 20 3a 20 6c 65 66 'y' ? top : lef 00008520: 74 3b 5c 6e 20 20 20 20 76 61 72 20 61 6c 74 53 t;\n var altS 00008530: 69 64 65 20 3d 20 6d 61 69 6e 41 78 69 73 20 3d ide = mainAxis = 00008540: 3d 3d 20 27 79 27 20 3f 20 62 6f 74 74 6f 6d 20 == 'y' ? bottom 00008550: 3a 20 72 69 67 68 74 3b 5c 6e 20 20 20 20 76 61 : right;\n va 00008560: 72 20 6c 65 6e 20 3d 20 6d 61 69 6e 41 78 69 73 r len = mainAxis 00008570: 20 3d 3d 3d 20 27 79 27 20 3f 20 27 68 65 69 67 === 'y' ? 'heig 00008580: 68 74 27 20 3a 20 27 77 69 64 74 68 27 3b 5c 6e ht' : 'width';\n 00008590: 20 20 20 20 76 61 72 20 6f 66 66 73 65 74 20 3d var offset = 000085a0: 20 70 6f 70 70 65 72 4f 66 66 73 65 74 73 5b 6d popperOffsets[m 000085b0: 61 69 6e 41 78 69 73 5d 3b 5c 6e 20 20 20 20 76 ainAxis];\n v 000085c0: 61 72 20 6d 69 6e 20 3d 20 6f 66 66 73 65 74 20 ar min = offset 000085d0: 2b 20 6f 76 65 72 66 6c 6f 77 5b 6d 61 69 6e 53 + overflow[mainS 000085e0: 69 64 65 5d 3b 5c 6e 20 20 20 20 76 61 72 20 6d ide];\n var m 000085f0: 61 78 20 3d 20 6f 66 66 73 65 74 20 2d 20 6f 76 ax = offset - ov 00008600: 65 72 66 6c 6f 77 5b 61 6c 74 53 69 64 65 5d 3b erflow[altSide]; 00008610: 5c 6e 20 20 20 20 76 61 72 20 61 64 64 69 74 69 \n var additi 00008620: 76 65 20 3d 20 74 65 74 68 65 72 20 3f 20 2d 70 ve = tether ? -p 00008630: 6f 70 70 65 72 52 65 63 74 5b 6c 65 6e 5d 20 2f opperRect[len] / 00008640: 20 32 20 3a 20 30 3b 5c 6e 20 20 20 20 76 61 72 2 : 0;\n var 00008650: 20 6d 69 6e 4c 65 6e 20 3d 20 76 61 72 69 61 74 minLen = variat 00008660: 69 6f 6e 20 3d 3d 3d 20 73 74 61 72 74 20 3f 20 ion === start ? 00008670: 72 65 66 65 72 65 6e 63 65 52 65 63 74 5b 6c 65 referenceRect[le 00008680: 6e 5d 20 3a 20 70 6f 70 70 65 72 52 65 63 74 5b n] : popperRect[ 00008690: 6c 65 6e 5d 3b 5c 6e 20 20 20 20 76 61 72 20 6d len];\n var m 000086a0: 61 78 4c 65 6e 20 3d 20 76 61 72 69 61 74 69 6f axLen = variatio 000086b0: 6e 20 3d 3d 3d 20 73 74 61 72 74 20 3f 20 2d 70 n === start ? -p 000086c0: 6f 70 70 65 72 52 65 63 74 5b 6c 65 6e 5d 20 3a opperRect[len] : 000086d0: 20 2d 72 65 66 65 72 65 6e 63 65 52 65 63 74 5b -referenceRect[ 000086e0: 6c 65 6e 5d 3b 20 2f 2f 20 57 65 20 6e 65 65 64 len]; // We need 000086f0: 20 74 6f 20 69 6e 63 6c 75 64 65 20 74 68 65 20 to include the 00008700: 61 72 72 6f 77 20 69 6e 20 74 68 65 20 63 61 6c arrow in the cal 00008710: 63 75 6c 61 74 69 6f 6e 20 73 6f 20 74 68 65 20 culation so the 00008720: 61 72 72 6f 77 20 64 6f 65 73 6e 27 74 20 67 6f arrow doesn't go 00008730: 5c 6e 20 20 20 20 2f 2f 20 6f 75 74 73 69 64 65 \n // outside 00008740: 20 74 68 65 20 72 65 66 65 72 65 6e 63 65 20 62 the reference b 00008750: 6f 75 6e 64 73 5c 6e 5c 6e 20 20 20 20 76 61 72 ounds\n\n var 00008760: 20 61 72 72 6f 77 45 6c 65 6d 65 6e 74 20 3d 20 arrowElement = 00008770: 73 74 61 74 65 2e 65 6c 65 6d 65 6e 74 73 2e 61 state.elements.a 00008780: 72 72 6f 77 3b 5c 6e 20 20 20 20 76 61 72 20 61 rrow;\n var a 00008790: 72 72 6f 77 52 65 63 74 20 3d 20 74 65 74 68 65 rrowRect = tethe 000087a0: 72 20 26 26 20 61 72 72 6f 77 45 6c 65 6d 65 6e r && arrowElemen 000087b0: 74 20 3f 20 67 65 74 4c 61 79 6f 75 74 52 65 63 t ? getLayoutRec 000087c0: 74 28 61 72 72 6f 77 45 6c 65 6d 65 6e 74 29 20 t(arrowElement) 000087d0: 3a 20 7b 5c 6e 20 20 20 20 20 20 77 69 64 74 68 : {\n width 000087e0: 3a 20 30 2c 5c 6e 20 20 20 20 20 20 68 65 69 67 : 0,\n heig 000087f0: 68 74 3a 20 30 5c 6e 20 20 20 20 7d 3b 5c 6e 20 ht: 0\n };\n 00008800: 20 20 20 76 61 72 20 61 72 72 6f 77 50 61 64 64 var arrowPadd 00008810: 69 6e 67 4f 62 6a 65 63 74 20 3d 20 73 74 61 74 ingObject = stat 00008820: 65 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 5b e.modifiersData[ 00008830: 27 61 72 72 6f 77 23 70 65 72 73 69 73 74 65 6e 'arrow#persisten 00008840: 74 27 5d 20 3f 20 73 74 61 74 65 2e 6d 6f 64 69 t'] ? state.modi 00008850: 66 69 65 72 73 44 61 74 61 5b 27 61 72 72 6f 77 fiersData['arrow 00008860: 23 70 65 72 73 69 73 74 65 6e 74 27 5d 2e 70 61 #persistent'].pa 00008870: 64 64 69 6e 67 20 3a 20 67 65 74 46 72 65 73 68 dding : getFresh 00008880: 53 69 64 65 4f 62 6a 65 63 74 28 29 3b 5c 6e 20 SideObject();\n 00008890: 20 20 20 76 61 72 20 61 72 72 6f 77 50 61 64 64 var arrowPadd 000088a0: 69 6e 67 4d 69 6e 20 3d 20 61 72 72 6f 77 50 61 ingMin = arrowPa 000088b0: 64 64 69 6e 67 4f 62 6a 65 63 74 5b 6d 61 69 6e ddingObject[main 000088c0: 53 69 64 65 5d 3b 5c 6e 20 20 20 20 76 61 72 20 Side];\n var 000088d0: 61 72 72 6f 77 50 61 64 64 69 6e 67 4d 61 78 20 arrowPaddingMax 000088e0: 3d 20 61 72 72 6f 77 50 61 64 64 69 6e 67 4f 62 = arrowPaddingOb 000088f0: 6a 65 63 74 5b 61 6c 74 53 69 64 65 5d 3b 20 2f ject[altSide]; / 00008900: 2f 20 49 66 20 74 68 65 20 72 65 66 65 72 65 6e / If the referen 00008910: 63 65 20 6c 65 6e 67 74 68 20 69 73 20 73 6d 61 ce length is sma 00008920: 6c 6c 65 72 20 74 68 61 6e 20 74 68 65 20 61 72 ller than the ar 00008930: 72 6f 77 20 6c 65 6e 67 74 68 2c 20 77 65 20 64 row length, we d 00008940: 6f 6e 27 74 20 77 61 6e 74 5c 6e 20 20 20 20 2f on't want\n / 00008950: 2f 20 74 6f 20 69 6e 63 6c 75 64 65 20 69 74 73 / to include its 00008960: 20 66 75 6c 6c 20 73 69 7a 65 20 69 6e 20 74 68 full size in th 00008970: 65 20 63 61 6c 63 75 6c 61 74 69 6f 6e 2e 20 49 e calculation. I 00008980: 66 20 74 68 65 20 72 65 66 65 72 65 6e 63 65 20 f the reference 00008990: 69 73 20 73 6d 61 6c 6c 5c 6e 20 20 20 20 2f 2f is small\n // 000089a0: 20 61 6e 64 20 6e 65 61 72 20 74 68 65 20 65 64 and near the ed 000089b0: 67 65 20 6f 66 20 61 20 62 6f 75 6e 64 61 72 79 ge of a boundary 000089c0: 2c 20 74 68 65 20 70 6f 70 70 65 72 20 63 61 6e , the popper can 000089d0: 20 6f 76 65 72 66 6c 6f 77 20 65 76 65 6e 20 69 overflow even i 000089e0: 66 20 74 68 65 5c 6e 20 20 20 20 2f 2f 20 72 65 f the\n // re 000089f0: 66 65 72 65 6e 63 65 20 69 73 20 6e 6f 74 20 6f ference is not o 00008a00: 76 65 72 66 6c 6f 77 69 6e 67 20 61 73 20 77 65 verflowing as we 00008a10: 6c 6c 20 28 65 2e 67 2e 20 76 69 72 74 75 61 6c ll (e.g. virtual 00008a20: 20 65 6c 65 6d 65 6e 74 73 20 77 69 74 68 20 6e elements with n 00008a30: 6f 5c 6e 20 20 20 20 2f 2f 20 77 69 64 74 68 20 o\n // width 00008a40: 6f 72 20 68 65 69 67 68 74 29 5c 6e 5c 6e 20 20 or height)\n\n 00008a50: 20 20 76 61 72 20 61 72 72 6f 77 4c 65 6e 20 3d var arrowLen = 00008a60: 20 77 69 74 68 69 6e 28 30 2c 20 72 65 66 65 72 within(0, refer 00008a70: 65 6e 63 65 52 65 63 74 5b 6c 65 6e 5d 2c 20 61 enceRect[len], a 00008a80: 72 72 6f 77 52 65 63 74 5b 6c 65 6e 5d 29 3b 5c rrowRect[len]);\ 00008a90: 6e 20 20 20 20 76 61 72 20 6d 69 6e 4f 66 66 73 n var minOffs 00008aa0: 65 74 20 3d 20 69 73 42 61 73 65 50 6c 61 63 65 et = isBasePlace 00008ab0: 6d 65 6e 74 20 3f 20 72 65 66 65 72 65 6e 63 65 ment ? reference 00008ac0: 52 65 63 74 5b 6c 65 6e 5d 20 2f 20 32 20 2d 20 Rect[len] / 2 - 00008ad0: 61 64 64 69 74 69 76 65 20 2d 20 61 72 72 6f 77 additive - arrow 00008ae0: 4c 65 6e 20 2d 20 61 72 72 6f 77 50 61 64 64 69 Len - arrowPaddi 00008af0: 6e 67 4d 69 6e 20 2d 20 6e 6f 72 6d 61 6c 69 7a ngMin - normaliz 00008b00: 65 64 54 65 74 68 65 72 4f 66 66 73 65 74 56 61 edTetherOffsetVa 00008b10: 6c 75 65 2e 6d 61 69 6e 41 78 69 73 20 3a 20 6d lue.mainAxis : m 00008b20: 69 6e 4c 65 6e 20 2d 20 61 72 72 6f 77 4c 65 6e inLen - arrowLen 00008b30: 20 2d 20 61 72 72 6f 77 50 61 64 64 69 6e 67 4d - arrowPaddingM 00008b40: 69 6e 20 2d 20 6e 6f 72 6d 61 6c 69 7a 65 64 54 in - normalizedT 00008b50: 65 74 68 65 72 4f 66 66 73 65 74 56 61 6c 75 65 etherOffsetValue 00008b60: 2e 6d 61 69 6e 41 78 69 73 3b 5c 6e 20 20 20 20 .mainAxis;\n 00008b70: 76 61 72 20 6d 61 78 4f 66 66 73 65 74 20 3d 20 var maxOffset = 00008b80: 69 73 42 61 73 65 50 6c 61 63 65 6d 65 6e 74 20 isBasePlacement 00008b90: 3f 20 2d 72 65 66 65 72 65 6e 63 65 52 65 63 74 ? -referenceRect 00008ba0: 5b 6c 65 6e 5d 20 2f 20 32 20 2b 20 61 64 64 69 [len] / 2 + addi 00008bb0: 74 69 76 65 20 2b 20 61 72 72 6f 77 4c 65 6e 20 tive + arrowLen 00008bc0: 2b 20 61 72 72 6f 77 50 61 64 64 69 6e 67 4d 61 + arrowPaddingMa 00008bd0: 78 20 2b 20 6e 6f 72 6d 61 6c 69 7a 65 64 54 65 x + normalizedTe 00008be0: 74 68 65 72 4f 66 66 73 65 74 56 61 6c 75 65 2e therOffsetValue. 00008bf0: 6d 61 69 6e 41 78 69 73 20 3a 20 6d 61 78 4c 65 mainAxis : maxLe 00008c00: 6e 20 2b 20 61 72 72 6f 77 4c 65 6e 20 2b 20 61 n + arrowLen + a 00008c10: 72 72 6f 77 50 61 64 64 69 6e 67 4d 61 78 20 2b rrowPaddingMax + 00008c20: 20 6e 6f 72 6d 61 6c 69 7a 65 64 54 65 74 68 65 normalizedTethe 00008c30: 72 4f 66 66 73 65 74 56 61 6c 75 65 2e 6d 61 69 rOffsetValue.mai 00008c40: 6e 41 78 69 73 3b 5c 6e 20 20 20 20 76 61 72 20 nAxis;\n var 00008c50: 61 72 72 6f 77 4f 66 66 73 65 74 50 61 72 65 6e arrowOffsetParen 00008c60: 74 20 3d 20 73 74 61 74 65 2e 65 6c 65 6d 65 6e t = state.elemen 00008c70: 74 73 2e 61 72 72 6f 77 20 26 26 20 67 65 74 4f ts.arrow && getO 00008c80: 66 66 73 65 74 50 61 72 65 6e 74 28 73 74 61 74 ffsetParent(stat 00008c90: 65 2e 65 6c 65 6d 65 6e 74 73 2e 61 72 72 6f 77 e.elements.arrow 00008ca0: 29 3b 5c 6e 20 20 20 20 76 61 72 20 63 6c 69 65 );\n var clie 00008cb0: 6e 74 4f 66 66 73 65 74 20 3d 20 61 72 72 6f 77 ntOffset = arrow 00008cc0: 4f 66 66 73 65 74 50 61 72 65 6e 74 20 3f 20 6d OffsetParent ? m 00008cd0: 61 69 6e 41 78 69 73 20 3d 3d 3d 20 27 79 27 20 ainAxis === 'y' 00008ce0: 3f 20 61 72 72 6f 77 4f 66 66 73 65 74 50 61 72 ? arrowOffsetPar 00008cf0: 65 6e 74 2e 63 6c 69 65 6e 74 54 6f 70 20 7c 7c ent.clientTop || 00008d00: 20 30 20 3a 20 61 72 72 6f 77 4f 66 66 73 65 74 0 : arrowOffset 00008d10: 50 61 72 65 6e 74 2e 63 6c 69 65 6e 74 4c 65 66 Parent.clientLef 00008d20: 74 20 7c 7c 20 30 20 3a 20 30 3b 5c 6e 20 20 20 t || 0 : 0;\n 00008d30: 20 76 61 72 20 6f 66 66 73 65 74 4d 6f 64 69 66 var offsetModif 00008d40: 69 65 72 56 61 6c 75 65 20 3d 20 28 5f 6f 66 66 ierValue = (_off 00008d50: 73 65 74 4d 6f 64 69 66 69 65 72 53 74 61 74 65 setModifierState 00008d60: 24 20 3d 20 6f 66 66 73 65 74 4d 6f 64 69 66 69 $ = offsetModifi 00008d70: 65 72 53 74 61 74 65 20 3d 3d 20 6e 75 6c 6c 20 erState == null 00008d80: 3f 20 76 6f 69 64 20 30 20 3a 20 6f 66 66 73 65 ? void 0 : offse 00008d90: 74 4d 6f 64 69 66 69 65 72 53 74 61 74 65 5b 6d tModifierState[m 00008da0: 61 69 6e 41 78 69 73 5d 29 20 21 3d 20 6e 75 6c ainAxis]) != nul 00008db0: 6c 20 3f 20 5f 6f 66 66 73 65 74 4d 6f 64 69 66 l ? _offsetModif 00008dc0: 69 65 72 53 74 61 74 65 24 20 3a 20 30 3b 5c 6e ierState$ : 0;\n 00008dd0: 20 20 20 20 76 61 72 20 74 65 74 68 65 72 4d 69 var tetherMi 00008de0: 6e 20 3d 20 6f 66 66 73 65 74 20 2b 20 6d 69 6e n = offset + min 00008df0: 4f 66 66 73 65 74 20 2d 20 6f 66 66 73 65 74 4d Offset - offsetM 00008e00: 6f 64 69 66 69 65 72 56 61 6c 75 65 20 2d 20 63 odifierValue - c 00008e10: 6c 69 65 6e 74 4f 66 66 73 65 74 3b 5c 6e 20 20 lientOffset;\n 00008e20: 20 20 76 61 72 20 74 65 74 68 65 72 4d 61 78 20 var tetherMax 00008e30: 3d 20 6f 66 66 73 65 74 20 2b 20 6d 61 78 4f 66 = offset + maxOf 00008e40: 66 73 65 74 20 2d 20 6f 66 66 73 65 74 4d 6f 64 fset - offsetMod 00008e50: 69 66 69 65 72 56 61 6c 75 65 3b 5c 6e 20 20 20 ifierValue;\n 00008e60: 20 76 61 72 20 70 72 65 76 65 6e 74 65 64 4f 66 var preventedOf 00008e70: 66 73 65 74 20 3d 20 77 69 74 68 69 6e 28 74 65 fset = within(te 00008e80: 74 68 65 72 20 3f 20 6d 61 74 68 4d 69 6e 28 6d ther ? mathMin(m 00008e90: 69 6e 2c 20 74 65 74 68 65 72 4d 69 6e 29 20 3a in, tetherMin) : 00008ea0: 20 6d 69 6e 2c 20 6f 66 66 73 65 74 2c 20 74 65 min, offset, te 00008eb0: 74 68 65 72 20 3f 20 6d 61 74 68 4d 61 78 28 6d ther ? mathMax(m 00008ec0: 61 78 2c 20 74 65 74 68 65 72 4d 61 78 29 20 3a ax, tetherMax) : 00008ed0: 20 6d 61 78 29 3b 5c 6e 20 20 20 20 70 6f 70 70 max);\n popp 00008ee0: 65 72 4f 66 66 73 65 74 73 5b 6d 61 69 6e 41 78 erOffsets[mainAx 00008ef0: 69 73 5d 20 3d 20 70 72 65 76 65 6e 74 65 64 4f is] = preventedO 00008f00: 66 66 73 65 74 3b 5c 6e 20 20 20 20 64 61 74 61 ffset;\n data 00008f10: 5b 6d 61 69 6e 41 78 69 73 5d 20 3d 20 70 72 65 [mainAxis] = pre 00008f20: 76 65 6e 74 65 64 4f 66 66 73 65 74 20 2d 20 6f ventedOffset - o 00008f30: 66 66 73 65 74 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 ffset;\n }\n\n 00008f40: 20 69 66 20 28 63 68 65 63 6b 41 6c 74 41 78 69 if (checkAltAxi 00008f50: 73 29 20 7b 5c 6e 20 20 20 20 76 61 72 20 5f 6f s) {\n var _o 00008f60: 66 66 73 65 74 4d 6f 64 69 66 69 65 72 53 74 61 ffsetModifierSta 00008f70: 74 65 24 32 3b 5c 6e 5c 6e 20 20 20 20 76 61 72 te$2;\n\n var 00008f80: 20 5f 6d 61 69 6e 53 69 64 65 20 3d 20 6d 61 69 _mainSide = mai 00008f90: 6e 41 78 69 73 20 3d 3d 3d 20 27 78 27 20 3f 20 nAxis === 'x' ? 00008fa0: 74 6f 70 20 3a 20 6c 65 66 74 3b 5c 6e 5c 6e 20 top : left;\n\n 00008fb0: 20 20 20 76 61 72 20 5f 61 6c 74 53 69 64 65 20 var _altSide 00008fc0: 3d 20 6d 61 69 6e 41 78 69 73 20 3d 3d 3d 20 27 = mainAxis === ' 00008fd0: 78 27 20 3f 20 62 6f 74 74 6f 6d 20 3a 20 72 69 x' ? bottom : ri 00008fe0: 67 68 74 3b 5c 6e 5c 6e 20 20 20 20 76 61 72 20 ght;\n\n var 00008ff0: 5f 6f 66 66 73 65 74 20 3d 20 70 6f 70 70 65 72 _offset = popper 00009000: 4f 66 66 73 65 74 73 5b 61 6c 74 41 78 69 73 5d Offsets[altAxis] 00009010: 3b 5c 6e 5c 6e 20 20 20 20 76 61 72 20 5f 6c 65 ;\n\n var _le 00009020: 6e 20 3d 20 61 6c 74 41 78 69 73 20 3d 3d 3d 20 n = altAxis === 00009030: 27 79 27 20 3f 20 27 68 65 69 67 68 74 27 20 3a 'y' ? 'height' : 00009040: 20 27 77 69 64 74 68 27 3b 5c 6e 5c 6e 20 20 20 'width';\n\n 00009050: 20 76 61 72 20 5f 6d 69 6e 20 3d 20 5f 6f 66 66 var _min = _off 00009060: 73 65 74 20 2b 20 6f 76 65 72 66 6c 6f 77 5b 5f set + overflow[_ 00009070: 6d 61 69 6e 53 69 64 65 5d 3b 5c 6e 5c 6e 20 20 mainSide];\n\n 00009080: 20 20 76 61 72 20 5f 6d 61 78 20 3d 20 5f 6f 66 var _max = _of 00009090: 66 73 65 74 20 2d 20 6f 76 65 72 66 6c 6f 77 5b fset - overflow[ 000090a0: 5f 61 6c 74 53 69 64 65 5d 3b 5c 6e 5c 6e 20 20 _altSide];\n\n 000090b0: 20 20 76 61 72 20 69 73 4f 72 69 67 69 6e 53 69 var isOriginSi 000090c0: 64 65 20 3d 20 5b 74 6f 70 2c 20 6c 65 66 74 5d de = [top, left] 000090d0: 2e 69 6e 64 65 78 4f 66 28 62 61 73 65 50 6c 61 .indexOf(basePla 000090e0: 63 65 6d 65 6e 74 29 20 21 3d 3d 20 2d 31 3b 5c cement) !== -1;\ 000090f0: 6e 5c 6e 20 20 20 20 76 61 72 20 5f 6f 66 66 73 n\n var _offs 00009100: 65 74 4d 6f 64 69 66 69 65 72 56 61 6c 75 65 20 etModifierValue 00009110: 3d 20 28 5f 6f 66 66 73 65 74 4d 6f 64 69 66 69 = (_offsetModifi 00009120: 65 72 53 74 61 74 65 24 32 20 3d 20 6f 66 66 73 erState$2 = offs 00009130: 65 74 4d 6f 64 69 66 69 65 72 53 74 61 74 65 20 etModifierState 00009140: 3d 3d 20 6e 75 6c 6c 20 3f 20 76 6f 69 64 20 30 == null ? void 0 00009150: 20 3a 20 6f 66 66 73 65 74 4d 6f 64 69 66 69 65 : offsetModifie 00009160: 72 53 74 61 74 65 5b 61 6c 74 41 78 69 73 5d 29 rState[altAxis]) 00009170: 20 21 3d 20 6e 75 6c 6c 20 3f 20 5f 6f 66 66 73 != null ? _offs 00009180: 65 74 4d 6f 64 69 66 69 65 72 53 74 61 74 65 24 etModifierState$ 00009190: 32 20 3a 20 30 3b 5c 6e 5c 6e 20 20 20 20 76 61 2 : 0;\n\n va 000091a0: 72 20 5f 74 65 74 68 65 72 4d 69 6e 20 3d 20 69 r _tetherMin = i 000091b0: 73 4f 72 69 67 69 6e 53 69 64 65 20 3f 20 5f 6d sOriginSide ? _m 000091c0: 69 6e 20 3a 20 5f 6f 66 66 73 65 74 20 2d 20 72 in : _offset - r 000091d0: 65 66 65 72 65 6e 63 65 52 65 63 74 5b 5f 6c 65 eferenceRect[_le 000091e0: 6e 5d 20 2d 20 70 6f 70 70 65 72 52 65 63 74 5b n] - popperRect[ 000091f0: 5f 6c 65 6e 5d 20 2d 20 5f 6f 66 66 73 65 74 4d _len] - _offsetM 00009200: 6f 64 69 66 69 65 72 56 61 6c 75 65 20 2b 20 6e odifierValue + n 00009210: 6f 72 6d 61 6c 69 7a 65 64 54 65 74 68 65 72 4f ormalizedTetherO 00009220: 66 66 73 65 74 56 61 6c 75 65 2e 61 6c 74 41 78 ffsetValue.altAx 00009230: 69 73 3b 5c 6e 5c 6e 20 20 20 20 76 61 72 20 5f is;\n\n var _ 00009240: 74 65 74 68 65 72 4d 61 78 20 3d 20 69 73 4f 72 tetherMax = isOr 00009250: 69 67 69 6e 53 69 64 65 20 3f 20 5f 6f 66 66 73 iginSide ? _offs 00009260: 65 74 20 2b 20 72 65 66 65 72 65 6e 63 65 52 65 et + referenceRe 00009270: 63 74 5b 5f 6c 65 6e 5d 20 2b 20 70 6f 70 70 65 ct[_len] + poppe 00009280: 72 52 65 63 74 5b 5f 6c 65 6e 5d 20 2d 20 5f 6f rRect[_len] - _o 00009290: 66 66 73 65 74 4d 6f 64 69 66 69 65 72 56 61 6c ffsetModifierVal 000092a0: 75 65 20 2d 20 6e 6f 72 6d 61 6c 69 7a 65 64 54 ue - normalizedT 000092b0: 65 74 68 65 72 4f 66 66 73 65 74 56 61 6c 75 65 etherOffsetValue 000092c0: 2e 61 6c 74 41 78 69 73 20 3a 20 5f 6d 61 78 3b .altAxis : _max; 000092d0: 5c 6e 5c 6e 20 20 20 20 76 61 72 20 5f 70 72 65 \n\n var _pre 000092e0: 76 65 6e 74 65 64 4f 66 66 73 65 74 20 3d 20 74 ventedOffset = t 000092f0: 65 74 68 65 72 20 26 26 20 69 73 4f 72 69 67 69 ether && isOrigi 00009300: 6e 53 69 64 65 20 3f 20 77 69 74 68 69 6e 4d 61 nSide ? withinMa 00009310: 78 43 6c 61 6d 70 28 5f 74 65 74 68 65 72 4d 69 xClamp(_tetherMi 00009320: 6e 2c 20 5f 6f 66 66 73 65 74 2c 20 5f 74 65 74 n, _offset, _tet 00009330: 68 65 72 4d 61 78 29 20 3a 20 77 69 74 68 69 6e herMax) : within 00009340: 28 74 65 74 68 65 72 20 3f 20 5f 74 65 74 68 65 (tether ? _tethe 00009350: 72 4d 69 6e 20 3a 20 5f 6d 69 6e 2c 20 5f 6f 66 rMin : _min, _of 00009360: 66 73 65 74 2c 20 74 65 74 68 65 72 20 3f 20 5f fset, tether ? _ 00009370: 74 65 74 68 65 72 4d 61 78 20 3a 20 5f 6d 61 78 tetherMax : _max 00009380: 29 3b 5c 6e 5c 6e 20 20 20 20 70 6f 70 70 65 72 );\n\n popper 00009390: 4f 66 66 73 65 74 73 5b 61 6c 74 41 78 69 73 5d Offsets[altAxis] 000093a0: 20 3d 20 5f 70 72 65 76 65 6e 74 65 64 4f 66 66 = _preventedOff 000093b0: 73 65 74 3b 5c 6e 20 20 20 20 64 61 74 61 5b 61 set;\n data[a 000093c0: 6c 74 41 78 69 73 5d 20 3d 20 5f 70 72 65 76 65 ltAxis] = _preve 000093d0: 6e 74 65 64 4f 66 66 73 65 74 20 2d 20 5f 6f 66 ntedOffset - _of 000093e0: 66 73 65 74 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 fset;\n }\n\n 000093f0: 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 72 73 44 state.modifiersD 00009400: 61 74 61 5b 6e 61 6d 65 5d 20 3d 20 64 61 74 61 ata[name] = data 00009410: 3b 5c 6e 7d 20 2f 2f 20 65 73 6c 69 6e 74 2d 64 ;\n} // eslint-d 00009420: 69 73 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 isable-next-line 00009430: 20 69 6d 70 6f 72 74 2f 6e 6f 2d 75 6e 75 73 65 import/no-unuse 00009440: 64 2d 6d 6f 64 75 6c 65 73 5c 6e 5c 6e 5c 6e 65 d-modules\n\n\ne 00009450: 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 7b 5c xport default {\ 00009460: 6e 20 20 6e 61 6d 65 3a 20 27 70 72 65 76 65 6e n name: 'preven 00009470: 74 4f 76 65 72 66 6c 6f 77 27 2c 5c 6e 20 20 65 tOverflow',\n e 00009480: 6e 61 62 6c 65 64 3a 20 74 72 75 65 2c 5c 6e 20 nabled: true,\n 00009490: 20 70 68 61 73 65 3a 20 27 6d 61 69 6e 27 2c 5c phase: 'main',\ 000094a0: 6e 20 20 66 6e 3a 20 70 72 65 76 65 6e 74 4f 76 n fn: preventOv 000094b0: 65 72 66 6c 6f 77 2c 5c 6e 20 20 72 65 71 75 69 erflow,\n requi 000094c0: 72 65 73 49 66 45 78 69 73 74 73 3a 20 5b 27 6f resIfExists: ['o 000094d0: 66 66 73 65 74 27 5d 5c 6e 7d 3b 22 2c 22 65 78 ffset']\n};","ex 000094e0: 70 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e port default fun 000094f0: 63 74 69 6f 6e 20 67 65 74 41 6c 74 41 78 69 73 ction getAltAxis 00009500: 28 61 78 69 73 29 20 7b 5c 6e 20 20 72 65 74 75 (axis) {\n retu 00009510: 72 6e 20 61 78 69 73 20 3d 3d 3d 20 27 78 27 20 rn axis === 'x' 00009520: 3f 20 27 79 27 20 3a 20 27 78 27 3b 5c 6e 7d 22 ? 'y' : 'x';\n}" 00009530: 2c 22 69 6d 70 6f 72 74 20 67 65 74 42 6f 75 6e ,"import getBoun 00009540: 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 20 66 dingClientRect f 00009550: 72 6f 6d 20 5c 22 2e 2f 67 65 74 42 6f 75 6e 64 rom \"./getBound 00009560: 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 2e 6a 73 ingClientRect.js 00009570: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 4e \";\nimport getN 00009580: 6f 64 65 53 63 72 6f 6c 6c 20 66 72 6f 6d 20 5c odeScroll from \ 00009590: 22 2e 2f 67 65 74 4e 6f 64 65 53 63 72 6f 6c 6c "./getNodeScroll 000095a0: 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 .js\";\nimport g 000095b0: 65 74 4e 6f 64 65 4e 61 6d 65 20 66 72 6f 6d 20 etNodeName from 000095c0: 5c 22 2e 2f 67 65 74 4e 6f 64 65 4e 61 6d 65 2e \"./getNodeName. 000095d0: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 js\";\nimport { 000095e0: 69 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 20 7d 20 isHTMLElement } 000095f0: 66 72 6f 6d 20 5c 22 2e 2f 69 6e 73 74 61 6e 63 from \"./instanc 00009600: 65 4f 66 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 eOf.js\";\nimpor 00009610: 74 20 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c t getWindowScrol 00009620: 6c 42 61 72 58 20 66 72 6f 6d 20 5c 22 2e 2f 67 lBarX from \"./g 00009630: 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c 42 61 etWindowScrollBa 00009640: 72 58 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 rX.js\";\nimport 00009650: 20 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d getDocumentElem 00009660: 65 6e 74 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 ent from \"./get 00009670: 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 2e DocumentElement. 00009680: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 69 73 js\";\nimport is 00009690: 53 63 72 6f 6c 6c 50 61 72 65 6e 74 20 66 72 6f ScrollParent fro 000096a0: 6d 20 5c 22 2e 2f 69 73 53 63 72 6f 6c 6c 50 61 m \"./isScrollPa 000096b0: 72 65 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f rent.js\";\nimpo 000096c0: 72 74 20 7b 20 72 6f 75 6e 64 20 7d 20 66 72 6f rt { round } fro 000096d0: 6d 20 5c 22 2e 2e 2f 75 74 69 6c 73 2f 6d 61 74 m \"../utils/mat 000096e0: 68 2e 6a 73 5c 22 3b 5c 6e 5c 6e 66 75 6e 63 74 h.js\";\n\nfunct 000096f0: 69 6f 6e 20 69 73 45 6c 65 6d 65 6e 74 53 63 61 ion isElementSca 00009700: 6c 65 64 28 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e led(element) {\n 00009710: 20 20 76 61 72 20 72 65 63 74 20 3d 20 65 6c 65 var rect = ele 00009720: 6d 65 6e 74 2e 67 65 74 42 6f 75 6e 64 69 6e 67 ment.getBounding 00009730: 43 6c 69 65 6e 74 52 65 63 74 28 29 3b 5c 6e 20 ClientRect();\n 00009740: 20 76 61 72 20 73 63 61 6c 65 58 20 3d 20 72 6f var scaleX = ro 00009750: 75 6e 64 28 72 65 63 74 2e 77 69 64 74 68 29 20 und(rect.width) 00009760: 2f 20 65 6c 65 6d 65 6e 74 2e 6f 66 66 73 65 74 / element.offset 00009770: 57 69 64 74 68 20 7c 7c 20 31 3b 5c 6e 20 20 76 Width || 1;\n v 00009780: 61 72 20 73 63 61 6c 65 59 20 3d 20 72 6f 75 6e ar scaleY = roun 00009790: 64 28 72 65 63 74 2e 68 65 69 67 68 74 29 20 2f d(rect.height) / 000097a0: 20 65 6c 65 6d 65 6e 74 2e 6f 66 66 73 65 74 48 element.offsetH 000097b0: 65 69 67 68 74 20 7c 7c 20 31 3b 5c 6e 20 20 72 eight || 1;\n r 000097c0: 65 74 75 72 6e 20 73 63 61 6c 65 58 20 21 3d 3d eturn scaleX !== 000097d0: 20 31 20 7c 7c 20 73 63 61 6c 65 59 20 21 3d 3d 1 || scaleY !== 000097e0: 20 31 3b 5c 6e 7d 20 2f 2f 20 52 65 74 75 72 6e 1;\n} // Return 000097f0: 73 20 74 68 65 20 63 6f 6d 70 6f 73 69 74 65 20 s the composite 00009800: 72 65 63 74 20 6f 66 20 61 6e 20 65 6c 65 6d 65 rect of an eleme 00009810: 6e 74 20 72 65 6c 61 74 69 76 65 20 74 6f 20 69 nt relative to i 00009820: 74 73 20 6f 66 66 73 65 74 50 61 72 65 6e 74 2e ts offsetParent. 00009830: 5c 6e 2f 2f 20 43 6f 6d 70 6f 73 69 74 65 20 6d \n// Composite m 00009840: 65 61 6e 73 20 69 74 20 74 61 6b 65 73 20 69 6e eans it takes in 00009850: 74 6f 20 61 63 63 6f 75 6e 74 20 74 72 61 6e 73 to account trans 00009860: 66 6f 72 6d 73 20 61 73 20 77 65 6c 6c 20 61 73 forms as well as 00009870: 20 6c 61 79 6f 75 74 2e 5c 6e 5c 6e 5c 6e 65 78 layout.\n\n\nex 00009880: 70 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e port default fun 00009890: 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 69 ction getComposi 000098a0: 74 65 52 65 63 74 28 65 6c 65 6d 65 6e 74 4f 72 teRect(elementOr 000098b0: 56 69 72 74 75 61 6c 45 6c 65 6d 65 6e 74 2c 20 VirtualElement, 000098c0: 6f 66 66 73 65 74 50 61 72 65 6e 74 2c 20 69 73 offsetParent, is 000098d0: 46 69 78 65 64 29 20 7b 5c 6e 20 20 69 66 20 28 Fixed) {\n if ( 000098e0: 69 73 46 69 78 65 64 20 3d 3d 3d 20 76 6f 69 64 isFixed === void 000098f0: 20 30 29 20 7b 5c 6e 20 20 20 20 69 73 46 69 78 0) {\n isFix 00009900: 65 64 20 3d 20 66 61 6c 73 65 3b 5c 6e 20 20 7d ed = false;\n } 00009910: 5c 6e 5c 6e 20 20 76 61 72 20 69 73 4f 66 66 73 \n\n var isOffs 00009920: 65 74 50 61 72 65 6e 74 41 6e 45 6c 65 6d 65 6e etParentAnElemen 00009930: 74 20 3d 20 69 73 48 54 4d 4c 45 6c 65 6d 65 6e t = isHTMLElemen 00009940: 74 28 6f 66 66 73 65 74 50 61 72 65 6e 74 29 3b t(offsetParent); 00009950: 5c 6e 20 20 76 61 72 20 6f 66 66 73 65 74 50 61 \n var offsetPa 00009960: 72 65 6e 74 49 73 53 63 61 6c 65 64 20 3d 20 69 rentIsScaled = i 00009970: 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 28 6f 66 66 sHTMLElement(off 00009980: 73 65 74 50 61 72 65 6e 74 29 20 26 26 20 69 73 setParent) && is 00009990: 45 6c 65 6d 65 6e 74 53 63 61 6c 65 64 28 6f 66 ElementScaled(of 000099a0: 66 73 65 74 50 61 72 65 6e 74 29 3b 5c 6e 20 20 fsetParent);\n 000099b0: 76 61 72 20 64 6f 63 75 6d 65 6e 74 45 6c 65 6d var documentElem 000099c0: 65 6e 74 20 3d 20 67 65 74 44 6f 63 75 6d 65 6e ent = getDocumen 000099d0: 74 45 6c 65 6d 65 6e 74 28 6f 66 66 73 65 74 50 tElement(offsetP 000099e0: 61 72 65 6e 74 29 3b 5c 6e 20 20 76 61 72 20 72 arent);\n var r 000099f0: 65 63 74 20 3d 20 67 65 74 42 6f 75 6e 64 69 6e ect = getBoundin 00009a00: 67 43 6c 69 65 6e 74 52 65 63 74 28 65 6c 65 6d gClientRect(elem 00009a10: 65 6e 74 4f 72 56 69 72 74 75 61 6c 45 6c 65 6d entOrVirtualElem 00009a20: 65 6e 74 2c 20 6f 66 66 73 65 74 50 61 72 65 6e ent, offsetParen 00009a30: 74 49 73 53 63 61 6c 65 64 2c 20 69 73 46 69 78 tIsScaled, isFix 00009a40: 65 64 29 3b 5c 6e 20 20 76 61 72 20 73 63 72 6f ed);\n var scro 00009a50: 6c 6c 20 3d 20 7b 5c 6e 20 20 20 20 73 63 72 6f ll = {\n scro 00009a60: 6c 6c 4c 65 66 74 3a 20 30 2c 5c 6e 20 20 20 20 llLeft: 0,\n 00009a70: 73 63 72 6f 6c 6c 54 6f 70 3a 20 30 5c 6e 20 20 scrollTop: 0\n 00009a80: 7d 3b 5c 6e 20 20 76 61 72 20 6f 66 66 73 65 74 };\n var offset 00009a90: 73 20 3d 20 7b 5c 6e 20 20 20 20 78 3a 20 30 2c s = {\n x: 0, 00009aa0: 5c 6e 20 20 20 20 79 3a 20 30 5c 6e 20 20 7d 3b \n y: 0\n }; 00009ab0: 5c 6e 5c 6e 20 20 69 66 20 28 69 73 4f 66 66 73 \n\n if (isOffs 00009ac0: 65 74 50 61 72 65 6e 74 41 6e 45 6c 65 6d 65 6e etParentAnElemen 00009ad0: 74 20 7c 7c 20 21 69 73 4f 66 66 73 65 74 50 61 t || !isOffsetPa 00009ae0: 72 65 6e 74 41 6e 45 6c 65 6d 65 6e 74 20 26 26 rentAnElement && 00009af0: 20 21 69 73 46 69 78 65 64 29 20 7b 5c 6e 20 20 !isFixed) {\n 00009b00: 20 20 69 66 20 28 67 65 74 4e 6f 64 65 4e 61 6d if (getNodeNam 00009b10: 65 28 6f 66 66 73 65 74 50 61 72 65 6e 74 29 20 e(offsetParent) 00009b20: 21 3d 3d 20 27 62 6f 64 79 27 20 7c 7c 20 2f 2f !== 'body' || // 00009b30: 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e https://github. 00009b40: 63 6f 6d 2f 70 6f 70 70 65 72 6a 73 2f 70 6f 70 com/popperjs/pop 00009b50: 70 65 72 2d 63 6f 72 65 2f 69 73 73 75 65 73 2f per-core/issues/ 00009b60: 31 30 37 38 5c 6e 20 20 20 20 69 73 53 63 72 6f 1078\n isScro 00009b70: 6c 6c 50 61 72 65 6e 74 28 64 6f 63 75 6d 65 6e llParent(documen 00009b80: 74 45 6c 65 6d 65 6e 74 29 29 20 7b 5c 6e 20 20 tElement)) {\n 00009b90: 20 20 20 20 73 63 72 6f 6c 6c 20 3d 20 67 65 74 scroll = get 00009ba0: 4e 6f 64 65 53 63 72 6f 6c 6c 28 6f 66 66 73 65 NodeScroll(offse 00009bb0: 74 50 61 72 65 6e 74 29 3b 5c 6e 20 20 20 20 7d tParent);\n } 00009bc0: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 69 73 48 54 \n\n if (isHT 00009bd0: 4d 4c 45 6c 65 6d 65 6e 74 28 6f 66 66 73 65 74 MLElement(offset 00009be0: 50 61 72 65 6e 74 29 29 20 7b 5c 6e 20 20 20 20 Parent)) {\n 00009bf0: 20 20 6f 66 66 73 65 74 73 20 3d 20 67 65 74 42 offsets = getB 00009c00: 6f 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 oundingClientRec 00009c10: 74 28 6f 66 66 73 65 74 50 61 72 65 6e 74 2c 20 t(offsetParent, 00009c20: 74 72 75 65 29 3b 5c 6e 20 20 20 20 20 20 6f 66 true);\n of 00009c30: 66 73 65 74 73 2e 78 20 2b 3d 20 6f 66 66 73 65 fsets.x += offse 00009c40: 74 50 61 72 65 6e 74 2e 63 6c 69 65 6e 74 4c 65 tParent.clientLe 00009c50: 66 74 3b 5c 6e 20 20 20 20 20 20 6f 66 66 73 65 ft;\n offse 00009c60: 74 73 2e 79 20 2b 3d 20 6f 66 66 73 65 74 50 61 ts.y += offsetPa 00009c70: 72 65 6e 74 2e 63 6c 69 65 6e 74 54 6f 70 3b 5c rent.clientTop;\ 00009c80: 6e 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 n } else if ( 00009c90: 64 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 29 documentElement) 00009ca0: 20 7b 5c 6e 20 20 20 20 20 20 6f 66 66 73 65 74 {\n offset 00009cb0: 73 2e 78 20 3d 20 67 65 74 57 69 6e 64 6f 77 53 s.x = getWindowS 00009cc0: 63 72 6f 6c 6c 42 61 72 58 28 64 6f 63 75 6d 65 crollBarX(docume 00009cd0: 6e 74 45 6c 65 6d 65 6e 74 29 3b 5c 6e 20 20 20 ntElement);\n 00009ce0: 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 }\n }\n\n ret 00009cf0: 75 72 6e 20 7b 5c 6e 20 20 20 20 78 3a 20 72 65 urn {\n x: re 00009d00: 63 74 2e 6c 65 66 74 20 2b 20 73 63 72 6f 6c 6c ct.left + scroll 00009d10: 2e 73 63 72 6f 6c 6c 4c 65 66 74 20 2d 20 6f 66 .scrollLeft - of 00009d20: 66 73 65 74 73 2e 78 2c 5c 6e 20 20 20 20 79 3a fsets.x,\n y: 00009d30: 20 72 65 63 74 2e 74 6f 70 20 2b 20 73 63 72 6f rect.top + scro 00009d40: 6c 6c 2e 73 63 72 6f 6c 6c 54 6f 70 20 2d 20 6f ll.scrollTop - o 00009d50: 66 66 73 65 74 73 2e 79 2c 5c 6e 20 20 20 20 77 ffsets.y,\n w 00009d60: 69 64 74 68 3a 20 72 65 63 74 2e 77 69 64 74 68 idth: rect.width 00009d70: 2c 5c 6e 20 20 20 20 68 65 69 67 68 74 3a 20 72 ,\n height: r 00009d80: 65 63 74 2e 68 65 69 67 68 74 5c 6e 20 20 7d 3b ect.height\n }; 00009d90: 5c 6e 7d 22 2c 22 69 6d 70 6f 72 74 20 67 65 74 \n}","import get 00009da0: 57 69 6e 64 6f 77 53 63 72 6f 6c 6c 20 66 72 6f WindowScroll fro 00009db0: 6d 20 5c 22 2e 2f 67 65 74 57 69 6e 64 6f 77 53 m \"./getWindowS 00009dc0: 63 72 6f 6c 6c 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 croll.js\";\nimp 00009dd0: 6f 72 74 20 67 65 74 57 69 6e 64 6f 77 20 66 72 ort getWindow fr 00009de0: 6f 6d 20 5c 22 2e 2f 67 65 74 57 69 6e 64 6f 77 om \"./getWindow 00009df0: 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b .js\";\nimport { 00009e00: 20 69 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 20 7d isHTMLElement } 00009e10: 20 66 72 6f 6d 20 5c 22 2e 2f 69 6e 73 74 61 6e from \"./instan 00009e20: 63 65 4f 66 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f ceOf.js\";\nimpo 00009e30: 72 74 20 67 65 74 48 54 4d 4c 45 6c 65 6d 65 6e rt getHTMLElemen 00009e40: 74 53 63 72 6f 6c 6c 20 66 72 6f 6d 20 5c 22 2e tScroll from \". 00009e50: 2f 67 65 74 48 54 4d 4c 45 6c 65 6d 65 6e 74 53 /getHTMLElementS 00009e60: 63 72 6f 6c 6c 2e 6a 73 5c 22 3b 5c 6e 65 78 70 croll.js\";\nexp 00009e70: 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e 63 ort default func 00009e80: 74 69 6f 6e 20 67 65 74 4e 6f 64 65 53 63 72 6f tion getNodeScro 00009e90: 6c 6c 28 6e 6f 64 65 29 20 7b 5c 6e 20 20 69 66 ll(node) {\n if 00009ea0: 20 28 6e 6f 64 65 20 3d 3d 3d 20 67 65 74 57 69 (node === getWi 00009eb0: 6e 64 6f 77 28 6e 6f 64 65 29 20 7c 7c 20 21 69 ndow(node) || !i 00009ec0: 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 28 6e 6f 64 sHTMLElement(nod 00009ed0: 65 29 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 e)) {\n retur 00009ee0: 6e 20 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c n getWindowScrol 00009ef0: 6c 28 6e 6f 64 65 29 3b 5c 6e 20 20 7d 20 65 6c l(node);\n } el 00009f00: 73 65 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e se {\n return 00009f10: 20 67 65 74 48 54 4d 4c 45 6c 65 6d 65 6e 74 53 getHTMLElementS 00009f20: 63 72 6f 6c 6c 28 6e 6f 64 65 29 3b 5c 6e 20 20 croll(node);\n 00009f30: 7d 5c 6e 7d 22 2c 22 65 78 70 6f 72 74 20 64 65 }\n}","export de 00009f40: 66 61 75 6c 74 20 66 75 6e 63 74 69 6f 6e 20 67 fault function g 00009f50: 65 74 48 54 4d 4c 45 6c 65 6d 65 6e 74 53 63 72 etHTMLElementScr 00009f60: 6f 6c 6c 28 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e oll(element) {\n 00009f70: 20 20 72 65 74 75 72 6e 20 7b 5c 6e 20 20 20 20 return {\n 00009f80: 73 63 72 6f 6c 6c 4c 65 66 74 3a 20 65 6c 65 6d scrollLeft: elem 00009f90: 65 6e 74 2e 73 63 72 6f 6c 6c 4c 65 66 74 2c 5c ent.scrollLeft,\ 00009fa0: 6e 20 20 20 20 73 63 72 6f 6c 6c 54 6f 70 3a 20 n scrollTop: 00009fb0: 65 6c 65 6d 65 6e 74 2e 73 63 72 6f 6c 6c 54 6f element.scrollTo 00009fc0: 70 5c 6e 20 20 7d 3b 5c 6e 7d 22 2c 22 69 6d 70 p\n };\n}","imp 00009fd0: 6f 72 74 20 7b 20 6d 6f 64 69 66 69 65 72 50 68 ort { modifierPh 00009fe0: 61 73 65 73 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e ases } from \".. 00009ff0: 2f 65 6e 75 6d 73 2e 6a 73 5c 22 3b 20 2f 2f 20 /enums.js\"; // 0000a000: 73 6f 75 72 63 65 3a 20 68 74 74 70 73 3a 2f 2f source: https:// 0000a010: 73 74 61 63 6b 6f 76 65 72 66 6c 6f 77 2e 63 6f stackoverflow.co 0000a020: 6d 2f 71 75 65 73 74 69 6f 6e 73 2f 34 39 38 37 m/questions/4987 0000a030: 35 32 35 35 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 5255\n\nfunction 0000a040: 20 6f 72 64 65 72 28 6d 6f 64 69 66 69 65 72 73 order(modifiers 0000a050: 29 20 7b 5c 6e 20 20 76 61 72 20 6d 61 70 20 3d ) {\n var map = 0000a060: 20 6e 65 77 20 4d 61 70 28 29 3b 5c 6e 20 20 76 new Map();\n v 0000a070: 61 72 20 76 69 73 69 74 65 64 20 3d 20 6e 65 77 ar visited = new 0000a080: 20 53 65 74 28 29 3b 5c 6e 20 20 76 61 72 20 72 Set();\n var r 0000a090: 65 73 75 6c 74 20 3d 20 5b 5d 3b 5c 6e 20 20 6d esult = [];\n m 0000a0a0: 6f 64 69 66 69 65 72 73 2e 66 6f 72 45 61 63 68 odifiers.forEach 0000a0b0: 28 66 75 6e 63 74 69 6f 6e 20 28 6d 6f 64 69 66 (function (modif 0000a0c0: 69 65 72 29 20 7b 5c 6e 20 20 20 20 6d 61 70 2e ier) {\n map. 0000a0d0: 73 65 74 28 6d 6f 64 69 66 69 65 72 2e 6e 61 6d set(modifier.nam 0000a0e0: 65 2c 20 6d 6f 64 69 66 69 65 72 29 3b 5c 6e 20 e, modifier);\n 0000a0f0: 20 7d 29 3b 20 2f 2f 20 4f 6e 20 76 69 73 69 74 }); // On visit 0000a100: 69 6e 67 20 6f 62 6a 65 63 74 2c 20 63 68 65 63 ing object, chec 0000a110: 6b 20 66 6f 72 20 69 74 73 20 64 65 70 65 6e 64 k for its depend 0000a120: 65 6e 63 69 65 73 20 61 6e 64 20 76 69 73 69 74 encies and visit 0000a130: 20 74 68 65 6d 20 72 65 63 75 72 73 69 76 65 6c them recursivel 0000a140: 79 5c 6e 5c 6e 20 20 66 75 6e 63 74 69 6f 6e 20 y\n\n function 0000a150: 73 6f 72 74 28 6d 6f 64 69 66 69 65 72 29 20 7b sort(modifier) { 0000a160: 5c 6e 20 20 20 20 76 69 73 69 74 65 64 2e 61 64 \n visited.ad 0000a170: 64 28 6d 6f 64 69 66 69 65 72 2e 6e 61 6d 65 29 d(modifier.name) 0000a180: 3b 5c 6e 20 20 20 20 76 61 72 20 72 65 71 75 69 ;\n var requi 0000a190: 72 65 73 20 3d 20 5b 5d 2e 63 6f 6e 63 61 74 28 res = [].concat( 0000a1a0: 6d 6f 64 69 66 69 65 72 2e 72 65 71 75 69 72 65 modifier.require 0000a1b0: 73 20 7c 7c 20 5b 5d 2c 20 6d 6f 64 69 66 69 65 s || [], modifie 0000a1c0: 72 2e 72 65 71 75 69 72 65 73 49 66 45 78 69 73 r.requiresIfExis 0000a1d0: 74 73 20 7c 7c 20 5b 5d 29 3b 5c 6e 20 20 20 20 ts || []);\n 0000a1e0: 72 65 71 75 69 72 65 73 2e 66 6f 72 45 61 63 68 requires.forEach 0000a1f0: 28 66 75 6e 63 74 69 6f 6e 20 28 64 65 70 29 20 (function (dep) 0000a200: 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 21 76 69 {\n if (!vi 0000a210: 73 69 74 65 64 2e 68 61 73 28 64 65 70 29 29 20 sited.has(dep)) 0000a220: 7b 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 64 {\n var d 0000a230: 65 70 4d 6f 64 69 66 69 65 72 20 3d 20 6d 61 70 epModifier = map 0000a240: 2e 67 65 74 28 64 65 70 29 3b 5c 6e 5c 6e 20 20 .get(dep);\n\n 0000a250: 20 20 20 20 20 20 69 66 20 28 64 65 70 4d 6f 64 if (depMod 0000a260: 69 66 69 65 72 29 20 7b 5c 6e 20 20 20 20 20 20 ifier) {\n 0000a270: 20 20 20 20 73 6f 72 74 28 64 65 70 4d 6f 64 69 sort(depModi 0000a280: 66 69 65 72 29 3b 5c 6e 20 20 20 20 20 20 20 20 fier);\n 0000a290: 7d 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 }\n }\n 0000a2a0: 7d 29 3b 5c 6e 20 20 20 20 72 65 73 75 6c 74 2e });\n result. 0000a2b0: 70 75 73 68 28 6d 6f 64 69 66 69 65 72 29 3b 5c push(modifier);\ 0000a2c0: 6e 20 20 7d 5c 6e 5c 6e 20 20 6d 6f 64 69 66 69 n }\n\n modifi 0000a2d0: 65 72 73 2e 66 6f 72 45 61 63 68 28 66 75 6e 63 ers.forEach(func 0000a2e0: 74 69 6f 6e 20 28 6d 6f 64 69 66 69 65 72 29 20 tion (modifier) 0000a2f0: 7b 5c 6e 20 20 20 20 69 66 20 28 21 76 69 73 69 {\n if (!visi 0000a300: 74 65 64 2e 68 61 73 28 6d 6f 64 69 66 69 65 72 ted.has(modifier 0000a310: 2e 6e 61 6d 65 29 29 20 7b 5c 6e 20 20 20 20 20 .name)) {\n 0000a320: 20 2f 2f 20 63 68 65 63 6b 20 66 6f 72 20 76 69 // check for vi 0000a330: 73 69 74 65 64 20 6f 62 6a 65 63 74 5c 6e 20 20 sited object\n 0000a340: 20 20 20 20 73 6f 72 74 28 6d 6f 64 69 66 69 65 sort(modifie 0000a350: 72 29 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 29 r);\n }\n }) 0000a360: 3b 5c 6e 20 20 72 65 74 75 72 6e 20 72 65 73 75 ;\n return resu 0000a370: 6c 74 3b 5c 6e 7d 5c 6e 5c 6e 65 78 70 6f 72 74 lt;\n}\n\nexport 0000a380: 20 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f default functio 0000a390: 6e 20 6f 72 64 65 72 4d 6f 64 69 66 69 65 72 73 n orderModifiers 0000a3a0: 28 6d 6f 64 69 66 69 65 72 73 29 20 7b 5c 6e 20 (modifiers) {\n 0000a3b0: 20 2f 2f 20 6f 72 64 65 72 20 62 61 73 65 64 20 // order based 0000a3c0: 6f 6e 20 64 65 70 65 6e 64 65 6e 63 69 65 73 5c on dependencies\ 0000a3d0: 6e 20 20 76 61 72 20 6f 72 64 65 72 65 64 4d 6f n var orderedMo 0000a3e0: 64 69 66 69 65 72 73 20 3d 20 6f 72 64 65 72 28 difiers = order( 0000a3f0: 6d 6f 64 69 66 69 65 72 73 29 3b 20 2f 2f 20 6f modifiers); // o 0000a400: 72 64 65 72 20 62 61 73 65 64 20 6f 6e 20 70 68 rder based on ph 0000a410: 61 73 65 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 ase\n\n return 0000a420: 6d 6f 64 69 66 69 65 72 50 68 61 73 65 73 2e 72 modifierPhases.r 0000a430: 65 64 75 63 65 28 66 75 6e 63 74 69 6f 6e 20 28 educe(function ( 0000a440: 61 63 63 2c 20 70 68 61 73 65 29 20 7b 5c 6e 20 acc, phase) {\n 0000a450: 20 20 20 72 65 74 75 72 6e 20 61 63 63 2e 63 6f return acc.co 0000a460: 6e 63 61 74 28 6f 72 64 65 72 65 64 4d 6f 64 69 ncat(orderedModi 0000a470: 66 69 65 72 73 2e 66 69 6c 74 65 72 28 66 75 6e fiers.filter(fun 0000a480: 63 74 69 6f 6e 20 28 6d 6f 64 69 66 69 65 72 29 ction (modifier) 0000a490: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 0000a4a0: 20 6d 6f 64 69 66 69 65 72 2e 70 68 61 73 65 20 modifier.phase 0000a4b0: 3d 3d 3d 20 70 68 61 73 65 3b 5c 6e 20 20 20 20 === phase;\n 0000a4c0: 7d 29 29 3b 5c 6e 20 20 7d 2c 20 5b 5d 29 3b 5c }));\n }, []);\ 0000a4d0: 6e 7d 22 2c 22 65 78 70 6f 72 74 20 64 65 66 61 n}","export defa 0000a4e0: 75 6c 74 20 66 75 6e 63 74 69 6f 6e 20 64 65 62 ult function deb 0000a4f0: 6f 75 6e 63 65 28 66 6e 29 20 7b 5c 6e 20 20 76 ounce(fn) {\n v 0000a500: 61 72 20 70 65 6e 64 69 6e 67 3b 5c 6e 20 20 72 ar pending;\n r 0000a510: 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 28 eturn function ( 0000a520: 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 70 65 ) {\n if (!pe 0000a530: 6e 64 69 6e 67 29 20 7b 5c 6e 20 20 20 20 20 20 nding) {\n 0000a540: 70 65 6e 64 69 6e 67 20 3d 20 6e 65 77 20 50 72 pending = new Pr 0000a550: 6f 6d 69 73 65 28 66 75 6e 63 74 69 6f 6e 20 28 omise(function ( 0000a560: 72 65 73 6f 6c 76 65 29 20 7b 5c 6e 20 20 20 20 resolve) {\n 0000a570: 20 20 20 20 50 72 6f 6d 69 73 65 2e 72 65 73 6f Promise.reso 0000a580: 6c 76 65 28 29 2e 74 68 65 6e 28 66 75 6e 63 74 lve().then(funct 0000a590: 69 6f 6e 20 28 29 20 7b 5c 6e 20 20 20 20 20 20 ion () {\n 0000a5a0: 20 20 20 20 70 65 6e 64 69 6e 67 20 3d 20 75 6e pending = un 0000a5b0: 64 65 66 69 6e 65 64 3b 5c 6e 20 20 20 20 20 20 defined;\n 0000a5c0: 20 20 20 20 72 65 73 6f 6c 76 65 28 66 6e 28 29 resolve(fn() 0000a5d0: 29 3b 5c 6e 20 20 20 20 20 20 20 20 7d 29 3b 5c );\n });\ 0000a5e0: 6e 20 20 20 20 20 20 7d 29 3b 5c 6e 20 20 20 20 n });\n 0000a5f0: 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 }\n\n return 0000a600: 70 65 6e 64 69 6e 67 3b 5c 6e 20 20 7d 3b 5c 6e pending;\n };\n 0000a610: 7d 22 2c 22 69 6d 70 6f 72 74 20 67 65 74 43 6f }","import getCo 0000a620: 6d 70 6f 73 69 74 65 52 65 63 74 20 66 72 6f 6d mpositeRect from 0000a630: 20 5c 22 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 67 \"./dom-utils/g 0000a640: 65 74 43 6f 6d 70 6f 73 69 74 65 52 65 63 74 2e etCompositeRect. 0000a650: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 js\";\nimport ge 0000a660: 74 4c 61 79 6f 75 74 52 65 63 74 20 66 72 6f 6d tLayoutRect from 0000a670: 20 5c 22 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 67 \"./dom-utils/g 0000a680: 65 74 4c 61 79 6f 75 74 52 65 63 74 2e 6a 73 5c etLayoutRect.js\ 0000a690: 22 3b 5c 6e 69 6d 70 6f 72 74 20 6c 69 73 74 53 ";\nimport listS 0000a6a0: 63 72 6f 6c 6c 50 61 72 65 6e 74 73 20 66 72 6f crollParents fro 0000a6b0: 6d 20 5c 22 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f m \"./dom-utils/ 0000a6c0: 6c 69 73 74 53 63 72 6f 6c 6c 50 61 72 65 6e 74 listScrollParent 0000a6d0: 73 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 s.js\";\nimport 0000a6e0: 67 65 74 4f 66 66 73 65 74 50 61 72 65 6e 74 20 getOffsetParent 0000a6f0: 66 72 6f 6d 20 5c 22 2e 2f 64 6f 6d 2d 75 74 69 from \"./dom-uti 0000a700: 6c 73 2f 67 65 74 4f 66 66 73 65 74 50 61 72 65 ls/getOffsetPare 0000a710: 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 nt.js\";\nimport 0000a720: 20 6f 72 64 65 72 4d 6f 64 69 66 69 65 72 73 20 orderModifiers 0000a730: 66 72 6f 6d 20 5c 22 2e 2f 75 74 69 6c 73 2f 6f from \"./utils/o 0000a740: 72 64 65 72 4d 6f 64 69 66 69 65 72 73 2e 6a 73 rderModifiers.js 0000a750: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 64 65 62 6f \";\nimport debo 0000a760: 75 6e 63 65 20 66 72 6f 6d 20 5c 22 2e 2f 75 74 unce from \"./ut 0000a770: 69 6c 73 2f 64 65 62 6f 75 6e 63 65 2e 6a 73 5c ils/debounce.js\ 0000a780: 22 3b 5c 6e 69 6d 70 6f 72 74 20 6d 65 72 67 65 ";\nimport merge 0000a790: 42 79 4e 61 6d 65 20 66 72 6f 6d 20 5c 22 2e 2f ByName from \"./ 0000a7a0: 75 74 69 6c 73 2f 6d 65 72 67 65 42 79 4e 61 6d utils/mergeByNam 0000a7b0: 65 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 e.js\";\nimport 0000a7c0: 64 65 74 65 63 74 4f 76 65 72 66 6c 6f 77 20 66 detectOverflow f 0000a7d0: 72 6f 6d 20 5c 22 2e 2f 75 74 69 6c 73 2f 64 65 rom \"./utils/de 0000a7e0: 74 65 63 74 4f 76 65 72 66 6c 6f 77 2e 6a 73 5c tectOverflow.js\ 0000a7f0: 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 69 73 45 ";\nimport { isE 0000a800: 6c 65 6d 65 6e 74 20 7d 20 66 72 6f 6d 20 5c 22 lement } from \" 0000a810: 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 69 6e 73 74 ./dom-utils/inst 0000a820: 61 6e 63 65 4f 66 2e 6a 73 5c 22 3b 5c 6e 76 61 anceOf.js\";\nva 0000a830: 72 20 44 45 46 41 55 4c 54 5f 4f 50 54 49 4f 4e r DEFAULT_OPTION 0000a840: 53 20 3d 20 7b 5c 6e 20 20 70 6c 61 63 65 6d 65 S = {\n placeme 0000a850: 6e 74 3a 20 27 62 6f 74 74 6f 6d 27 2c 5c 6e 20 nt: 'bottom',\n 0000a860: 20 6d 6f 64 69 66 69 65 72 73 3a 20 5b 5d 2c 5c modifiers: [],\ 0000a870: 6e 20 20 73 74 72 61 74 65 67 79 3a 20 27 61 62 n strategy: 'ab 0000a880: 73 6f 6c 75 74 65 27 5c 6e 7d 3b 5c 6e 5c 6e 66 solute'\n};\n\nf 0000a890: 75 6e 63 74 69 6f 6e 20 61 72 65 56 61 6c 69 64 unction areValid 0000a8a0: 45 6c 65 6d 65 6e 74 73 28 29 20 7b 5c 6e 20 20 Elements() {\n 0000a8b0: 66 6f 72 20 28 76 61 72 20 5f 6c 65 6e 20 3d 20 for (var _len = 0000a8c0: 61 72 67 75 6d 65 6e 74 73 2e 6c 65 6e 67 74 68 arguments.length 0000a8d0: 2c 20 61 72 67 73 20 3d 20 6e 65 77 20 41 72 72 , args = new Arr 0000a8e0: 61 79 28 5f 6c 65 6e 29 2c 20 5f 6b 65 79 20 3d ay(_len), _key = 0000a8f0: 20 30 3b 20 5f 6b 65 79 20 3c 20 5f 6c 65 6e 3b 0; _key < _len; 0000a900: 20 5f 6b 65 79 2b 2b 29 20 7b 5c 6e 20 20 20 20 _key++) {\n 0000a910: 61 72 67 73 5b 5f 6b 65 79 5d 20 3d 20 61 72 67 args[_key] = arg 0000a920: 75 6d 65 6e 74 73 5b 5f 6b 65 79 5d 3b 5c 6e 20 uments[_key];\n 0000a930: 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 21 }\n\n return ! 0000a940: 61 72 67 73 2e 73 6f 6d 65 28 66 75 6e 63 74 69 args.some(functi 0000a950: 6f 6e 20 28 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e on (element) {\n 0000a960: 20 20 20 20 72 65 74 75 72 6e 20 21 28 65 6c 65 return !(ele 0000a970: 6d 65 6e 74 20 26 26 20 74 79 70 65 6f 66 20 65 ment && typeof e 0000a980: 6c 65 6d 65 6e 74 2e 67 65 74 42 6f 75 6e 64 69 lement.getBoundi 0000a990: 6e 67 43 6c 69 65 6e 74 52 65 63 74 20 3d 3d 3d ngClientRect === 0000a9a0: 20 27 66 75 6e 63 74 69 6f 6e 27 29 3b 5c 6e 20 'function');\n 0000a9b0: 20 7d 29 3b 5c 6e 7d 5c 6e 5c 6e 65 78 70 6f 72 });\n}\n\nexpor 0000a9c0: 74 20 66 75 6e 63 74 69 6f 6e 20 70 6f 70 70 65 t function poppe 0000a9d0: 72 47 65 6e 65 72 61 74 6f 72 28 67 65 6e 65 72 rGenerator(gener 0000a9e0: 61 74 6f 72 4f 70 74 69 6f 6e 73 29 20 7b 5c 6e atorOptions) {\n 0000a9f0: 20 20 69 66 20 28 67 65 6e 65 72 61 74 6f 72 4f if (generatorO 0000aa00: 70 74 69 6f 6e 73 20 3d 3d 3d 20 76 6f 69 64 20 ptions === void 0000aa10: 30 29 20 7b 5c 6e 20 20 20 20 67 65 6e 65 72 61 0) {\n genera 0000aa20: 74 6f 72 4f 70 74 69 6f 6e 73 20 3d 20 7b 7d 3b torOptions = {}; 0000aa30: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 76 61 72 20 5f \n }\n\n var _ 0000aa40: 67 65 6e 65 72 61 74 6f 72 4f 70 74 69 6f 6e 73 generatorOptions 0000aa50: 20 3d 20 67 65 6e 65 72 61 74 6f 72 4f 70 74 69 = generatorOpti 0000aa60: 6f 6e 73 2c 5c 6e 20 20 20 20 20 20 5f 67 65 6e ons,\n _gen 0000aa70: 65 72 61 74 6f 72 4f 70 74 69 6f 6e 73 24 64 65 eratorOptions$de 0000aa80: 66 20 3d 20 5f 67 65 6e 65 72 61 74 6f 72 4f 70 f = _generatorOp 0000aa90: 74 69 6f 6e 73 2e 64 65 66 61 75 6c 74 4d 6f 64 tions.defaultMod 0000aaa0: 69 66 69 65 72 73 2c 5c 6e 20 20 20 20 20 20 64 ifiers,\n d 0000aab0: 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 73 20 efaultModifiers 0000aac0: 3d 20 5f 67 65 6e 65 72 61 74 6f 72 4f 70 74 69 = _generatorOpti 0000aad0: 6f 6e 73 24 64 65 66 20 3d 3d 3d 20 76 6f 69 64 ons$def === void 0000aae0: 20 30 20 3f 20 5b 5d 20 3a 20 5f 67 65 6e 65 72 0 ? [] : _gener 0000aaf0: 61 74 6f 72 4f 70 74 69 6f 6e 73 24 64 65 66 2c atorOptions$def, 0000ab00: 5c 6e 20 20 20 20 20 20 5f 67 65 6e 65 72 61 74 \n _generat 0000ab10: 6f 72 4f 70 74 69 6f 6e 73 24 64 65 66 32 20 3d orOptions$def2 = 0000ab20: 20 5f 67 65 6e 65 72 61 74 6f 72 4f 70 74 69 6f _generatorOptio 0000ab30: 6e 73 2e 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e ns.defaultOption 0000ab40: 73 2c 5c 6e 20 20 20 20 20 20 64 65 66 61 75 6c s,\n defaul 0000ab50: 74 4f 70 74 69 6f 6e 73 20 3d 20 5f 67 65 6e 65 tOptions = _gene 0000ab60: 72 61 74 6f 72 4f 70 74 69 6f 6e 73 24 64 65 66 ratorOptions$def 0000ab70: 32 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 44 2 === void 0 ? D 0000ab80: 45 46 41 55 4c 54 5f 4f 50 54 49 4f 4e 53 20 3a EFAULT_OPTIONS : 0000ab90: 20 5f 67 65 6e 65 72 61 74 6f 72 4f 70 74 69 6f _generatorOptio 0000aba0: 6e 73 24 64 65 66 32 3b 5c 6e 20 20 72 65 74 75 ns$def2;\n retu 0000abb0: 72 6e 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 rn function crea 0000abc0: 74 65 50 6f 70 70 65 72 28 72 65 66 65 72 65 6e tePopper(referen 0000abd0: 63 65 2c 20 70 6f 70 70 65 72 2c 20 6f 70 74 69 ce, popper, opti 0000abe0: 6f 6e 73 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 ons) {\n if ( 0000abf0: 6f 70 74 69 6f 6e 73 20 3d 3d 3d 20 76 6f 69 64 options === void 0000ac00: 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 6f 70 74 0) {\n opt 0000ac10: 69 6f 6e 73 20 3d 20 64 65 66 61 75 6c 74 4f 70 ions = defaultOp 0000ac20: 74 69 6f 6e 73 3b 5c 6e 20 20 20 20 7d 5c 6e 5c tions;\n }\n\ 0000ac30: 6e 20 20 20 20 76 61 72 20 73 74 61 74 65 20 3d n var state = 0000ac40: 20 7b 5c 6e 20 20 20 20 20 20 70 6c 61 63 65 6d {\n placem 0000ac50: 65 6e 74 3a 20 27 62 6f 74 74 6f 6d 27 2c 5c 6e ent: 'bottom',\n 0000ac60: 20 20 20 20 20 20 6f 72 64 65 72 65 64 4d 6f 64 orderedMod 0000ac70: 69 66 69 65 72 73 3a 20 5b 5d 2c 5c 6e 20 20 20 ifiers: [],\n 0000ac80: 20 20 20 6f 70 74 69 6f 6e 73 3a 20 4f 62 6a 65 options: Obje 0000ac90: 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c 20 44 45 ct.assign({}, DE 0000aca0: 46 41 55 4c 54 5f 4f 50 54 49 4f 4e 53 2c 20 64 FAULT_OPTIONS, d 0000acb0: 65 66 61 75 6c 74 4f 70 74 69 6f 6e 73 29 2c 5c efaultOptions),\ 0000acc0: 6e 20 20 20 20 20 20 6d 6f 64 69 66 69 65 72 73 n modifiers 0000acd0: 44 61 74 61 3a 20 7b 7d 2c 5c 6e 20 20 20 20 20 Data: {},\n 0000ace0: 20 65 6c 65 6d 65 6e 74 73 3a 20 7b 5c 6e 20 20 elements: {\n 0000acf0: 20 20 20 20 20 20 72 65 66 65 72 65 6e 63 65 3a reference: 0000ad00: 20 72 65 66 65 72 65 6e 63 65 2c 5c 6e 20 20 20 reference,\n 0000ad10: 20 20 20 20 20 70 6f 70 70 65 72 3a 20 70 6f 70 popper: pop 0000ad20: 70 65 72 5c 6e 20 20 20 20 20 20 7d 2c 5c 6e 20 per\n },\n 0000ad30: 20 20 20 20 20 61 74 74 72 69 62 75 74 65 73 3a attributes: 0000ad40: 20 7b 7d 2c 5c 6e 20 20 20 20 20 20 73 74 79 6c {},\n styl 0000ad50: 65 73 3a 20 7b 7d 5c 6e 20 20 20 20 7d 3b 5c 6e es: {}\n };\n 0000ad60: 20 20 20 20 76 61 72 20 65 66 66 65 63 74 43 6c var effectCl 0000ad70: 65 61 6e 75 70 46 6e 73 20 3d 20 5b 5d 3b 5c 6e eanupFns = [];\n 0000ad80: 20 20 20 20 76 61 72 20 69 73 44 65 73 74 72 6f var isDestro 0000ad90: 79 65 64 20 3d 20 66 61 6c 73 65 3b 5c 6e 20 20 yed = false;\n 0000ada0: 20 20 76 61 72 20 69 6e 73 74 61 6e 63 65 20 3d var instance = 0000adb0: 20 7b 5c 6e 20 20 20 20 20 20 73 74 61 74 65 3a {\n state: 0000adc0: 20 73 74 61 74 65 2c 5c 6e 20 20 20 20 20 20 73 state,\n s 0000add0: 65 74 4f 70 74 69 6f 6e 73 3a 20 66 75 6e 63 74 etOptions: funct 0000ade0: 69 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 73 28 73 ion setOptions(s 0000adf0: 65 74 4f 70 74 69 6f 6e 73 41 63 74 69 6f 6e 29 etOptionsAction) 0000ae00: 20 7b 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 {\n var 0000ae10: 6f 70 74 69 6f 6e 73 20 3d 20 74 79 70 65 6f 66 options = typeof 0000ae20: 20 73 65 74 4f 70 74 69 6f 6e 73 41 63 74 69 6f setOptionsActio 0000ae30: 6e 20 3d 3d 3d 20 27 66 75 6e 63 74 69 6f 6e 27 n === 'function' 0000ae40: 20 3f 20 73 65 74 4f 70 74 69 6f 6e 73 41 63 74 ? setOptionsAct 0000ae50: 69 6f 6e 28 73 74 61 74 65 2e 6f 70 74 69 6f 6e ion(state.option 0000ae60: 73 29 20 3a 20 73 65 74 4f 70 74 69 6f 6e 73 41 s) : setOptionsA 0000ae70: 63 74 69 6f 6e 3b 5c 6e 20 20 20 20 20 20 20 20 ction;\n 0000ae80: 63 6c 65 61 6e 75 70 4d 6f 64 69 66 69 65 72 45 cleanupModifierE 0000ae90: 66 66 65 63 74 73 28 29 3b 5c 6e 20 20 20 20 20 ffects();\n 0000aea0: 20 20 20 73 74 61 74 65 2e 6f 70 74 69 6f 6e 73 state.options 0000aeb0: 20 3d 20 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e = Object.assign 0000aec0: 28 7b 7d 2c 20 64 65 66 61 75 6c 74 4f 70 74 69 ({}, defaultOpti 0000aed0: 6f 6e 73 2c 20 73 74 61 74 65 2e 6f 70 74 69 6f ons, state.optio 0000aee0: 6e 73 2c 20 6f 70 74 69 6f 6e 73 29 3b 5c 6e 20 ns, options);\n 0000aef0: 20 20 20 20 20 20 20 73 74 61 74 65 2e 73 63 72 state.scr 0000af00: 6f 6c 6c 50 61 72 65 6e 74 73 20 3d 20 7b 5c 6e ollParents = {\n 0000af10: 20 20 20 20 20 20 20 20 20 20 72 65 66 65 72 65 refere 0000af20: 6e 63 65 3a 20 69 73 45 6c 65 6d 65 6e 74 28 72 nce: isElement(r 0000af30: 65 66 65 72 65 6e 63 65 29 20 3f 20 6c 69 73 74 eference) ? list 0000af40: 53 63 72 6f 6c 6c 50 61 72 65 6e 74 73 28 72 65 ScrollParents(re 0000af50: 66 65 72 65 6e 63 65 29 20 3a 20 72 65 66 65 72 ference) : refer 0000af60: 65 6e 63 65 2e 63 6f 6e 74 65 78 74 45 6c 65 6d ence.contextElem 0000af70: 65 6e 74 20 3f 20 6c 69 73 74 53 63 72 6f 6c 6c ent ? listScroll 0000af80: 50 61 72 65 6e 74 73 28 72 65 66 65 72 65 6e 63 Parents(referenc 0000af90: 65 2e 63 6f 6e 74 65 78 74 45 6c 65 6d 65 6e 74 e.contextElement 0000afa0: 29 20 3a 20 5b 5d 2c 5c 6e 20 20 20 20 20 20 20 ) : [],\n 0000afb0: 20 20 20 70 6f 70 70 65 72 3a 20 6c 69 73 74 53 popper: listS 0000afc0: 63 72 6f 6c 6c 50 61 72 65 6e 74 73 28 70 6f 70 crollParents(pop 0000afd0: 70 65 72 29 5c 6e 20 20 20 20 20 20 20 20 7d 3b per)\n }; 0000afe0: 20 2f 2f 20 4f 72 64 65 72 73 20 74 68 65 20 6d // Orders the m 0000aff0: 6f 64 69 66 69 65 72 73 20 62 61 73 65 64 20 6f odifiers based o 0000b000: 6e 20 74 68 65 69 72 20 64 65 70 65 6e 64 65 6e n their dependen 0000b010: 63 69 65 73 20 61 6e 64 20 60 70 68 61 73 65 60 cies and `phase` 0000b020: 5c 6e 20 20 20 20 20 20 20 20 2f 2f 20 70 72 6f \n // pro 0000b030: 70 65 72 74 69 65 73 5c 6e 5c 6e 20 20 20 20 20 perties\n\n 0000b040: 20 20 20 76 61 72 20 6f 72 64 65 72 65 64 4d 6f var orderedMo 0000b050: 64 69 66 69 65 72 73 20 3d 20 6f 72 64 65 72 4d difiers = orderM 0000b060: 6f 64 69 66 69 65 72 73 28 6d 65 72 67 65 42 79 odifiers(mergeBy 0000b070: 4e 61 6d 65 28 5b 5d 2e 63 6f 6e 63 61 74 28 64 Name([].concat(d 0000b080: 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 73 2c efaultModifiers, 0000b090: 20 73 74 61 74 65 2e 6f 70 74 69 6f 6e 73 2e 6d state.options.m 0000b0a0: 6f 64 69 66 69 65 72 73 29 29 29 3b 20 2f 2f 20 odifiers))); // 0000b0b0: 53 74 72 69 70 20 6f 75 74 20 64 69 73 61 62 6c Strip out disabl 0000b0c0: 65 64 20 6d 6f 64 69 66 69 65 72 73 5c 6e 5c 6e ed modifiers\n\n 0000b0d0: 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 6f 72 state.or 0000b0e0: 64 65 72 65 64 4d 6f 64 69 66 69 65 72 73 20 3d deredModifiers = 0000b0f0: 20 6f 72 64 65 72 65 64 4d 6f 64 69 66 69 65 72 orderedModifier 0000b100: 73 2e 66 69 6c 74 65 72 28 66 75 6e 63 74 69 6f s.filter(functio 0000b110: 6e 20 28 6d 29 20 7b 5c 6e 20 20 20 20 20 20 20 n (m) {\n 0000b120: 20 20 20 72 65 74 75 72 6e 20 6d 2e 65 6e 61 62 return m.enab 0000b130: 6c 65 64 3b 5c 6e 20 20 20 20 20 20 20 20 7d 29 led;\n }) 0000b140: 3b 5c 6e 20 20 20 20 20 20 20 20 72 75 6e 4d 6f ;\n runMo 0000b150: 64 69 66 69 65 72 45 66 66 65 63 74 73 28 29 3b difierEffects(); 0000b160: 5c 6e 20 20 20 20 20 20 20 20 72 65 74 75 72 6e \n return 0000b170: 20 69 6e 73 74 61 6e 63 65 2e 75 70 64 61 74 65 instance.update 0000b180: 28 29 3b 5c 6e 20 20 20 20 20 20 7d 2c 5c 6e 20 ();\n },\n 0000b190: 20 20 20 20 20 2f 2f 20 53 79 6e 63 20 75 70 64 // Sync upd 0000b1a0: 61 74 65 20 e2 80 93 20 69 74 20 77 69 6c 6c 20 ate ... it will 0000b1b0: 61 6c 77 61 79 73 20 62 65 20 65 78 65 63 75 74 always be execut 0000b1c0: 65 64 2c 20 65 76 65 6e 20 69 66 20 6e 6f 74 20 ed, even if not 0000b1d0: 6e 65 63 65 73 73 61 72 79 2e 20 54 68 69 73 5c necessary. This\ 0000b1e0: 6e 20 20 20 20 20 20 2f 2f 20 69 73 20 75 73 65 n // is use 0000b1f0: 66 75 6c 20 66 6f 72 20 6c 6f 77 20 66 72 65 71 ful for low freq 0000b200: 75 65 6e 63 79 20 75 70 64 61 74 65 73 20 77 68 uency updates wh 0000b210: 65 72 65 20 73 79 6e 63 20 62 65 68 61 76 69 6f ere sync behavio 0000b220: 72 20 73 69 6d 70 6c 69 66 69 65 73 20 74 68 65 r simplifies the 0000b230: 5c 6e 20 20 20 20 20 20 2f 2f 20 6c 6f 67 69 63 \n // logic 0000b240: 2e 5c 6e 20 20 20 20 20 20 2f 2f 20 46 6f 72 20 .\n // For 0000b250: 68 69 67 68 20 66 72 65 71 75 65 6e 63 79 20 75 high frequency u 0000b260: 70 64 61 74 65 73 20 28 65 2e 67 2e 20 60 72 65 pdates (e.g. `re 0000b270: 73 69 7a 65 60 20 61 6e 64 20 60 73 63 72 6f 6c size` and `scrol 0000b280: 6c 60 20 65 76 65 6e 74 73 29 2c 20 61 6c 77 61 l` events), alwa 0000b290: 79 73 5c 6e 20 20 20 20 20 20 2f 2f 20 70 72 65 ys\n // pre 0000b2a0: 66 65 72 20 74 68 65 20 61 73 79 6e 63 20 50 6f fer the async Po 0000b2b0: 70 70 65 72 23 75 70 64 61 74 65 20 6d 65 74 68 pper#update meth 0000b2c0: 6f 64 5c 6e 20 20 20 20 20 20 66 6f 72 63 65 55 od\n forceU 0000b2d0: 70 64 61 74 65 3a 20 66 75 6e 63 74 69 6f 6e 20 pdate: function 0000b2e0: 66 6f 72 63 65 55 70 64 61 74 65 28 29 20 7b 5c forceUpdate() {\ 0000b2f0: 6e 20 20 20 20 20 20 20 20 69 66 20 28 69 73 44 n if (isD 0000b300: 65 73 74 72 6f 79 65 64 29 20 7b 5c 6e 20 20 20 estroyed) {\n 0000b310: 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 5c 6e return;\n 0000b320: 20 20 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 }\n\n 0000b330: 20 20 20 20 20 76 61 72 20 5f 73 74 61 74 65 24 var _state$ 0000b340: 65 6c 65 6d 65 6e 74 73 20 3d 20 73 74 61 74 65 elements = state 0000b350: 2e 65 6c 65 6d 65 6e 74 73 2c 5c 6e 20 20 20 20 .elements,\n 0000b360: 20 20 20 20 20 20 20 20 72 65 66 65 72 65 6e 63 referenc 0000b370: 65 20 3d 20 5f 73 74 61 74 65 24 65 6c 65 6d 65 e = _state$eleme 0000b380: 6e 74 73 2e 72 65 66 65 72 65 6e 63 65 2c 5c 6e nts.reference,\n 0000b390: 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 70 70 popp 0000b3a0: 65 72 20 3d 20 5f 73 74 61 74 65 24 65 6c 65 6d er = _state$elem 0000b3b0: 65 6e 74 73 2e 70 6f 70 70 65 72 3b 20 2f 2f 20 ents.popper; // 0000b3c0: 44 6f 6e 27 74 20 70 72 6f 63 65 65 64 20 69 66 Don't proceed if 0000b3d0: 20 60 72 65 66 65 72 65 6e 63 65 60 20 6f 72 20 `reference` or 0000b3e0: 60 70 6f 70 70 65 72 60 20 61 72 65 20 6e 6f 74 `popper` are not 0000b3f0: 20 76 61 6c 69 64 20 65 6c 65 6d 65 6e 74 73 5c valid elements\ 0000b400: 6e 20 20 20 20 20 20 20 20 2f 2f 20 61 6e 79 6d n // anym 0000b410: 6f 72 65 5c 6e 5c 6e 20 20 20 20 20 20 20 20 69 ore\n\n i 0000b420: 66 20 28 21 61 72 65 56 61 6c 69 64 45 6c 65 6d f (!areValidElem 0000b430: 65 6e 74 73 28 72 65 66 65 72 65 6e 63 65 2c 20 ents(reference, 0000b440: 70 6f 70 70 65 72 29 29 20 7b 5c 6e 20 20 20 20 popper)) {\n 0000b450: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 5c 6e 20 return;\n 0000b460: 20 20 20 20 20 20 20 7d 20 2f 2f 20 53 74 6f 72 } // Stor 0000b470: 65 20 74 68 65 20 72 65 66 65 72 65 6e 63 65 20 e the reference 0000b480: 61 6e 64 20 70 6f 70 70 65 72 20 72 65 63 74 73 and popper rects 0000b490: 20 74 6f 20 62 65 20 72 65 61 64 20 62 79 20 6d to be read by m 0000b4a0: 6f 64 69 66 69 65 72 73 5c 6e 5c 6e 5c 6e 20 20 odifiers\n\n\n 0000b4b0: 20 20 20 20 20 20 73 74 61 74 65 2e 72 65 63 74 state.rect 0000b4c0: 73 20 3d 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 s = {\n 0000b4d0: 20 72 65 66 65 72 65 6e 63 65 3a 20 67 65 74 43 reference: getC 0000b4e0: 6f 6d 70 6f 73 69 74 65 52 65 63 74 28 72 65 66 ompositeRect(ref 0000b4f0: 65 72 65 6e 63 65 2c 20 67 65 74 4f 66 66 73 65 erence, getOffse 0000b500: 74 50 61 72 65 6e 74 28 70 6f 70 70 65 72 29 2c tParent(popper), 0000b510: 20 73 74 61 74 65 2e 6f 70 74 69 6f 6e 73 2e 73 state.options.s 0000b520: 74 72 61 74 65 67 79 20 3d 3d 3d 20 27 66 69 78 trategy === 'fix 0000b530: 65 64 27 29 2c 5c 6e 20 20 20 20 20 20 20 20 20 ed'),\n 0000b540: 20 70 6f 70 70 65 72 3a 20 67 65 74 4c 61 79 6f popper: getLayo 0000b550: 75 74 52 65 63 74 28 70 6f 70 70 65 72 29 5c 6e utRect(popper)\n 0000b560: 20 20 20 20 20 20 20 20 7d 3b 20 2f 2f 20 4d 6f }; // Mo 0000b570: 64 69 66 69 65 72 73 20 68 61 76 65 20 74 68 65 difiers have the 0000b580: 20 61 62 69 6c 69 74 79 20 74 6f 20 72 65 73 65 ability to rese 0000b590: 74 20 74 68 65 20 63 75 72 72 65 6e 74 20 75 70 t the current up 0000b5a0: 64 61 74 65 20 63 79 63 6c 65 2e 20 54 68 65 5c date cycle. The\ 0000b5b0: 6e 20 20 20 20 20 20 20 20 2f 2f 20 6d 6f 73 74 n // most 0000b5c0: 20 63 6f 6d 6d 6f 6e 20 75 73 65 20 63 61 73 65 common use case 0000b5d0: 20 66 6f 72 20 74 68 69 73 20 69 73 20 74 68 65 for this is the 0000b5e0: 20 60 66 6c 69 70 60 20 6d 6f 64 69 66 69 65 72 `flip` modifier 0000b5f0: 20 63 68 61 6e 67 69 6e 67 20 74 68 65 5c 6e 20 changing the\n 0000b600: 20 20 20 20 20 20 20 2f 2f 20 70 6c 61 63 65 6d // placem 0000b610: 65 6e 74 2c 20 77 68 69 63 68 20 74 68 65 6e 20 ent, which then 0000b620: 6e 65 65 64 73 20 74 6f 20 72 65 2d 72 75 6e 20 needs to re-run 0000b630: 61 6c 6c 20 74 68 65 20 6d 6f 64 69 66 69 65 72 all the modifier 0000b640: 73 2c 20 62 65 63 61 75 73 65 20 74 68 65 5c 6e s, because the\n 0000b650: 20 20 20 20 20 20 20 20 2f 2f 20 6c 6f 67 69 63 // logic 0000b660: 20 77 61 73 20 70 72 65 76 69 6f 75 73 6c 79 20 was previously 0000b670: 72 61 6e 20 66 6f 72 20 74 68 65 20 70 72 65 76 ran for the prev 0000b680: 69 6f 75 73 20 70 6c 61 63 65 6d 65 6e 74 20 61 ious placement a 0000b690: 6e 64 20 69 73 20 74 68 65 72 65 66 6f 72 65 5c nd is therefore\ 0000b6a0: 6e 20 20 20 20 20 20 20 20 2f 2f 20 73 74 61 6c n // stal 0000b6b0: 65 2f 69 6e 63 6f 72 72 65 63 74 5c 6e 5c 6e 20 e/incorrect\n\n 0000b6c0: 20 20 20 20 20 20 20 73 74 61 74 65 2e 72 65 73 state.res 0000b6d0: 65 74 20 3d 20 66 61 6c 73 65 3b 5c 6e 20 20 20 et = false;\n 0000b6e0: 20 20 20 20 20 73 74 61 74 65 2e 70 6c 61 63 65 state.place 0000b6f0: 6d 65 6e 74 20 3d 20 73 74 61 74 65 2e 6f 70 74 ment = state.opt 0000b700: 69 6f 6e 73 2e 70 6c 61 63 65 6d 65 6e 74 3b 20 ions.placement; 0000b710: 2f 2f 20 4f 6e 20 65 61 63 68 20 75 70 64 61 74 // On each updat 0000b720: 65 20 63 79 63 6c 65 2c 20 74 68 65 20 60 6d 6f e cycle, the `mo 0000b730: 64 69 66 69 65 72 73 44 61 74 61 60 20 70 72 6f difiersData` pro 0000b740: 70 65 72 74 79 20 66 6f 72 20 65 61 63 68 20 6d perty for each m 0000b750: 6f 64 69 66 69 65 72 5c 6e 20 20 20 20 20 20 20 odifier\n 0000b760: 20 2f 2f 20 69 73 20 66 69 6c 6c 65 64 20 77 69 // is filled wi 0000b770: 74 68 20 74 68 65 20 69 6e 69 74 69 61 6c 20 64 th the initial d 0000b780: 61 74 61 20 73 70 65 63 69 66 69 65 64 20 62 79 ata specified by 0000b790: 20 74 68 65 20 6d 6f 64 69 66 69 65 72 2e 20 54 the modifier. T 0000b7a0: 68 69 73 20 6d 65 61 6e 73 5c 6e 20 20 20 20 20 his means\n 0000b7b0: 20 20 20 2f 2f 20 69 74 20 64 6f 65 73 6e 27 74 // it doesn't 0000b7c0: 20 70 65 72 73 69 73 74 20 61 6e 64 20 69 73 20 persist and is 0000b7d0: 66 72 65 73 68 20 6f 6e 20 65 61 63 68 20 75 70 fresh on each up 0000b7e0: 64 61 74 65 2e 5c 6e 20 20 20 20 20 20 20 20 2f date.\n / 0000b7f0: 2f 20 54 6f 20 65 6e 73 75 72 65 20 70 65 72 73 / To ensure pers 0000b800: 69 73 74 65 6e 74 20 64 61 74 61 2c 20 75 73 65 istent data, use 0000b810: 20 60 24 7b 6e 61 6d 65 7d 23 70 65 72 73 69 73 `${name}#persis 0000b820: 74 65 6e 74 60 5c 6e 5c 6e 20 20 20 20 20 20 20 tent`\n\n 0000b830: 20 73 74 61 74 65 2e 6f 72 64 65 72 65 64 4d 6f state.orderedMo 0000b840: 64 69 66 69 65 72 73 2e 66 6f 72 45 61 63 68 28 difiers.forEach( 0000b850: 66 75 6e 63 74 69 6f 6e 20 28 6d 6f 64 69 66 69 function (modifi 0000b860: 65 72 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 er) {\n 0000b870: 20 72 65 74 75 72 6e 20 73 74 61 74 65 2e 6d 6f return state.mo 0000b880: 64 69 66 69 65 72 73 44 61 74 61 5b 6d 6f 64 69 difiersData[modi 0000b890: 66 69 65 72 2e 6e 61 6d 65 5d 20 3d 20 4f 62 6a fier.name] = Obj 0000b8a0: 65 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c 20 6d ect.assign({}, m 0000b8b0: 6f 64 69 66 69 65 72 2e 64 61 74 61 29 3b 5c 6e odifier.data);\n 0000b8c0: 20 20 20 20 20 20 20 20 7d 29 3b 5c 6e 5c 6e 20 });\n\n 0000b8d0: 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 for (var 0000b8e0: 69 6e 64 65 78 20 3d 20 30 3b 20 69 6e 64 65 78 index = 0; index 0000b8f0: 20 3c 20 73 74 61 74 65 2e 6f 72 64 65 72 65 64 < state.ordered 0000b900: 4d 6f 64 69 66 69 65 72 73 2e 6c 65 6e 67 74 68 Modifiers.length 0000b910: 3b 20 69 6e 64 65 78 2b 2b 29 20 7b 5c 6e 20 20 ; index++) {\n 0000b920: 20 20 20 20 20 20 20 20 69 66 20 28 73 74 61 74 if (stat 0000b930: 65 2e 72 65 73 65 74 20 3d 3d 3d 20 74 72 75 65 e.reset === true 0000b940: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 20 ) {\n 0000b950: 20 73 74 61 74 65 2e 72 65 73 65 74 20 3d 20 66 state.reset = f 0000b960: 61 6c 73 65 3b 5c 6e 20 20 20 20 20 20 20 20 20 alse;\n 0000b970: 20 20 20 69 6e 64 65 78 20 3d 20 2d 31 3b 5c 6e index = -1;\n 0000b980: 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 cont 0000b990: 69 6e 75 65 3b 5c 6e 20 20 20 20 20 20 20 20 20 inue;\n 0000b9a0: 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 20 20 20 20 }\n\n 0000b9b0: 76 61 72 20 5f 73 74 61 74 65 24 6f 72 64 65 72 var _state$order 0000b9c0: 65 64 4d 6f 64 69 66 69 65 20 3d 20 73 74 61 74 edModifie = stat 0000b9d0: 65 2e 6f 72 64 65 72 65 64 4d 6f 64 69 66 69 65 e.orderedModifie 0000b9e0: 72 73 5b 69 6e 64 65 78 5d 2c 5c 6e 20 20 20 20 rs[index],\n 0000b9f0: 20 20 20 20 20 20 20 20 20 20 66 6e 20 3d 20 5f fn = _ 0000ba00: 73 74 61 74 65 24 6f 72 64 65 72 65 64 4d 6f 64 state$orderedMod 0000ba10: 69 66 69 65 2e 66 6e 2c 5c 6e 20 20 20 20 20 20 ifie.fn,\n 0000ba20: 20 20 20 20 20 20 20 20 5f 73 74 61 74 65 24 6f _state$o 0000ba30: 72 64 65 72 65 64 4d 6f 64 69 66 69 65 32 20 3d rderedModifie2 = 0000ba40: 20 5f 73 74 61 74 65 24 6f 72 64 65 72 65 64 4d _state$orderedM 0000ba50: 6f 64 69 66 69 65 2e 6f 70 74 69 6f 6e 73 2c 5c odifie.options,\ 0000ba60: 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5f n _ 0000ba70: 6f 70 74 69 6f 6e 73 20 3d 20 5f 73 74 61 74 65 options = _state 0000ba80: 24 6f 72 64 65 72 65 64 4d 6f 64 69 66 69 65 32 $orderedModifie2 0000ba90: 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 7b 7d === void 0 ? {} 0000baa0: 20 3a 20 5f 73 74 61 74 65 24 6f 72 64 65 72 65 : _state$ordere 0000bab0: 64 4d 6f 64 69 66 69 65 32 2c 5c 6e 20 20 20 20 dModifie2,\n 0000bac0: 20 20 20 20 20 20 20 20 20 20 6e 61 6d 65 20 3d name = 0000bad0: 20 5f 73 74 61 74 65 24 6f 72 64 65 72 65 64 4d _state$orderedM 0000bae0: 6f 64 69 66 69 65 2e 6e 61 6d 65 3b 5c 6e 5c 6e odifie.name;\n\n 0000baf0: 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74 79 if (ty 0000bb00: 70 65 6f 66 20 66 6e 20 3d 3d 3d 20 27 66 75 6e peof fn === 'fun 0000bb10: 63 74 69 6f 6e 27 29 20 7b 5c 6e 20 20 20 20 20 ction') {\n 0000bb20: 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 66 state = f 0000bb30: 6e 28 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 20 n({\n 0000bb40: 20 20 20 73 74 61 74 65 3a 20 73 74 61 74 65 2c state: state, 0000bb50: 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 \n 0000bb60: 6f 70 74 69 6f 6e 73 3a 20 5f 6f 70 74 69 6f 6e options: _option 0000bb70: 73 2c 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 s,\n 0000bb80: 20 20 6e 61 6d 65 3a 20 6e 61 6d 65 2c 5c 6e 20 name: name,\n 0000bb90: 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 73 ins 0000bba0: 74 61 6e 63 65 3a 20 69 6e 73 74 61 6e 63 65 5c tance: instance\ 0000bbb0: 6e 20 20 20 20 20 20 20 20 20 20 20 20 7d 29 20 n }) 0000bbc0: 7c 7c 20 73 74 61 74 65 3b 5c 6e 20 20 20 20 20 || state;\n 0000bbd0: 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 20 20 }\n 0000bbe0: 7d 5c 6e 20 20 20 20 20 20 7d 2c 5c 6e 20 20 20 }\n },\n 0000bbf0: 20 20 20 2f 2f 20 41 73 79 6e 63 20 61 6e 64 20 // Async and 0000bc00: 6f 70 74 69 6d 69 73 74 69 63 61 6c 6c 79 20 6f optimistically o 0000bc10: 70 74 69 6d 69 7a 65 64 20 75 70 64 61 74 65 20 ptimized update 0000bc20: e2 80 93 20 69 74 20 77 69 6c 6c 20 6e 6f 74 20 ... it will not 0000bc30: 62 65 20 65 78 65 63 75 74 65 64 20 69 66 5c 6e be executed if\n 0000bc40: 20 20 20 20 20 20 2f 2f 20 6e 6f 74 20 6e 65 63 // not nec 0000bc50: 65 73 73 61 72 79 20 28 64 65 62 6f 75 6e 63 65 essary (debounce 0000bc60: 64 20 74 6f 20 72 75 6e 20 61 74 20 6d 6f 73 74 d to run at most 0000bc70: 20 6f 6e 63 65 2d 70 65 72 2d 74 69 63 6b 29 5c once-per-tick)\ 0000bc80: 6e 20 20 20 20 20 20 75 70 64 61 74 65 3a 20 64 n update: d 0000bc90: 65 62 6f 75 6e 63 65 28 66 75 6e 63 74 69 6f 6e ebounce(function 0000bca0: 20 28 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 () {\n r 0000bcb0: 65 74 75 72 6e 20 6e 65 77 20 50 72 6f 6d 69 73 eturn new Promis 0000bcc0: 65 28 66 75 6e 63 74 69 6f 6e 20 28 72 65 73 6f e(function (reso 0000bcd0: 6c 76 65 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 lve) {\n 0000bce0: 20 20 69 6e 73 74 61 6e 63 65 2e 66 6f 72 63 65 instance.force 0000bcf0: 55 70 64 61 74 65 28 29 3b 5c 6e 20 20 20 20 20 Update();\n 0000bd00: 20 20 20 20 20 72 65 73 6f 6c 76 65 28 73 74 61 resolve(sta 0000bd10: 74 65 29 3b 5c 6e 20 20 20 20 20 20 20 20 7d 29 te);\n }) 0000bd20: 3b 5c 6e 20 20 20 20 20 20 7d 29 2c 5c 6e 20 20 ;\n }),\n 0000bd30: 20 20 20 20 64 65 73 74 72 6f 79 3a 20 66 75 6e destroy: fun 0000bd40: 63 74 69 6f 6e 20 64 65 73 74 72 6f 79 28 29 20 ction destroy() 0000bd50: 7b 5c 6e 20 20 20 20 20 20 20 20 63 6c 65 61 6e {\n clean 0000bd60: 75 70 4d 6f 64 69 66 69 65 72 45 66 66 65 63 74 upModifierEffect 0000bd70: 73 28 29 3b 5c 6e 20 20 20 20 20 20 20 20 69 73 s();\n is 0000bd80: 44 65 73 74 72 6f 79 65 64 20 3d 20 74 72 75 65 Destroyed = true 0000bd90: 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 ;\n }\n 0000bda0: 7d 3b 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 61 };\n\n if (!a 0000bdb0: 72 65 56 61 6c 69 64 45 6c 65 6d 65 6e 74 73 28 reValidElements( 0000bdc0: 72 65 66 65 72 65 6e 63 65 2c 20 70 6f 70 70 65 reference, poppe 0000bdd0: 72 29 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 r)) {\n ret 0000bde0: 75 72 6e 20 69 6e 73 74 61 6e 63 65 3b 5c 6e 20 urn instance;\n 0000bdf0: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 69 6e 73 74 }\n\n inst 0000be00: 61 6e 63 65 2e 73 65 74 4f 70 74 69 6f 6e 73 28 ance.setOptions( 0000be10: 6f 70 74 69 6f 6e 73 29 2e 74 68 65 6e 28 66 75 options).then(fu 0000be20: 6e 63 74 69 6f 6e 20 28 73 74 61 74 65 29 20 7b nction (state) { 0000be30: 5c 6e 20 20 20 20 20 20 69 66 20 28 21 69 73 44 \n if (!isD 0000be40: 65 73 74 72 6f 79 65 64 20 26 26 20 6f 70 74 69 estroyed && opti 0000be50: 6f 6e 73 2e 6f 6e 46 69 72 73 74 55 70 64 61 74 ons.onFirstUpdat 0000be60: 65 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 6f 70 e) {\n op 0000be70: 74 69 6f 6e 73 2e 6f 6e 46 69 72 73 74 55 70 64 tions.onFirstUpd 0000be80: 61 74 65 28 73 74 61 74 65 29 3b 5c 6e 20 20 20 ate(state);\n 0000be90: 20 20 20 7d 5c 6e 20 20 20 20 7d 29 3b 20 2f 2f }\n }); // 0000bea0: 20 4d 6f 64 69 66 69 65 72 73 20 68 61 76 65 20 Modifiers have 0000beb0: 74 68 65 20 61 62 69 6c 69 74 79 20 74 6f 20 65 the ability to e 0000bec0: 78 65 63 75 74 65 20 61 72 62 69 74 72 61 72 79 xecute arbitrary 0000bed0: 20 63 6f 64 65 20 62 65 66 6f 72 65 20 74 68 65 code before the 0000bee0: 20 66 69 72 73 74 5c 6e 20 20 20 20 2f 2f 20 75 first\n // u 0000bef0: 70 64 61 74 65 20 63 79 63 6c 65 20 72 75 6e 73 pdate cycle runs 0000bf00: 2e 20 54 68 65 79 20 77 69 6c 6c 20 62 65 20 65 . They will be e 0000bf10: 78 65 63 75 74 65 64 20 69 6e 20 74 68 65 20 73 xecuted in the s 0000bf20: 61 6d 65 20 6f 72 64 65 72 20 61 73 20 74 68 65 ame order as the 0000bf30: 20 75 70 64 61 74 65 5c 6e 20 20 20 20 2f 2f 20 update\n // 0000bf40: 63 79 63 6c 65 2e 20 54 68 69 73 20 69 73 20 75 cycle. This is u 0000bf50: 73 65 66 75 6c 20 77 68 65 6e 20 61 20 6d 6f 64 seful when a mod 0000bf60: 69 66 69 65 72 20 61 64 64 73 20 73 6f 6d 65 20 ifier adds some 0000bf70: 70 65 72 73 69 73 74 65 6e 74 20 64 61 74 61 20 persistent data 0000bf80: 74 68 61 74 5c 6e 20 20 20 20 2f 2f 20 6f 74 68 that\n // oth 0000bf90: 65 72 20 6d 6f 64 69 66 69 65 72 73 20 6e 65 65 er modifiers nee 0000bfa0: 64 20 74 6f 20 75 73 65 2c 20 62 75 74 20 74 68 d to use, but th 0000bfb0: 65 20 6d 6f 64 69 66 69 65 72 20 69 73 20 72 75 e modifier is ru 0000bfc0: 6e 20 61 66 74 65 72 20 74 68 65 20 64 65 70 65 n after the depe 0000bfd0: 6e 64 65 6e 74 5c 6e 20 20 20 20 2f 2f 20 6f 6e ndent\n // on 0000bfe0: 65 2e 5c 6e 5c 6e 20 20 20 20 66 75 6e 63 74 69 e.\n\n functi 0000bff0: 6f 6e 20 72 75 6e 4d 6f 64 69 66 69 65 72 45 66 on runModifierEf 0000c000: 66 65 63 74 73 28 29 20 7b 5c 6e 20 20 20 20 20 fects() {\n 0000c010: 20 73 74 61 74 65 2e 6f 72 64 65 72 65 64 4d 6f state.orderedMo 0000c020: 64 69 66 69 65 72 73 2e 66 6f 72 45 61 63 68 28 difiers.forEach( 0000c030: 66 75 6e 63 74 69 6f 6e 20 28 5f 72 65 66 29 20 function (_ref) 0000c040: 7b 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 6e {\n var n 0000c050: 61 6d 65 20 3d 20 5f 72 65 66 2e 6e 61 6d 65 2c ame = _ref.name, 0000c060: 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 5f 72 \n _r 0000c070: 65 66 24 6f 70 74 69 6f 6e 73 20 3d 20 5f 72 65 ef$options = _re 0000c080: 66 2e 6f 70 74 69 6f 6e 73 2c 5c 6e 20 20 20 20 f.options,\n 0000c090: 20 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 20 options 0000c0a0: 3d 20 5f 72 65 66 24 6f 70 74 69 6f 6e 73 20 3d = _ref$options = 0000c0b0: 3d 3d 20 76 6f 69 64 20 30 20 3f 20 7b 7d 20 3a == void 0 ? {} : 0000c0c0: 20 5f 72 65 66 24 6f 70 74 69 6f 6e 73 2c 5c 6e _ref$options,\n 0000c0d0: 20 20 20 20 20 20 20 20 20 20 20 20 65 66 66 65 effe 0000c0e0: 63 74 20 3d 20 5f 72 65 66 2e 65 66 66 65 63 74 ct = _ref.effect 0000c0f0: 3b 5c 6e 5c 6e 20 20 20 20 20 20 20 20 69 66 20 ;\n\n if 0000c100: 28 74 79 70 65 6f 66 20 65 66 66 65 63 74 20 3d (typeof effect = 0000c110: 3d 3d 20 27 66 75 6e 63 74 69 6f 6e 27 29 20 7b == 'function') { 0000c120: 5c 6e 20 20 20 20 20 20 20 20 20 20 76 61 72 20 \n var 0000c130: 63 6c 65 61 6e 75 70 46 6e 20 3d 20 65 66 66 65 cleanupFn = effe 0000c140: 63 74 28 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 ct({\n 0000c150: 20 20 73 74 61 74 65 3a 20 73 74 61 74 65 2c 5c state: state,\ 0000c160: 6e 20 20 20 20 20 20 20 20 20 20 20 20 6e 61 6d n nam 0000c170: 65 3a 20 6e 61 6d 65 2c 5c 6e 20 20 20 20 20 20 e: name,\n 0000c180: 20 20 20 20 20 20 69 6e 73 74 61 6e 63 65 3a 20 instance: 0000c190: 69 6e 73 74 61 6e 63 65 2c 5c 6e 20 20 20 20 20 instance,\n 0000c1a0: 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 3a 20 options: 0000c1b0: 6f 70 74 69 6f 6e 73 5c 6e 20 20 20 20 20 20 20 options\n 0000c1c0: 20 20 20 7d 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 });\n\n 0000c1d0: 20 20 20 20 76 61 72 20 6e 6f 6f 70 46 6e 20 3d var noopFn = 0000c1e0: 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 6f 70 46 6e function noopFn 0000c1f0: 28 29 20 7b 7d 3b 5c 6e 5c 6e 20 20 20 20 20 20 () {};\n\n 0000c200: 20 20 20 20 65 66 66 65 63 74 43 6c 65 61 6e 75 effectCleanu 0000c210: 70 46 6e 73 2e 70 75 73 68 28 63 6c 65 61 6e 75 pFns.push(cleanu 0000c220: 70 46 6e 20 7c 7c 20 6e 6f 6f 70 46 6e 29 3b 5c pFn || noopFn);\ 0000c230: 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 n }\n 0000c240: 20 20 7d 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e });\n }\n\n 0000c250: 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 function cle 0000c260: 61 6e 75 70 4d 6f 64 69 66 69 65 72 45 66 66 65 anupModifierEffe 0000c270: 63 74 73 28 29 20 7b 5c 6e 20 20 20 20 20 20 65 cts() {\n e 0000c280: 66 66 65 63 74 43 6c 65 61 6e 75 70 46 6e 73 2e ffectCleanupFns. 0000c290: 66 6f 72 45 61 63 68 28 66 75 6e 63 74 69 6f 6e forEach(function 0000c2a0: 20 28 66 6e 29 20 7b 5c 6e 20 20 20 20 20 20 20 (fn) {\n 0000c2b0: 20 72 65 74 75 72 6e 20 66 6e 28 29 3b 5c 6e 20 return fn();\n 0000c2c0: 20 20 20 20 20 7d 29 3b 5c 6e 20 20 20 20 20 20 });\n 0000c2d0: 65 66 66 65 63 74 43 6c 65 61 6e 75 70 46 6e 73 effectCleanupFns 0000c2e0: 20 3d 20 5b 5d 3b 5c 6e 20 20 20 20 7d 5c 6e 5c = [];\n }\n\ 0000c2f0: 6e 20 20 20 20 72 65 74 75 72 6e 20 69 6e 73 74 n return inst 0000c300: 61 6e 63 65 3b 5c 6e 20 20 7d 3b 5c 6e 7d 5c 6e ance;\n };\n}\n 0000c310: 65 78 70 6f 72 74 20 76 61 72 20 63 72 65 61 74 export var creat 0000c320: 65 50 6f 70 70 65 72 20 3d 20 2f 2a 23 5f 5f 50 ePopper = /*#__P 0000c330: 55 52 45 5f 5f 2a 2f 70 6f 70 70 65 72 47 65 6e URE__*/popperGen 0000c340: 65 72 61 74 6f 72 28 29 3b 20 2f 2f 20 65 73 6c erator(); // esl 0000c350: 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 78 74 int-disable-next 0000c360: 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f 2d -line import/no- 0000c370: 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 5c 6e unused-modules\n 0000c380: 5c 6e 65 78 70 6f 72 74 20 7b 20 64 65 74 65 63 \nexport { detec 0000c390: 74 4f 76 65 72 66 6c 6f 77 20 7d 3b 22 2c 22 65 tOverflow };","e 0000c3a0: 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 xport default fu 0000c3b0: 6e 63 74 69 6f 6e 20 6d 65 72 67 65 42 79 4e 61 nction mergeByNa 0000c3c0: 6d 65 28 6d 6f 64 69 66 69 65 72 73 29 20 7b 5c me(modifiers) {\ 0000c3d0: 6e 20 20 76 61 72 20 6d 65 72 67 65 64 20 3d 20 n var merged = 0000c3e0: 6d 6f 64 69 66 69 65 72 73 2e 72 65 64 75 63 65 modifiers.reduce 0000c3f0: 28 66 75 6e 63 74 69 6f 6e 20 28 6d 65 72 67 65 (function (merge 0000c400: 64 2c 20 63 75 72 72 65 6e 74 29 20 7b 5c 6e 20 d, current) {\n 0000c410: 20 20 20 76 61 72 20 65 78 69 73 74 69 6e 67 20 var existing 0000c420: 3d 20 6d 65 72 67 65 64 5b 63 75 72 72 65 6e 74 = merged[current 0000c430: 2e 6e 61 6d 65 5d 3b 5c 6e 20 20 20 20 6d 65 72 .name];\n mer 0000c440: 67 65 64 5b 63 75 72 72 65 6e 74 2e 6e 61 6d 65 ged[current.name 0000c450: 5d 20 3d 20 65 78 69 73 74 69 6e 67 20 3f 20 4f ] = existing ? O 0000c460: 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c bject.assign({}, 0000c470: 20 65 78 69 73 74 69 6e 67 2c 20 63 75 72 72 65 existing, curre 0000c480: 6e 74 2c 20 7b 5c 6e 20 20 20 20 20 20 6f 70 74 nt, {\n opt 0000c490: 69 6f 6e 73 3a 20 4f 62 6a 65 63 74 2e 61 73 73 ions: Object.ass 0000c4a0: 69 67 6e 28 7b 7d 2c 20 65 78 69 73 74 69 6e 67 ign({}, existing 0000c4b0: 2e 6f 70 74 69 6f 6e 73 2c 20 63 75 72 72 65 6e .options, curren 0000c4c0: 74 2e 6f 70 74 69 6f 6e 73 29 2c 5c 6e 20 20 20 t.options),\n 0000c4d0: 20 20 20 64 61 74 61 3a 20 4f 62 6a 65 63 74 2e data: Object. 0000c4e0: 61 73 73 69 67 6e 28 7b 7d 2c 20 65 78 69 73 74 assign({}, exist 0000c4f0: 69 6e 67 2e 64 61 74 61 2c 20 63 75 72 72 65 6e ing.data, curren 0000c500: 74 2e 64 61 74 61 29 5c 6e 20 20 20 20 7d 29 20 t.data)\n }) 0000c510: 3a 20 63 75 72 72 65 6e 74 3b 5c 6e 20 20 20 20 : current;\n 0000c520: 72 65 74 75 72 6e 20 6d 65 72 67 65 64 3b 5c 6e return merged;\n 0000c530: 20 20 7d 2c 20 7b 7d 29 3b 20 2f 2f 20 49 45 31 }, {}); // IE1 0000c540: 31 20 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f 1 does not suppo 0000c550: 72 74 20 4f 62 6a 65 63 74 2e 76 61 6c 75 65 73 rt Object.values 0000c560: 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 4f 62 6a \n\n return Obj 0000c570: 65 63 74 2e 6b 65 79 73 28 6d 65 72 67 65 64 29 ect.keys(merged) 0000c580: 2e 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 6b .map(function (k 0000c590: 65 79 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 ey) {\n retur 0000c5a0: 6e 20 6d 65 72 67 65 64 5b 6b 65 79 5d 3b 5c 6e n merged[key];\n 0000c5b0: 20 20 7d 29 3b 5c 6e 7d 22 2c 22 69 6d 70 6f 72 });\n}","impor 0000c5c0: 74 20 7b 20 70 6f 70 70 65 72 47 65 6e 65 72 61 t { popperGenera 0000c5d0: 74 6f 72 2c 20 64 65 74 65 63 74 4f 76 65 72 66 tor, detectOverf 0000c5e0: 6c 6f 77 20 7d 20 66 72 6f 6d 20 5c 22 2e 2f 63 low } from \"./c 0000c5f0: 72 65 61 74 65 50 6f 70 70 65 72 2e 6a 73 5c 22 reatePopper.js\" 0000c600: 3b 5c 6e 69 6d 70 6f 72 74 20 65 76 65 6e 74 4c ;\nimport eventL 0000c610: 69 73 74 65 6e 65 72 73 20 66 72 6f 6d 20 5c 22 isteners from \" 0000c620: 2e 2f 6d 6f 64 69 66 69 65 72 73 2f 65 76 65 6e ./modifiers/even 0000c630: 74 4c 69 73 74 65 6e 65 72 73 2e 6a 73 5c 22 3b tListeners.js\"; 0000c640: 5c 6e 69 6d 70 6f 72 74 20 70 6f 70 70 65 72 4f \nimport popperO 0000c650: 66 66 73 65 74 73 20 66 72 6f 6d 20 5c 22 2e 2f ffsets from \"./ 0000c660: 6d 6f 64 69 66 69 65 72 73 2f 70 6f 70 70 65 72 modifiers/popper 0000c670: 4f 66 66 73 65 74 73 2e 6a 73 5c 22 3b 5c 6e 69 Offsets.js\";\ni 0000c680: 6d 70 6f 72 74 20 63 6f 6d 70 75 74 65 53 74 79 mport computeSty 0000c690: 6c 65 73 20 66 72 6f 6d 20 5c 22 2e 2f 6d 6f 64 les from \"./mod 0000c6a0: 69 66 69 65 72 73 2f 63 6f 6d 70 75 74 65 53 74 ifiers/computeSt 0000c6b0: 79 6c 65 73 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f yles.js\";\nimpo 0000c6c0: 72 74 20 61 70 70 6c 79 53 74 79 6c 65 73 20 66 rt applyStyles f 0000c6d0: 72 6f 6d 20 5c 22 2e 2f 6d 6f 64 69 66 69 65 72 rom \"./modifier 0000c6e0: 73 2f 61 70 70 6c 79 53 74 79 6c 65 73 2e 6a 73 s/applyStyles.js 0000c6f0: 5c 22 3b 5c 6e 76 61 72 20 64 65 66 61 75 6c 74 \";\nvar default 0000c700: 4d 6f 64 69 66 69 65 72 73 20 3d 20 5b 65 76 65 Modifiers = [eve 0000c710: 6e 74 4c 69 73 74 65 6e 65 72 73 2c 20 70 6f 70 ntListeners, pop 0000c720: 70 65 72 4f 66 66 73 65 74 73 2c 20 63 6f 6d 70 perOffsets, comp 0000c730: 75 74 65 53 74 79 6c 65 73 2c 20 61 70 70 6c 79 uteStyles, apply 0000c740: 53 74 79 6c 65 73 5d 3b 5c 6e 76 61 72 20 63 72 Styles];\nvar cr 0000c750: 65 61 74 65 50 6f 70 70 65 72 20 3d 20 2f 2a 23 eatePopper = /*# 0000c760: 5f 5f 50 55 52 45 5f 5f 2a 2f 70 6f 70 70 65 72 __PURE__*/popper 0000c770: 47 65 6e 65 72 61 74 6f 72 28 7b 5c 6e 20 20 64 Generator({\n d 0000c780: 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 73 3a efaultModifiers: 0000c790: 20 64 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 defaultModifier 0000c7a0: 73 5c 6e 7d 29 3b 20 2f 2f 20 65 73 6c 69 6e 74 s\n}); // eslint 0000c7b0: 2d 64 69 73 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 -disable-next-li 0000c7c0: 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f 2d 75 6e 75 ne import/no-unu 0000c7d0: 73 65 64 2d 6d 6f 64 75 6c 65 73 5c 6e 5c 6e 65 sed-modules\n\ne 0000c7e0: 78 70 6f 72 74 20 7b 20 63 72 65 61 74 65 50 6f xport { createPo 0000c7f0: 70 70 65 72 2c 20 70 6f 70 70 65 72 47 65 6e 65 pper, popperGene 0000c800: 72 61 74 6f 72 2c 20 64 65 66 61 75 6c 74 4d 6f rator, defaultMo 0000c810: 64 69 66 69 65 72 73 2c 20 64 65 74 65 63 74 4f difiers, detectO 0000c820: 76 65 72 66 6c 6f 77 20 7d 3b 22 2c 22 69 6d 70 verflow };","imp 0000c830: 6f 72 74 20 7b 20 70 6f 70 70 65 72 47 65 6e 65 ort { popperGene 0000c840: 72 61 74 6f 72 2c 20 64 65 74 65 63 74 4f 76 65 rator, detectOve 0000c850: 72 66 6c 6f 77 20 7d 20 66 72 6f 6d 20 5c 22 2e rflow } from \". 0000c860: 2f 63 72 65 61 74 65 50 6f 70 70 65 72 2e 6a 73 /createPopper.js 0000c870: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 65 76 65 6e \";\nimport even 0000c880: 74 4c 69 73 74 65 6e 65 72 73 20 66 72 6f 6d 20 tListeners from 0000c890: 5c 22 2e 2f 6d 6f 64 69 66 69 65 72 73 2f 65 76 \"./modifiers/ev 0000c8a0: 65 6e 74 4c 69 73 74 65 6e 65 72 73 2e 6a 73 5c entListeners.js\ 0000c8b0: 22 3b 5c 6e 69 6d 70 6f 72 74 20 70 6f 70 70 65 ";\nimport poppe 0000c8c0: 72 4f 66 66 73 65 74 73 20 66 72 6f 6d 20 5c 22 rOffsets from \" 0000c8d0: 2e 2f 6d 6f 64 69 66 69 65 72 73 2f 70 6f 70 70 ./modifiers/popp 0000c8e0: 65 72 4f 66 66 73 65 74 73 2e 6a 73 5c 22 3b 5c erOffsets.js\";\ 0000c8f0: 6e 69 6d 70 6f 72 74 20 63 6f 6d 70 75 74 65 53 nimport computeS 0000c900: 74 79 6c 65 73 20 66 72 6f 6d 20 5c 22 2e 2f 6d tyles from \"./m 0000c910: 6f 64 69 66 69 65 72 73 2f 63 6f 6d 70 75 74 65 odifiers/compute 0000c920: 53 74 79 6c 65 73 2e 6a 73 5c 22 3b 5c 6e 69 6d Styles.js\";\nim 0000c930: 70 6f 72 74 20 61 70 70 6c 79 53 74 79 6c 65 73 port applyStyles 0000c940: 20 66 72 6f 6d 20 5c 22 2e 2f 6d 6f 64 69 66 69 from \"./modifi 0000c950: 65 72 73 2f 61 70 70 6c 79 53 74 79 6c 65 73 2e ers/applyStyles. 0000c960: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 6f 66 js\";\nimport of 0000c970: 66 73 65 74 20 66 72 6f 6d 20 5c 22 2e 2f 6d 6f fset from \"./mo 0000c980: 64 69 66 69 65 72 73 2f 6f 66 66 73 65 74 2e 6a difiers/offset.j 0000c990: 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 66 6c 69 s\";\nimport fli 0000c9a0: 70 20 66 72 6f 6d 20 5c 22 2e 2f 6d 6f 64 69 66 p from \"./modif 0000c9b0: 69 65 72 73 2f 66 6c 69 70 2e 6a 73 5c 22 3b 5c iers/flip.js\";\ 0000c9c0: 6e 69 6d 70 6f 72 74 20 70 72 65 76 65 6e 74 4f nimport preventO 0000c9d0: 76 65 72 66 6c 6f 77 20 66 72 6f 6d 20 5c 22 2e verflow from \". 0000c9e0: 2f 6d 6f 64 69 66 69 65 72 73 2f 70 72 65 76 65 /modifiers/preve 0000c9f0: 6e 74 4f 76 65 72 66 6c 6f 77 2e 6a 73 5c 22 3b ntOverflow.js\"; 0000ca00: 5c 6e 69 6d 70 6f 72 74 20 61 72 72 6f 77 20 66 \nimport arrow f 0000ca10: 72 6f 6d 20 5c 22 2e 2f 6d 6f 64 69 66 69 65 72 rom \"./modifier 0000ca20: 73 2f 61 72 72 6f 77 2e 6a 73 5c 22 3b 5c 6e 69 s/arrow.js\";\ni 0000ca30: 6d 70 6f 72 74 20 68 69 64 65 20 66 72 6f 6d 20 mport hide from 0000ca40: 5c 22 2e 2f 6d 6f 64 69 66 69 65 72 73 2f 68 69 \"./modifiers/hi 0000ca50: 64 65 2e 6a 73 5c 22 3b 5c 6e 76 61 72 20 64 65 de.js\";\nvar de 0000ca60: 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 73 20 3d faultModifiers = 0000ca70: 20 5b 65 76 65 6e 74 4c 69 73 74 65 6e 65 72 73 [eventListeners 0000ca80: 2c 20 70 6f 70 70 65 72 4f 66 66 73 65 74 73 2c , popperOffsets, 0000ca90: 20 63 6f 6d 70 75 74 65 53 74 79 6c 65 73 2c 20 computeStyles, 0000caa0: 61 70 70 6c 79 53 74 79 6c 65 73 2c 20 6f 66 66 applyStyles, off 0000cab0: 73 65 74 2c 20 66 6c 69 70 2c 20 70 72 65 76 65 set, flip, preve 0000cac0: 6e 74 4f 76 65 72 66 6c 6f 77 2c 20 61 72 72 6f ntOverflow, arro 0000cad0: 77 2c 20 68 69 64 65 5d 3b 5c 6e 76 61 72 20 63 w, hide];\nvar c 0000cae0: 72 65 61 74 65 50 6f 70 70 65 72 20 3d 20 2f 2a reatePopper = /* 0000caf0: 23 5f 5f 50 55 52 45 5f 5f 2a 2f 70 6f 70 70 65 #__PURE__*/poppe 0000cb00: 72 47 65 6e 65 72 61 74 6f 72 28 7b 5c 6e 20 20 rGenerator({\n 0000cb10: 64 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 73 defaultModifiers 0000cb20: 3a 20 64 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 : defaultModifie 0000cb30: 72 73 5c 6e 7d 29 3b 20 2f 2f 20 65 73 6c 69 6e rs\n}); // eslin 0000cb40: 74 2d 64 69 73 61 62 6c 65 2d 6e 65 78 74 2d 6c t-disable-next-l 0000cb50: 69 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f 2d 75 6e ine import/no-un 0000cb60: 75 73 65 64 2d 6d 6f 64 75 6c 65 73 5c 6e 5c 6e used-modules\n\n 0000cb70: 65 78 70 6f 72 74 20 7b 20 63 72 65 61 74 65 50 export { createP 0000cb80: 6f 70 70 65 72 2c 20 70 6f 70 70 65 72 47 65 6e opper, popperGen 0000cb90: 65 72 61 74 6f 72 2c 20 64 65 66 61 75 6c 74 4d erator, defaultM 0000cba0: 6f 64 69 66 69 65 72 73 2c 20 64 65 74 65 63 74 odifiers, detect 0000cbb0: 4f 76 65 72 66 6c 6f 77 20 7d 3b 20 2f 2f 20 65 Overflow }; // e 0000cbc0: 73 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 slint-disable-ne 0000cbd0: 78 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e xt-line import/n 0000cbe0: 6f 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 o-unused-modules 0000cbf0: 5c 6e 5c 6e 65 78 70 6f 72 74 20 7b 20 63 72 65 \n\nexport { cre 0000cc00: 61 74 65 50 6f 70 70 65 72 20 61 73 20 63 72 65 atePopper as cre 0000cc10: 61 74 65 50 6f 70 70 65 72 4c 69 74 65 20 7d 20 atePopperLite } 0000cc20: 66 72 6f 6d 20 5c 22 2e 2f 70 6f 70 70 65 72 2d from \"./popper- 0000cc30: 6c 69 74 65 2e 6a 73 5c 22 3b 20 2f 2f 20 65 73 lite.js\"; // es 0000cc40: 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 78 lint-disable-nex 0000cc50: 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f t-line import/no 0000cc60: 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 5c -unused-modules\ 0000cc70: 6e 5c 6e 65 78 70 6f 72 74 20 2a 20 66 72 6f 6d n\nexport * from 0000cc80: 20 5c 22 2e 2f 6d 6f 64 69 66 69 65 72 73 2f 69 \"./modifiers/i 0000cc90: 6e 64 65 78 2e 6a 73 5c 22 3b 22 2c 22 2f 2a 2a ndex.js\";","/** 0000cca0: 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d \n * ----------- 0000ccb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000ccc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000ccd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000cce0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c ---------------\ 0000ccf0: 6e 20 2a 20 42 6f 6f 74 73 74 72 61 70 20 64 72 n * Bootstrap dr 0000cd00: 6f 70 64 6f 77 6e 2e 6a 73 5c 6e 20 2a 20 4c 69 opdown.js\n * Li 0000cd10: 63 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 censed under MIT 0000cd20: 20 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 (https://github 0000cd30: 2e 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 .com/twbs/bootst 0000cd40: 72 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 rap/blob/main/LI 0000cd50: 43 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d CENSE)\n * ----- 0000cd60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000cd70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000cd80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000cd90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000cda0: 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d -----\n */\n\nim 0000cdb0: 70 6f 72 74 20 2a 20 61 73 20 50 6f 70 70 65 72 port * as Popper 0000cdc0: 20 66 72 6f 6d 20 27 40 70 6f 70 70 65 72 6a 73 from '@popperjs 0000cdd0: 2f 63 6f 72 65 27 5c 6e 69 6d 70 6f 72 74 20 42 /core'\nimport B 0000cde0: 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 20 66 72 6f aseComponent fro 0000cdf0: 6d 20 27 2e 2f 62 61 73 65 2d 63 6f 6d 70 6f 6e m './base-compon 0000ce00: 65 6e 74 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 ent.js'\nimport 0000ce10: 45 76 65 6e 74 48 61 6e 64 6c 65 72 20 66 72 6f EventHandler fro 0000ce20: 6d 20 27 2e 2f 64 6f 6d 2f 65 76 65 6e 74 2d 68 m './dom/event-h 0000ce30: 61 6e 64 6c 65 72 2e 6a 73 27 5c 6e 69 6d 70 6f andler.js'\nimpo 0000ce40: 72 74 20 4d 61 6e 69 70 75 6c 61 74 6f 72 20 66 rt Manipulator f 0000ce50: 72 6f 6d 20 27 2e 2f 64 6f 6d 2f 6d 61 6e 69 70 rom './dom/manip 0000ce60: 75 6c 61 74 6f 72 2e 6a 73 27 5c 6e 69 6d 70 6f ulator.js'\nimpo 0000ce70: 72 74 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e rt SelectorEngin 0000ce80: 65 20 66 72 6f 6d 20 27 2e 2f 64 6f 6d 2f 73 65 e from './dom/se 0000ce90: 6c 65 63 74 6f 72 2d 65 6e 67 69 6e 65 2e 6a 73 lector-engine.js 0000cea0: 27 5c 6e 69 6d 70 6f 72 74 20 7b 5c 6e 20 20 64 '\nimport {\n d 0000ceb0: 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 efineJQueryPlugi 0000cec0: 6e 2c 5c 6e 20 20 65 78 65 63 75 74 65 2c 5c 6e n,\n execute,\n 0000ced0: 20 20 67 65 74 45 6c 65 6d 65 6e 74 2c 5c 6e 20 getElement,\n 0000cee0: 20 67 65 74 4e 65 78 74 41 63 74 69 76 65 45 6c getNextActiveEl 0000cef0: 65 6d 65 6e 74 2c 5c 6e 20 20 69 73 44 69 73 61 ement,\n isDisa 0000cf00: 62 6c 65 64 2c 5c 6e 20 20 69 73 45 6c 65 6d 65 bled,\n isEleme 0000cf10: 6e 74 2c 5c 6e 20 20 69 73 52 54 4c 2c 5c 6e 20 nt,\n isRTL,\n 0000cf20: 20 69 73 56 69 73 69 62 6c 65 2c 5c 6e 20 20 6e isVisible,\n n 0000cf30: 6f 6f 70 5c 6e 7d 20 66 72 6f 6d 20 27 2e 2f 75 oop\n} from './u 0000cf40: 74 69 6c 2f 69 6e 64 65 78 2e 6a 73 27 5c 6e 5c til/index.js'\n\ 0000cf50: 6e 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e 73 74 61 6e n/**\n * Constan 0000cf60: 74 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 ts\n */\n\nconst 0000cf70: 20 4e 41 4d 45 20 3d 20 27 64 72 6f 70 64 6f 77 NAME = 'dropdow 0000cf80: 6e 27 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f 4b n'\nconst DATA_K 0000cf90: 45 59 20 3d 20 27 62 73 2e 64 72 6f 70 64 6f 77 EY = 'bs.dropdow 0000cfa0: 6e 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f n'\nconst EVENT_ 0000cfb0: 4b 45 59 20 3d 20 60 2e 24 7b 44 41 54 41 5f 4b KEY = `.${DATA_K 0000cfc0: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 44 41 54 41 EY}`\nconst DATA 0000cfd0: 5f 41 50 49 5f 4b 45 59 20 3d 20 27 2e 64 61 74 _API_KEY = '.dat 0000cfe0: 61 2d 61 70 69 27 5c 6e 5c 6e 63 6f 6e 73 74 20 a-api'\n\nconst 0000cff0: 45 53 43 41 50 45 5f 4b 45 59 20 3d 20 27 45 73 ESCAPE_KEY = 'Es 0000d000: 63 61 70 65 27 5c 6e 63 6f 6e 73 74 20 54 41 42 cape'\nconst TAB 0000d010: 5f 4b 45 59 20 3d 20 27 54 61 62 27 5c 6e 63 6f _KEY = 'Tab'\nco 0000d020: 6e 73 74 20 41 52 52 4f 57 5f 55 50 5f 4b 45 59 nst ARROW_UP_KEY 0000d030: 20 3d 20 27 41 72 72 6f 77 55 70 27 5c 6e 63 6f = 'ArrowUp'\nco 0000d040: 6e 73 74 20 41 52 52 4f 57 5f 44 4f 57 4e 5f 4b nst ARROW_DOWN_K 0000d050: 45 59 20 3d 20 27 41 72 72 6f 77 44 6f 77 6e 27 EY = 'ArrowDown' 0000d060: 5c 6e 63 6f 6e 73 74 20 52 49 47 48 54 5f 4d 4f \nconst RIGHT_MO 0000d070: 55 53 45 5f 42 55 54 54 4f 4e 20 3d 20 32 20 2f USE_BUTTON = 2 / 0000d080: 2f 20 4d 6f 75 73 65 45 76 65 6e 74 2e 62 75 74 / MouseEvent.but 0000d090: 74 6f 6e 20 76 61 6c 75 65 20 66 6f 72 20 74 68 ton value for th 0000d0a0: 65 20 73 65 63 6f 6e 64 61 72 79 20 62 75 74 74 e secondary butt 0000d0b0: 6f 6e 2c 20 75 73 75 61 6c 6c 79 20 74 68 65 20 on, usually the 0000d0c0: 72 69 67 68 74 20 62 75 74 74 6f 6e 5c 6e 5c 6e right button\n\n 0000d0d0: 63 6f 6e 73 74 20 45 56 45 4e 54 5f 48 49 44 45 const EVENT_HIDE 0000d0e0: 20 3d 20 60 68 69 64 65 24 7b 45 56 45 4e 54 5f = `hide${EVENT_ 0000d0f0: 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 KEY}`\nconst EVE 0000d100: 4e 54 5f 48 49 44 44 45 4e 20 3d 20 60 68 69 64 NT_HIDDEN = `hid 0000d110: 64 65 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 den${EVENT_KEY}` 0000d120: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 53 48 \nconst EVENT_SH 0000d130: 4f 57 20 3d 20 60 73 68 6f 77 24 7b 45 56 45 4e OW = `show${EVEN 0000d140: 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 T_KEY}`\nconst E 0000d150: 56 45 4e 54 5f 53 48 4f 57 4e 20 3d 20 60 73 68 VENT_SHOWN = `sh 0000d160: 6f 77 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 own${EVENT_KEY}` 0000d170: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 43 4c \nconst EVENT_CL 0000d180: 49 43 4b 5f 44 41 54 41 5f 41 50 49 20 3d 20 60 ICK_DATA_API = ` 0000d190: 63 6c 69 63 6b 24 7b 45 56 45 4e 54 5f 4b 45 59 click${EVENT_KEY 0000d1a0: 7d 24 7b 44 41 54 41 5f 41 50 49 5f 4b 45 59 7d }${DATA_API_KEY} 0000d1b0: 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4b `\nconst EVENT_K 0000d1c0: 45 59 44 4f 57 4e 5f 44 41 54 41 5f 41 50 49 20 EYDOWN_DATA_API 0000d1d0: 3d 20 60 6b 65 79 64 6f 77 6e 24 7b 45 56 45 4e = `keydown${EVEN 0000d1e0: 54 5f 4b 45 59 7d 24 7b 44 41 54 41 5f 41 50 49 T_KEY}${DATA_API 0000d1f0: 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 _KEY}`\nconst EV 0000d200: 45 4e 54 5f 4b 45 59 55 50 5f 44 41 54 41 5f 41 ENT_KEYUP_DATA_A 0000d210: 50 49 20 3d 20 60 6b 65 79 75 70 24 7b 45 56 45 PI = `keyup${EVE 0000d220: 4e 54 5f 4b 45 59 7d 24 7b 44 41 54 41 5f 41 50 NT_KEY}${DATA_AP 0000d230: 49 5f 4b 45 59 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 I_KEY}`\n\nconst 0000d240: 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 CLASS_NAME_SHOW 0000d250: 20 3d 20 27 73 68 6f 77 27 5c 6e 63 6f 6e 73 74 = 'show'\nconst 0000d260: 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 44 52 4f 50 CLASS_NAME_DROP 0000d270: 55 50 20 3d 20 27 64 72 6f 70 75 70 27 5c 6e 63 UP = 'dropup'\nc 0000d280: 6f 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f onst CLASS_NAME_ 0000d290: 44 52 4f 50 45 4e 44 20 3d 20 27 64 72 6f 70 65 DROPEND = 'drope 0000d2a0: 6e 64 27 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 nd'\nconst CLASS 0000d2b0: 5f 4e 41 4d 45 5f 44 52 4f 50 53 54 41 52 54 20 _NAME_DROPSTART 0000d2c0: 3d 20 27 64 72 6f 70 73 74 61 72 74 27 5c 6e 63 = 'dropstart'\nc 0000d2d0: 6f 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f onst CLASS_NAME_ 0000d2e0: 44 52 4f 50 55 50 5f 43 45 4e 54 45 52 20 3d 20 DROPUP_CENTER = 0000d2f0: 27 64 72 6f 70 75 70 2d 63 65 6e 74 65 72 27 5c 'dropup-center'\ 0000d300: 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d nconst CLASS_NAM 0000d310: 45 5f 44 52 4f 50 44 4f 57 4e 5f 43 45 4e 54 45 E_DROPDOWN_CENTE 0000d320: 52 20 3d 20 27 64 72 6f 70 64 6f 77 6e 2d 63 65 R = 'dropdown-ce 0000d330: 6e 74 65 72 27 5c 6e 5c 6e 63 6f 6e 73 74 20 53 nter'\n\nconst S 0000d340: 45 4c 45 43 54 4f 52 5f 44 41 54 41 5f 54 4f 47 ELECTOR_DATA_TOG 0000d350: 47 4c 45 20 3d 20 27 5b 64 61 74 61 2d 62 73 2d GLE = '[data-bs- 0000d360: 74 6f 67 67 6c 65 3d 5c 22 64 72 6f 70 64 6f 77 toggle=\"dropdow 0000d370: 6e 5c 22 5d 3a 6e 6f 74 28 2e 64 69 73 61 62 6c n\"]:not(.disabl 0000d380: 65 64 29 3a 6e 6f 74 28 3a 64 69 73 61 62 6c 65 ed):not(:disable 0000d390: 64 29 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 d)'\nconst SELEC 0000d3a0: 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 5f TOR_DATA_TOGGLE_ 0000d3b0: 53 48 4f 57 4e 20 3d 20 60 24 7b 53 45 4c 45 43 SHOWN = `${SELEC 0000d3c0: 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 7d TOR_DATA_TOGGLE} 0000d3d0: 2e 24 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 .${CLASS_NAME_SH 0000d3e0: 4f 57 7d 60 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 OW}`\nconst SELE 0000d3f0: 43 54 4f 52 5f 4d 45 4e 55 20 3d 20 27 2e 64 72 CTOR_MENU = '.dr 0000d400: 6f 70 64 6f 77 6e 2d 6d 65 6e 75 27 5c 6e 63 6f opdown-menu'\nco 0000d410: 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 4e 41 56 nst SELECTOR_NAV 0000d420: 42 41 52 20 3d 20 27 2e 6e 61 76 62 61 72 27 5c BAR = '.navbar'\ 0000d430: 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f nconst SELECTOR_ 0000d440: 4e 41 56 42 41 52 5f 4e 41 56 20 3d 20 27 2e 6e NAVBAR_NAV = '.n 0000d450: 61 76 62 61 72 2d 6e 61 76 27 5c 6e 63 6f 6e 73 avbar-nav'\ncons 0000d460: 74 20 53 45 4c 45 43 54 4f 52 5f 56 49 53 49 42 t SELECTOR_VISIB 0000d470: 4c 45 5f 49 54 45 4d 53 20 3d 20 27 2e 64 72 6f LE_ITEMS = '.dro 0000d480: 70 64 6f 77 6e 2d 6d 65 6e 75 20 2e 64 72 6f 70 pdown-menu .drop 0000d490: 64 6f 77 6e 2d 69 74 65 6d 3a 6e 6f 74 28 2e 64 down-item:not(.d 0000d4a0: 69 73 61 62 6c 65 64 29 3a 6e 6f 74 28 3a 64 69 isabled):not(:di 0000d4b0: 73 61 62 6c 65 64 29 27 5c 6e 5c 6e 63 6f 6e 73 sabled)'\n\ncons 0000d4c0: 74 20 50 4c 41 43 45 4d 45 4e 54 5f 54 4f 50 20 t PLACEMENT_TOP 0000d4d0: 3d 20 69 73 52 54 4c 28 29 20 3f 20 27 74 6f 70 = isRTL() ? 'top 0000d4e0: 2d 65 6e 64 27 20 3a 20 27 74 6f 70 2d 73 74 61 -end' : 'top-sta 0000d4f0: 72 74 27 5c 6e 63 6f 6e 73 74 20 50 4c 41 43 45 rt'\nconst PLACE 0000d500: 4d 45 4e 54 5f 54 4f 50 45 4e 44 20 3d 20 69 73 MENT_TOPEND = is 0000d510: 52 54 4c 28 29 20 3f 20 27 74 6f 70 2d 73 74 61 RTL() ? 'top-sta 0000d520: 72 74 27 20 3a 20 27 74 6f 70 2d 65 6e 64 27 5c rt' : 'top-end'\ 0000d530: 6e 63 6f 6e 73 74 20 50 4c 41 43 45 4d 45 4e 54 nconst PLACEMENT 0000d540: 5f 42 4f 54 54 4f 4d 20 3d 20 69 73 52 54 4c 28 _BOTTOM = isRTL( 0000d550: 29 20 3f 20 27 62 6f 74 74 6f 6d 2d 65 6e 64 27 ) ? 'bottom-end' 0000d560: 20 3a 20 27 62 6f 74 74 6f 6d 2d 73 74 61 72 74 : 'bottom-start 0000d570: 27 5c 6e 63 6f 6e 73 74 20 50 4c 41 43 45 4d 45 '\nconst PLACEME 0000d580: 4e 54 5f 42 4f 54 54 4f 4d 45 4e 44 20 3d 20 69 NT_BOTTOMEND = i 0000d590: 73 52 54 4c 28 29 20 3f 20 27 62 6f 74 74 6f 6d sRTL() ? 'bottom 0000d5a0: 2d 73 74 61 72 74 27 20 3a 20 27 62 6f 74 74 6f -start' : 'botto 0000d5b0: 6d 2d 65 6e 64 27 5c 6e 63 6f 6e 73 74 20 50 4c m-end'\nconst PL 0000d5c0: 41 43 45 4d 45 4e 54 5f 52 49 47 48 54 20 3d 20 ACEMENT_RIGHT = 0000d5d0: 69 73 52 54 4c 28 29 20 3f 20 27 6c 65 66 74 2d isRTL() ? 'left- 0000d5e0: 73 74 61 72 74 27 20 3a 20 27 72 69 67 68 74 2d start' : 'right- 0000d5f0: 73 74 61 72 74 27 5c 6e 63 6f 6e 73 74 20 50 4c start'\nconst PL 0000d600: 41 43 45 4d 45 4e 54 5f 4c 45 46 54 20 3d 20 69 ACEMENT_LEFT = i 0000d610: 73 52 54 4c 28 29 20 3f 20 27 72 69 67 68 74 2d sRTL() ? 'right- 0000d620: 73 74 61 72 74 27 20 3a 20 27 6c 65 66 74 2d 73 start' : 'left-s 0000d630: 74 61 72 74 27 5c 6e 63 6f 6e 73 74 20 50 4c 41 tart'\nconst PLA 0000d640: 43 45 4d 45 4e 54 5f 54 4f 50 43 45 4e 54 45 52 CEMENT_TOPCENTER 0000d650: 20 3d 20 27 74 6f 70 27 5c 6e 63 6f 6e 73 74 20 = 'top'\nconst 0000d660: 50 4c 41 43 45 4d 45 4e 54 5f 42 4f 54 54 4f 4d PLACEMENT_BOTTOM 0000d670: 43 45 4e 54 45 52 20 3d 20 27 62 6f 74 74 6f 6d CENTER = 'bottom 0000d680: 27 5c 6e 5c 6e 63 6f 6e 73 74 20 44 65 66 61 75 '\n\nconst Defau 0000d690: 6c 74 20 3d 20 7b 5c 6e 20 20 61 75 74 6f 43 6c lt = {\n autoCl 0000d6a0: 6f 73 65 3a 20 74 72 75 65 2c 5c 6e 20 20 62 6f ose: true,\n bo 0000d6b0: 75 6e 64 61 72 79 3a 20 27 63 6c 69 70 70 69 6e undary: 'clippin 0000d6c0: 67 50 61 72 65 6e 74 73 27 2c 5c 6e 20 20 64 69 gParents',\n di 0000d6d0: 73 70 6c 61 79 3a 20 27 64 79 6e 61 6d 69 63 27 splay: 'dynamic' 0000d6e0: 2c 5c 6e 20 20 6f 66 66 73 65 74 3a 20 5b 30 2c ,\n offset: [0, 0000d6f0: 20 32 5d 2c 5c 6e 20 20 70 6f 70 70 65 72 43 6f 2],\n popperCo 0000d700: 6e 66 69 67 3a 20 6e 75 6c 6c 2c 5c 6e 20 20 72 nfig: null,\n r 0000d710: 65 66 65 72 65 6e 63 65 3a 20 27 74 6f 67 67 6c eference: 'toggl 0000d720: 65 27 5c 6e 7d 5c 6e 5c 6e 63 6f 6e 73 74 20 44 e'\n}\n\nconst D 0000d730: 65 66 61 75 6c 74 54 79 70 65 20 3d 20 7b 5c 6e efaultType = {\n 0000d740: 20 20 61 75 74 6f 43 6c 6f 73 65 3a 20 27 28 62 autoClose: '(b 0000d750: 6f 6f 6c 65 61 6e 7c 73 74 72 69 6e 67 29 27 2c oolean|string)', 0000d760: 5c 6e 20 20 62 6f 75 6e 64 61 72 79 3a 20 27 28 \n boundary: '( 0000d770: 73 74 72 69 6e 67 7c 65 6c 65 6d 65 6e 74 29 27 string|element)' 0000d780: 2c 5c 6e 20 20 64 69 73 70 6c 61 79 3a 20 27 73 ,\n display: 's 0000d790: 74 72 69 6e 67 27 2c 5c 6e 20 20 6f 66 66 73 65 tring',\n offse 0000d7a0: 74 3a 20 27 28 61 72 72 61 79 7c 73 74 72 69 6e t: '(array|strin 0000d7b0: 67 7c 66 75 6e 63 74 69 6f 6e 29 27 2c 5c 6e 20 g|function)',\n 0000d7c0: 20 70 6f 70 70 65 72 43 6f 6e 66 69 67 3a 20 27 popperConfig: ' 0000d7d0: 28 6e 75 6c 6c 7c 6f 62 6a 65 63 74 7c 66 75 6e (null|object|fun 0000d7e0: 63 74 69 6f 6e 29 27 2c 5c 6e 20 20 72 65 66 65 ction)',\n refe 0000d7f0: 72 65 6e 63 65 3a 20 27 28 73 74 72 69 6e 67 7c rence: '(string| 0000d800: 65 6c 65 6d 65 6e 74 7c 6f 62 6a 65 63 74 29 27 element|object)' 0000d810: 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 \n}\n\n/**\n * C 0000d820: 6c 61 73 73 20 64 65 66 69 6e 69 74 69 6f 6e 5c lass definition\ 0000d830: 6e 20 2a 2f 5c 6e 5c 6e 63 6c 61 73 73 20 44 72 n */\n\nclass Dr 0000d840: 6f 70 64 6f 77 6e 20 65 78 74 65 6e 64 73 20 42 opdown extends B 0000d850: 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 20 7b 5c 6e aseComponent {\n 0000d860: 20 20 63 6f 6e 73 74 72 75 63 74 6f 72 28 65 6c constructor(el 0000d870: 65 6d 65 6e 74 2c 20 63 6f 6e 66 69 67 29 20 7b ement, config) { 0000d880: 5c 6e 20 20 20 20 73 75 70 65 72 28 65 6c 65 6d \n super(elem 0000d890: 65 6e 74 2c 20 63 6f 6e 66 69 67 29 5c 6e 5c 6e ent, config)\n\n 0000d8a0: 20 20 20 20 74 68 69 73 2e 5f 70 6f 70 70 65 72 this._popper 0000d8b0: 20 3d 20 6e 75 6c 6c 5c 6e 20 20 20 20 74 68 69 = null\n thi 0000d8c0: 73 2e 5f 70 61 72 65 6e 74 20 3d 20 74 68 69 73 s._parent = this 0000d8d0: 2e 5f 65 6c 65 6d 65 6e 74 2e 70 61 72 65 6e 74 ._element.parent 0000d8e0: 4e 6f 64 65 20 2f 2f 20 64 72 6f 70 64 6f 77 6e Node // dropdown 0000d8f0: 20 77 72 61 70 70 65 72 5c 6e 20 20 20 20 2f 2f wrapper\n // 0000d900: 20 54 4f 44 4f 3a 20 76 36 20 72 65 76 65 72 74 TODO: v6 revert 0000d910: 20 23 33 37 30 31 31 20 26 20 63 68 61 6e 67 65 #37011 & change 0000d920: 20 6d 61 72 6b 75 70 20 68 74 74 70 73 3a 2f 2f markup https:// 0000d930: 67 65 74 62 6f 6f 74 73 74 72 61 70 2e 63 6f 6d getbootstrap.com 0000d940: 2f 64 6f 63 73 2f 35 2e 33 2f 66 6f 72 6d 73 2f /docs/5.3/forms/ 0000d950: 69 6e 70 75 74 2d 67 72 6f 75 70 2f 5c 6e 20 20 input-group/\n 0000d960: 20 20 74 68 69 73 2e 5f 6d 65 6e 75 20 3d 20 53 this._menu = S 0000d970: 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e 6e 65 electorEngine.ne 0000d980: 78 74 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 xt(this._element 0000d990: 2c 20 53 45 4c 45 43 54 4f 52 5f 4d 45 4e 55 29 , SELECTOR_MENU) 0000d9a0: 5b 30 5d 20 7c 7c 5c 6e 20 20 20 20 20 20 53 65 [0] ||\n Se 0000d9b0: 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e 70 72 65 lectorEngine.pre 0000d9c0: 76 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c v(this._element, 0000d9d0: 20 53 45 4c 45 43 54 4f 52 5f 4d 45 4e 55 29 5b SELECTOR_MENU)[ 0000d9e0: 30 5d 20 7c 7c 5c 6e 20 20 20 20 20 20 53 65 6c 0] ||\n Sel 0000d9f0: 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 ectorEngine.find 0000da00: 4f 6e 65 28 53 45 4c 45 43 54 4f 52 5f 4d 45 4e One(SELECTOR_MEN 0000da10: 55 2c 20 74 68 69 73 2e 5f 70 61 72 65 6e 74 29 U, this._parent) 0000da20: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 6e 4e 61 \n this._inNa 0000da30: 76 62 61 72 20 3d 20 74 68 69 73 2e 5f 64 65 74 vbar = this._det 0000da40: 65 63 74 4e 61 76 62 61 72 28 29 5c 6e 20 20 7d ectNavbar()\n } 0000da50: 5c 6e 5c 6e 20 20 2f 2f 20 47 65 74 74 65 72 73 \n\n // Getters 0000da60: 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 20 44 \n static get D 0000da70: 65 66 61 75 6c 74 28 29 20 7b 5c 6e 20 20 20 20 efault() {\n 0000da80: 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 5c 6e return Default\n 0000da90: 20 20 7d 5c 6e 5c 6e 20 20 73 74 61 74 69 63 20 }\n\n static 0000daa0: 67 65 74 20 44 65 66 61 75 6c 74 54 79 70 65 28 get DefaultType( 0000dab0: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 0000dac0: 44 65 66 61 75 6c 74 54 79 70 65 5c 6e 20 20 7d DefaultType\n } 0000dad0: 5c 6e 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 \n\n static get 0000dae0: 20 4e 41 4d 45 28 29 20 7b 5c 6e 20 20 20 20 72 NAME() {\n r 0000daf0: 65 74 75 72 6e 20 4e 41 4d 45 5c 6e 20 20 7d 5c eturn NAME\n }\ 0000db00: 6e 5c 6e 20 20 2f 2f 20 50 75 62 6c 69 63 5c 6e n\n // Public\n 0000db10: 20 20 74 6f 67 67 6c 65 28 29 20 7b 5c 6e 20 20 toggle() {\n 0000db20: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 69 return this._i 0000db30: 73 53 68 6f 77 6e 28 29 20 3f 20 74 68 69 73 2e sShown() ? this. 0000db40: 68 69 64 65 28 29 20 3a 20 74 68 69 73 2e 73 68 hide() : this.sh 0000db50: 6f 77 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 ow()\n }\n\n s 0000db60: 68 6f 77 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 how() {\n if 0000db70: 28 69 73 44 69 73 61 62 6c 65 64 28 74 68 69 73 (isDisabled(this 0000db80: 2e 5f 65 6c 65 6d 65 6e 74 29 20 7c 7c 20 74 68 ._element) || th 0000db90: 69 73 2e 5f 69 73 53 68 6f 77 6e 28 29 29 20 7b is._isShown()) { 0000dba0: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 0000dbb0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e }\n\n con 0000dbc0: 73 74 20 72 65 6c 61 74 65 64 54 61 72 67 65 74 st relatedTarget 0000dbd0: 20 3d 20 7b 5c 6e 20 20 20 20 20 20 72 65 6c 61 = {\n rela 0000dbe0: 74 65 64 54 61 72 67 65 74 3a 20 74 68 69 73 2e tedTarget: this. 0000dbf0: 5f 65 6c 65 6d 65 6e 74 5c 6e 20 20 20 20 7d 5c _element\n }\ 0000dc00: 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 73 68 6f n\n const sho 0000dc10: 77 45 76 65 6e 74 20 3d 20 45 76 65 6e 74 48 61 wEvent = EventHa 0000dc20: 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 ndler.trigger(th 0000dc30: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 is._element, EVE 0000dc40: 4e 54 5f 53 48 4f 57 2c 20 72 65 6c 61 74 65 64 NT_SHOW, related 0000dc50: 54 61 72 67 65 74 29 5c 6e 5c 6e 20 20 20 20 69 Target)\n\n i 0000dc60: 66 20 28 73 68 6f 77 45 76 65 6e 74 2e 64 65 66 f (showEvent.def 0000dc70: 61 75 6c 74 50 72 65 76 65 6e 74 65 64 29 20 7b aultPrevented) { 0000dc80: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 0000dc90: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 }\n\n thi 0000dca0: 73 2e 5f 63 72 65 61 74 65 50 6f 70 70 65 72 28 s._createPopper( 0000dcb0: 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 49 66 20 74 )\n\n // If t 0000dcc0: 68 69 73 20 69 73 20 61 20 74 6f 75 63 68 2d 65 his is a touch-e 0000dcd0: 6e 61 62 6c 65 64 20 64 65 76 69 63 65 20 77 65 nabled device we 0000dce0: 20 61 64 64 20 65 78 74 72 61 5c 6e 20 20 20 20 add extra\n 0000dcf0: 2f 2f 20 65 6d 70 74 79 20 6d 6f 75 73 65 6f 76 // empty mouseov 0000dd00: 65 72 20 6c 69 73 74 65 6e 65 72 73 20 74 6f 20 er listeners to 0000dd10: 74 68 65 20 62 6f 64 79 27 73 20 69 6d 6d 65 64 the body's immed 0000dd20: 69 61 74 65 20 63 68 69 6c 64 72 65 6e 3b 5c 6e iate children;\n 0000dd30: 20 20 20 20 2f 2f 20 6f 6e 6c 79 20 6e 65 65 64 // only need 0000dd40: 65 64 20 62 65 63 61 75 73 65 20 6f 66 20 62 72 ed because of br 0000dd50: 6f 6b 65 6e 20 65 76 65 6e 74 20 64 65 6c 65 67 oken event deleg 0000dd60: 61 74 69 6f 6e 20 6f 6e 20 69 4f 53 5c 6e 20 20 ation on iOS\n 0000dd70: 20 20 2f 2f 20 68 74 74 70 73 3a 2f 2f 77 77 77 // https://www 0000dd80: 2e 71 75 69 72 6b 73 6d 6f 64 65 2e 6f 72 67 2f .quirksmode.org/ 0000dd90: 62 6c 6f 67 2f 61 72 63 68 69 76 65 73 2f 32 30 blog/archives/20 0000dda0: 31 34 2f 30 32 2f 6d 6f 75 73 65 5f 65 76 65 6e 14/02/mouse_even 0000ddb0: 74 5f 62 75 62 2e 68 74 6d 6c 5c 6e 20 20 20 20 t_bub.html\n 0000ddc0: 69 66 20 28 27 6f 6e 74 6f 75 63 68 73 74 61 72 if ('ontouchstar 0000ddd0: 74 27 20 69 6e 20 64 6f 63 75 6d 65 6e 74 2e 64 t' in document.d 0000dde0: 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 20 26 ocumentElement & 0000ddf0: 26 20 21 74 68 69 73 2e 5f 70 61 72 65 6e 74 2e & !this._parent. 0000de00: 63 6c 6f 73 65 73 74 28 53 45 4c 45 43 54 4f 52 closest(SELECTOR 0000de10: 5f 4e 41 56 42 41 52 5f 4e 41 56 29 29 20 7b 5c _NAVBAR_NAV)) {\ 0000de20: 6e 20 20 20 20 20 20 66 6f 72 20 28 63 6f 6e 73 n for (cons 0000de30: 74 20 65 6c 65 6d 65 6e 74 20 6f 66 20 5b 5d 2e t element of []. 0000de40: 63 6f 6e 63 61 74 28 2e 2e 2e 64 6f 63 75 6d 65 concat(...docume 0000de50: 6e 74 2e 62 6f 64 79 2e 63 68 69 6c 64 72 65 6e nt.body.children 0000de60: 29 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 45 76 )) {\n Ev 0000de70: 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 65 6c entHandler.on(el 0000de80: 65 6d 65 6e 74 2c 20 27 6d 6f 75 73 65 6f 76 65 ement, 'mouseove 0000de90: 72 27 2c 20 6e 6f 6f 70 29 5c 6e 20 20 20 20 20 r', noop)\n 0000dea0: 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 }\n }\n\n 0000deb0: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 66 this._element.f 0000dec0: 6f 63 75 73 28 29 5c 6e 20 20 20 20 74 68 69 73 ocus()\n this 0000ded0: 2e 5f 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 ._element.setAtt 0000dee0: 72 69 62 75 74 65 28 27 61 72 69 61 2d 65 78 70 ribute('aria-exp 0000def0: 61 6e 64 65 64 27 2c 20 74 72 75 65 29 5c 6e 5c anded', true)\n\ 0000df00: 6e 20 20 20 20 74 68 69 73 2e 5f 6d 65 6e 75 2e n this._menu. 0000df10: 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c classList.add(CL 0000df20: 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e ASS_NAME_SHOW)\n 0000df30: 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e this._elemen 0000df40: 74 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 t.classList.add( 0000df50: 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 CLASS_NAME_SHOW) 0000df60: 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c \n EventHandl 0000df70: 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e er.trigger(this. 0000df80: 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f _element, EVENT_ 0000df90: 53 48 4f 57 4e 2c 20 72 65 6c 61 74 65 64 54 61 SHOWN, relatedTa 0000dfa0: 72 67 65 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 rget)\n }\n\n 0000dfb0: 68 69 64 65 28 29 20 7b 5c 6e 20 20 20 20 69 66 hide() {\n if 0000dfc0: 20 28 69 73 44 69 73 61 62 6c 65 64 28 74 68 69 (isDisabled(thi 0000dfd0: 73 2e 5f 65 6c 65 6d 65 6e 74 29 20 7c 7c 20 21 s._element) || ! 0000dfe0: 74 68 69 73 2e 5f 69 73 53 68 6f 77 6e 28 29 29 this._isShown()) 0000dff0: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 0000e000: 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 \n }\n\n c 0000e010: 6f 6e 73 74 20 72 65 6c 61 74 65 64 54 61 72 67 onst relatedTarg 0000e020: 65 74 20 3d 20 7b 5c 6e 20 20 20 20 20 20 72 65 et = {\n re 0000e030: 6c 61 74 65 64 54 61 72 67 65 74 3a 20 74 68 69 latedTarget: thi 0000e040: 73 2e 5f 65 6c 65 6d 65 6e 74 5c 6e 20 20 20 20 s._element\n 0000e050: 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 63 }\n\n this._c 0000e060: 6f 6d 70 6c 65 74 65 48 69 64 65 28 72 65 6c 61 ompleteHide(rela 0000e070: 74 65 64 54 61 72 67 65 74 29 5c 6e 20 20 7d 5c tedTarget)\n }\ 0000e080: 6e 5c 6e 20 20 64 69 73 70 6f 73 65 28 29 20 7b n\n dispose() { 0000e090: 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f \n if (this._ 0000e0a0: 70 6f 70 70 65 72 29 20 7b 5c 6e 20 20 20 20 20 popper) {\n 0000e0b0: 20 74 68 69 73 2e 5f 70 6f 70 70 65 72 2e 64 65 this._popper.de 0000e0c0: 73 74 72 6f 79 28 29 5c 6e 20 20 20 20 7d 5c 6e stroy()\n }\n 0000e0d0: 5c 6e 20 20 20 20 73 75 70 65 72 2e 64 69 73 70 \n super.disp 0000e0e0: 6f 73 65 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 ose()\n }\n\n 0000e0f0: 75 70 64 61 74 65 28 29 20 7b 5c 6e 20 20 20 20 update() {\n 0000e100: 74 68 69 73 2e 5f 69 6e 4e 61 76 62 61 72 20 3d this._inNavbar = 0000e110: 20 74 68 69 73 2e 5f 64 65 74 65 63 74 4e 61 76 this._detectNav 0000e120: 62 61 72 28 29 5c 6e 20 20 20 20 69 66 20 28 74 bar()\n if (t 0000e130: 68 69 73 2e 5f 70 6f 70 70 65 72 29 20 7b 5c 6e his._popper) {\n 0000e140: 20 20 20 20 20 20 74 68 69 73 2e 5f 70 6f 70 70 this._popp 0000e150: 65 72 2e 75 70 64 61 74 65 28 29 5c 6e 20 20 20 er.update()\n 0000e160: 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 }\n }\n\n // 0000e170: 50 72 69 76 61 74 65 5c 6e 20 20 5f 63 6f 6d 70 Private\n _comp 0000e180: 6c 65 74 65 48 69 64 65 28 72 65 6c 61 74 65 64 leteHide(related 0000e190: 54 61 72 67 65 74 29 20 7b 5c 6e 20 20 20 20 63 Target) {\n c 0000e1a0: 6f 6e 73 74 20 68 69 64 65 45 76 65 6e 74 20 3d onst hideEvent = 0000e1b0: 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 74 72 EventHandler.tr 0000e1c0: 69 67 67 65 72 28 74 68 69 73 2e 5f 65 6c 65 6d igger(this._elem 0000e1d0: 65 6e 74 2c 20 45 56 45 4e 54 5f 48 49 44 45 2c ent, EVENT_HIDE, 0000e1e0: 20 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 5c relatedTarget)\ 0000e1f0: 6e 20 20 20 20 69 66 20 28 68 69 64 65 45 76 65 n if (hideEve 0000e200: 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 76 65 6e nt.defaultPreven 0000e210: 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 ted) {\n re 0000e220: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 0000e230: 20 20 20 2f 2f 20 49 66 20 74 68 69 73 20 69 73 // If this is 0000e240: 20 61 20 74 6f 75 63 68 2d 65 6e 61 62 6c 65 64 a touch-enabled 0000e250: 20 64 65 76 69 63 65 20 77 65 20 72 65 6d 6f 76 device we remov 0000e260: 65 20 74 68 65 20 65 78 74 72 61 5c 6e 20 20 20 e the extra\n 0000e270: 20 2f 2f 20 65 6d 70 74 79 20 6d 6f 75 73 65 6f // empty mouseo 0000e280: 76 65 72 20 6c 69 73 74 65 6e 65 72 73 20 77 65 ver listeners we 0000e290: 20 61 64 64 65 64 20 66 6f 72 20 69 4f 53 20 73 added for iOS s 0000e2a0: 75 70 70 6f 72 74 5c 6e 20 20 20 20 69 66 20 28 upport\n if ( 0000e2b0: 27 6f 6e 74 6f 75 63 68 73 74 61 72 74 27 20 69 'ontouchstart' i 0000e2c0: 6e 20 64 6f 63 75 6d 65 6e 74 2e 64 6f 63 75 6d n document.docum 0000e2d0: 65 6e 74 45 6c 65 6d 65 6e 74 29 20 7b 5c 6e 20 entElement) {\n 0000e2e0: 20 20 20 20 20 66 6f 72 20 28 63 6f 6e 73 74 20 for (const 0000e2f0: 65 6c 65 6d 65 6e 74 20 6f 66 20 5b 5d 2e 63 6f element of [].co 0000e300: 6e 63 61 74 28 2e 2e 2e 64 6f 63 75 6d 65 6e 74 ncat(...document 0000e310: 2e 62 6f 64 79 2e 63 68 69 6c 64 72 65 6e 29 29 .body.children)) 0000e320: 20 7b 5c 6e 20 20 20 20 20 20 20 20 45 76 65 6e {\n Even 0000e330: 74 48 61 6e 64 6c 65 72 2e 6f 66 66 28 65 6c 65 tHandler.off(ele 0000e340: 6d 65 6e 74 2c 20 27 6d 6f 75 73 65 6f 76 65 72 ment, 'mouseover 0000e350: 27 2c 20 6e 6f 6f 70 29 5c 6e 20 20 20 20 20 20 ', noop)\n 0000e360: 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 }\n }\n\n 0000e370: 69 66 20 28 74 68 69 73 2e 5f 70 6f 70 70 65 72 if (this._popper 0000e380: 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e ) {\n this. 0000e390: 5f 70 6f 70 70 65 72 2e 64 65 73 74 72 6f 79 28 _popper.destroy( 0000e3a0: 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 )\n }\n\n 0000e3b0: 74 68 69 73 2e 5f 6d 65 6e 75 2e 63 6c 61 73 73 this._menu.class 0000e3c0: 4c 69 73 74 2e 72 65 6d 6f 76 65 28 43 4c 41 53 List.remove(CLAS 0000e3d0: 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 20 20 S_NAME_SHOW)\n 0000e3e0: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e this._element. 0000e3f0: 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 65 classList.remove 0000e400: 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 (CLASS_NAME_SHOW 0000e410: 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 )\n this._ele 0000e420: 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 75 74 ment.setAttribut 0000e430: 65 28 27 61 72 69 61 2d 65 78 70 61 6e 64 65 64 e('aria-expanded 0000e440: 27 2c 20 27 66 61 6c 73 65 27 29 5c 6e 20 20 20 ', 'false')\n 0000e450: 20 4d 61 6e 69 70 75 6c 61 74 6f 72 2e 72 65 6d Manipulator.rem 0000e460: 6f 76 65 44 61 74 61 41 74 74 72 69 62 75 74 65 oveDataAttribute 0000e470: 28 74 68 69 73 2e 5f 6d 65 6e 75 2c 20 27 70 6f (this._menu, 'po 0000e480: 70 70 65 72 27 29 5c 6e 20 20 20 20 45 76 65 6e pper')\n Even 0000e490: 74 48 61 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 tHandler.trigger 0000e4a0: 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 (this._element, 0000e4b0: 45 56 45 4e 54 5f 48 49 44 44 45 4e 2c 20 72 65 EVENT_HIDDEN, re 0000e4c0: 6c 61 74 65 64 54 61 72 67 65 74 29 5c 6e 20 20 latedTarget)\n 0000e4d0: 7d 5c 6e 5c 6e 20 20 5f 67 65 74 43 6f 6e 66 69 }\n\n _getConfi 0000e4e0: 67 28 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 g(config) {\n 0000e4f0: 20 63 6f 6e 66 69 67 20 3d 20 73 75 70 65 72 2e config = super. 0000e500: 5f 67 65 74 43 6f 6e 66 69 67 28 63 6f 6e 66 69 _getConfig(confi 0000e510: 67 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 74 79 g)\n\n if (ty 0000e520: 70 65 6f 66 20 63 6f 6e 66 69 67 2e 72 65 66 65 peof config.refe 0000e530: 72 65 6e 63 65 20 3d 3d 3d 20 27 6f 62 6a 65 63 rence === 'objec 0000e540: 74 27 20 26 26 20 21 69 73 45 6c 65 6d 65 6e 74 t' && !isElement 0000e550: 28 63 6f 6e 66 69 67 2e 72 65 66 65 72 65 6e 63 (config.referenc 0000e560: 65 29 20 26 26 5c 6e 20 20 20 20 20 20 74 79 70 e) &&\n typ 0000e570: 65 6f 66 20 63 6f 6e 66 69 67 2e 72 65 66 65 72 eof config.refer 0000e580: 65 6e 63 65 2e 67 65 74 42 6f 75 6e 64 69 6e 67 ence.getBounding 0000e590: 43 6c 69 65 6e 74 52 65 63 74 20 21 3d 3d 20 27 ClientRect !== ' 0000e5a0: 66 75 6e 63 74 69 6f 6e 27 5c 6e 20 20 20 20 29 function'\n ) 0000e5b0: 20 7b 5c 6e 20 20 20 20 20 20 2f 2f 20 50 6f 70 {\n // Pop 0000e5c0: 70 65 72 20 76 69 72 74 75 61 6c 20 65 6c 65 6d per virtual elem 0000e5d0: 65 6e 74 73 20 72 65 71 75 69 72 65 20 61 20 67 ents require a g 0000e5e0: 65 74 42 6f 75 6e 64 69 6e 67 43 6c 69 65 6e 74 etBoundingClient 0000e5f0: 52 65 63 74 20 6d 65 74 68 6f 64 5c 6e 20 20 20 Rect method\n 0000e600: 20 20 20 74 68 72 6f 77 20 6e 65 77 20 54 79 70 throw new Typ 0000e610: 65 45 72 72 6f 72 28 60 24 7b 4e 41 4d 45 2e 74 eError(`${NAME.t 0000e620: 6f 55 70 70 65 72 43 61 73 65 28 29 7d 3a 20 4f oUpperCase()}: O 0000e630: 70 74 69 6f 6e 20 5c 22 72 65 66 65 72 65 6e 63 ption \"referenc 0000e640: 65 5c 22 20 70 72 6f 76 69 64 65 64 20 74 79 70 e\" provided typ 0000e650: 65 20 5c 22 6f 62 6a 65 63 74 5c 22 20 77 69 74 e \"object\" wit 0000e660: 68 6f 75 74 20 61 20 72 65 71 75 69 72 65 64 20 hout a required 0000e670: 5c 22 67 65 74 42 6f 75 6e 64 69 6e 67 43 6c 69 \"getBoundingCli 0000e680: 65 6e 74 52 65 63 74 5c 22 20 6d 65 74 68 6f 64 entRect\" method 0000e690: 2e 60 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 .`)\n }\n\n 0000e6a0: 20 20 72 65 74 75 72 6e 20 63 6f 6e 66 69 67 5c return config\ 0000e6b0: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 72 65 61 74 n }\n\n _creat 0000e6c0: 65 50 6f 70 70 65 72 28 29 20 7b 5c 6e 20 20 20 ePopper() {\n 0000e6d0: 20 69 66 20 28 74 79 70 65 6f 66 20 50 6f 70 70 if (typeof Popp 0000e6e0: 65 72 20 3d 3d 3d 20 27 75 6e 64 65 66 69 6e 65 er === 'undefine 0000e6f0: 64 27 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 72 d') {\n thr 0000e700: 6f 77 20 6e 65 77 20 54 79 70 65 45 72 72 6f 72 ow new TypeError 0000e710: 28 27 42 6f 6f 74 73 74 72 61 70 5c 5c 27 73 20 ('Bootstrap\\'s 0000e720: 64 72 6f 70 64 6f 77 6e 73 20 72 65 71 75 69 72 dropdowns requir 0000e730: 65 20 50 6f 70 70 65 72 20 28 68 74 74 70 73 3a e Popper (https: 0000e740: 2f 2f 70 6f 70 70 65 72 2e 6a 73 2e 6f 72 67 29 //popper.js.org) 0000e750: 27 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 ')\n }\n\n 0000e760: 20 6c 65 74 20 72 65 66 65 72 65 6e 63 65 45 6c let referenceEl 0000e770: 65 6d 65 6e 74 20 3d 20 74 68 69 73 2e 5f 65 6c ement = this._el 0000e780: 65 6d 65 6e 74 5c 6e 5c 6e 20 20 20 20 69 66 20 ement\n\n if 0000e790: 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 72 65 (this._config.re 0000e7a0: 66 65 72 65 6e 63 65 20 3d 3d 3d 20 27 70 61 72 ference === 'par 0000e7b0: 65 6e 74 27 29 20 7b 5c 6e 20 20 20 20 20 20 72 ent') {\n r 0000e7c0: 65 66 65 72 65 6e 63 65 45 6c 65 6d 65 6e 74 20 eferenceElement 0000e7d0: 3d 20 74 68 69 73 2e 5f 70 61 72 65 6e 74 5c 6e = this._parent\n 0000e7e0: 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 69 } else if (i 0000e7f0: 73 45 6c 65 6d 65 6e 74 28 74 68 69 73 2e 5f 63 sElement(this._c 0000e800: 6f 6e 66 69 67 2e 72 65 66 65 72 65 6e 63 65 29 onfig.reference) 0000e810: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 66 65 72 ) {\n refer 0000e820: 65 6e 63 65 45 6c 65 6d 65 6e 74 20 3d 20 67 65 enceElement = ge 0000e830: 74 45 6c 65 6d 65 6e 74 28 74 68 69 73 2e 5f 63 tElement(this._c 0000e840: 6f 6e 66 69 67 2e 72 65 66 65 72 65 6e 63 65 29 onfig.reference) 0000e850: 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 \n } else if 0000e860: 28 74 79 70 65 6f 66 20 74 68 69 73 2e 5f 63 6f (typeof this._co 0000e870: 6e 66 69 67 2e 72 65 66 65 72 65 6e 63 65 20 3d nfig.reference = 0000e880: 3d 3d 20 27 6f 62 6a 65 63 74 27 29 20 7b 5c 6e == 'object') {\n 0000e890: 20 20 20 20 20 20 72 65 66 65 72 65 6e 63 65 45 referenceE 0000e8a0: 6c 65 6d 65 6e 74 20 3d 20 74 68 69 73 2e 5f 63 lement = this._c 0000e8b0: 6f 6e 66 69 67 2e 72 65 66 65 72 65 6e 63 65 5c onfig.reference\ 0000e8c0: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f n }\n\n co 0000e8d0: 6e 73 74 20 70 6f 70 70 65 72 43 6f 6e 66 69 67 nst popperConfig 0000e8e0: 20 3d 20 74 68 69 73 2e 5f 67 65 74 50 6f 70 70 = this._getPopp 0000e8f0: 65 72 43 6f 6e 66 69 67 28 29 5c 6e 20 20 20 20 erConfig()\n 0000e900: 74 68 69 73 2e 5f 70 6f 70 70 65 72 20 3d 20 50 this._popper = P 0000e910: 6f 70 70 65 72 2e 63 72 65 61 74 65 50 6f 70 70 opper.createPopp 0000e920: 65 72 28 72 65 66 65 72 65 6e 63 65 45 6c 65 6d er(referenceElem 0000e930: 65 6e 74 2c 20 74 68 69 73 2e 5f 6d 65 6e 75 2c ent, this._menu, 0000e940: 20 70 6f 70 70 65 72 43 6f 6e 66 69 67 29 5c 6e popperConfig)\n 0000e950: 20 20 7d 5c 6e 5c 6e 20 20 5f 69 73 53 68 6f 77 }\n\n _isShow 0000e960: 6e 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 n() {\n retur 0000e970: 6e 20 74 68 69 73 2e 5f 6d 65 6e 75 2e 63 6c 61 n this._menu.cla 0000e980: 73 73 4c 69 73 74 2e 63 6f 6e 74 61 69 6e 73 28 ssList.contains( 0000e990: 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 CLASS_NAME_SHOW) 0000e9a0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 74 50 \n }\n\n _getP 0000e9b0: 6c 61 63 65 6d 65 6e 74 28 29 20 7b 5c 6e 20 20 lacement() {\n 0000e9c0: 20 20 63 6f 6e 73 74 20 70 61 72 65 6e 74 44 72 const parentDr 0000e9d0: 6f 70 64 6f 77 6e 20 3d 20 74 68 69 73 2e 5f 70 opdown = this._p 0000e9e0: 61 72 65 6e 74 5c 6e 5c 6e 20 20 20 20 69 66 20 arent\n\n if 0000e9f0: 28 70 61 72 65 6e 74 44 72 6f 70 64 6f 77 6e 2e (parentDropdown. 0000ea00: 63 6c 61 73 73 4c 69 73 74 2e 63 6f 6e 74 61 69 classList.contai 0000ea10: 6e 73 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 44 52 ns(CLASS_NAME_DR 0000ea20: 4f 50 45 4e 44 29 29 20 7b 5c 6e 20 20 20 20 20 OPEND)) {\n 0000ea30: 20 72 65 74 75 72 6e 20 50 4c 41 43 45 4d 45 4e return PLACEMEN 0000ea40: 54 5f 52 49 47 48 54 5c 6e 20 20 20 20 7d 5c 6e T_RIGHT\n }\n 0000ea50: 5c 6e 20 20 20 20 69 66 20 28 70 61 72 65 6e 74 \n if (parent 0000ea60: 44 72 6f 70 64 6f 77 6e 2e 63 6c 61 73 73 4c 69 Dropdown.classLi 0000ea70: 73 74 2e 63 6f 6e 74 61 69 6e 73 28 43 4c 41 53 st.contains(CLAS 0000ea80: 53 5f 4e 41 4d 45 5f 44 52 4f 50 53 54 41 52 54 S_NAME_DROPSTART 0000ea90: 29 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 )) {\n retu 0000eaa0: 72 6e 20 50 4c 41 43 45 4d 45 4e 54 5f 4c 45 46 rn PLACEMENT_LEF 0000eab0: 54 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 T\n }\n\n 0000eac0: 69 66 20 28 70 61 72 65 6e 74 44 72 6f 70 64 6f if (parentDropdo 0000ead0: 77 6e 2e 63 6c 61 73 73 4c 69 73 74 2e 63 6f 6e wn.classList.con 0000eae0: 74 61 69 6e 73 28 43 4c 41 53 53 5f 4e 41 4d 45 tains(CLASS_NAME 0000eaf0: 5f 44 52 4f 50 55 50 5f 43 45 4e 54 45 52 29 29 _DROPUP_CENTER)) 0000eb00: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 0000eb10: 20 50 4c 41 43 45 4d 45 4e 54 5f 54 4f 50 43 45 PLACEMENT_TOPCE 0000eb20: 4e 54 45 52 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 NTER\n }\n\n 0000eb30: 20 20 20 69 66 20 28 70 61 72 65 6e 74 44 72 6f if (parentDro 0000eb40: 70 64 6f 77 6e 2e 63 6c 61 73 73 4c 69 73 74 2e pdown.classList. 0000eb50: 63 6f 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f 4e contains(CLASS_N 0000eb60: 41 4d 45 5f 44 52 4f 50 44 4f 57 4e 5f 43 45 4e AME_DROPDOWN_CEN 0000eb70: 54 45 52 29 29 20 7b 5c 6e 20 20 20 20 20 20 72 TER)) {\n r 0000eb80: 65 74 75 72 6e 20 50 4c 41 43 45 4d 45 4e 54 5f eturn PLACEMENT_ 0000eb90: 42 4f 54 54 4f 4d 43 45 4e 54 45 52 5c 6e 20 20 BOTTOMCENTER\n 0000eba0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 57 65 }\n\n // We 0000ebb0: 20 6e 65 65 64 20 74 6f 20 74 72 69 6d 20 74 68 need to trim th 0000ebc0: 65 20 76 61 6c 75 65 20 62 65 63 61 75 73 65 20 e value because 0000ebd0: 63 75 73 74 6f 6d 20 70 72 6f 70 65 72 74 69 65 custom propertie 0000ebe0: 73 20 63 61 6e 20 61 6c 73 6f 20 69 6e 63 6c 75 s can also inclu 0000ebf0: 64 65 20 73 70 61 63 65 73 5c 6e 20 20 20 20 63 de spaces\n c 0000ec00: 6f 6e 73 74 20 69 73 45 6e 64 20 3d 20 67 65 74 onst isEnd = get 0000ec10: 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 28 74 68 ComputedStyle(th 0000ec20: 69 73 2e 5f 6d 65 6e 75 29 2e 67 65 74 50 72 6f is._menu).getPro 0000ec30: 70 65 72 74 79 56 61 6c 75 65 28 27 2d 2d 62 73 pertyValue('--bs 0000ec40: 2d 70 6f 73 69 74 69 6f 6e 27 29 2e 74 72 69 6d -position').trim 0000ec50: 28 29 20 3d 3d 3d 20 27 65 6e 64 27 5c 6e 5c 6e () === 'end'\n\n 0000ec60: 20 20 20 20 69 66 20 28 70 61 72 65 6e 74 44 72 if (parentDr 0000ec70: 6f 70 64 6f 77 6e 2e 63 6c 61 73 73 4c 69 73 74 opdown.classList 0000ec80: 2e 63 6f 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f .contains(CLASS_ 0000ec90: 4e 41 4d 45 5f 44 52 4f 50 55 50 29 29 20 7b 5c NAME_DROPUP)) {\ 0000eca0: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 73 n return is 0000ecb0: 45 6e 64 20 3f 20 50 4c 41 43 45 4d 45 4e 54 5f End ? PLACEMENT_ 0000ecc0: 54 4f 50 45 4e 44 20 3a 20 50 4c 41 43 45 4d 45 TOPEND : PLACEME 0000ecd0: 4e 54 5f 54 4f 50 5c 6e 20 20 20 20 7d 5c 6e 5c NT_TOP\n }\n\ 0000ece0: 6e 20 20 20 20 72 65 74 75 72 6e 20 69 73 45 6e n return isEn 0000ecf0: 64 20 3f 20 50 4c 41 43 45 4d 45 4e 54 5f 42 4f d ? PLACEMENT_BO 0000ed00: 54 54 4f 4d 45 4e 44 20 3a 20 50 4c 41 43 45 4d TTOMEND : PLACEM 0000ed10: 45 4e 54 5f 42 4f 54 54 4f 4d 5c 6e 20 20 7d 5c ENT_BOTTOM\n }\ 0000ed20: 6e 5c 6e 20 20 5f 64 65 74 65 63 74 4e 61 76 62 n\n _detectNavb 0000ed30: 61 72 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 ar() {\n retu 0000ed40: 72 6e 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 rn this._element 0000ed50: 2e 63 6c 6f 73 65 73 74 28 53 45 4c 45 43 54 4f .closest(SELECTO 0000ed60: 52 5f 4e 41 56 42 41 52 29 20 21 3d 3d 20 6e 75 R_NAVBAR) !== nu 0000ed70: 6c 6c 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 ll\n }\n\n _ge 0000ed80: 74 4f 66 66 73 65 74 28 29 20 7b 5c 6e 20 20 20 tOffset() {\n 0000ed90: 20 63 6f 6e 73 74 20 7b 20 6f 66 66 73 65 74 20 const { offset 0000eda0: 7d 20 3d 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 } = this._config 0000edb0: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 74 79 70 65 \n\n if (type 0000edc0: 6f 66 20 6f 66 66 73 65 74 20 3d 3d 3d 20 27 73 of offset === 's 0000edd0: 74 72 69 6e 67 27 29 20 7b 5c 6e 20 20 20 20 20 tring') {\n 0000ede0: 20 72 65 74 75 72 6e 20 6f 66 66 73 65 74 2e 73 return offset.s 0000edf0: 70 6c 69 74 28 27 2c 27 29 2e 6d 61 70 28 76 61 plit(',').map(va 0000ee00: 6c 75 65 20 3d 3e 20 4e 75 6d 62 65 72 2e 70 61 lue => Number.pa 0000ee10: 72 73 65 49 6e 74 28 76 61 6c 75 65 2c 20 31 30 rseInt(value, 10 0000ee20: 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 ))\n }\n\n 0000ee30: 20 69 66 20 28 74 79 70 65 6f 66 20 6f 66 66 73 if (typeof offs 0000ee40: 65 74 20 3d 3d 3d 20 27 66 75 6e 63 74 69 6f 6e et === 'function 0000ee50: 27 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 ') {\n retu 0000ee60: 72 6e 20 70 6f 70 70 65 72 44 61 74 61 20 3d 3e rn popperData => 0000ee70: 20 6f 66 66 73 65 74 28 70 6f 70 70 65 72 44 61 offset(popperDa 0000ee80: 74 61 2c 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e ta, this._elemen 0000ee90: 74 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 t)\n }\n\n 0000eea0: 20 72 65 74 75 72 6e 20 6f 66 66 73 65 74 5c 6e return offset\n 0000eeb0: 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 74 50 6f 70 }\n\n _getPop 0000eec0: 70 65 72 43 6f 6e 66 69 67 28 29 20 7b 5c 6e 20 perConfig() {\n 0000eed0: 20 20 20 63 6f 6e 73 74 20 64 65 66 61 75 6c 74 const default 0000eee0: 42 73 50 6f 70 70 65 72 43 6f 6e 66 69 67 20 3d BsPopperConfig = 0000eef0: 20 7b 5c 6e 20 20 20 20 20 20 70 6c 61 63 65 6d {\n placem 0000ef00: 65 6e 74 3a 20 74 68 69 73 2e 5f 67 65 74 50 6c ent: this._getPl 0000ef10: 61 63 65 6d 65 6e 74 28 29 2c 5c 6e 20 20 20 20 acement(),\n 0000ef20: 20 20 6d 6f 64 69 66 69 65 72 73 3a 20 5b 7b 5c modifiers: [{\ 0000ef30: 6e 20 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 27 n name: ' 0000ef40: 70 72 65 76 65 6e 74 4f 76 65 72 66 6c 6f 77 27 preventOverflow' 0000ef50: 2c 5c 6e 20 20 20 20 20 20 20 20 6f 70 74 69 6f ,\n optio 0000ef60: 6e 73 3a 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 ns: {\n 0000ef70: 20 62 6f 75 6e 64 61 72 79 3a 20 74 68 69 73 2e boundary: this. 0000ef80: 5f 63 6f 6e 66 69 67 2e 62 6f 75 6e 64 61 72 79 _config.boundary 0000ef90: 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 \n }\n 0000efa0: 20 20 20 7d 2c 5c 6e 20 20 20 20 20 20 7b 5c 6e },\n {\n 0000efb0: 20 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 27 6f name: 'o 0000efc0: 66 66 73 65 74 27 2c 5c 6e 20 20 20 20 20 20 20 ffset',\n 0000efd0: 20 6f 70 74 69 6f 6e 73 3a 20 7b 5c 6e 20 20 20 options: {\n 0000efe0: 20 20 20 20 20 20 20 6f 66 66 73 65 74 3a 20 74 offset: t 0000eff0: 68 69 73 2e 5f 67 65 74 4f 66 66 73 65 74 28 29 his._getOffset() 0000f000: 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 \n }\n 0000f010: 20 20 20 7d 5d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e }]\n }\n\n 0000f020: 20 20 20 20 2f 2f 20 44 69 73 61 62 6c 65 20 50 // Disable P 0000f030: 6f 70 70 65 72 20 69 66 20 77 65 20 68 61 76 65 opper if we have 0000f040: 20 61 20 73 74 61 74 69 63 20 64 69 73 70 6c 61 a static displa 0000f050: 79 20 6f 72 20 44 72 6f 70 64 6f 77 6e 20 69 73 y or Dropdown is 0000f060: 20 69 6e 20 4e 61 76 62 61 72 5c 6e 20 20 20 20 in Navbar\n 0000f070: 69 66 20 28 74 68 69 73 2e 5f 69 6e 4e 61 76 62 if (this._inNavb 0000f080: 61 72 20 7c 7c 20 74 68 69 73 2e 5f 63 6f 6e 66 ar || this._conf 0000f090: 69 67 2e 64 69 73 70 6c 61 79 20 3d 3d 3d 20 27 ig.display === ' 0000f0a0: 73 74 61 74 69 63 27 29 20 7b 5c 6e 20 20 20 20 static') {\n 0000f0b0: 20 20 4d 61 6e 69 70 75 6c 61 74 6f 72 2e 73 65 Manipulator.se 0000f0c0: 74 44 61 74 61 41 74 74 72 69 62 75 74 65 28 74 tDataAttribute(t 0000f0d0: 68 69 73 2e 5f 6d 65 6e 75 2c 20 27 70 6f 70 70 his._menu, 'popp 0000f0e0: 65 72 27 2c 20 27 73 74 61 74 69 63 27 29 20 2f er', 'static') / 0000f0f0: 2f 20 54 4f 44 4f 3a 20 76 36 20 72 65 6d 6f 76 / TODO: v6 remov 0000f100: 65 5c 6e 20 20 20 20 20 20 64 65 66 61 75 6c 74 e\n default 0000f110: 42 73 50 6f 70 70 65 72 43 6f 6e 66 69 67 2e 6d BsPopperConfig.m 0000f120: 6f 64 69 66 69 65 72 73 20 3d 20 5b 7b 5c 6e 20 odifiers = [{\n 0000f130: 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 27 61 70 name: 'ap 0000f140: 70 6c 79 53 74 79 6c 65 73 27 2c 5c 6e 20 20 20 plyStyles',\n 0000f150: 20 20 20 20 20 65 6e 61 62 6c 65 64 3a 20 66 61 enabled: fa 0000f160: 6c 73 65 5c 6e 20 20 20 20 20 20 7d 5d 5c 6e 20 lse\n }]\n 0000f170: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 75 }\n\n retu 0000f180: 72 6e 20 7b 5c 6e 20 20 20 20 20 20 2e 2e 2e 64 rn {\n ...d 0000f190: 65 66 61 75 6c 74 42 73 50 6f 70 70 65 72 43 6f efaultBsPopperCo 0000f1a0: 6e 66 69 67 2c 5c 6e 20 20 20 20 20 20 2e 2e 2e nfig,\n ... 0000f1b0: 65 78 65 63 75 74 65 28 74 68 69 73 2e 5f 63 6f execute(this._co 0000f1c0: 6e 66 69 67 2e 70 6f 70 70 65 72 43 6f 6e 66 69 nfig.popperConfi 0000f1d0: 67 2c 20 5b 64 65 66 61 75 6c 74 42 73 50 6f 70 g, [defaultBsPop 0000f1e0: 70 65 72 43 6f 6e 66 69 67 5d 29 5c 6e 20 20 20 perConfig])\n 0000f1f0: 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 73 65 }\n }\n\n _se 0000f200: 6c 65 63 74 4d 65 6e 75 49 74 65 6d 28 7b 20 6b lectMenuItem({ k 0000f210: 65 79 2c 20 74 61 72 67 65 74 20 7d 29 20 7b 5c ey, target }) {\ 0000f220: 6e 20 20 20 20 63 6f 6e 73 74 20 69 74 65 6d 73 n const items 0000f230: 20 3d 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e = SelectorEngin 0000f240: 65 2e 66 69 6e 64 28 53 45 4c 45 43 54 4f 52 5f e.find(SELECTOR_ 0000f250: 56 49 53 49 42 4c 45 5f 49 54 45 4d 53 2c 20 74 VISIBLE_ITEMS, t 0000f260: 68 69 73 2e 5f 6d 65 6e 75 29 2e 66 69 6c 74 65 his._menu).filte 0000f270: 72 28 65 6c 65 6d 65 6e 74 20 3d 3e 20 69 73 56 r(element => isV 0000f280: 69 73 69 62 6c 65 28 65 6c 65 6d 65 6e 74 29 29 isible(element)) 0000f290: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 69 74 65 \n\n if (!ite 0000f2a0: 6d 73 2e 6c 65 6e 67 74 68 29 20 7b 5c 6e 20 20 ms.length) {\n 0000f2b0: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 0000f2c0: 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 69 66 20 74 }\n\n // if t 0000f2d0: 61 72 67 65 74 20 69 73 6e 27 74 20 69 6e 63 6c arget isn't incl 0000f2e0: 75 64 65 64 20 69 6e 20 69 74 65 6d 73 20 28 65 uded in items (e 0000f2f0: 2e 67 2e 20 77 68 65 6e 20 65 78 70 61 6e 64 69 .g. when expandi 0000f300: 6e 67 20 74 68 65 20 64 72 6f 70 64 6f 77 6e 29 ng the dropdown) 0000f310: 5c 6e 20 20 20 20 2f 2f 20 61 6c 6c 6f 77 20 63 \n // allow c 0000f320: 79 63 6c 69 6e 67 20 74 6f 20 67 65 74 20 74 68 ycling to get th 0000f330: 65 20 6c 61 73 74 20 69 74 65 6d 20 69 6e 20 63 e last item in c 0000f340: 61 73 65 20 6b 65 79 20 65 71 75 61 6c 73 20 41 ase key equals A 0000f350: 52 52 4f 57 5f 55 50 5f 4b 45 59 5c 6e 20 20 20 RROW_UP_KEY\n 0000f360: 20 67 65 74 4e 65 78 74 41 63 74 69 76 65 45 6c getNextActiveEl 0000f370: 65 6d 65 6e 74 28 69 74 65 6d 73 2c 20 74 61 72 ement(items, tar 0000f380: 67 65 74 2c 20 6b 65 79 20 3d 3d 3d 20 41 52 52 get, key === ARR 0000f390: 4f 57 5f 44 4f 57 4e 5f 4b 45 59 2c 20 21 69 74 OW_DOWN_KEY, !it 0000f3a0: 65 6d 73 2e 69 6e 63 6c 75 64 65 73 28 74 61 72 ems.includes(tar 0000f3b0: 67 65 74 29 29 2e 66 6f 63 75 73 28 29 5c 6e 20 get)).focus()\n 0000f3c0: 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 53 74 61 74 69 }\n\n // Stati 0000f3d0: 63 5c 6e 20 20 73 74 61 74 69 63 20 6a 51 75 65 c\n static jQue 0000f3e0: 72 79 49 6e 74 65 72 66 61 63 65 28 63 6f 6e 66 ryInterface(conf 0000f3f0: 69 67 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 ig) {\n retur 0000f400: 6e 20 74 68 69 73 2e 65 61 63 68 28 66 75 6e 63 n this.each(func 0000f410: 74 69 6f 6e 20 28 29 20 7b 5c 6e 20 20 20 20 20 tion () {\n 0000f420: 20 63 6f 6e 73 74 20 64 61 74 61 20 3d 20 44 72 const data = Dr 0000f430: 6f 70 64 6f 77 6e 2e 67 65 74 4f 72 43 72 65 61 opdown.getOrCrea 0000f440: 74 65 49 6e 73 74 61 6e 63 65 28 74 68 69 73 2c teInstance(this, 0000f450: 20 63 6f 6e 66 69 67 29 5c 6e 5c 6e 20 20 20 20 config)\n\n 0000f460: 20 20 69 66 20 28 74 79 70 65 6f 66 20 63 6f 6e if (typeof con 0000f470: 66 69 67 20 21 3d 3d 20 27 73 74 72 69 6e 67 27 fig !== 'string' 0000f480: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 65 74 ) {\n ret 0000f490: 75 72 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e urn\n }\n\n 0000f4a0: 20 20 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 if (typeof 0000f4b0: 20 64 61 74 61 5b 63 6f 6e 66 69 67 5d 20 3d 3d data[config] == 0000f4c0: 3d 20 27 75 6e 64 65 66 69 6e 65 64 27 29 20 7b = 'undefined') { 0000f4d0: 5c 6e 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 \n throw 0000f4e0: 6e 65 77 20 54 79 70 65 45 72 72 6f 72 28 60 4e new TypeError(`N 0000f4f0: 6f 20 6d 65 74 68 6f 64 20 6e 61 6d 65 64 20 5c o method named \ 0000f500: 22 24 7b 63 6f 6e 66 69 67 7d 5c 22 60 29 5c 6e "${config}\"`)\n 0000f510: 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 }\n\n 0000f520: 20 64 61 74 61 5b 63 6f 6e 66 69 67 5d 28 29 5c data[config]()\ 0000f530: 6e 20 20 20 20 7d 29 5c 6e 20 20 7d 5c 6e 5c 6e n })\n }\n\n 0000f540: 20 20 73 74 61 74 69 63 20 63 6c 65 61 72 4d 65 static clearMe 0000f550: 6e 75 73 28 65 76 65 6e 74 29 20 7b 5c 6e 20 20 nus(event) {\n 0000f560: 20 20 69 66 20 28 65 76 65 6e 74 2e 62 75 74 74 if (event.butt 0000f570: 6f 6e 20 3d 3d 3d 20 52 49 47 48 54 5f 4d 4f 55 on === RIGHT_MOU 0000f580: 53 45 5f 42 55 54 54 4f 4e 20 7c 7c 20 28 65 76 SE_BUTTON || (ev 0000f590: 65 6e 74 2e 74 79 70 65 20 3d 3d 3d 20 27 6b 65 ent.type === 'ke 0000f5a0: 79 75 70 27 20 26 26 20 65 76 65 6e 74 2e 6b 65 yup' && event.ke 0000f5b0: 79 20 21 3d 3d 20 54 41 42 5f 4b 45 59 29 29 20 y !== TAB_KEY)) 0000f5c0: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c {\n return\ 0000f5d0: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f n }\n\n co 0000f5e0: 6e 73 74 20 6f 70 65 6e 54 6f 67 67 6c 65 73 20 nst openToggles 0000f5f0: 3d 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 = SelectorEngine 0000f600: 2e 66 69 6e 64 28 53 45 4c 45 43 54 4f 52 5f 44 .find(SELECTOR_D 0000f610: 41 54 41 5f 54 4f 47 47 4c 45 5f 53 48 4f 57 4e ATA_TOGGLE_SHOWN 0000f620: 29 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 63 6f )\n\n for (co 0000f630: 6e 73 74 20 74 6f 67 67 6c 65 20 6f 66 20 6f 70 nst toggle of op 0000f640: 65 6e 54 6f 67 67 6c 65 73 29 20 7b 5c 6e 20 20 enToggles) {\n 0000f650: 20 20 20 20 63 6f 6e 73 74 20 63 6f 6e 74 65 78 const contex 0000f660: 74 20 3d 20 44 72 6f 70 64 6f 77 6e 2e 67 65 74 t = Dropdown.get 0000f670: 49 6e 73 74 61 6e 63 65 28 74 6f 67 67 6c 65 29 Instance(toggle) 0000f680: 5c 6e 20 20 20 20 20 20 69 66 20 28 21 63 6f 6e \n if (!con 0000f690: 74 65 78 74 20 7c 7c 20 63 6f 6e 74 65 78 74 2e text || context. 0000f6a0: 5f 63 6f 6e 66 69 67 2e 61 75 74 6f 43 6c 6f 73 _config.autoClos 0000f6b0: 65 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 5c 6e e === false) {\n 0000f6c0: 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 continue 0000f6d0: 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 \n }\n\n 0000f6e0: 20 20 20 63 6f 6e 73 74 20 63 6f 6d 70 6f 73 65 const compose 0000f6f0: 64 50 61 74 68 20 3d 20 65 76 65 6e 74 2e 63 6f dPath = event.co 0000f700: 6d 70 6f 73 65 64 50 61 74 68 28 29 5c 6e 20 20 mposedPath()\n 0000f710: 20 20 20 20 63 6f 6e 73 74 20 69 73 4d 65 6e 75 const isMenu 0000f720: 54 61 72 67 65 74 20 3d 20 63 6f 6d 70 6f 73 65 Target = compose 0000f730: 64 50 61 74 68 2e 69 6e 63 6c 75 64 65 73 28 63 dPath.includes(c 0000f740: 6f 6e 74 65 78 74 2e 5f 6d 65 6e 75 29 5c 6e 20 ontext._menu)\n 0000f750: 20 20 20 20 20 69 66 20 28 5c 6e 20 20 20 20 20 if (\n 0000f760: 20 20 20 63 6f 6d 70 6f 73 65 64 50 61 74 68 2e composedPath. 0000f770: 69 6e 63 6c 75 64 65 73 28 63 6f 6e 74 65 78 74 includes(context 0000f780: 2e 5f 65 6c 65 6d 65 6e 74 29 20 7c 7c 5c 6e 20 ._element) ||\n 0000f790: 20 20 20 20 20 20 20 28 63 6f 6e 74 65 78 74 2e (context. 0000f7a0: 5f 63 6f 6e 66 69 67 2e 61 75 74 6f 43 6c 6f 73 _config.autoClos 0000f7b0: 65 20 3d 3d 3d 20 27 69 6e 73 69 64 65 27 20 26 e === 'inside' & 0000f7c0: 26 20 21 69 73 4d 65 6e 75 54 61 72 67 65 74 29 & !isMenuTarget) 0000f7d0: 20 7c 7c 5c 6e 20 20 20 20 20 20 20 20 28 63 6f ||\n (co 0000f7e0: 6e 74 65 78 74 2e 5f 63 6f 6e 66 69 67 2e 61 75 ntext._config.au 0000f7f0: 74 6f 43 6c 6f 73 65 20 3d 3d 3d 20 27 6f 75 74 toClose === 'out 0000f800: 73 69 64 65 27 20 26 26 20 69 73 4d 65 6e 75 54 side' && isMenuT 0000f810: 61 72 67 65 74 29 5c 6e 20 20 20 20 20 20 29 20 arget)\n ) 0000f820: 7b 5c 6e 20 20 20 20 20 20 20 20 63 6f 6e 74 69 {\n conti 0000f830: 6e 75 65 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e nue\n }\n\n 0000f840: 20 20 20 20 20 20 2f 2f 20 54 61 62 20 6e 61 76 // Tab nav 0000f850: 69 67 61 74 69 6f 6e 20 74 68 72 6f 75 67 68 20 igation through 0000f860: 74 68 65 20 64 72 6f 70 64 6f 77 6e 20 6d 65 6e the dropdown men 0000f870: 75 20 6f 72 20 65 76 65 6e 74 73 20 66 72 6f 6d u or events from 0000f880: 20 63 6f 6e 74 61 69 6e 65 64 20 69 6e 70 75 74 contained input 0000f890: 73 20 73 68 6f 75 6c 64 6e 27 74 20 63 6c 6f 73 s shouldn't clos 0000f8a0: 65 20 74 68 65 20 6d 65 6e 75 5c 6e 20 20 20 20 e the menu\n 0000f8b0: 20 20 69 66 20 28 63 6f 6e 74 65 78 74 2e 5f 6d if (context._m 0000f8c0: 65 6e 75 2e 63 6f 6e 74 61 69 6e 73 28 65 76 65 enu.contains(eve 0000f8d0: 6e 74 2e 74 61 72 67 65 74 29 20 26 26 20 28 28 nt.target) && (( 0000f8e0: 65 76 65 6e 74 2e 74 79 70 65 20 3d 3d 3d 20 27 event.type === ' 0000f8f0: 6b 65 79 75 70 27 20 26 26 20 65 76 65 6e 74 2e keyup' && event. 0000f900: 6b 65 79 20 3d 3d 3d 20 54 41 42 5f 4b 45 59 29 key === TAB_KEY) 0000f910: 20 7c 7c 20 2f 69 6e 70 75 74 7c 73 65 6c 65 63 || /input|selec 0000f920: 74 7c 6f 70 74 69 6f 6e 7c 74 65 78 74 61 72 65 t|option|textare 0000f930: 61 7c 66 6f 72 6d 2f 69 2e 74 65 73 74 28 65 76 a|form/i.test(ev 0000f940: 65 6e 74 2e 74 61 72 67 65 74 2e 74 61 67 4e 61 ent.target.tagNa 0000f950: 6d 65 29 29 29 20 7b 5c 6e 20 20 20 20 20 20 20 me))) {\n 0000f960: 20 63 6f 6e 74 69 6e 75 65 5c 6e 20 20 20 20 20 continue\n 0000f970: 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 63 6f 6e 73 }\n\n cons 0000f980: 74 20 72 65 6c 61 74 65 64 54 61 72 67 65 74 20 t relatedTarget 0000f990: 3d 20 7b 20 72 65 6c 61 74 65 64 54 61 72 67 65 = { relatedTarge 0000f9a0: 74 3a 20 63 6f 6e 74 65 78 74 2e 5f 65 6c 65 6d t: context._elem 0000f9b0: 65 6e 74 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 ent }\n\n i 0000f9c0: 66 20 28 65 76 65 6e 74 2e 74 79 70 65 20 3d 3d f (event.type == 0000f9d0: 3d 20 27 63 6c 69 63 6b 27 29 20 7b 5c 6e 20 20 = 'click') {\n 0000f9e0: 20 20 20 20 20 20 72 65 6c 61 74 65 64 54 61 72 relatedTar 0000f9f0: 67 65 74 2e 63 6c 69 63 6b 45 76 65 6e 74 20 3d get.clickEvent = 0000fa00: 20 65 76 65 6e 74 5c 6e 20 20 20 20 20 20 7d 5c event\n }\ 0000fa10: 6e 5c 6e 20 20 20 20 20 20 63 6f 6e 74 65 78 74 n\n context 0000fa20: 2e 5f 63 6f 6d 70 6c 65 74 65 48 69 64 65 28 72 ._completeHide(r 0000fa30: 65 6c 61 74 65 64 54 61 72 67 65 74 29 5c 6e 20 elatedTarget)\n 0000fa40: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 }\n }\n\n s 0000fa50: 74 61 74 69 63 20 64 61 74 61 41 70 69 4b 65 79 tatic dataApiKey 0000fa60: 64 6f 77 6e 48 61 6e 64 6c 65 72 28 65 76 65 6e downHandler(even 0000fa70: 74 29 20 7b 5c 6e 20 20 20 20 2f 2f 20 49 66 20 t) {\n // If 0000fa80: 6e 6f 74 20 61 6e 20 55 50 20 7c 20 44 4f 57 4e not an UP | DOWN 0000fa90: 20 7c 20 45 53 43 41 50 45 20 6b 65 79 20 3d 3e | ESCAPE key => 0000faa0: 20 6e 6f 74 20 61 20 64 72 6f 70 64 6f 77 6e 20 not a dropdown 0000fab0: 63 6f 6d 6d 61 6e 64 5c 6e 20 20 20 20 2f 2f 20 command\n // 0000fac0: 49 66 20 69 6e 70 75 74 2f 74 65 78 74 61 72 65 If input/textare 0000fad0: 61 20 26 26 20 69 66 20 6b 65 79 20 69 73 20 6f a && if key is o 0000fae0: 74 68 65 72 20 74 68 61 6e 20 45 53 43 41 50 45 ther than ESCAPE 0000faf0: 20 3d 3e 20 6e 6f 74 20 61 20 64 72 6f 70 64 6f => not a dropdo 0000fb00: 77 6e 20 63 6f 6d 6d 61 6e 64 5c 6e 5c 6e 20 20 wn command\n\n 0000fb10: 20 20 63 6f 6e 73 74 20 69 73 49 6e 70 75 74 20 const isInput 0000fb20: 3d 20 2f 69 6e 70 75 74 7c 74 65 78 74 61 72 65 = /input|textare 0000fb30: 61 2f 69 2e 74 65 73 74 28 65 76 65 6e 74 2e 74 a/i.test(event.t 0000fb40: 61 72 67 65 74 2e 74 61 67 4e 61 6d 65 29 5c 6e arget.tagName)\n 0000fb50: 20 20 20 20 63 6f 6e 73 74 20 69 73 45 73 63 61 const isEsca 0000fb60: 70 65 45 76 65 6e 74 20 3d 20 65 76 65 6e 74 2e peEvent = event. 0000fb70: 6b 65 79 20 3d 3d 3d 20 45 53 43 41 50 45 5f 4b key === ESCAPE_K 0000fb80: 45 59 5c 6e 20 20 20 20 63 6f 6e 73 74 20 69 73 EY\n const is 0000fb90: 55 70 4f 72 44 6f 77 6e 45 76 65 6e 74 20 3d 20 UpOrDownEvent = 0000fba0: 5b 41 52 52 4f 57 5f 55 50 5f 4b 45 59 2c 20 41 [ARROW_UP_KEY, A 0000fbb0: 52 52 4f 57 5f 44 4f 57 4e 5f 4b 45 59 5d 2e 69 RROW_DOWN_KEY].i 0000fbc0: 6e 63 6c 75 64 65 73 28 65 76 65 6e 74 2e 6b 65 ncludes(event.ke 0000fbd0: 79 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 69 y)\n\n if (!i 0000fbe0: 73 55 70 4f 72 44 6f 77 6e 45 76 65 6e 74 20 26 sUpOrDownEvent & 0000fbf0: 26 20 21 69 73 45 73 63 61 70 65 45 76 65 6e 74 & !isEscapeEvent 0000fc00: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 ) {\n retur 0000fc10: 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 n\n }\n\n 0000fc20: 69 66 20 28 69 73 49 6e 70 75 74 20 26 26 20 21 if (isInput && ! 0000fc30: 69 73 45 73 63 61 70 65 45 76 65 6e 74 29 20 7b isEscapeEvent) { 0000fc40: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 0000fc50: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 65 76 65 }\n\n eve 0000fc60: 6e 74 2e 70 72 65 76 65 6e 74 44 65 66 61 75 6c nt.preventDefaul 0000fc70: 74 28 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 54 4f t()\n\n // TO 0000fc80: 44 4f 3a 20 76 36 20 72 65 76 65 72 74 20 23 33 DO: v6 revert #3 0000fc90: 37 30 31 31 20 26 20 63 68 61 6e 67 65 20 6d 61 7011 & change ma 0000fca0: 72 6b 75 70 20 68 74 74 70 73 3a 2f 2f 67 65 74 rkup https://get 0000fcb0: 62 6f 6f 74 73 74 72 61 70 2e 63 6f 6d 2f 64 6f bootstrap.com/do 0000fcc0: 63 73 2f 35 2e 33 2f 66 6f 72 6d 73 2f 69 6e 70 cs/5.3/forms/inp 0000fcd0: 75 74 2d 67 72 6f 75 70 2f 5c 6e 20 20 20 20 63 ut-group/\n c 0000fce0: 6f 6e 73 74 20 67 65 74 54 6f 67 67 6c 65 42 75 onst getToggleBu 0000fcf0: 74 74 6f 6e 20 3d 20 74 68 69 73 2e 6d 61 74 63 tton = this.matc 0000fd00: 68 65 73 28 53 45 4c 45 43 54 4f 52 5f 44 41 54 hes(SELECTOR_DAT 0000fd10: 41 5f 54 4f 47 47 4c 45 29 20 3f 5c 6e 20 20 20 A_TOGGLE) ?\n 0000fd20: 20 20 20 74 68 69 73 20 3a 5c 6e 20 20 20 20 20 this :\n 0000fd30: 20 28 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 (SelectorEngine 0000fd40: 2e 70 72 65 76 28 74 68 69 73 2c 20 53 45 4c 45 .prev(this, SELE 0000fd50: 43 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 CTOR_DATA_TOGGLE 0000fd60: 29 5b 30 5d 20 7c 7c 5c 6e 20 20 20 20 20 20 20 )[0] ||\n 0000fd70: 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e SelectorEngine. 0000fd80: 6e 65 78 74 28 74 68 69 73 2c 20 53 45 4c 45 43 next(this, SELEC 0000fd90: 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 29 TOR_DATA_TOGGLE) 0000fda0: 5b 30 5d 20 7c 7c 5c 6e 20 20 20 20 20 20 20 20 [0] ||\n 0000fdb0: 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 SelectorEngine.f 0000fdc0: 69 6e 64 4f 6e 65 28 53 45 4c 45 43 54 4f 52 5f indOne(SELECTOR_ 0000fdd0: 44 41 54 41 5f 54 4f 47 47 4c 45 2c 20 65 76 65 DATA_TOGGLE, eve 0000fde0: 6e 74 2e 64 65 6c 65 67 61 74 65 54 61 72 67 65 nt.delegateTarge 0000fdf0: 74 2e 70 61 72 65 6e 74 4e 6f 64 65 29 29 5c 6e t.parentNode))\n 0000fe00: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 69 6e 73 74 \n const inst 0000fe10: 61 6e 63 65 20 3d 20 44 72 6f 70 64 6f 77 6e 2e ance = Dropdown. 0000fe20: 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 getOrCreateInsta 0000fe30: 6e 63 65 28 67 65 74 54 6f 67 67 6c 65 42 75 74 nce(getToggleBut 0000fe40: 74 6f 6e 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 ton)\n\n if ( 0000fe50: 69 73 55 70 4f 72 44 6f 77 6e 45 76 65 6e 74 29 isUpOrDownEvent) 0000fe60: 20 7b 5c 6e 20 20 20 20 20 20 65 76 65 6e 74 2e {\n event. 0000fe70: 73 74 6f 70 50 72 6f 70 61 67 61 74 69 6f 6e 28 stopPropagation( 0000fe80: 29 5c 6e 20 20 20 20 20 20 69 6e 73 74 61 6e 63 )\n instanc 0000fe90: 65 2e 73 68 6f 77 28 29 5c 6e 20 20 20 20 20 20 e.show()\n 0000fea0: 69 6e 73 74 61 6e 63 65 2e 5f 73 65 6c 65 63 74 instance._select 0000feb0: 4d 65 6e 75 49 74 65 6d 28 65 76 65 6e 74 29 5c MenuItem(event)\ 0000fec0: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 n return\n 0000fed0: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 }\n\n if ( 0000fee0: 69 6e 73 74 61 6e 63 65 2e 5f 69 73 53 68 6f 77 instance._isShow 0000fef0: 6e 28 29 29 20 7b 20 2f 2f 20 65 6c 73 65 20 69 n()) { // else i 0000ff00: 73 20 65 73 63 61 70 65 20 61 6e 64 20 77 65 20 s escape and we 0000ff10: 63 68 65 63 6b 20 69 66 20 69 74 20 69 73 20 73 check if it is s 0000ff20: 68 6f 77 6e 5c 6e 20 20 20 20 20 20 65 76 65 6e hown\n even 0000ff30: 74 2e 73 74 6f 70 50 72 6f 70 61 67 61 74 69 6f t.stopPropagatio 0000ff40: 6e 28 29 5c 6e 20 20 20 20 20 20 69 6e 73 74 61 n()\n insta 0000ff50: 6e 63 65 2e 68 69 64 65 28 29 5c 6e 20 20 20 20 nce.hide()\n 0000ff60: 20 20 67 65 74 54 6f 67 67 6c 65 42 75 74 74 6f getToggleButto 0000ff70: 6e 2e 66 6f 63 75 73 28 29 5c 6e 20 20 20 20 7d n.focus()\n } 0000ff80: 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c \n }\n}\n\n/**\ 0000ff90: 6e 20 2a 20 44 61 74 61 20 41 50 49 20 69 6d 70 n * Data API imp 0000ffa0: 6c 65 6d 65 6e 74 61 74 69 6f 6e 5c 6e 20 2a 2f lementation\n */ 0000ffb0: 5c 6e 5c 6e 45 76 65 6e 74 48 61 6e 64 6c 65 72 \n\nEventHandler 0000ffc0: 2e 6f 6e 28 64 6f 63 75 6d 65 6e 74 2c 20 45 56 .on(document, EV 0000ffd0: 45 4e 54 5f 4b 45 59 44 4f 57 4e 5f 44 41 54 41 ENT_KEYDOWN_DATA 0000ffe0: 5f 41 50 49 2c 20 53 45 4c 45 43 54 4f 52 5f 44 _API, SELECTOR_D 0000fff0: 41 54 41 5f 54 4f 47 47 4c 45 2c 20 44 72 6f 70 ATA_TOGGLE, Drop 00010000: 64 6f 77 6e 2e 64 61 74 61 41 70 69 4b 65 79 64 down.dataApiKeyd 00010010: 6f 77 6e 48 61 6e 64 6c 65 72 29 5c 6e 45 76 65 ownHandler)\nEve 00010020: 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 64 6f 63 ntHandler.on(doc 00010030: 75 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 4b 45 59 ument, EVENT_KEY 00010040: 44 4f 57 4e 5f 44 41 54 41 5f 41 50 49 2c 20 53 DOWN_DATA_API, S 00010050: 45 4c 45 43 54 4f 52 5f 4d 45 4e 55 2c 20 44 72 ELECTOR_MENU, Dr 00010060: 6f 70 64 6f 77 6e 2e 64 61 74 61 41 70 69 4b 65 opdown.dataApiKe 00010070: 79 64 6f 77 6e 48 61 6e 64 6c 65 72 29 5c 6e 45 ydownHandler)\nE 00010080: 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 64 ventHandler.on(d 00010090: 6f 63 75 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 43 ocument, EVENT_C 000100a0: 4c 49 43 4b 5f 44 41 54 41 5f 41 50 49 2c 20 44 LICK_DATA_API, D 000100b0: 72 6f 70 64 6f 77 6e 2e 63 6c 65 61 72 4d 65 6e ropdown.clearMen 000100c0: 75 73 29 5c 6e 45 76 65 6e 74 48 61 6e 64 6c 65 us)\nEventHandle 000100d0: 72 2e 6f 6e 28 64 6f 63 75 6d 65 6e 74 2c 20 45 r.on(document, E 000100e0: 56 45 4e 54 5f 4b 45 59 55 50 5f 44 41 54 41 5f VENT_KEYUP_DATA_ 000100f0: 41 50 49 2c 20 44 72 6f 70 64 6f 77 6e 2e 63 6c API, Dropdown.cl 00010100: 65 61 72 4d 65 6e 75 73 29 5c 6e 45 76 65 6e 74 earMenus)\nEvent 00010110: 48 61 6e 64 6c 65 72 2e 6f 6e 28 64 6f 63 75 6d Handler.on(docum 00010120: 65 6e 74 2c 20 45 56 45 4e 54 5f 43 4c 49 43 4b ent, EVENT_CLICK 00010130: 5f 44 41 54 41 5f 41 50 49 2c 20 53 45 4c 45 43 _DATA_API, SELEC 00010140: 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 2c TOR_DATA_TOGGLE, 00010150: 20 66 75 6e 63 74 69 6f 6e 20 28 65 76 65 6e 74 function (event 00010160: 29 20 7b 5c 6e 20 20 65 76 65 6e 74 2e 70 72 65 ) {\n event.pre 00010170: 76 65 6e 74 44 65 66 61 75 6c 74 28 29 5c 6e 20 ventDefault()\n 00010180: 20 44 72 6f 70 64 6f 77 6e 2e 67 65 74 4f 72 43 Dropdown.getOrC 00010190: 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 74 68 reateInstance(th 000101a0: 69 73 29 2e 74 6f 67 67 6c 65 28 29 5c 6e 7d 29 is).toggle()\n}) 000101b0: 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 6a 51 75 65 \n\n/**\n * jQue 000101c0: 72 79 5c 6e 20 2a 2f 5c 6e 5c 6e 64 65 66 69 6e ry\n */\n\ndefin 000101d0: 65 4a 51 75 65 72 79 50 6c 75 67 69 6e 28 44 72 eJQueryPlugin(Dr 000101e0: 6f 70 64 6f 77 6e 29 5c 6e 5c 6e 65 78 70 6f 72 opdown)\n\nexpor 000101f0: 74 20 64 65 66 61 75 6c 74 20 44 72 6f 70 64 6f t default Dropdo 00010200: 77 6e 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d wn\n","/**\n * - 00010210: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010220: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010230: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010240: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010250: 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f ---------\n * Bo 00010260: 6f 74 73 74 72 61 70 20 75 74 69 6c 2f 62 61 63 otstrap util/bac 00010270: 6b 64 72 6f 70 2e 6a 73 5c 6e 20 2a 20 4c 69 63 kdrop.js\n * Lic 00010280: 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 20 ensed under MIT 00010290: 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e (https://github. 000102a0: 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 72 com/twbs/bootstr 000102b0: 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 43 ap/blob/main/LIC 000102c0: 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d ENSE)\n * ------ 000102d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000102e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000102f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010300: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010310: 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d 70 ----\n */\n\nimp 00010320: 6f 72 74 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 ort EventHandler 00010330: 20 66 72 6f 6d 20 27 2e 2e 2f 64 6f 6d 2f 65 76 from '../dom/ev 00010340: 65 6e 74 2d 68 61 6e 64 6c 65 72 2e 6a 73 27 5c ent-handler.js'\ 00010350: 6e 69 6d 70 6f 72 74 20 43 6f 6e 66 69 67 20 66 nimport Config f 00010360: 72 6f 6d 20 27 2e 2f 63 6f 6e 66 69 67 2e 6a 73 rom './config.js 00010370: 27 5c 6e 69 6d 70 6f 72 74 20 7b 5c 6e 20 20 65 '\nimport {\n e 00010380: 78 65 63 75 74 65 2c 20 65 78 65 63 75 74 65 41 xecute, executeA 00010390: 66 74 65 72 54 72 61 6e 73 69 74 69 6f 6e 2c 20 fterTransition, 000103a0: 67 65 74 45 6c 65 6d 65 6e 74 2c 20 72 65 66 6c getElement, refl 000103b0: 6f 77 5c 6e 7d 20 66 72 6f 6d 20 27 2e 2f 69 6e ow\n} from './in 000103c0: 64 65 78 2e 6a 73 27 5c 6e 5c 6e 2f 2a 2a 5c 6e dex.js'\n\n/**\n 000103d0: 20 2a 20 43 6f 6e 73 74 61 6e 74 73 5c 6e 20 2a * Constants\n * 000103e0: 2f 5c 6e 5c 6e 63 6f 6e 73 74 20 4e 41 4d 45 20 /\n\nconst NAME 000103f0: 3d 20 27 62 61 63 6b 64 72 6f 70 27 5c 6e 63 6f = 'backdrop'\nco 00010400: 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 46 nst CLASS_NAME_F 00010410: 41 44 45 20 3d 20 27 66 61 64 65 27 5c 6e 63 6f ADE = 'fade'\nco 00010420: 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 nst CLASS_NAME_S 00010430: 48 4f 57 20 3d 20 27 73 68 6f 77 27 5c 6e 63 6f HOW = 'show'\nco 00010440: 6e 73 74 20 45 56 45 4e 54 5f 4d 4f 55 53 45 44 nst EVENT_MOUSED 00010450: 4f 57 4e 20 3d 20 60 6d 6f 75 73 65 64 6f 77 6e OWN = `mousedown 00010460: 2e 62 73 2e 24 7b 4e 41 4d 45 7d 60 5c 6e 5c 6e .bs.${NAME}`\n\n 00010470: 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 20 3d 20 const Default = 00010480: 7b 5c 6e 20 20 63 6c 61 73 73 4e 61 6d 65 3a 20 {\n className: 00010490: 27 6d 6f 64 61 6c 2d 62 61 63 6b 64 72 6f 70 27 'modal-backdrop' 000104a0: 2c 5c 6e 20 20 63 6c 69 63 6b 43 61 6c 6c 62 61 ,\n clickCallba 000104b0: 63 6b 3a 20 6e 75 6c 6c 2c 5c 6e 20 20 69 73 41 ck: null,\n isA 000104c0: 6e 69 6d 61 74 65 64 3a 20 66 61 6c 73 65 2c 5c nimated: false,\ 000104d0: 6e 20 20 69 73 56 69 73 69 62 6c 65 3a 20 74 72 n isVisible: tr 000104e0: 75 65 2c 20 2f 2f 20 69 66 20 66 61 6c 73 65 2c ue, // if false, 000104f0: 20 77 65 20 75 73 65 20 74 68 65 20 62 61 63 6b we use the back 00010500: 64 72 6f 70 20 68 65 6c 70 65 72 20 77 69 74 68 drop helper with 00010510: 6f 75 74 20 61 64 64 69 6e 67 20 61 6e 79 20 65 out adding any e 00010520: 6c 65 6d 65 6e 74 20 74 6f 20 74 68 65 20 64 6f lement to the do 00010530: 6d 5c 6e 20 20 72 6f 6f 74 45 6c 65 6d 65 6e 74 m\n rootElement 00010540: 3a 20 27 62 6f 64 79 27 20 2f 2f 20 67 69 76 65 : 'body' // give 00010550: 20 74 68 65 20 63 68 6f 69 63 65 20 74 6f 20 70 the choice to p 00010560: 6c 61 63 65 20 62 61 63 6b 64 72 6f 70 20 75 6e lace backdrop un 00010570: 64 65 72 20 64 69 66 66 65 72 65 6e 74 20 65 6c der different el 00010580: 65 6d 65 6e 74 73 5c 6e 7d 5c 6e 5c 6e 63 6f 6e ements\n}\n\ncon 00010590: 73 74 20 44 65 66 61 75 6c 74 54 79 70 65 20 3d st DefaultType = 000105a0: 20 7b 5c 6e 20 20 63 6c 61 73 73 4e 61 6d 65 3a {\n className: 000105b0: 20 27 73 74 72 69 6e 67 27 2c 5c 6e 20 20 63 6c 'string',\n cl 000105c0: 69 63 6b 43 61 6c 6c 62 61 63 6b 3a 20 27 28 66 ickCallback: '(f 000105d0: 75 6e 63 74 69 6f 6e 7c 6e 75 6c 6c 29 27 2c 5c unction|null)',\ 000105e0: 6e 20 20 69 73 41 6e 69 6d 61 74 65 64 3a 20 27 n isAnimated: ' 000105f0: 62 6f 6f 6c 65 61 6e 27 2c 5c 6e 20 20 69 73 56 boolean',\n isV 00010600: 69 73 69 62 6c 65 3a 20 27 62 6f 6f 6c 65 61 6e isible: 'boolean 00010610: 27 2c 5c 6e 20 20 72 6f 6f 74 45 6c 65 6d 65 6e ',\n rootElemen 00010620: 74 3a 20 27 28 65 6c 65 6d 65 6e 74 7c 73 74 72 t: '(element|str 00010630: 69 6e 67 29 27 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c ing)'\n}\n\n/**\ 00010640: 6e 20 2a 20 43 6c 61 73 73 20 64 65 66 69 6e 69 n * Class defini 00010650: 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6c 61 tion\n */\n\ncla 00010660: 73 73 20 42 61 63 6b 64 72 6f 70 20 65 78 74 65 ss Backdrop exte 00010670: 6e 64 73 20 43 6f 6e 66 69 67 20 7b 5c 6e 20 20 nds Config {\n 00010680: 63 6f 6e 73 74 72 75 63 74 6f 72 28 63 6f 6e 66 constructor(conf 00010690: 69 67 29 20 7b 5c 6e 20 20 20 20 73 75 70 65 72 ig) {\n super 000106a0: 28 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 63 6f ()\n this._co 000106b0: 6e 66 69 67 20 3d 20 74 68 69 73 2e 5f 67 65 74 nfig = this._get 000106c0: 43 6f 6e 66 69 67 28 63 6f 6e 66 69 67 29 5c 6e Config(config)\n 000106d0: 20 20 20 20 74 68 69 73 2e 5f 69 73 41 70 70 65 this._isAppe 000106e0: 6e 64 65 64 20 3d 20 66 61 6c 73 65 5c 6e 20 20 nded = false\n 000106f0: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 20 this._element 00010700: 3d 20 6e 75 6c 6c 5c 6e 20 20 7d 5c 6e 5c 6e 20 = null\n }\n\n 00010710: 20 2f 2f 20 47 65 74 74 65 72 73 5c 6e 20 20 73 // Getters\n s 00010720: 74 61 74 69 63 20 67 65 74 20 44 65 66 61 75 6c tatic get Defaul 00010730: 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 t() {\n retur 00010740: 6e 20 44 65 66 61 75 6c 74 5c 6e 20 20 7d 5c 6e n Default\n }\n 00010750: 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 20 44 \n static get D 00010760: 65 66 61 75 6c 74 54 79 70 65 28 29 20 7b 5c 6e efaultType() {\n 00010770: 20 20 20 20 72 65 74 75 72 6e 20 44 65 66 61 75 return Defau 00010780: 6c 74 54 79 70 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 ltType\n }\n\n 00010790: 20 73 74 61 74 69 63 20 67 65 74 20 4e 41 4d 45 static get NAME 000107a0: 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e () {\n return 000107b0: 20 4e 41 4d 45 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 NAME\n }\n\n 000107c0: 2f 2f 20 50 75 62 6c 69 63 5c 6e 20 20 73 68 6f // Public\n sho 000107d0: 77 28 63 61 6c 6c 62 61 63 6b 29 20 7b 5c 6e 20 w(callback) {\n 000107e0: 20 20 20 69 66 20 28 21 74 68 69 73 2e 5f 63 6f if (!this._co 000107f0: 6e 66 69 67 2e 69 73 56 69 73 69 62 6c 65 29 20 nfig.isVisible) 00010800: 7b 5c 6e 20 20 20 20 20 20 65 78 65 63 75 74 65 {\n execute 00010810: 28 63 61 6c 6c 62 61 63 6b 29 5c 6e 20 20 20 20 (callback)\n 00010820: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c return\n }\ 00010830: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 70 70 n\n this._app 00010840: 65 6e 64 28 29 5c 6e 5c 6e 20 20 20 20 63 6f 6e end()\n\n con 00010850: 73 74 20 65 6c 65 6d 65 6e 74 20 3d 20 74 68 69 st element = thi 00010860: 73 2e 5f 67 65 74 45 6c 65 6d 65 6e 74 28 29 5c s._getElement()\ 00010870: 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f 63 n if (this._c 00010880: 6f 6e 66 69 67 2e 69 73 41 6e 69 6d 61 74 65 64 onfig.isAnimated 00010890: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 66 6c 6f ) {\n reflo 000108a0: 77 28 65 6c 65 6d 65 6e 74 29 5c 6e 20 20 20 20 w(element)\n 000108b0: 7d 5c 6e 5c 6e 20 20 20 20 65 6c 65 6d 65 6e 74 }\n\n element 000108c0: 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 .classList.add(C 000108d0: 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c LASS_NAME_SHOW)\ 000108e0: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6d 75 n\n this._emu 000108f0: 6c 61 74 65 41 6e 69 6d 61 74 69 6f 6e 28 28 29 lateAnimation(() 00010900: 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 65 78 65 => {\n exe 00010910: 63 75 74 65 28 63 61 6c 6c 62 61 63 6b 29 5c 6e cute(callback)\n 00010920: 20 20 20 20 7d 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 })\n }\n\n 00010930: 20 68 69 64 65 28 63 61 6c 6c 62 61 63 6b 29 20 hide(callback) 00010940: 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 73 {\n if (!this 00010950: 2e 5f 63 6f 6e 66 69 67 2e 69 73 56 69 73 69 62 ._config.isVisib 00010960: 6c 65 29 20 7b 5c 6e 20 20 20 20 20 20 65 78 65 le) {\n exe 00010970: 63 75 74 65 28 63 61 6c 6c 62 61 63 6b 29 5c 6e cute(callback)\n 00010980: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 00010990: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 000109a0: 5f 67 65 74 45 6c 65 6d 65 6e 74 28 29 2e 63 6c _getElement().cl 000109b0: 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 65 28 43 assList.remove(C 000109c0: 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c LASS_NAME_SHOW)\ 000109d0: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6d 75 n\n this._emu 000109e0: 6c 61 74 65 41 6e 69 6d 61 74 69 6f 6e 28 28 29 lateAnimation(() 000109f0: 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 => {\n thi 00010a00: 73 2e 64 69 73 70 6f 73 65 28 29 5c 6e 20 20 20 s.dispose()\n 00010a10: 20 20 20 65 78 65 63 75 74 65 28 63 61 6c 6c 62 execute(callb 00010a20: 61 63 6b 29 5c 6e 20 20 20 20 7d 29 5c 6e 20 20 ack)\n })\n 00010a30: 7d 5c 6e 5c 6e 20 20 64 69 73 70 6f 73 65 28 29 }\n\n dispose() 00010a40: 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 {\n if (!thi 00010a50: 73 2e 5f 69 73 41 70 70 65 6e 64 65 64 29 20 7b s._isAppended) { 00010a60: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 00010a70: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 45 76 65 }\n\n Eve 00010a80: 6e 74 48 61 6e 64 6c 65 72 2e 6f 66 66 28 74 68 ntHandler.off(th 00010a90: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 is._element, EVE 00010aa0: 4e 54 5f 4d 4f 55 53 45 44 4f 57 4e 29 5c 6e 5c NT_MOUSEDOWN)\n\ 00010ab0: 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 n this._eleme 00010ac0: 6e 74 2e 72 65 6d 6f 76 65 28 29 5c 6e 20 20 20 nt.remove()\n 00010ad0: 20 74 68 69 73 2e 5f 69 73 41 70 70 65 6e 64 65 this._isAppende 00010ae0: 64 20 3d 20 66 61 6c 73 65 5c 6e 20 20 7d 5c 6e d = false\n }\n 00010af0: 5c 6e 20 20 2f 2f 20 50 72 69 76 61 74 65 5c 6e \n // Private\n 00010b00: 20 20 5f 67 65 74 45 6c 65 6d 65 6e 74 28 29 20 _getElement() 00010b10: 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 73 {\n if (!this 00010b20: 2e 5f 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 ._element) {\n 00010b30: 20 20 20 20 63 6f 6e 73 74 20 62 61 63 6b 64 72 const backdr 00010b40: 6f 70 20 3d 20 64 6f 63 75 6d 65 6e 74 2e 63 72 op = document.cr 00010b50: 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 64 69 76 eateElement('div 00010b60: 27 29 5c 6e 20 20 20 20 20 20 62 61 63 6b 64 72 ')\n backdr 00010b70: 6f 70 2e 63 6c 61 73 73 4e 61 6d 65 20 3d 20 74 op.className = t 00010b80: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 63 6c 61 73 his._config.clas 00010b90: 73 4e 61 6d 65 5c 6e 20 20 20 20 20 20 69 66 20 sName\n if 00010ba0: 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 69 73 (this._config.is 00010bb0: 41 6e 69 6d 61 74 65 64 29 20 7b 5c 6e 20 20 20 Animated) {\n 00010bc0: 20 20 20 20 20 62 61 63 6b 64 72 6f 70 2e 63 6c backdrop.cl 00010bd0: 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 53 assList.add(CLAS 00010be0: 53 5f 4e 41 4d 45 5f 46 41 44 45 29 5c 6e 20 20 S_NAME_FADE)\n 00010bf0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 74 }\n\n t 00010c00: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 20 3d 20 62 his._element = b 00010c10: 61 63 6b 64 72 6f 70 5c 6e 20 20 20 20 7d 5c 6e ackdrop\n }\n 00010c20: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 \n return thi 00010c30: 73 2e 5f 65 6c 65 6d 65 6e 74 5c 6e 20 20 7d 5c s._element\n }\ 00010c40: 6e 5c 6e 20 20 5f 63 6f 6e 66 69 67 41 66 74 65 n\n _configAfte 00010c50: 72 4d 65 72 67 65 28 63 6f 6e 66 69 67 29 20 7b rMerge(config) { 00010c60: 5c 6e 20 20 20 20 2f 2f 20 75 73 65 20 67 65 74 \n // use get 00010c70: 45 6c 65 6d 65 6e 74 28 29 20 77 69 74 68 20 74 Element() with t 00010c80: 68 65 20 64 65 66 61 75 6c 74 20 5c 22 62 6f 64 he default \"bod 00010c90: 79 5c 22 20 74 6f 20 67 65 74 20 61 20 66 72 65 y\" to get a fre 00010ca0: 73 68 20 45 6c 65 6d 65 6e 74 20 6f 6e 20 65 61 sh Element on ea 00010cb0: 63 68 20 69 6e 73 74 61 6e 74 69 61 74 69 6f 6e ch instantiation 00010cc0: 5c 6e 20 20 20 20 63 6f 6e 66 69 67 2e 72 6f 6f \n config.roo 00010cd0: 74 45 6c 65 6d 65 6e 74 20 3d 20 67 65 74 45 6c tElement = getEl 00010ce0: 65 6d 65 6e 74 28 63 6f 6e 66 69 67 2e 72 6f 6f ement(config.roo 00010cf0: 74 45 6c 65 6d 65 6e 74 29 5c 6e 20 20 20 20 72 tElement)\n r 00010d00: 65 74 75 72 6e 20 63 6f 6e 66 69 67 5c 6e 20 20 eturn config\n 00010d10: 7d 5c 6e 5c 6e 20 20 5f 61 70 70 65 6e 64 28 29 }\n\n _append() 00010d20: 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 {\n if (this 00010d30: 2e 5f 69 73 41 70 70 65 6e 64 65 64 29 20 7b 5c ._isAppended) {\ 00010d40: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 n return\n 00010d50: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 }\n\n cons 00010d60: 74 20 65 6c 65 6d 65 6e 74 20 3d 20 74 68 69 73 t element = this 00010d70: 2e 5f 67 65 74 45 6c 65 6d 65 6e 74 28 29 5c 6e ._getElement()\n 00010d80: 20 20 20 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 this._config 00010d90: 2e 72 6f 6f 74 45 6c 65 6d 65 6e 74 2e 61 70 70 .rootElement.app 00010da0: 65 6e 64 28 65 6c 65 6d 65 6e 74 29 5c 6e 5c 6e end(element)\n\n 00010db0: 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 EventHandler 00010dc0: 2e 6f 6e 28 65 6c 65 6d 65 6e 74 2c 20 45 56 45 .on(element, EVE 00010dd0: 4e 54 5f 4d 4f 55 53 45 44 4f 57 4e 2c 20 28 29 NT_MOUSEDOWN, () 00010de0: 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 65 78 65 => {\n exe 00010df0: 63 75 74 65 28 74 68 69 73 2e 5f 63 6f 6e 66 69 cute(this._confi 00010e00: 67 2e 63 6c 69 63 6b 43 61 6c 6c 62 61 63 6b 29 g.clickCallback) 00010e10: 5c 6e 20 20 20 20 7d 29 5c 6e 5c 6e 20 20 20 20 \n })\n\n 00010e20: 74 68 69 73 2e 5f 69 73 41 70 70 65 6e 64 65 64 this._isAppended 00010e30: 20 3d 20 74 72 75 65 5c 6e 20 20 7d 5c 6e 5c 6e = true\n }\n\n 00010e40: 20 20 5f 65 6d 75 6c 61 74 65 41 6e 69 6d 61 74 _emulateAnimat 00010e50: 69 6f 6e 28 63 61 6c 6c 62 61 63 6b 29 20 7b 5c ion(callback) {\ 00010e60: 6e 20 20 20 20 65 78 65 63 75 74 65 41 66 74 65 n executeAfte 00010e70: 72 54 72 61 6e 73 69 74 69 6f 6e 28 63 61 6c 6c rTransition(call 00010e80: 62 61 63 6b 2c 20 74 68 69 73 2e 5f 67 65 74 45 back, this._getE 00010e90: 6c 65 6d 65 6e 74 28 29 2c 20 74 68 69 73 2e 5f lement(), this._ 00010ea0: 63 6f 6e 66 69 67 2e 69 73 41 6e 69 6d 61 74 65 config.isAnimate 00010eb0: 64 29 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c 6e 65 78 d)\n }\n}\n\nex 00010ec0: 70 6f 72 74 20 64 65 66 61 75 6c 74 20 42 61 63 port default Bac 00010ed0: 6b 64 72 6f 70 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 kdrop\n","/**\n 00010ee0: 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d * -------------- 00010ef0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010f00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010f10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010f20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a ------------\n * 00010f30: 20 42 6f 6f 74 73 74 72 61 70 20 75 74 69 6c 2f Bootstrap util/ 00010f40: 66 6f 63 75 73 74 72 61 70 2e 6a 73 5c 6e 20 2a focustrap.js\n * 00010f50: 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 72 20 Licensed under 00010f60: 4d 49 54 20 28 68 74 74 70 73 3a 2f 2f 67 69 74 MIT (https://git 00010f70: 68 75 62 2e 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f hub.com/twbs/boo 00010f80: 74 73 74 72 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e tstrap/blob/main 00010f90: 2f 4c 49 43 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d /LICENSE)\n * -- 00010fa0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010fb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010fc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010fd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010fe0: 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c --------\n */\n\ 00010ff0: 6e 69 6d 70 6f 72 74 20 45 76 65 6e 74 48 61 6e nimport EventHan 00011000: 64 6c 65 72 20 66 72 6f 6d 20 27 2e 2e 2f 64 6f dler from '../do 00011010: 6d 2f 65 76 65 6e 74 2d 68 61 6e 64 6c 65 72 2e m/event-handler. 00011020: 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 53 65 6c 65 js'\nimport Sele 00011030: 63 74 6f 72 45 6e 67 69 6e 65 20 66 72 6f 6d 20 ctorEngine from 00011040: 27 2e 2e 2f 64 6f 6d 2f 73 65 6c 65 63 74 6f 72 '../dom/selector 00011050: 2d 65 6e 67 69 6e 65 2e 6a 73 27 5c 6e 69 6d 70 -engine.js'\nimp 00011060: 6f 72 74 20 43 6f 6e 66 69 67 20 66 72 6f 6d 20 ort Config from 00011070: 27 2e 2f 63 6f 6e 66 69 67 2e 6a 73 27 5c 6e 5c './config.js'\n\ 00011080: 6e 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e 73 74 61 6e n/**\n * Constan 00011090: 74 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 ts\n */\n\nconst 000110a0: 20 4e 41 4d 45 20 3d 20 27 66 6f 63 75 73 74 72 NAME = 'focustr 000110b0: 61 70 27 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f ap'\nconst DATA_ 000110c0: 4b 45 59 20 3d 20 27 62 73 2e 66 6f 63 75 73 74 KEY = 'bs.focust 000110d0: 72 61 70 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e rap'\nconst EVEN 000110e0: 54 5f 4b 45 59 20 3d 20 60 2e 24 7b 44 41 54 41 T_KEY = `.${DATA 000110f0: 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 _KEY}`\nconst EV 00011100: 45 4e 54 5f 46 4f 43 55 53 49 4e 20 3d 20 60 66 ENT_FOCUSIN = `f 00011110: 6f 63 75 73 69 6e 24 7b 45 56 45 4e 54 5f 4b 45 ocusin${EVENT_KE 00011120: 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 Y}`\nconst EVENT 00011130: 5f 4b 45 59 44 4f 57 4e 5f 54 41 42 20 3d 20 60 _KEYDOWN_TAB = ` 00011140: 6b 65 79 64 6f 77 6e 2e 74 61 62 24 7b 45 56 45 keydown.tab${EVE 00011150: 4e 54 5f 4b 45 59 7d 60 5c 6e 5c 6e 63 6f 6e 73 NT_KEY}`\n\ncons 00011160: 74 20 54 41 42 5f 4b 45 59 20 3d 20 27 54 61 62 t TAB_KEY = 'Tab 00011170: 27 5c 6e 63 6f 6e 73 74 20 54 41 42 5f 4e 41 56 '\nconst TAB_NAV 00011180: 5f 46 4f 52 57 41 52 44 20 3d 20 27 66 6f 72 77 _FORWARD = 'forw 00011190: 61 72 64 27 5c 6e 63 6f 6e 73 74 20 54 41 42 5f ard'\nconst TAB_ 000111a0: 4e 41 56 5f 42 41 43 4b 57 41 52 44 20 3d 20 27 NAV_BACKWARD = ' 000111b0: 62 61 63 6b 77 61 72 64 27 5c 6e 5c 6e 63 6f 6e backward'\n\ncon 000111c0: 73 74 20 44 65 66 61 75 6c 74 20 3d 20 7b 5c 6e st Default = {\n 000111d0: 20 20 61 75 74 6f 66 6f 63 75 73 3a 20 74 72 75 autofocus: tru 000111e0: 65 2c 5c 6e 20 20 74 72 61 70 45 6c 65 6d 65 6e e,\n trapElemen 000111f0: 74 3a 20 6e 75 6c 6c 20 2f 2f 20 54 68 65 20 65 t: null // The e 00011200: 6c 65 6d 65 6e 74 20 74 6f 20 74 72 61 70 20 66 lement to trap f 00011210: 6f 63 75 73 20 69 6e 73 69 64 65 20 6f 66 5c 6e ocus inside of\n 00011220: 7d 5c 6e 5c 6e 63 6f 6e 73 74 20 44 65 66 61 75 }\n\nconst Defau 00011230: 6c 74 54 79 70 65 20 3d 20 7b 5c 6e 20 20 61 75 ltType = {\n au 00011240: 74 6f 66 6f 63 75 73 3a 20 27 62 6f 6f 6c 65 61 tofocus: 'boolea 00011250: 6e 27 2c 5c 6e 20 20 74 72 61 70 45 6c 65 6d 65 n',\n trapEleme 00011260: 6e 74 3a 20 27 65 6c 65 6d 65 6e 74 27 5c 6e 7d nt: 'element'\n} 00011270: 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 \n\n/**\n * Clas 00011280: 73 20 64 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a s definition\n * 00011290: 2f 5c 6e 5c 6e 63 6c 61 73 73 20 46 6f 63 75 73 /\n\nclass Focus 000112a0: 54 72 61 70 20 65 78 74 65 6e 64 73 20 43 6f 6e Trap extends Con 000112b0: 66 69 67 20 7b 5c 6e 20 20 63 6f 6e 73 74 72 75 fig {\n constru 000112c0: 63 74 6f 72 28 63 6f 6e 66 69 67 29 20 7b 5c 6e ctor(config) {\n 000112d0: 20 20 20 20 73 75 70 65 72 28 29 5c 6e 20 20 20 super()\n 000112e0: 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 20 3d 20 this._config = 000112f0: 74 68 69 73 2e 5f 67 65 74 43 6f 6e 66 69 67 28 this._getConfig( 00011300: 63 6f 6e 66 69 67 29 5c 6e 20 20 20 20 74 68 69 config)\n thi 00011310: 73 2e 5f 69 73 41 63 74 69 76 65 20 3d 20 66 61 s._isActive = fa 00011320: 6c 73 65 5c 6e 20 20 20 20 74 68 69 73 2e 5f 6c lse\n this._l 00011330: 61 73 74 54 61 62 4e 61 76 44 69 72 65 63 74 69 astTabNavDirecti 00011340: 6f 6e 20 3d 20 6e 75 6c 6c 5c 6e 20 20 7d 5c 6e on = null\n }\n 00011350: 5c 6e 20 20 2f 2f 20 47 65 74 74 65 72 73 5c 6e \n // Getters\n 00011360: 20 20 73 74 61 74 69 63 20 67 65 74 20 44 65 66 static get Def 00011370: 61 75 6c 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 ault() {\n re 00011380: 74 75 72 6e 20 44 65 66 61 75 6c 74 5c 6e 20 20 turn Default\n 00011390: 7d 5c 6e 5c 6e 20 20 73 74 61 74 69 63 20 67 65 }\n\n static ge 000113a0: 74 20 44 65 66 61 75 6c 74 54 79 70 65 28 29 20 t DefaultType() 000113b0: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 44 65 {\n return De 000113c0: 66 61 75 6c 74 54 79 70 65 5c 6e 20 20 7d 5c 6e faultType\n }\n 000113d0: 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 20 4e \n static get N 000113e0: 41 4d 45 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 AME() {\n ret 000113f0: 75 72 6e 20 4e 41 4d 45 5c 6e 20 20 7d 5c 6e 5c urn NAME\n }\n\ 00011400: 6e 20 20 2f 2f 20 50 75 62 6c 69 63 5c 6e 20 20 n // Public\n 00011410: 61 63 74 69 76 61 74 65 28 29 20 7b 5c 6e 20 20 activate() {\n 00011420: 20 20 69 66 20 28 74 68 69 73 2e 5f 69 73 41 63 if (this._isAc 00011430: 74 69 76 65 29 20 7b 5c 6e 20 20 20 20 20 20 72 tive) {\n r 00011440: 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e eturn\n }\n\n 00011450: 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f 63 6f if (this._co 00011460: 6e 66 69 67 2e 61 75 74 6f 66 6f 63 75 73 29 20 nfig.autofocus) 00011470: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 63 {\n this._c 00011480: 6f 6e 66 69 67 2e 74 72 61 70 45 6c 65 6d 65 6e onfig.trapElemen 00011490: 74 2e 66 6f 63 75 73 28 29 5c 6e 20 20 20 20 7d t.focus()\n } 000114a0: 5c 6e 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e \n\n EventHan 000114b0: 64 6c 65 72 2e 6f 66 66 28 64 6f 63 75 6d 65 6e dler.off(documen 000114c0: 74 2c 20 45 56 45 4e 54 5f 4b 45 59 29 20 2f 2f t, EVENT_KEY) // 000114d0: 20 67 75 61 72 64 20 61 67 61 69 6e 73 74 20 69 guard against i 000114e0: 6e 66 69 6e 69 74 65 20 66 6f 63 75 73 20 6c 6f nfinite focus lo 000114f0: 6f 70 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e op\n EventHan 00011500: 64 6c 65 72 2e 6f 6e 28 64 6f 63 75 6d 65 6e 74 dler.on(document 00011510: 2c 20 45 56 45 4e 54 5f 46 4f 43 55 53 49 4e 2c , EVENT_FOCUSIN, 00011520: 20 65 76 65 6e 74 20 3d 3e 20 74 68 69 73 2e 5f event => this._ 00011530: 68 61 6e 64 6c 65 46 6f 63 75 73 69 6e 28 65 76 handleFocusin(ev 00011540: 65 6e 74 29 29 5c 6e 20 20 20 20 45 76 65 6e 74 ent))\n Event 00011550: 48 61 6e 64 6c 65 72 2e 6f 6e 28 64 6f 63 75 6d Handler.on(docum 00011560: 65 6e 74 2c 20 45 56 45 4e 54 5f 4b 45 59 44 4f ent, EVENT_KEYDO 00011570: 57 4e 5f 54 41 42 2c 20 65 76 65 6e 74 20 3d 3e WN_TAB, event => 00011580: 20 74 68 69 73 2e 5f 68 61 6e 64 6c 65 4b 65 79 this._handleKey 00011590: 64 6f 77 6e 28 65 76 65 6e 74 29 29 5c 6e 5c 6e down(event))\n\n 000115a0: 20 20 20 20 74 68 69 73 2e 5f 69 73 41 63 74 69 this._isActi 000115b0: 76 65 20 3d 20 74 72 75 65 5c 6e 20 20 7d 5c 6e ve = true\n }\n 000115c0: 5c 6e 20 20 64 65 61 63 74 69 76 61 74 65 28 29 \n deactivate() 000115d0: 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 {\n if (!thi 000115e0: 73 2e 5f 69 73 41 63 74 69 76 65 29 20 7b 5c 6e s._isActive) {\n 000115f0: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 00011600: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 00011610: 5f 69 73 41 63 74 69 76 65 20 3d 20 66 61 6c 73 _isActive = fals 00011620: 65 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 e\n EventHand 00011630: 6c 65 72 2e 6f 66 66 28 64 6f 63 75 6d 65 6e 74 ler.off(document 00011640: 2c 20 45 56 45 4e 54 5f 4b 45 59 29 5c 6e 20 20 , EVENT_KEY)\n 00011650: 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 72 69 76 61 74 }\n\n // Privat 00011660: 65 5c 6e 20 20 5f 68 61 6e 64 6c 65 46 6f 63 75 e\n _handleFocu 00011670: 73 69 6e 28 65 76 65 6e 74 29 20 7b 5c 6e 20 20 sin(event) {\n 00011680: 20 20 63 6f 6e 73 74 20 7b 20 74 72 61 70 45 6c const { trapEl 00011690: 65 6d 65 6e 74 20 7d 20 3d 20 74 68 69 73 2e 5f ement } = this._ 000116a0: 63 6f 6e 66 69 67 5c 6e 5c 6e 20 20 20 20 69 66 config\n\n if 000116b0: 20 28 65 76 65 6e 74 2e 74 61 72 67 65 74 20 3d (event.target = 000116c0: 3d 3d 20 64 6f 63 75 6d 65 6e 74 20 7c 7c 20 65 == document || e 000116d0: 76 65 6e 74 2e 74 61 72 67 65 74 20 3d 3d 3d 20 vent.target === 000116e0: 74 72 61 70 45 6c 65 6d 65 6e 74 20 7c 7c 20 74 trapElement || t 000116f0: 72 61 70 45 6c 65 6d 65 6e 74 2e 63 6f 6e 74 61 rapElement.conta 00011700: 69 6e 73 28 65 76 65 6e 74 2e 74 61 72 67 65 74 ins(event.target 00011710: 29 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 )) {\n retu 00011720: 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 rn\n }\n\n 00011730: 20 63 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 73 20 const elements 00011740: 3d 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 = SelectorEngine 00011750: 2e 66 6f 63 75 73 61 62 6c 65 43 68 69 6c 64 72 .focusableChildr 00011760: 65 6e 28 74 72 61 70 45 6c 65 6d 65 6e 74 29 5c en(trapElement)\ 00011770: 6e 5c 6e 20 20 20 20 69 66 20 28 65 6c 65 6d 65 n\n if (eleme 00011780: 6e 74 73 2e 6c 65 6e 67 74 68 20 3d 3d 3d 20 30 nts.length === 0 00011790: 29 20 7b 5c 6e 20 20 20 20 20 20 74 72 61 70 45 ) {\n trapE 000117a0: 6c 65 6d 65 6e 74 2e 66 6f 63 75 73 28 29 5c 6e lement.focus()\n 000117b0: 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 74 } else if (t 000117c0: 68 69 73 2e 5f 6c 61 73 74 54 61 62 4e 61 76 44 his._lastTabNavD 000117d0: 69 72 65 63 74 69 6f 6e 20 3d 3d 3d 20 54 41 42 irection === TAB 000117e0: 5f 4e 41 56 5f 42 41 43 4b 57 41 52 44 29 20 7b _NAV_BACKWARD) { 000117f0: 5c 6e 20 20 20 20 20 20 65 6c 65 6d 65 6e 74 73 \n elements 00011800: 5b 65 6c 65 6d 65 6e 74 73 2e 6c 65 6e 67 74 68 [elements.length 00011810: 20 2d 20 31 5d 2e 66 6f 63 75 73 28 29 5c 6e 20 - 1].focus()\n 00011820: 20 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 } else {\n 00011830: 20 20 20 65 6c 65 6d 65 6e 74 73 5b 30 5d 2e 66 elements[0].f 00011840: 6f 63 75 73 28 29 5c 6e 20 20 20 20 7d 5c 6e 20 ocus()\n }\n 00011850: 20 7d 5c 6e 5c 6e 20 20 5f 68 61 6e 64 6c 65 4b }\n\n _handleK 00011860: 65 79 64 6f 77 6e 28 65 76 65 6e 74 29 20 7b 5c eydown(event) {\ 00011870: 6e 20 20 20 20 69 66 20 28 65 76 65 6e 74 2e 6b n if (event.k 00011880: 65 79 20 21 3d 3d 20 54 41 42 5f 4b 45 59 29 20 ey !== TAB_KEY) 00011890: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c {\n return\ 000118a0: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 n }\n\n th 000118b0: 69 73 2e 5f 6c 61 73 74 54 61 62 4e 61 76 44 69 is._lastTabNavDi 000118c0: 72 65 63 74 69 6f 6e 20 3d 20 65 76 65 6e 74 2e rection = event. 000118d0: 73 68 69 66 74 4b 65 79 20 3f 20 54 41 42 5f 4e shiftKey ? TAB_N 000118e0: 41 56 5f 42 41 43 4b 57 41 52 44 20 3a 20 54 41 AV_BACKWARD : TA 000118f0: 42 5f 4e 41 56 5f 46 4f 52 57 41 52 44 5c 6e 20 B_NAV_FORWARD\n 00011900: 20 7d 5c 6e 7d 5c 6e 5c 6e 65 78 70 6f 72 74 20 }\n}\n\nexport 00011910: 64 65 66 61 75 6c 74 20 46 6f 63 75 73 54 72 61 default FocusTra 00011920: 70 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d 2d p\n","/**\n * -- 00011930: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011940: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011950: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011960: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011970: 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f 6f --------\n * Boo 00011980: 74 73 74 72 61 70 20 75 74 69 6c 2f 73 63 72 6f tstrap util/scro 00011990: 6c 6c 42 61 72 2e 6a 73 5c 6e 20 2a 20 4c 69 63 llBar.js\n * Lic 000119a0: 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 20 ensed under MIT 000119b0: 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e (https://github. 000119c0: 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 72 com/twbs/bootstr 000119d0: 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 43 ap/blob/main/LIC 000119e0: 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d ENSE)\n * ------ 000119f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011a00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011a10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011a20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011a30: 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d 70 ----\n */\n\nimp 00011a40: 6f 72 74 20 4d 61 6e 69 70 75 6c 61 74 6f 72 20 ort Manipulator 00011a50: 66 72 6f 6d 20 27 2e 2e 2f 64 6f 6d 2f 6d 61 6e from '../dom/man 00011a60: 69 70 75 6c 61 74 6f 72 2e 6a 73 27 5c 6e 69 6d ipulator.js'\nim 00011a70: 70 6f 72 74 20 53 65 6c 65 63 74 6f 72 45 6e 67 port SelectorEng 00011a80: 69 6e 65 20 66 72 6f 6d 20 27 2e 2e 2f 64 6f 6d ine from '../dom 00011a90: 2f 73 65 6c 65 63 74 6f 72 2d 65 6e 67 69 6e 65 /selector-engine 00011aa0: 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 7b 20 69 .js'\nimport { i 00011ab0: 73 45 6c 65 6d 65 6e 74 20 7d 20 66 72 6f 6d 20 sElement } from 00011ac0: 27 2e 2f 69 6e 64 65 78 2e 6a 73 27 5c 6e 5c 6e './index.js'\n\n 00011ad0: 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e 73 74 61 6e 74 /**\n * Constant 00011ae0: 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 20 s\n */\n\nconst 00011af0: 53 45 4c 45 43 54 4f 52 5f 46 49 58 45 44 5f 43 SELECTOR_FIXED_C 00011b00: 4f 4e 54 45 4e 54 20 3d 20 27 2e 66 69 78 65 64 ONTENT = '.fixed 00011b10: 2d 74 6f 70 2c 20 2e 66 69 78 65 64 2d 62 6f 74 -top, .fixed-bot 00011b20: 74 6f 6d 2c 20 2e 69 73 2d 66 69 78 65 64 2c 20 tom, .is-fixed, 00011b30: 2e 73 74 69 63 6b 79 2d 74 6f 70 27 5c 6e 63 6f .sticky-top'\nco 00011b40: 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 53 54 49 nst SELECTOR_STI 00011b50: 43 4b 59 5f 43 4f 4e 54 45 4e 54 20 3d 20 27 2e CKY_CONTENT = '. 00011b60: 73 74 69 63 6b 79 2d 74 6f 70 27 5c 6e 63 6f 6e sticky-top'\ncon 00011b70: 73 74 20 50 52 4f 50 45 52 54 59 5f 50 41 44 44 st PROPERTY_PADD 00011b80: 49 4e 47 20 3d 20 27 70 61 64 64 69 6e 67 2d 72 ING = 'padding-r 00011b90: 69 67 68 74 27 5c 6e 63 6f 6e 73 74 20 50 52 4f ight'\nconst PRO 00011ba0: 50 45 52 54 59 5f 4d 41 52 47 49 4e 20 3d 20 27 PERTY_MARGIN = ' 00011bb0: 6d 61 72 67 69 6e 2d 72 69 67 68 74 27 5c 6e 5c margin-right'\n\ 00011bc0: 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 73 20 64 n/**\n * Class d 00011bd0: 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e efinition\n */\n 00011be0: 5c 6e 63 6c 61 73 73 20 53 63 72 6f 6c 6c 42 61 \nclass ScrollBa 00011bf0: 72 48 65 6c 70 65 72 20 7b 5c 6e 20 20 63 6f 6e rHelper {\n con 00011c00: 73 74 72 75 63 74 6f 72 28 29 20 7b 5c 6e 20 20 structor() {\n 00011c10: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 20 this._element 00011c20: 3d 20 64 6f 63 75 6d 65 6e 74 2e 62 6f 64 79 5c = document.body\ 00011c30: 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 75 62 n }\n\n // Pub 00011c40: 6c 69 63 5c 6e 20 20 67 65 74 57 69 64 74 68 28 lic\n getWidth( 00011c50: 29 20 7b 5c 6e 20 20 20 20 2f 2f 20 68 74 74 70 ) {\n // http 00011c60: 73 3a 2f 2f 64 65 76 65 6c 6f 70 65 72 2e 6d 6f s://developer.mo 00011c70: 7a 69 6c 6c 61 2e 6f 72 67 2f 65 6e 2d 55 53 2f zilla.org/en-US/ 00011c80: 64 6f 63 73 2f 57 65 62 2f 41 50 49 2f 57 69 6e docs/Web/API/Win 00011c90: 64 6f 77 2f 69 6e 6e 65 72 57 69 64 74 68 23 75 dow/innerWidth#u 00011ca0: 73 61 67 65 5f 6e 6f 74 65 73 5c 6e 20 20 20 20 sage_notes\n 00011cb0: 63 6f 6e 73 74 20 64 6f 63 75 6d 65 6e 74 57 69 const documentWi 00011cc0: 64 74 68 20 3d 20 64 6f 63 75 6d 65 6e 74 2e 64 dth = document.d 00011cd0: 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 2e 63 ocumentElement.c 00011ce0: 6c 69 65 6e 74 57 69 64 74 68 5c 6e 20 20 20 20 lientWidth\n 00011cf0: 72 65 74 75 72 6e 20 4d 61 74 68 2e 61 62 73 28 return Math.abs( 00011d00: 77 69 6e 64 6f 77 2e 69 6e 6e 65 72 57 69 64 74 window.innerWidt 00011d10: 68 20 2d 20 64 6f 63 75 6d 65 6e 74 57 69 64 74 h - documentWidt 00011d20: 68 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 68 69 64 h)\n }\n\n hid 00011d30: 65 28 29 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 e() {\n const 00011d40: 20 77 69 64 74 68 20 3d 20 74 68 69 73 2e 67 65 width = this.ge 00011d50: 74 57 69 64 74 68 28 29 5c 6e 20 20 20 20 74 68 tWidth()\n th 00011d60: 69 73 2e 5f 64 69 73 61 62 6c 65 4f 76 65 72 46 is._disableOverF 00011d70: 6c 6f 77 28 29 5c 6e 20 20 20 20 2f 2f 20 67 69 low()\n // gi 00011d80: 76 65 20 70 61 64 64 69 6e 67 20 74 6f 20 65 6c ve padding to el 00011d90: 65 6d 65 6e 74 20 74 6f 20 62 61 6c 61 6e 63 65 ement to balance 00011da0: 20 74 68 65 20 68 69 64 64 65 6e 20 73 63 72 6f the hidden scro 00011db0: 6c 6c 62 61 72 20 77 69 64 74 68 5c 6e 20 20 20 llbar width\n 00011dc0: 20 74 68 69 73 2e 5f 73 65 74 45 6c 65 6d 65 6e this._setElemen 00011dd0: 74 41 74 74 72 69 62 75 74 65 73 28 74 68 69 73 tAttributes(this 00011de0: 2e 5f 65 6c 65 6d 65 6e 74 2c 20 50 52 4f 50 45 ._element, PROPE 00011df0: 52 54 59 5f 50 41 44 44 49 4e 47 2c 20 63 61 6c RTY_PADDING, cal 00011e00: 63 75 6c 61 74 65 64 56 61 6c 75 65 20 3d 3e 20 culatedValue => 00011e10: 63 61 6c 63 75 6c 61 74 65 64 56 61 6c 75 65 20 calculatedValue 00011e20: 2b 20 77 69 64 74 68 29 5c 6e 20 20 20 20 2f 2f + width)\n // 00011e30: 20 74 72 69 63 6b 3a 20 57 65 20 61 64 6a 75 73 trick: We adjus 00011e40: 74 20 70 6f 73 69 74 69 76 65 20 70 61 64 64 69 t positive paddi 00011e50: 6e 67 52 69 67 68 74 20 61 6e 64 20 6e 65 67 61 ngRight and nega 00011e60: 74 69 76 65 20 6d 61 72 67 69 6e 52 69 67 68 74 tive marginRight 00011e70: 20 74 6f 20 73 74 69 63 6b 79 2d 74 6f 70 20 65 to sticky-top e 00011e80: 6c 65 6d 65 6e 74 73 20 74 6f 20 6b 65 65 70 20 lements to keep 00011e90: 73 68 6f 77 69 6e 67 20 66 75 6c 6c 77 69 64 74 showing fullwidt 00011ea0: 68 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 65 74 h\n this._set 00011eb0: 45 6c 65 6d 65 6e 74 41 74 74 72 69 62 75 74 65 ElementAttribute 00011ec0: 73 28 53 45 4c 45 43 54 4f 52 5f 46 49 58 45 44 s(SELECTOR_FIXED 00011ed0: 5f 43 4f 4e 54 45 4e 54 2c 20 50 52 4f 50 45 52 _CONTENT, PROPER 00011ee0: 54 59 5f 50 41 44 44 49 4e 47 2c 20 63 61 6c 63 TY_PADDING, calc 00011ef0: 75 6c 61 74 65 64 56 61 6c 75 65 20 3d 3e 20 63 ulatedValue => c 00011f00: 61 6c 63 75 6c 61 74 65 64 56 61 6c 75 65 20 2b alculatedValue + 00011f10: 20 77 69 64 74 68 29 5c 6e 20 20 20 20 74 68 69 width)\n thi 00011f20: 73 2e 5f 73 65 74 45 6c 65 6d 65 6e 74 41 74 74 s._setElementAtt 00011f30: 72 69 62 75 74 65 73 28 53 45 4c 45 43 54 4f 52 ributes(SELECTOR 00011f40: 5f 53 54 49 43 4b 59 5f 43 4f 4e 54 45 4e 54 2c _STICKY_CONTENT, 00011f50: 20 50 52 4f 50 45 52 54 59 5f 4d 41 52 47 49 4e PROPERTY_MARGIN 00011f60: 2c 20 63 61 6c 63 75 6c 61 74 65 64 56 61 6c 75 , calculatedValu 00011f70: 65 20 3d 3e 20 63 61 6c 63 75 6c 61 74 65 64 56 e => calculatedV 00011f80: 61 6c 75 65 20 2d 20 77 69 64 74 68 29 5c 6e 20 alue - width)\n 00011f90: 20 7d 5c 6e 5c 6e 20 20 72 65 73 65 74 28 29 20 }\n\n reset() 00011fa0: 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f 72 65 73 {\n this._res 00011fb0: 65 74 45 6c 65 6d 65 6e 74 41 74 74 72 69 62 75 etElementAttribu 00011fc0: 74 65 73 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e tes(this._elemen 00011fd0: 74 2c 20 27 6f 76 65 72 66 6c 6f 77 27 29 5c 6e t, 'overflow')\n 00011fe0: 20 20 20 20 74 68 69 73 2e 5f 72 65 73 65 74 45 this._resetE 00011ff0: 6c 65 6d 65 6e 74 41 74 74 72 69 62 75 74 65 73 lementAttributes 00012000: 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 (this._element, 00012010: 50 52 4f 50 45 52 54 59 5f 50 41 44 44 49 4e 47 PROPERTY_PADDING 00012020: 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 72 65 73 )\n this._res 00012030: 65 74 45 6c 65 6d 65 6e 74 41 74 74 72 69 62 75 etElementAttribu 00012040: 74 65 73 28 53 45 4c 45 43 54 4f 52 5f 46 49 58 tes(SELECTOR_FIX 00012050: 45 44 5f 43 4f 4e 54 45 4e 54 2c 20 50 52 4f 50 ED_CONTENT, PROP 00012060: 45 52 54 59 5f 50 41 44 44 49 4e 47 29 5c 6e 20 ERTY_PADDING)\n 00012070: 20 20 20 74 68 69 73 2e 5f 72 65 73 65 74 45 6c this._resetEl 00012080: 65 6d 65 6e 74 41 74 74 72 69 62 75 74 65 73 28 ementAttributes( 00012090: 53 45 4c 45 43 54 4f 52 5f 53 54 49 43 4b 59 5f SELECTOR_STICKY_ 000120a0: 43 4f 4e 54 45 4e 54 2c 20 50 52 4f 50 45 52 54 CONTENT, PROPERT 000120b0: 59 5f 4d 41 52 47 49 4e 29 5c 6e 20 20 7d 5c 6e Y_MARGIN)\n }\n 000120c0: 5c 6e 20 20 69 73 4f 76 65 72 66 6c 6f 77 69 6e \n isOverflowin 000120d0: 67 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 g() {\n retur 000120e0: 6e 20 74 68 69 73 2e 67 65 74 57 69 64 74 68 28 n this.getWidth( 000120f0: 29 20 3e 20 30 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 ) > 0\n }\n\n 00012100: 2f 2f 20 50 72 69 76 61 74 65 5c 6e 20 20 5f 64 // Private\n _d 00012110: 69 73 61 62 6c 65 4f 76 65 72 46 6c 6f 77 28 29 isableOverFlow() 00012120: 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 61 {\n this._sa 00012130: 76 65 49 6e 69 74 69 61 6c 41 74 74 72 69 62 75 veInitialAttribu 00012140: 74 65 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 te(this._element 00012150: 2c 20 27 6f 76 65 72 66 6c 6f 77 27 29 5c 6e 20 , 'overflow')\n 00012160: 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 this._element 00012170: 2e 73 74 79 6c 65 2e 6f 76 65 72 66 6c 6f 77 20 .style.overflow 00012180: 3d 20 27 68 69 64 64 65 6e 27 5c 6e 20 20 7d 5c = 'hidden'\n }\ 00012190: 6e 5c 6e 20 20 5f 73 65 74 45 6c 65 6d 65 6e 74 n\n _setElement 000121a0: 41 74 74 72 69 62 75 74 65 73 28 73 65 6c 65 63 Attributes(selec 000121b0: 74 6f 72 2c 20 73 74 79 6c 65 50 72 6f 70 65 72 tor, styleProper 000121c0: 74 79 2c 20 63 61 6c 6c 62 61 63 6b 29 20 7b 5c ty, callback) {\ 000121d0: 6e 20 20 20 20 63 6f 6e 73 74 20 73 63 72 6f 6c n const scrol 000121e0: 6c 62 61 72 57 69 64 74 68 20 3d 20 74 68 69 73 lbarWidth = this 000121f0: 2e 67 65 74 57 69 64 74 68 28 29 5c 6e 20 20 20 .getWidth()\n 00012200: 20 63 6f 6e 73 74 20 6d 61 6e 69 70 75 6c 61 74 const manipulat 00012210: 69 6f 6e 43 61 6c 6c 42 61 63 6b 20 3d 20 65 6c ionCallBack = el 00012220: 65 6d 65 6e 74 20 3d 3e 20 7b 5c 6e 20 20 20 20 ement => {\n 00012230: 20 20 69 66 20 28 65 6c 65 6d 65 6e 74 20 21 3d if (element != 00012240: 3d 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 20 = this._element 00012250: 26 26 20 77 69 6e 64 6f 77 2e 69 6e 6e 65 72 57 && window.innerW 00012260: 69 64 74 68 20 3e 20 65 6c 65 6d 65 6e 74 2e 63 idth > element.c 00012270: 6c 69 65 6e 74 57 69 64 74 68 20 2b 20 73 63 72 lientWidth + scr 00012280: 6f 6c 6c 62 61 72 57 69 64 74 68 29 20 7b 5c 6e ollbarWidth) {\n 00012290: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e return\n 000122a0: 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 }\n\n 000122b0: 20 74 68 69 73 2e 5f 73 61 76 65 49 6e 69 74 69 this._saveIniti 000122c0: 61 6c 41 74 74 72 69 62 75 74 65 28 65 6c 65 6d alAttribute(elem 000122d0: 65 6e 74 2c 20 73 74 79 6c 65 50 72 6f 70 65 72 ent, styleProper 000122e0: 74 79 29 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 ty)\n const 000122f0: 20 63 61 6c 63 75 6c 61 74 65 64 56 61 6c 75 65 calculatedValue 00012300: 20 3d 20 77 69 6e 64 6f 77 2e 67 65 74 43 6f 6d = window.getCom 00012310: 70 75 74 65 64 53 74 79 6c 65 28 65 6c 65 6d 65 putedStyle(eleme 00012320: 6e 74 29 2e 67 65 74 50 72 6f 70 65 72 74 79 56 nt).getPropertyV 00012330: 61 6c 75 65 28 73 74 79 6c 65 50 72 6f 70 65 72 alue(styleProper 00012340: 74 79 29 5c 6e 20 20 20 20 20 20 65 6c 65 6d 65 ty)\n eleme 00012350: 6e 74 2e 73 74 79 6c 65 2e 73 65 74 50 72 6f 70 nt.style.setProp 00012360: 65 72 74 79 28 73 74 79 6c 65 50 72 6f 70 65 72 erty(styleProper 00012370: 74 79 2c 20 60 24 7b 63 61 6c 6c 62 61 63 6b 28 ty, `${callback( 00012380: 4e 75 6d 62 65 72 2e 70 61 72 73 65 46 6c 6f 61 Number.parseFloa 00012390: 74 28 63 61 6c 63 75 6c 61 74 65 64 56 61 6c 75 t(calculatedValu 000123a0: 65 29 29 7d 70 78 60 29 5c 6e 20 20 20 20 7d 5c e))}px`)\n }\ 000123b0: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 70 70 n\n this._app 000123c0: 6c 79 4d 61 6e 69 70 75 6c 61 74 69 6f 6e 43 61 lyManipulationCa 000123d0: 6c 6c 62 61 63 6b 28 73 65 6c 65 63 74 6f 72 2c llback(selector, 000123e0: 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 43 61 6c manipulationCal 000123f0: 6c 42 61 63 6b 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 lBack)\n }\n\n 00012400: 20 5f 73 61 76 65 49 6e 69 74 69 61 6c 41 74 74 _saveInitialAtt 00012410: 72 69 62 75 74 65 28 65 6c 65 6d 65 6e 74 2c 20 ribute(element, 00012420: 73 74 79 6c 65 50 72 6f 70 65 72 74 79 29 20 7b styleProperty) { 00012430: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 61 63 74 75 \n const actu 00012440: 61 6c 56 61 6c 75 65 20 3d 20 65 6c 65 6d 65 6e alValue = elemen 00012450: 74 2e 73 74 79 6c 65 2e 67 65 74 50 72 6f 70 65 t.style.getPrope 00012460: 72 74 79 56 61 6c 75 65 28 73 74 79 6c 65 50 72 rtyValue(stylePr 00012470: 6f 70 65 72 74 79 29 5c 6e 20 20 20 20 69 66 20 operty)\n if 00012480: 28 61 63 74 75 61 6c 56 61 6c 75 65 29 20 7b 5c (actualValue) {\ 00012490: 6e 20 20 20 20 20 20 4d 61 6e 69 70 75 6c 61 74 n Manipulat 000124a0: 6f 72 2e 73 65 74 44 61 74 61 41 74 74 72 69 62 or.setDataAttrib 000124b0: 75 74 65 28 65 6c 65 6d 65 6e 74 2c 20 73 74 79 ute(element, sty 000124c0: 6c 65 50 72 6f 70 65 72 74 79 2c 20 61 63 74 75 leProperty, actu 000124d0: 61 6c 56 61 6c 75 65 29 5c 6e 20 20 20 20 7d 5c alValue)\n }\ 000124e0: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 72 65 73 65 74 n }\n\n _reset 000124f0: 45 6c 65 6d 65 6e 74 41 74 74 72 69 62 75 74 65 ElementAttribute 00012500: 73 28 73 65 6c 65 63 74 6f 72 2c 20 73 74 79 6c s(selector, styl 00012510: 65 50 72 6f 70 65 72 74 79 29 20 7b 5c 6e 20 20 eProperty) {\n 00012520: 20 20 63 6f 6e 73 74 20 6d 61 6e 69 70 75 6c 61 const manipula 00012530: 74 69 6f 6e 43 61 6c 6c 42 61 63 6b 20 3d 20 65 tionCallBack = e 00012540: 6c 65 6d 65 6e 74 20 3d 3e 20 7b 5c 6e 20 20 20 lement => {\n 00012550: 20 20 20 63 6f 6e 73 74 20 76 61 6c 75 65 20 3d const value = 00012560: 20 4d 61 6e 69 70 75 6c 61 74 6f 72 2e 67 65 74 Manipulator.get 00012570: 44 61 74 61 41 74 74 72 69 62 75 74 65 28 65 6c DataAttribute(el 00012580: 65 6d 65 6e 74 2c 20 73 74 79 6c 65 50 72 6f 70 ement, styleProp 00012590: 65 72 74 79 29 5c 6e 20 20 20 20 20 20 2f 2f 20 erty)\n // 000125a0: 57 65 20 6f 6e 6c 79 20 77 61 6e 74 20 74 6f 20 We only want to 000125b0: 72 65 6d 6f 76 65 20 74 68 65 20 70 72 6f 70 65 remove the prope 000125c0: 72 74 79 20 69 66 20 74 68 65 20 76 61 6c 75 65 rty if the value 000125d0: 20 69 73 20 60 6e 75 6c 6c 60 3b 20 74 68 65 20 is `null`; the 000125e0: 76 61 6c 75 65 20 63 61 6e 20 61 6c 73 6f 20 62 value can also b 000125f0: 65 20 7a 65 72 6f 5c 6e 20 20 20 20 20 20 69 66 e zero\n if 00012600: 20 28 76 61 6c 75 65 20 3d 3d 3d 20 6e 75 6c 6c (value === null 00012610: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 65 6c 65 ) {\n ele 00012620: 6d 65 6e 74 2e 73 74 79 6c 65 2e 72 65 6d 6f 76 ment.style.remov 00012630: 65 50 72 6f 70 65 72 74 79 28 73 74 79 6c 65 50 eProperty(styleP 00012640: 72 6f 70 65 72 74 79 29 5c 6e 20 20 20 20 20 20 roperty)\n 00012650: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 20 20 return\n 00012660: 7d 5c 6e 5c 6e 20 20 20 20 20 20 4d 61 6e 69 70 }\n\n Manip 00012670: 75 6c 61 74 6f 72 2e 72 65 6d 6f 76 65 44 61 74 ulator.removeDat 00012680: 61 41 74 74 72 69 62 75 74 65 28 65 6c 65 6d 65 aAttribute(eleme 00012690: 6e 74 2c 20 73 74 79 6c 65 50 72 6f 70 65 72 74 nt, stylePropert 000126a0: 79 29 5c 6e 20 20 20 20 20 20 65 6c 65 6d 65 6e y)\n elemen 000126b0: 74 2e 73 74 79 6c 65 2e 73 65 74 50 72 6f 70 65 t.style.setPrope 000126c0: 72 74 79 28 73 74 79 6c 65 50 72 6f 70 65 72 74 rty(stylePropert 000126d0: 79 2c 20 76 61 6c 75 65 29 5c 6e 20 20 20 20 7d y, value)\n } 000126e0: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 70 \n\n this._ap 000126f0: 70 6c 79 4d 61 6e 69 70 75 6c 61 74 69 6f 6e 43 plyManipulationC 00012700: 61 6c 6c 62 61 63 6b 28 73 65 6c 65 63 74 6f 72 allback(selector 00012710: 2c 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 43 61 , manipulationCa 00012720: 6c 6c 42 61 63 6b 29 5c 6e 20 20 7d 5c 6e 5c 6e llBack)\n }\n\n 00012730: 20 20 5f 61 70 70 6c 79 4d 61 6e 69 70 75 6c 61 _applyManipula 00012740: 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 28 73 65 6c tionCallback(sel 00012750: 65 63 74 6f 72 2c 20 63 61 6c 6c 42 61 63 6b 29 ector, callBack) 00012760: 20 7b 5c 6e 20 20 20 20 69 66 20 28 69 73 45 6c {\n if (isEl 00012770: 65 6d 65 6e 74 28 73 65 6c 65 63 74 6f 72 29 29 ement(selector)) 00012780: 20 7b 5c 6e 20 20 20 20 20 20 63 61 6c 6c 42 61 {\n callBa 00012790: 63 6b 28 73 65 6c 65 63 74 6f 72 29 5c 6e 20 20 ck(selector)\n 000127a0: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 000127b0: 7d 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 63 6f }\n\n for (co 000127c0: 6e 73 74 20 73 65 6c 20 6f 66 20 53 65 6c 65 63 nst sel of Selec 000127d0: 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 28 73 torEngine.find(s 000127e0: 65 6c 65 63 74 6f 72 2c 20 74 68 69 73 2e 5f 65 elector, this._e 000127f0: 6c 65 6d 65 6e 74 29 29 20 7b 5c 6e 20 20 20 20 lement)) {\n 00012800: 20 20 63 61 6c 6c 42 61 63 6b 28 73 65 6c 29 5c callBack(sel)\ 00012810: 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 7d 5c 6e n }\n }\n}\n 00012820: 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 \nexport default 00012830: 20 53 63 72 6f 6c 6c 42 61 72 48 65 6c 70 65 72 ScrollBarHelper 00012840: 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d 2d 2d \n","/**\n * --- 00012850: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012860: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012870: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012880: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012890: 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f 6f 74 -------\n * Boot 000128a0: 73 74 72 61 70 20 6d 6f 64 61 6c 2e 6a 73 5c 6e strap modal.js\n 000128b0: 20 2a 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 * Licensed unde 000128c0: 72 20 4d 49 54 20 28 68 74 74 70 73 3a 2f 2f 67 r MIT (https://g 000128d0: 69 74 68 75 62 2e 63 6f 6d 2f 74 77 62 73 2f 62 ithub.com/twbs/b 000128e0: 6f 6f 74 73 74 72 61 70 2f 62 6c 6f 62 2f 6d 61 ootstrap/blob/ma 000128f0: 69 6e 2f 4c 49 43 45 4e 53 45 29 5c 6e 20 2a 20 in/LICENSE)\n * 00012900: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012910: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012920: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012930: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012940: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c ----------\n */\ 00012950: 6e 5c 6e 69 6d 70 6f 72 74 20 42 61 73 65 43 6f n\nimport BaseCo 00012960: 6d 70 6f 6e 65 6e 74 20 66 72 6f 6d 20 27 2e 2f mponent from './ 00012970: 62 61 73 65 2d 63 6f 6d 70 6f 6e 65 6e 74 2e 6a base-component.j 00012980: 73 27 5c 6e 69 6d 70 6f 72 74 20 45 76 65 6e 74 s'\nimport Event 00012990: 48 61 6e 64 6c 65 72 20 66 72 6f 6d 20 27 2e 2f Handler from './ 000129a0: 64 6f 6d 2f 65 76 65 6e 74 2d 68 61 6e 64 6c 65 dom/event-handle 000129b0: 72 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 53 65 r.js'\nimport Se 000129c0: 6c 65 63 74 6f 72 45 6e 67 69 6e 65 20 66 72 6f lectorEngine fro 000129d0: 6d 20 27 2e 2f 64 6f 6d 2f 73 65 6c 65 63 74 6f m './dom/selecto 000129e0: 72 2d 65 6e 67 69 6e 65 2e 6a 73 27 5c 6e 69 6d r-engine.js'\nim 000129f0: 70 6f 72 74 20 42 61 63 6b 64 72 6f 70 20 66 72 port Backdrop fr 00012a00: 6f 6d 20 27 2e 2f 75 74 69 6c 2f 62 61 63 6b 64 om './util/backd 00012a10: 72 6f 70 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 rop.js'\nimport 00012a20: 7b 20 65 6e 61 62 6c 65 44 69 73 6d 69 73 73 54 { enableDismissT 00012a30: 72 69 67 67 65 72 20 7d 20 66 72 6f 6d 20 27 2e rigger } from '. 00012a40: 2f 75 74 69 6c 2f 63 6f 6d 70 6f 6e 65 6e 74 2d /util/component- 00012a50: 66 75 6e 63 74 69 6f 6e 73 2e 6a 73 27 5c 6e 69 functions.js'\ni 00012a60: 6d 70 6f 72 74 20 46 6f 63 75 73 54 72 61 70 20 mport FocusTrap 00012a70: 66 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 66 6f 63 from './util/foc 00012a80: 75 73 74 72 61 70 2e 6a 73 27 5c 6e 69 6d 70 6f ustrap.js'\nimpo 00012a90: 72 74 20 7b 5c 6e 20 20 64 65 66 69 6e 65 4a 51 rt {\n defineJQ 00012aa0: 75 65 72 79 50 6c 75 67 69 6e 2c 20 69 73 52 54 ueryPlugin, isRT 00012ab0: 4c 2c 20 69 73 56 69 73 69 62 6c 65 2c 20 72 65 L, isVisible, re 00012ac0: 66 6c 6f 77 5c 6e 7d 20 66 72 6f 6d 20 27 2e 2f flow\n} from './ 00012ad0: 75 74 69 6c 2f 69 6e 64 65 78 2e 6a 73 27 5c 6e util/index.js'\n 00012ae0: 69 6d 70 6f 72 74 20 53 63 72 6f 6c 6c 42 61 72 import ScrollBar 00012af0: 48 65 6c 70 65 72 20 66 72 6f 6d 20 27 2e 2f 75 Helper from './u 00012b00: 74 69 6c 2f 73 63 72 6f 6c 6c 62 61 72 2e 6a 73 til/scrollbar.js 00012b10: 27 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e '\n\n/**\n * Con 00012b20: 73 74 61 6e 74 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 stants\n */\n\nc 00012b30: 6f 6e 73 74 20 4e 41 4d 45 20 3d 20 27 6d 6f 64 onst NAME = 'mod 00012b40: 61 6c 27 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f al'\nconst DATA_ 00012b50: 4b 45 59 20 3d 20 27 62 73 2e 6d 6f 64 61 6c 27 KEY = 'bs.modal' 00012b60: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4b 45 \nconst EVENT_KE 00012b70: 59 20 3d 20 60 2e 24 7b 44 41 54 41 5f 4b 45 59 Y = `.${DATA_KEY 00012b80: 7d 60 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f 41 }`\nconst DATA_A 00012b90: 50 49 5f 4b 45 59 20 3d 20 27 2e 64 61 74 61 2d PI_KEY = '.data- 00012ba0: 61 70 69 27 5c 6e 63 6f 6e 73 74 20 45 53 43 41 api'\nconst ESCA 00012bb0: 50 45 5f 4b 45 59 20 3d 20 27 45 73 63 61 70 65 PE_KEY = 'Escape 00012bc0: 27 5c 6e 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 '\n\nconst EVENT 00012bd0: 5f 48 49 44 45 20 3d 20 60 68 69 64 65 24 7b 45 _HIDE = `hide${E 00012be0: 56 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 VENT_KEY}`\ncons 00012bf0: 74 20 45 56 45 4e 54 5f 48 49 44 45 5f 50 52 45 t EVENT_HIDE_PRE 00012c00: 56 45 4e 54 45 44 20 3d 20 60 68 69 64 65 50 72 VENTED = `hidePr 00012c10: 65 76 65 6e 74 65 64 24 7b 45 56 45 4e 54 5f 4b evented${EVENT_K 00012c20: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e EY}`\nconst EVEN 00012c30: 54 5f 48 49 44 44 45 4e 20 3d 20 60 68 69 64 64 T_HIDDEN = `hidd 00012c40: 65 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c en${EVENT_KEY}`\ 00012c50: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 53 48 4f nconst EVENT_SHO 00012c60: 57 20 3d 20 60 73 68 6f 77 24 7b 45 56 45 4e 54 W = `show${EVENT 00012c70: 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 _KEY}`\nconst EV 00012c80: 45 4e 54 5f 53 48 4f 57 4e 20 3d 20 60 73 68 6f ENT_SHOWN = `sho 00012c90: 77 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c wn${EVENT_KEY}`\ 00012ca0: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 52 45 53 nconst EVENT_RES 00012cb0: 49 5a 45 20 3d 20 60 72 65 73 69 7a 65 24 7b 45 IZE = `resize${E 00012cc0: 56 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 VENT_KEY}`\ncons 00012cd0: 74 20 45 56 45 4e 54 5f 43 4c 49 43 4b 5f 44 49 t EVENT_CLICK_DI 00012ce0: 53 4d 49 53 53 20 3d 20 60 63 6c 69 63 6b 2e 64 SMISS = `click.d 00012cf0: 69 73 6d 69 73 73 24 7b 45 56 45 4e 54 5f 4b 45 ismiss${EVENT_KE 00012d00: 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 Y}`\nconst EVENT 00012d10: 5f 4d 4f 55 53 45 44 4f 57 4e 5f 44 49 53 4d 49 _MOUSEDOWN_DISMI 00012d20: 53 53 20 3d 20 60 6d 6f 75 73 65 64 6f 77 6e 2e SS = `mousedown. 00012d30: 64 69 73 6d 69 73 73 24 7b 45 56 45 4e 54 5f 4b dismiss${EVENT_K 00012d40: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e EY}`\nconst EVEN 00012d50: 54 5f 4b 45 59 44 4f 57 4e 5f 44 49 53 4d 49 53 T_KEYDOWN_DISMIS 00012d60: 53 20 3d 20 60 6b 65 79 64 6f 77 6e 2e 64 69 73 S = `keydown.dis 00012d70: 6d 69 73 73 24 7b 45 56 45 4e 54 5f 4b 45 59 7d miss${EVENT_KEY} 00012d80: 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 43 `\nconst EVENT_C 00012d90: 4c 49 43 4b 5f 44 41 54 41 5f 41 50 49 20 3d 20 LICK_DATA_API = 00012da0: 60 63 6c 69 63 6b 24 7b 45 56 45 4e 54 5f 4b 45 `click${EVENT_KE 00012db0: 59 7d 24 7b 44 41 54 41 5f 41 50 49 5f 4b 45 59 Y}${DATA_API_KEY 00012dc0: 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 }`\n\nconst CLAS 00012dd0: 53 5f 4e 41 4d 45 5f 4f 50 45 4e 20 3d 20 27 6d S_NAME_OPEN = 'm 00012de0: 6f 64 61 6c 2d 6f 70 65 6e 27 5c 6e 63 6f 6e 73 odal-open'\ncons 00012df0: 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 46 41 44 t CLASS_NAME_FAD 00012e00: 45 20 3d 20 27 66 61 64 65 27 5c 6e 63 6f 6e 73 E = 'fade'\ncons 00012e10: 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f t CLASS_NAME_SHO 00012e20: 57 20 3d 20 27 73 68 6f 77 27 5c 6e 63 6f 6e 73 W = 'show'\ncons 00012e30: 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 54 41 t CLASS_NAME_STA 00012e40: 54 49 43 20 3d 20 27 6d 6f 64 61 6c 2d 73 74 61 TIC = 'modal-sta 00012e50: 74 69 63 27 5c 6e 5c 6e 63 6f 6e 73 74 20 4f 50 tic'\n\nconst OP 00012e60: 45 4e 5f 53 45 4c 45 43 54 4f 52 20 3d 20 27 2e EN_SELECTOR = '. 00012e70: 6d 6f 64 61 6c 2e 73 68 6f 77 27 5c 6e 63 6f 6e modal.show'\ncon 00012e80: 73 74 20 53 45 4c 45 43 54 4f 52 5f 44 49 41 4c st SELECTOR_DIAL 00012e90: 4f 47 20 3d 20 27 2e 6d 6f 64 61 6c 2d 64 69 61 OG = '.modal-dia 00012ea0: 6c 6f 67 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 log'\nconst SELE 00012eb0: 43 54 4f 52 5f 4d 4f 44 41 4c 5f 42 4f 44 59 20 CTOR_MODAL_BODY 00012ec0: 3d 20 27 2e 6d 6f 64 61 6c 2d 62 6f 64 79 27 5c = '.modal-body'\ 00012ed0: 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f nconst SELECTOR_ 00012ee0: 44 41 54 41 5f 54 4f 47 47 4c 45 20 3d 20 27 5b DATA_TOGGLE = '[ 00012ef0: 64 61 74 61 2d 62 73 2d 74 6f 67 67 6c 65 3d 5c data-bs-toggle=\ 00012f00: 22 6d 6f 64 61 6c 5c 22 5d 27 5c 6e 5c 6e 63 6f "modal\"]'\n\nco 00012f10: 6e 73 74 20 44 65 66 61 75 6c 74 20 3d 20 7b 5c nst Default = {\ 00012f20: 6e 20 20 62 61 63 6b 64 72 6f 70 3a 20 74 72 75 n backdrop: tru 00012f30: 65 2c 5c 6e 20 20 66 6f 63 75 73 3a 20 74 72 75 e,\n focus: tru 00012f40: 65 2c 5c 6e 20 20 6b 65 79 62 6f 61 72 64 3a 20 e,\n keyboard: 00012f50: 74 72 75 65 5c 6e 7d 5c 6e 5c 6e 63 6f 6e 73 74 true\n}\n\nconst 00012f60: 20 44 65 66 61 75 6c 74 54 79 70 65 20 3d 20 7b DefaultType = { 00012f70: 5c 6e 20 20 62 61 63 6b 64 72 6f 70 3a 20 27 28 \n backdrop: '( 00012f80: 62 6f 6f 6c 65 61 6e 7c 73 74 72 69 6e 67 29 27 boolean|string)' 00012f90: 2c 5c 6e 20 20 66 6f 63 75 73 3a 20 27 62 6f 6f ,\n focus: 'boo 00012fa0: 6c 65 61 6e 27 2c 5c 6e 20 20 6b 65 79 62 6f 61 lean',\n keyboa 00012fb0: 72 64 3a 20 27 62 6f 6f 6c 65 61 6e 27 5c 6e 7d rd: 'boolean'\n} 00012fc0: 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 \n\n/**\n * Clas 00012fd0: 73 20 64 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a s definition\n * 00012fe0: 2f 5c 6e 5c 6e 63 6c 61 73 73 20 4d 6f 64 61 6c /\n\nclass Modal 00012ff0: 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d extends BaseCom 00013000: 70 6f 6e 65 6e 74 20 7b 5c 6e 20 20 63 6f 6e 73 ponent {\n cons 00013010: 74 72 75 63 74 6f 72 28 65 6c 65 6d 65 6e 74 2c tructor(element, 00013020: 20 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 config) {\n 00013030: 73 75 70 65 72 28 65 6c 65 6d 65 6e 74 2c 20 63 super(element, c 00013040: 6f 6e 66 69 67 29 5c 6e 5c 6e 20 20 20 20 74 68 onfig)\n\n th 00013050: 69 73 2e 5f 64 69 61 6c 6f 67 20 3d 20 53 65 6c is._dialog = Sel 00013060: 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 ectorEngine.find 00013070: 4f 6e 65 28 53 45 4c 45 43 54 4f 52 5f 44 49 41 One(SELECTOR_DIA 00013080: 4c 4f 47 2c 20 74 68 69 73 2e 5f 65 6c 65 6d 65 LOG, this._eleme 00013090: 6e 74 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 62 nt)\n this._b 000130a0: 61 63 6b 64 72 6f 70 20 3d 20 74 68 69 73 2e 5f ackdrop = this._ 000130b0: 69 6e 69 74 69 61 6c 69 7a 65 42 61 63 6b 44 72 initializeBackDr 000130c0: 6f 70 28 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f op()\n this._ 000130d0: 66 6f 63 75 73 74 72 61 70 20 3d 20 74 68 69 73 focustrap = this 000130e0: 2e 5f 69 6e 69 74 69 61 6c 69 7a 65 46 6f 63 75 ._initializeFocu 000130f0: 73 54 72 61 70 28 29 5c 6e 20 20 20 20 74 68 69 sTrap()\n thi 00013100: 73 2e 5f 69 73 53 68 6f 77 6e 20 3d 20 66 61 6c s._isShown = fal 00013110: 73 65 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 73 se\n this._is 00013120: 54 72 61 6e 73 69 74 69 6f 6e 69 6e 67 20 3d 20 Transitioning = 00013130: 66 61 6c 73 65 5c 6e 20 20 20 20 74 68 69 73 2e false\n this. 00013140: 5f 73 63 72 6f 6c 6c 42 61 72 20 3d 20 6e 65 77 _scrollBar = new 00013150: 20 53 63 72 6f 6c 6c 42 61 72 48 65 6c 70 65 72 ScrollBarHelper 00013160: 28 29 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f ()\n\n this._ 00013170: 61 64 64 45 76 65 6e 74 4c 69 73 74 65 6e 65 72 addEventListener 00013180: 73 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f s()\n }\n\n // 00013190: 20 47 65 74 74 65 72 73 5c 6e 20 20 73 74 61 74 Getters\n stat 000131a0: 69 63 20 67 65 74 20 44 65 66 61 75 6c 74 28 29 ic get Default() 000131b0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 44 {\n return D 000131c0: 65 66 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e 20 efault\n }\n\n 000131d0: 20 73 74 61 74 69 63 20 67 65 74 20 44 65 66 61 static get Defa 000131e0: 75 6c 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 20 ultType() {\n 000131f0: 20 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 54 return DefaultT 00013200: 79 70 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 74 ype\n }\n\n st 00013210: 61 74 69 63 20 67 65 74 20 4e 41 4d 45 28 29 20 atic get NAME() 00013220: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 4e 41 {\n return NA 00013230: 4d 45 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 ME\n }\n\n // 00013240: 50 75 62 6c 69 63 5c 6e 20 20 74 6f 67 67 6c 65 Public\n toggle 00013250: 28 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 20 (relatedTarget) 00013260: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 {\n return th 00013270: 69 73 2e 5f 69 73 53 68 6f 77 6e 20 3f 20 74 68 is._isShown ? th 00013280: 69 73 2e 68 69 64 65 28 29 20 3a 20 74 68 69 73 is.hide() : this 00013290: 2e 73 68 6f 77 28 72 65 6c 61 74 65 64 54 61 72 .show(relatedTar 000132a0: 67 65 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 get)\n }\n\n s 000132b0: 68 6f 77 28 72 65 6c 61 74 65 64 54 61 72 67 65 how(relatedTarge 000132c0: 74 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 t) {\n if (th 000132d0: 69 73 2e 5f 69 73 53 68 6f 77 6e 20 7c 7c 20 74 is._isShown || t 000132e0: 68 69 73 2e 5f 69 73 54 72 61 6e 73 69 74 69 6f his._isTransitio 000132f0: 6e 69 6e 67 29 20 7b 5c 6e 20 20 20 20 20 20 72 ning) {\n r 00013300: 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e eturn\n }\n\n 00013310: 20 20 20 20 63 6f 6e 73 74 20 73 68 6f 77 45 76 const showEv 00013320: 65 6e 74 20 3d 20 45 76 65 6e 74 48 61 6e 64 6c ent = EventHandl 00013330: 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e er.trigger(this. 00013340: 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f _element, EVENT_ 00013350: 53 48 4f 57 2c 20 7b 5c 6e 20 20 20 20 20 20 72 SHOW, {\n r 00013360: 65 6c 61 74 65 64 54 61 72 67 65 74 5c 6e 20 20 elatedTarget\n 00013370: 20 20 7d 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 })\n\n if ( 00013380: 73 68 6f 77 45 76 65 6e 74 2e 64 65 66 61 75 6c showEvent.defaul 00013390: 74 50 72 65 76 65 6e 74 65 64 29 20 7b 5c 6e 20 tPrevented) {\n 000133a0: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 000133b0: 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f }\n\n this._ 000133c0: 69 73 53 68 6f 77 6e 20 3d 20 74 72 75 65 5c 6e isShown = true\n 000133d0: 20 20 20 20 74 68 69 73 2e 5f 69 73 54 72 61 6e this._isTran 000133e0: 73 69 74 69 6f 6e 69 6e 67 20 3d 20 74 72 75 65 sitioning = true 000133f0: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 63 \n\n this._sc 00013400: 72 6f 6c 6c 42 61 72 2e 68 69 64 65 28 29 5c 6e rollBar.hide()\n 00013410: 5c 6e 20 20 20 20 64 6f 63 75 6d 65 6e 74 2e 62 \n document.b 00013420: 6f 64 79 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 ody.classList.ad 00013430: 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 4f 50 45 d(CLASS_NAME_OPE 00013440: 4e 29 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f N)\n\n this._ 00013450: 61 64 6a 75 73 74 44 69 61 6c 6f 67 28 29 5c 6e adjustDialog()\n 00013460: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 62 61 63 6b \n this._back 00013470: 64 72 6f 70 2e 73 68 6f 77 28 28 29 20 3d 3e 20 drop.show(() => 00013480: 74 68 69 73 2e 5f 73 68 6f 77 45 6c 65 6d 65 6e this._showElemen 00013490: 74 28 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 t(relatedTarget) 000134a0: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 68 69 64 65 )\n }\n\n hide 000134b0: 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 () {\n if (!t 000134c0: 68 69 73 2e 5f 69 73 53 68 6f 77 6e 20 7c 7c 20 his._isShown || 000134d0: 74 68 69 73 2e 5f 69 73 54 72 61 6e 73 69 74 69 this._isTransiti 000134e0: 6f 6e 69 6e 67 29 20 7b 5c 6e 20 20 20 20 20 20 oning) {\n 000134f0: 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c return\n }\n\ 00013500: 6e 20 20 20 20 63 6f 6e 73 74 20 68 69 64 65 45 n const hideE 00013510: 76 65 6e 74 20 3d 20 45 76 65 6e 74 48 61 6e 64 vent = EventHand 00013520: 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 ler.trigger(this 00013530: 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 ._element, EVENT 00013540: 5f 48 49 44 45 29 5c 6e 5c 6e 20 20 20 20 69 66 _HIDE)\n\n if 00013550: 20 28 68 69 64 65 45 76 65 6e 74 2e 64 65 66 61 (hideEvent.defa 00013560: 75 6c 74 50 72 65 76 65 6e 74 65 64 29 20 7b 5c ultPrevented) {\ 00013570: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 n return\n 00013580: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 }\n\n this 00013590: 2e 5f 69 73 53 68 6f 77 6e 20 3d 20 66 61 6c 73 ._isShown = fals 000135a0: 65 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 73 54 e\n this._isT 000135b0: 72 61 6e 73 69 74 69 6f 6e 69 6e 67 20 3d 20 74 ransitioning = t 000135c0: 72 75 65 5c 6e 20 20 20 20 74 68 69 73 2e 5f 66 rue\n this._f 000135d0: 6f 63 75 73 74 72 61 70 2e 64 65 61 63 74 69 76 ocustrap.deactiv 000135e0: 61 74 65 28 29 5c 6e 5c 6e 20 20 20 20 74 68 69 ate()\n\n thi 000135f0: 73 2e 5f 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 s._element.class 00013600: 4c 69 73 74 2e 72 65 6d 6f 76 65 28 43 4c 41 53 List.remove(CLAS 00013610: 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 5c 6e S_NAME_SHOW)\n\n 00013620: 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 65 43 this._queueC 00013630: 61 6c 6c 62 61 63 6b 28 28 29 20 3d 3e 20 74 68 allback(() => th 00013640: 69 73 2e 5f 68 69 64 65 4d 6f 64 61 6c 28 29 2c is._hideModal(), 00013650: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 this._element, 00013660: 74 68 69 73 2e 5f 69 73 41 6e 69 6d 61 74 65 64 this._isAnimated 00013670: 28 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 64 69 ())\n }\n\n di 00013680: 73 70 6f 73 65 28 29 20 7b 5c 6e 20 20 20 20 45 spose() {\n E 00013690: 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 66 66 28 ventHandler.off( 000136a0: 77 69 6e 64 6f 77 2c 20 45 56 45 4e 54 5f 4b 45 window, EVENT_KE 000136b0: 59 29 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e Y)\n EventHan 000136c0: 64 6c 65 72 2e 6f 66 66 28 74 68 69 73 2e 5f 64 dler.off(this._d 000136d0: 69 61 6c 6f 67 2c 20 45 56 45 4e 54 5f 4b 45 59 ialog, EVENT_KEY 000136e0: 29 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 62 )\n\n this._b 000136f0: 61 63 6b 64 72 6f 70 2e 64 69 73 70 6f 73 65 28 ackdrop.dispose( 00013700: 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 66 6f 63 )\n this._foc 00013710: 75 73 74 72 61 70 2e 64 65 61 63 74 69 76 61 74 ustrap.deactivat 00013720: 65 28 29 5c 6e 5c 6e 20 20 20 20 73 75 70 65 72 e()\n\n super 00013730: 2e 64 69 73 70 6f 73 65 28 29 5c 6e 20 20 7d 5c .dispose()\n }\ 00013740: 6e 5c 6e 20 20 68 61 6e 64 6c 65 55 70 64 61 74 n\n handleUpdat 00013750: 65 28 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e e() {\n this. 00013760: 5f 61 64 6a 75 73 74 44 69 61 6c 6f 67 28 29 5c _adjustDialog()\ 00013770: 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 72 69 n }\n\n // Pri 00013780: 76 61 74 65 5c 6e 20 20 5f 69 6e 69 74 69 61 6c vate\n _initial 00013790: 69 7a 65 42 61 63 6b 44 72 6f 70 28 29 20 7b 5c izeBackDrop() {\ 000137a0: 6e 20 20 20 20 72 65 74 75 72 6e 20 6e 65 77 20 n return new 000137b0: 42 61 63 6b 64 72 6f 70 28 7b 5c 6e 20 20 20 20 Backdrop({\n 000137c0: 20 20 69 73 56 69 73 69 62 6c 65 3a 20 42 6f 6f isVisible: Boo 000137d0: 6c 65 61 6e 28 74 68 69 73 2e 5f 63 6f 6e 66 69 lean(this._confi 000137e0: 67 2e 62 61 63 6b 64 72 6f 70 29 2c 20 2f 2f 20 g.backdrop), // 000137f0: 27 73 74 61 74 69 63 27 20 6f 70 74 69 6f 6e 20 'static' option 00013800: 77 69 6c 6c 20 62 65 20 74 72 61 6e 73 6c 61 74 will be translat 00013810: 65 64 20 74 6f 20 74 72 75 65 2c 20 61 6e 64 20 ed to true, and 00013820: 62 6f 6f 6c 65 61 6e 73 20 77 69 6c 6c 20 6b 65 booleans will ke 00013830: 65 70 20 74 68 65 69 72 20 76 61 6c 75 65 2c 5c ep their value,\ 00013840: 6e 20 20 20 20 20 20 69 73 41 6e 69 6d 61 74 65 n isAnimate 00013850: 64 3a 20 74 68 69 73 2e 5f 69 73 41 6e 69 6d 61 d: this._isAnima 00013860: 74 65 64 28 29 5c 6e 20 20 20 20 7d 29 5c 6e 20 ted()\n })\n 00013870: 20 7d 5c 6e 5c 6e 20 20 5f 69 6e 69 74 69 61 6c }\n\n _initial 00013880: 69 7a 65 46 6f 63 75 73 54 72 61 70 28 29 20 7b izeFocusTrap() { 00013890: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6e 65 77 \n return new 000138a0: 20 46 6f 63 75 73 54 72 61 70 28 7b 5c 6e 20 20 FocusTrap({\n 000138b0: 20 20 20 20 74 72 61 70 45 6c 65 6d 65 6e 74 3a trapElement: 000138c0: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 5c 6e this._element\n 000138d0: 20 20 20 20 7d 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 })\n }\n\n 000138e0: 20 5f 73 68 6f 77 45 6c 65 6d 65 6e 74 28 72 65 _showElement(re 000138f0: 6c 61 74 65 64 54 61 72 67 65 74 29 20 7b 5c 6e latedTarget) {\n 00013900: 20 20 20 20 2f 2f 20 74 72 79 20 74 6f 20 61 70 // try to ap 00013910: 70 65 6e 64 20 64 79 6e 61 6d 69 63 20 6d 6f 64 pend dynamic mod 00013920: 61 6c 5c 6e 20 20 20 20 69 66 20 28 21 64 6f 63 al\n if (!doc 00013930: 75 6d 65 6e 74 2e 62 6f 64 79 2e 63 6f 6e 74 61 ument.body.conta 00013940: 69 6e 73 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e ins(this._elemen 00013950: 74 29 29 20 7b 5c 6e 20 20 20 20 20 20 64 6f 63 t)) {\n doc 00013960: 75 6d 65 6e 74 2e 62 6f 64 79 2e 61 70 70 65 6e ument.body.appen 00013970: 64 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 29 d(this._element) 00013980: 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 \n }\n\n t 00013990: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 73 74 79 his._element.sty 000139a0: 6c 65 2e 64 69 73 70 6c 61 79 20 3d 20 27 62 6c le.display = 'bl 000139b0: 6f 63 6b 27 5c 6e 20 20 20 20 74 68 69 73 2e 5f ock'\n this._ 000139c0: 65 6c 65 6d 65 6e 74 2e 72 65 6d 6f 76 65 41 74 element.removeAt 000139d0: 74 72 69 62 75 74 65 28 27 61 72 69 61 2d 68 69 tribute('aria-hi 000139e0: 64 64 65 6e 27 29 5c 6e 20 20 20 20 74 68 69 73 dden')\n this 000139f0: 2e 5f 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 ._element.setAtt 00013a00: 72 69 62 75 74 65 28 27 61 72 69 61 2d 6d 6f 64 ribute('aria-mod 00013a10: 61 6c 27 2c 20 74 72 75 65 29 5c 6e 20 20 20 20 al', true)\n 00013a20: 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 73 65 this._element.se 00013a30: 74 41 74 74 72 69 62 75 74 65 28 27 72 6f 6c 65 tAttribute('role 00013a40: 27 2c 20 27 64 69 61 6c 6f 67 27 29 5c 6e 20 20 ', 'dialog')\n 00013a50: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e this._element. 00013a60: 73 63 72 6f 6c 6c 54 6f 70 20 3d 20 30 5c 6e 5c scrollTop = 0\n\ 00013a70: 6e 20 20 20 20 63 6f 6e 73 74 20 6d 6f 64 61 6c n const modal 00013a80: 42 6f 64 79 20 3d 20 53 65 6c 65 63 74 6f 72 45 Body = SelectorE 00013a90: 6e 67 69 6e 65 2e 66 69 6e 64 4f 6e 65 28 53 45 ngine.findOne(SE 00013aa0: 4c 45 43 54 4f 52 5f 4d 4f 44 41 4c 5f 42 4f 44 LECTOR_MODAL_BOD 00013ab0: 59 2c 20 74 68 69 73 2e 5f 64 69 61 6c 6f 67 29 Y, this._dialog) 00013ac0: 5c 6e 20 20 20 20 69 66 20 28 6d 6f 64 61 6c 42 \n if (modalB 00013ad0: 6f 64 79 29 20 7b 5c 6e 20 20 20 20 20 20 6d 6f ody) {\n mo 00013ae0: 64 61 6c 42 6f 64 79 2e 73 63 72 6f 6c 6c 54 6f dalBody.scrollTo 00013af0: 70 20 3d 20 30 5c 6e 20 20 20 20 7d 5c 6e 5c 6e p = 0\n }\n\n 00013b00: 20 20 20 20 72 65 66 6c 6f 77 28 74 68 69 73 2e reflow(this. 00013b10: 5f 65 6c 65 6d 65 6e 74 29 5c 6e 5c 6e 20 20 20 _element)\n\n 00013b20: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 63 this._element.c 00013b30: 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 lassList.add(CLA 00013b40: 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 5c SS_NAME_SHOW)\n\ 00013b50: 6e 20 20 20 20 63 6f 6e 73 74 20 74 72 61 6e 73 n const trans 00013b60: 69 74 69 6f 6e 43 6f 6d 70 6c 65 74 65 20 3d 20 itionComplete = 00013b70: 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 69 () => {\n i 00013b80: 66 20 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e f (this._config. 00013b90: 66 6f 63 75 73 29 20 7b 5c 6e 20 20 20 20 20 20 focus) {\n 00013ba0: 20 20 74 68 69 73 2e 5f 66 6f 63 75 73 74 72 61 this._focustra 00013bb0: 70 2e 61 63 74 69 76 61 74 65 28 29 5c 6e 20 20 p.activate()\n 00013bc0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 74 }\n\n t 00013bd0: 68 69 73 2e 5f 69 73 54 72 61 6e 73 69 74 69 6f his._isTransitio 00013be0: 6e 69 6e 67 20 3d 20 66 61 6c 73 65 5c 6e 20 20 ning = false\n 00013bf0: 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 EventHandler 00013c00: 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f 65 .trigger(this._e 00013c10: 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 53 48 lement, EVENT_SH 00013c20: 4f 57 4e 2c 20 7b 5c 6e 20 20 20 20 20 20 20 20 OWN, {\n 00013c30: 72 65 6c 61 74 65 64 54 61 72 67 65 74 5c 6e 20 relatedTarget\n 00013c40: 20 20 20 20 20 7d 29 5c 6e 20 20 20 20 7d 5c 6e })\n }\n 00013c50: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 \n this._queu 00013c60: 65 43 61 6c 6c 62 61 63 6b 28 74 72 61 6e 73 69 eCallback(transi 00013c70: 74 69 6f 6e 43 6f 6d 70 6c 65 74 65 2c 20 74 68 tionComplete, th 00013c80: 69 73 2e 5f 64 69 61 6c 6f 67 2c 20 74 68 69 73 is._dialog, this 00013c90: 2e 5f 69 73 41 6e 69 6d 61 74 65 64 28 29 29 5c ._isAnimated())\ 00013ca0: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 61 64 64 45 76 n }\n\n _addEv 00013cb0: 65 6e 74 4c 69 73 74 65 6e 65 72 73 28 29 20 7b entListeners() { 00013cc0: 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c \n EventHandl 00013cd0: 65 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d er.on(this._elem 00013ce0: 65 6e 74 2c 20 45 56 45 4e 54 5f 4b 45 59 44 4f ent, EVENT_KEYDO 00013cf0: 57 4e 5f 44 49 53 4d 49 53 53 2c 20 65 76 65 6e WN_DISMISS, even 00013d00: 74 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 69 66 t => {\n if 00013d10: 20 28 65 76 65 6e 74 2e 6b 65 79 20 21 3d 3d 20 (event.key !== 00013d20: 45 53 43 41 50 45 5f 4b 45 59 29 20 7b 5c 6e 20 ESCAPE_KEY) {\n 00013d30: 20 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 return\n 00013d40: 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 }\n\n 00013d50: 69 66 20 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 if (this._config 00013d60: 2e 6b 65 79 62 6f 61 72 64 29 20 7b 5c 6e 20 20 .keyboard) {\n 00013d70: 20 20 20 20 20 20 74 68 69 73 2e 68 69 64 65 28 this.hide( 00013d80: 29 5c 6e 20 20 20 20 20 20 20 20 72 65 74 75 72 )\n retur 00013d90: 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 n\n }\n\n 00013da0: 20 20 20 20 74 68 69 73 2e 5f 74 72 69 67 67 65 this._trigge 00013db0: 72 42 61 63 6b 64 72 6f 70 54 72 61 6e 73 69 74 rBackdropTransit 00013dc0: 69 6f 6e 28 29 5c 6e 20 20 20 20 7d 29 5c 6e 5c ion()\n })\n\ 00013dd0: 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 n EventHandle 00013de0: 72 2e 6f 6e 28 77 69 6e 64 6f 77 2c 20 45 56 45 r.on(window, EVE 00013df0: 4e 54 5f 52 45 53 49 5a 45 2c 20 28 29 20 3d 3e NT_RESIZE, () => 00013e00: 20 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 74 68 {\n if (th 00013e10: 69 73 2e 5f 69 73 53 68 6f 77 6e 20 26 26 20 21 is._isShown && ! 00013e20: 74 68 69 73 2e 5f 69 73 54 72 61 6e 73 69 74 69 this._isTransiti 00013e30: 6f 6e 69 6e 67 29 20 7b 5c 6e 20 20 20 20 20 20 oning) {\n 00013e40: 20 20 74 68 69 73 2e 5f 61 64 6a 75 73 74 44 69 this._adjustDi 00013e50: 61 6c 6f 67 28 29 5c 6e 20 20 20 20 20 20 7d 5c alog()\n }\ 00013e60: 6e 20 20 20 20 7d 29 5c 6e 5c 6e 20 20 20 20 45 n })\n\n E 00013e70: 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 74 ventHandler.on(t 00013e80: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 his._element, EV 00013e90: 45 4e 54 5f 4d 4f 55 53 45 44 4f 57 4e 5f 44 49 ENT_MOUSEDOWN_DI 00013ea0: 53 4d 49 53 53 2c 20 65 76 65 6e 74 20 3d 3e 20 SMISS, event => 00013eb0: 7b 5c 6e 20 20 20 20 20 20 2f 2f 20 61 20 62 61 {\n // a ba 00013ec0: 64 20 74 72 69 63 6b 20 74 6f 20 73 65 67 72 65 d trick to segre 00013ed0: 67 61 74 65 20 63 6c 69 63 6b 73 20 74 68 61 74 gate clicks that 00013ee0: 20 6d 61 79 20 73 74 61 72 74 20 69 6e 73 69 64 may start insid 00013ef0: 65 20 64 69 61 6c 6f 67 20 62 75 74 20 65 6e 64 e dialog but end 00013f00: 20 6f 75 74 73 69 64 65 2c 20 61 6e 64 20 61 76 outside, and av 00013f10: 6f 69 64 20 6c 69 73 74 65 6e 20 74 6f 20 73 63 oid listen to sc 00013f20: 72 6f 6c 6c 62 61 72 20 63 6c 69 63 6b 73 5c 6e rollbar clicks\n 00013f30: 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c EventHandl 00013f40: 65 72 2e 6f 6e 65 28 74 68 69 73 2e 5f 65 6c 65 er.one(this._ele 00013f50: 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 43 4c 49 43 ment, EVENT_CLIC 00013f60: 4b 5f 44 49 53 4d 49 53 53 2c 20 65 76 65 6e 74 K_DISMISS, event 00013f70: 32 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 20 20 2 => {\n 00013f80: 69 66 20 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e if (this._elemen 00013f90: 74 20 21 3d 3d 20 65 76 65 6e 74 2e 74 61 72 67 t !== event.targ 00013fa0: 65 74 20 7c 7c 20 74 68 69 73 2e 5f 65 6c 65 6d et || this._elem 00013fb0: 65 6e 74 20 21 3d 3d 20 65 76 65 6e 74 32 2e 74 ent !== event2.t 00013fc0: 61 72 67 65 74 29 20 7b 5c 6e 20 20 20 20 20 20 arget) {\n 00013fd0: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 00013fe0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 20 }\n\n 00013ff0: 20 69 66 20 28 74 68 69 73 2e 5f 63 6f 6e 66 69 if (this._confi 00014000: 67 2e 62 61 63 6b 64 72 6f 70 20 3d 3d 3d 20 27 g.backdrop === ' 00014010: 73 74 61 74 69 63 27 29 20 7b 5c 6e 20 20 20 20 static') {\n 00014020: 20 20 20 20 20 20 74 68 69 73 2e 5f 74 72 69 67 this._trig 00014030: 67 65 72 42 61 63 6b 64 72 6f 70 54 72 61 6e 73 gerBackdropTrans 00014040: 69 74 69 6f 6e 28 29 5c 6e 20 20 20 20 20 20 20 ition()\n 00014050: 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 20 return\n 00014060: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 20 20 }\n\n 00014070: 69 66 20 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 if (this._config 00014080: 2e 62 61 63 6b 64 72 6f 70 29 20 7b 5c 6e 20 20 .backdrop) {\n 00014090: 20 20 20 20 20 20 20 20 74 68 69 73 2e 68 69 64 this.hid 000140a0: 65 28 29 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e e()\n }\n 000140b0: 20 20 20 20 20 20 7d 29 5c 6e 20 20 20 20 7d 29 })\n }) 000140c0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 68 69 64 65 \n }\n\n _hide 000140d0: 4d 6f 64 61 6c 28 29 20 7b 5c 6e 20 20 20 20 74 Modal() {\n t 000140e0: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 73 74 79 his._element.sty 000140f0: 6c 65 2e 64 69 73 70 6c 61 79 20 3d 20 27 6e 6f le.display = 'no 00014100: 6e 65 27 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 ne'\n this._e 00014110: 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 lement.setAttrib 00014120: 75 74 65 28 27 61 72 69 61 2d 68 69 64 64 65 6e ute('aria-hidden 00014130: 27 2c 20 74 72 75 65 29 5c 6e 20 20 20 20 74 68 ', true)\n th 00014140: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 65 6d 6f is._element.remo 00014150: 76 65 41 74 74 72 69 62 75 74 65 28 27 61 72 69 veAttribute('ari 00014160: 61 2d 6d 6f 64 61 6c 27 29 5c 6e 20 20 20 20 74 a-modal')\n t 00014170: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 65 6d his._element.rem 00014180: 6f 76 65 41 74 74 72 69 62 75 74 65 28 27 72 6f oveAttribute('ro 00014190: 6c 65 27 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f le')\n this._ 000141a0: 69 73 54 72 61 6e 73 69 74 69 6f 6e 69 6e 67 20 isTransitioning 000141b0: 3d 20 66 61 6c 73 65 5c 6e 5c 6e 20 20 20 20 74 = false\n\n t 000141c0: 68 69 73 2e 5f 62 61 63 6b 64 72 6f 70 2e 68 69 his._backdrop.hi 000141d0: 64 65 28 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 de(() => {\n 000141e0: 20 20 64 6f 63 75 6d 65 6e 74 2e 62 6f 64 79 2e document.body. 000141f0: 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 65 classList.remove 00014200: 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 4f 50 45 4e (CLASS_NAME_OPEN 00014210: 29 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 72 )\n this._r 00014220: 65 73 65 74 41 64 6a 75 73 74 6d 65 6e 74 73 28 esetAdjustments( 00014230: 29 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 73 )\n this._s 00014240: 63 72 6f 6c 6c 42 61 72 2e 72 65 73 65 74 28 29 crollBar.reset() 00014250: 5c 6e 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e \n EventHan 00014260: 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 dler.trigger(thi 00014270: 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e s._element, EVEN 00014280: 54 5f 48 49 44 44 45 4e 29 5c 6e 20 20 20 20 7d T_HIDDEN)\n } 00014290: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 69 73 41 )\n }\n\n _isA 000142a0: 6e 69 6d 61 74 65 64 28 29 20 7b 5c 6e 20 20 20 nimated() {\n 000142b0: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 65 6c return this._el 000142c0: 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e ement.classList. 000142d0: 63 6f 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f 4e contains(CLASS_N 000142e0: 41 4d 45 5f 46 41 44 45 29 5c 6e 20 20 7d 5c 6e AME_FADE)\n }\n 000142f0: 5c 6e 20 20 5f 74 72 69 67 67 65 72 42 61 63 6b \n _triggerBack 00014300: 64 72 6f 70 54 72 61 6e 73 69 74 69 6f 6e 28 29 dropTransition() 00014310: 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 68 69 {\n const hi 00014320: 64 65 45 76 65 6e 74 20 3d 20 45 76 65 6e 74 48 deEvent = EventH 00014330: 61 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 andler.trigger(t 00014340: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 his._element, EV 00014350: 45 4e 54 5f 48 49 44 45 5f 50 52 45 56 45 4e 54 ENT_HIDE_PREVENT 00014360: 45 44 29 5c 6e 20 20 20 20 69 66 20 28 68 69 64 ED)\n if (hid 00014370: 65 45 76 65 6e 74 2e 64 65 66 61 75 6c 74 50 72 eEvent.defaultPr 00014380: 65 76 65 6e 74 65 64 29 20 7b 5c 6e 20 20 20 20 evented) {\n 00014390: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c return\n }\ 000143a0: 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 69 73 4d n\n const isM 000143b0: 6f 64 61 6c 4f 76 65 72 66 6c 6f 77 69 6e 67 20 odalOverflowing 000143c0: 3d 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e = this._element. 000143d0: 73 63 72 6f 6c 6c 48 65 69 67 68 74 20 3e 20 64 scrollHeight > d 000143e0: 6f 63 75 6d 65 6e 74 2e 64 6f 63 75 6d 65 6e 74 ocument.document 000143f0: 45 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 48 65 Element.clientHe 00014400: 69 67 68 74 5c 6e 20 20 20 20 63 6f 6e 73 74 20 ight\n const 00014410: 69 6e 69 74 69 61 6c 4f 76 65 72 66 6c 6f 77 59 initialOverflowY 00014420: 20 3d 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 = this._element 00014430: 2e 73 74 79 6c 65 2e 6f 76 65 72 66 6c 6f 77 59 .style.overflowY 00014440: 5c 6e 20 20 20 20 2f 2f 20 72 65 74 75 72 6e 20 \n // return 00014450: 69 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 if the following 00014460: 20 62 61 63 6b 67 72 6f 75 6e 64 20 74 72 61 6e background tran 00014470: 73 69 74 69 6f 6e 20 68 61 73 6e 27 74 20 79 65 sition hasn't ye 00014480: 74 20 63 6f 6d 70 6c 65 74 65 64 5c 6e 20 20 20 t completed\n 00014490: 20 69 66 20 28 69 6e 69 74 69 61 6c 4f 76 65 72 if (initialOver 000144a0: 66 6c 6f 77 59 20 3d 3d 3d 20 27 68 69 64 64 65 flowY === 'hidde 000144b0: 6e 27 20 7c 7c 20 74 68 69 73 2e 5f 65 6c 65 6d n' || this._elem 000144c0: 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e 63 6f ent.classList.co 000144d0: 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f 4e 41 4d ntains(CLASS_NAM 000144e0: 45 5f 53 54 41 54 49 43 29 29 20 7b 5c 6e 20 20 E_STATIC)) {\n 000144f0: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 00014500: 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 69 73 }\n\n if (!is 00014510: 4d 6f 64 61 6c 4f 76 65 72 66 6c 6f 77 69 6e 67 ModalOverflowing 00014520: 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e ) {\n this. 00014530: 5f 65 6c 65 6d 65 6e 74 2e 73 74 79 6c 65 2e 6f _element.style.o 00014540: 76 65 72 66 6c 6f 77 59 20 3d 20 27 68 69 64 64 verflowY = 'hidd 00014550: 65 6e 27 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 en'\n }\n\n 00014560: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e this._element. 00014570: 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c classList.add(CL 00014580: 41 53 53 5f 4e 41 4d 45 5f 53 54 41 54 49 43 29 ASS_NAME_STATIC) 00014590: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 \n this._queu 000145a0: 65 43 61 6c 6c 62 61 63 6b 28 28 29 20 3d 3e 20 eCallback(() => 000145b0: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 65 {\n this._e 000145c0: 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 lement.classList 000145d0: 2e 72 65 6d 6f 76 65 28 43 4c 41 53 53 5f 4e 41 .remove(CLASS_NA 000145e0: 4d 45 5f 53 54 41 54 49 43 29 5c 6e 20 20 20 20 ME_STATIC)\n 000145f0: 20 20 74 68 69 73 2e 5f 71 75 65 75 65 43 61 6c this._queueCal 00014600: 6c 62 61 63 6b 28 28 29 20 3d 3e 20 7b 5c 6e 20 lback(() => {\n 00014610: 20 20 20 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 this._ele 00014620: 6d 65 6e 74 2e 73 74 79 6c 65 2e 6f 76 65 72 66 ment.style.overf 00014630: 6c 6f 77 59 20 3d 20 69 6e 69 74 69 61 6c 4f 76 lowY = initialOv 00014640: 65 72 66 6c 6f 77 59 5c 6e 20 20 20 20 20 20 7d erflowY\n } 00014650: 2c 20 74 68 69 73 2e 5f 64 69 61 6c 6f 67 29 5c , this._dialog)\ 00014660: 6e 20 20 20 20 7d 2c 20 74 68 69 73 2e 5f 64 69 n }, this._di 00014670: 61 6c 6f 67 29 5c 6e 5c 6e 20 20 20 20 74 68 69 alog)\n\n thi 00014680: 73 2e 5f 65 6c 65 6d 65 6e 74 2e 66 6f 63 75 73 s._element.focus 00014690: 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2a 2a ()\n }\n\n /** 000146a0: 5c 6e 20 20 20 2a 20 54 68 65 20 66 6f 6c 6c 6f \n * The follo 000146b0: 77 69 6e 67 20 6d 65 74 68 6f 64 73 20 61 72 65 wing methods are 000146c0: 20 75 73 65 64 20 74 6f 20 68 61 6e 64 6c 65 20 used to handle 000146d0: 6f 76 65 72 66 6c 6f 77 69 6e 67 20 6d 6f 64 61 overflowing moda 000146e0: 6c 73 5c 6e 20 20 20 2a 2f 5c 6e 5c 6e 20 20 5f ls\n */\n\n _ 000146f0: 61 64 6a 75 73 74 44 69 61 6c 6f 67 28 29 20 7b adjustDialog() { 00014700: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 69 73 4d 6f \n const isMo 00014710: 64 61 6c 4f 76 65 72 66 6c 6f 77 69 6e 67 20 3d dalOverflowing = 00014720: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 73 this._element.s 00014730: 63 72 6f 6c 6c 48 65 69 67 68 74 20 3e 20 64 6f crollHeight > do 00014740: 63 75 6d 65 6e 74 2e 64 6f 63 75 6d 65 6e 74 45 cument.documentE 00014750: 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 48 65 69 lement.clientHei 00014760: 67 68 74 5c 6e 20 20 20 20 63 6f 6e 73 74 20 73 ght\n const s 00014770: 63 72 6f 6c 6c 62 61 72 57 69 64 74 68 20 3d 20 crollbarWidth = 00014780: 74 68 69 73 2e 5f 73 63 72 6f 6c 6c 42 61 72 2e this._scrollBar. 00014790: 67 65 74 57 69 64 74 68 28 29 5c 6e 20 20 20 20 getWidth()\n 000147a0: 63 6f 6e 73 74 20 69 73 42 6f 64 79 4f 76 65 72 const isBodyOver 000147b0: 66 6c 6f 77 69 6e 67 20 3d 20 73 63 72 6f 6c 6c flowing = scroll 000147c0: 62 61 72 57 69 64 74 68 20 3e 20 30 5c 6e 5c 6e barWidth > 0\n\n 000147d0: 20 20 20 20 69 66 20 28 69 73 42 6f 64 79 4f 76 if (isBodyOv 000147e0: 65 72 66 6c 6f 77 69 6e 67 20 26 26 20 21 69 73 erflowing && !is 000147f0: 4d 6f 64 61 6c 4f 76 65 72 66 6c 6f 77 69 6e 67 ModalOverflowing 00014800: 29 20 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 ) {\n const 00014810: 20 70 72 6f 70 65 72 74 79 20 3d 20 69 73 52 54 property = isRT 00014820: 4c 28 29 20 3f 20 27 70 61 64 64 69 6e 67 4c 65 L() ? 'paddingLe 00014830: 66 74 27 20 3a 20 27 70 61 64 64 69 6e 67 52 69 ft' : 'paddingRi 00014840: 67 68 74 27 5c 6e 20 20 20 20 20 20 74 68 69 73 ght'\n this 00014850: 2e 5f 65 6c 65 6d 65 6e 74 2e 73 74 79 6c 65 5b ._element.style[ 00014860: 70 72 6f 70 65 72 74 79 5d 20 3d 20 60 24 7b 73 property] = `${s 00014870: 63 72 6f 6c 6c 62 61 72 57 69 64 74 68 7d 70 78 crollbarWidth}px 00014880: 60 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 `\n }\n\n 00014890: 69 66 20 28 21 69 73 42 6f 64 79 4f 76 65 72 66 if (!isBodyOverf 000148a0: 6c 6f 77 69 6e 67 20 26 26 20 69 73 4d 6f 64 61 lowing && isModa 000148b0: 6c 4f 76 65 72 66 6c 6f 77 69 6e 67 29 20 7b 5c lOverflowing) {\ 000148c0: 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 70 72 6f n const pro 000148d0: 70 65 72 74 79 20 3d 20 69 73 52 54 4c 28 29 20 perty = isRTL() 000148e0: 3f 20 27 70 61 64 64 69 6e 67 52 69 67 68 74 27 ? 'paddingRight' 000148f0: 20 3a 20 27 70 61 64 64 69 6e 67 4c 65 66 74 27 : 'paddingLeft' 00014900: 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 65 6c \n this._el 00014910: 65 6d 65 6e 74 2e 73 74 79 6c 65 5b 70 72 6f 70 ement.style[prop 00014920: 65 72 74 79 5d 20 3d 20 60 24 7b 73 63 72 6f 6c erty] = `${scrol 00014930: 6c 62 61 72 57 69 64 74 68 7d 70 78 60 5c 6e 20 lbarWidth}px`\n 00014940: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f }\n }\n\n _ 00014950: 72 65 73 65 74 41 64 6a 75 73 74 6d 65 6e 74 73 resetAdjustments 00014960: 28 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f () {\n this._ 00014970: 65 6c 65 6d 65 6e 74 2e 73 74 79 6c 65 2e 70 61 element.style.pa 00014980: 64 64 69 6e 67 4c 65 66 74 20 3d 20 27 27 5c 6e ddingLeft = ''\n 00014990: 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e this._elemen 000149a0: 74 2e 73 74 79 6c 65 2e 70 61 64 64 69 6e 67 52 t.style.paddingR 000149b0: 69 67 68 74 20 3d 20 27 27 5c 6e 20 20 7d 5c 6e ight = ''\n }\n 000149c0: 5c 6e 20 20 2f 2f 20 53 74 61 74 69 63 5c 6e 20 \n // Static\n 000149d0: 20 73 74 61 74 69 63 20 6a 51 75 65 72 79 49 6e static jQueryIn 000149e0: 74 65 72 66 61 63 65 28 63 6f 6e 66 69 67 2c 20 terface(config, 000149f0: 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 20 7b relatedTarget) { 00014a00: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 \n return thi 00014a10: 73 2e 65 61 63 68 28 66 75 6e 63 74 69 6f 6e 20 s.each(function 00014a20: 28 29 20 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 () {\n cons 00014a30: 74 20 64 61 74 61 20 3d 20 4d 6f 64 61 6c 2e 67 t data = Modal.g 00014a40: 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 6e etOrCreateInstan 00014a50: 63 65 28 74 68 69 73 2c 20 63 6f 6e 66 69 67 29 ce(this, config) 00014a60: 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 74 79 \n\n if (ty 00014a70: 70 65 6f 66 20 63 6f 6e 66 69 67 20 21 3d 3d 20 peof config !== 00014a80: 27 73 74 72 69 6e 67 27 29 20 7b 5c 6e 20 20 20 'string') {\n 00014a90: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 00014aa0: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 66 }\n\n if 00014ab0: 20 28 74 79 70 65 6f 66 20 64 61 74 61 5b 63 6f (typeof data[co 00014ac0: 6e 66 69 67 5d 20 3d 3d 3d 20 27 75 6e 64 65 66 nfig] === 'undef 00014ad0: 69 6e 65 64 27 29 20 7b 5c 6e 20 20 20 20 20 20 ined') {\n 00014ae0: 20 20 74 68 72 6f 77 20 6e 65 77 20 54 79 70 65 throw new Type 00014af0: 45 72 72 6f 72 28 60 4e 6f 20 6d 65 74 68 6f 64 Error(`No method 00014b00: 20 6e 61 6d 65 64 20 5c 22 24 7b 63 6f 6e 66 69 named \"${confi 00014b10: 67 7d 5c 22 60 29 5c 6e 20 20 20 20 20 20 7d 5c g}\"`)\n }\ 00014b20: 6e 5c 6e 20 20 20 20 20 20 64 61 74 61 5b 63 6f n\n data[co 00014b30: 6e 66 69 67 5d 28 72 65 6c 61 74 65 64 54 61 72 nfig](relatedTar 00014b40: 67 65 74 29 5c 6e 20 20 20 20 7d 29 5c 6e 20 20 get)\n })\n 00014b50: 7d 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 }\n}\n\n/**\n * 00014b60: 44 61 74 61 20 41 50 49 20 69 6d 70 6c 65 6d 65 Data API impleme 00014b70: 6e 74 61 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e ntation\n */\n\n 00014b80: 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 EventHandler.on( 00014b90: 64 6f 63 75 6d 65 6e 74 2c 20 45 56 45 4e 54 5f document, EVENT_ 00014ba0: 43 4c 49 43 4b 5f 44 41 54 41 5f 41 50 49 2c 20 CLICK_DATA_API, 00014bb0: 53 45 4c 45 43 54 4f 52 5f 44 41 54 41 5f 54 4f SELECTOR_DATA_TO 00014bc0: 47 47 4c 45 2c 20 66 75 6e 63 74 69 6f 6e 20 28 GGLE, function ( 00014bd0: 65 76 65 6e 74 29 20 7b 5c 6e 20 20 63 6f 6e 73 event) {\n cons 00014be0: 74 20 74 61 72 67 65 74 20 3d 20 53 65 6c 65 63 t target = Selec 00014bf0: 74 6f 72 45 6e 67 69 6e 65 2e 67 65 74 45 6c 65 torEngine.getEle 00014c00: 6d 65 6e 74 46 72 6f 6d 53 65 6c 65 63 74 6f 72 mentFromSelector 00014c10: 28 74 68 69 73 29 5c 6e 5c 6e 20 20 69 66 20 28 (this)\n\n if ( 00014c20: 5b 27 41 27 2c 20 27 41 52 45 41 27 5d 2e 69 6e ['A', 'AREA'].in 00014c30: 63 6c 75 64 65 73 28 74 68 69 73 2e 74 61 67 4e cludes(this.tagN 00014c40: 61 6d 65 29 29 20 7b 5c 6e 20 20 20 20 65 76 65 ame)) {\n eve 00014c50: 6e 74 2e 70 72 65 76 65 6e 74 44 65 66 61 75 6c nt.preventDefaul 00014c60: 74 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 45 76 t()\n }\n\n Ev 00014c70: 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 65 28 74 entHandler.one(t 00014c80: 61 72 67 65 74 2c 20 45 56 45 4e 54 5f 53 48 4f arget, EVENT_SHO 00014c90: 57 2c 20 73 68 6f 77 45 76 65 6e 74 20 3d 3e 20 W, showEvent => 00014ca0: 7b 5c 6e 20 20 20 20 69 66 20 28 73 68 6f 77 45 {\n if (showE 00014cb0: 76 65 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 76 vent.defaultPrev 00014cc0: 65 6e 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 ented) {\n 00014cd0: 2f 2f 20 6f 6e 6c 79 20 72 65 67 69 73 74 65 72 // only register 00014ce0: 20 66 6f 63 75 73 20 72 65 73 74 6f 72 65 72 20 focus restorer 00014cf0: 69 66 20 6d 6f 64 61 6c 20 77 69 6c 6c 20 61 63 if modal will ac 00014d00: 74 75 61 6c 6c 79 20 67 65 74 20 73 68 6f 77 6e tually get shown 00014d10: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 00014d20: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 45 76 65 }\n\n Eve 00014d30: 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 65 28 74 61 ntHandler.one(ta 00014d40: 72 67 65 74 2c 20 45 56 45 4e 54 5f 48 49 44 44 rget, EVENT_HIDD 00014d50: 45 4e 2c 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 EN, () => {\n 00014d60: 20 20 20 69 66 20 28 69 73 56 69 73 69 62 6c 65 if (isVisible 00014d70: 28 74 68 69 73 29 29 20 7b 5c 6e 20 20 20 20 20 (this)) {\n 00014d80: 20 20 20 74 68 69 73 2e 66 6f 63 75 73 28 29 5c this.focus()\ 00014d90: 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 29 n }\n }) 00014da0: 5c 6e 20 20 7d 29 5c 6e 5c 6e 20 20 2f 2f 20 61 \n })\n\n // a 00014db0: 76 6f 69 64 20 63 6f 6e 66 6c 69 63 74 20 77 68 void conflict wh 00014dc0: 65 6e 20 63 6c 69 63 6b 69 6e 67 20 6d 6f 64 61 en clicking moda 00014dd0: 6c 20 74 6f 67 67 6c 65 72 20 77 68 69 6c 65 20 l toggler while 00014de0: 61 6e 6f 74 68 65 72 20 6f 6e 65 20 69 73 20 6f another one is o 00014df0: 70 65 6e 5c 6e 20 20 63 6f 6e 73 74 20 61 6c 72 pen\n const alr 00014e00: 65 61 64 79 4f 70 65 6e 20 3d 20 53 65 6c 65 63 eadyOpen = Selec 00014e10: 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 4f 6e torEngine.findOn 00014e20: 65 28 4f 50 45 4e 5f 53 45 4c 45 43 54 4f 52 29 e(OPEN_SELECTOR) 00014e30: 5c 6e 20 20 69 66 20 28 61 6c 72 65 61 64 79 4f \n if (alreadyO 00014e40: 70 65 6e 29 20 7b 5c 6e 20 20 20 20 4d 6f 64 61 pen) {\n Moda 00014e50: 6c 2e 67 65 74 49 6e 73 74 61 6e 63 65 28 61 6c l.getInstance(al 00014e60: 72 65 61 64 79 4f 70 65 6e 29 2e 68 69 64 65 28 readyOpen).hide( 00014e70: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 63 6f 6e 73 )\n }\n\n cons 00014e80: 74 20 64 61 74 61 20 3d 20 4d 6f 64 61 6c 2e 67 t data = Modal.g 00014e90: 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 6e etOrCreateInstan 00014ea0: 63 65 28 74 61 72 67 65 74 29 5c 6e 5c 6e 20 20 ce(target)\n\n 00014eb0: 64 61 74 61 2e 74 6f 67 67 6c 65 28 74 68 69 73 data.toggle(this 00014ec0: 29 5c 6e 7d 29 5c 6e 5c 6e 65 6e 61 62 6c 65 44 )\n})\n\nenableD 00014ed0: 69 73 6d 69 73 73 54 72 69 67 67 65 72 28 4d 6f ismissTrigger(Mo 00014ee0: 64 61 6c 29 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 dal)\n\n/**\n * 00014ef0: 6a 51 75 65 72 79 5c 6e 20 2a 2f 5c 6e 5c 6e 64 jQuery\n */\n\nd 00014f00: 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 efineJQueryPlugi 00014f10: 6e 28 4d 6f 64 61 6c 29 5c 6e 5c 6e 65 78 70 6f n(Modal)\n\nexpo 00014f20: 72 74 20 64 65 66 61 75 6c 74 20 4d 6f 64 61 6c rt default Modal 00014f30: 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d 2d 2d \n","/**\n * --- 00014f40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00014f50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00014f60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00014f70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00014f80: 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f 6f 74 -------\n * Boot 00014f90: 73 74 72 61 70 20 6f 66 66 63 61 6e 76 61 73 2e strap offcanvas. 00014fa0: 6a 73 5c 6e 20 2a 20 4c 69 63 65 6e 73 65 64 20 js\n * Licensed 00014fb0: 75 6e 64 65 72 20 4d 49 54 20 28 68 74 74 70 73 under MIT (https 00014fc0: 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 77 ://github.com/tw 00014fd0: 62 73 2f 62 6f 6f 74 73 74 72 61 70 2f 62 6c 6f bs/bootstrap/blo 00014fe0: 62 2f 6d 61 69 6e 2f 4c 49 43 45 4e 53 45 29 5c b/main/LICENSE)\ 00014ff0: 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d n * ------------ 00015000: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00015010: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00015020: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00015030: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e --------------\n 00015040: 20 2a 2f 5c 6e 5c 6e 69 6d 70 6f 72 74 20 42 61 */\n\nimport Ba 00015050: 73 65 43 6f 6d 70 6f 6e 65 6e 74 20 66 72 6f 6d seComponent from 00015060: 20 27 2e 2f 62 61 73 65 2d 63 6f 6d 70 6f 6e 65 './base-compone 00015070: 6e 74 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 45 nt.js'\nimport E 00015080: 76 65 6e 74 48 61 6e 64 6c 65 72 20 66 72 6f 6d ventHandler from 00015090: 20 27 2e 2f 64 6f 6d 2f 65 76 65 6e 74 2d 68 61 './dom/event-ha 000150a0: 6e 64 6c 65 72 2e 6a 73 27 5c 6e 69 6d 70 6f 72 ndler.js'\nimpor 000150b0: 74 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 t SelectorEngine 000150c0: 20 66 72 6f 6d 20 27 2e 2f 64 6f 6d 2f 73 65 6c from './dom/sel 000150d0: 65 63 74 6f 72 2d 65 6e 67 69 6e 65 2e 6a 73 27 ector-engine.js' 000150e0: 5c 6e 69 6d 70 6f 72 74 20 42 61 63 6b 64 72 6f \nimport Backdro 000150f0: 70 20 66 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 62 p from './util/b 00015100: 61 63 6b 64 72 6f 70 2e 6a 73 27 5c 6e 69 6d 70 ackdrop.js'\nimp 00015110: 6f 72 74 20 7b 20 65 6e 61 62 6c 65 44 69 73 6d ort { enableDism 00015120: 69 73 73 54 72 69 67 67 65 72 20 7d 20 66 72 6f issTrigger } fro 00015130: 6d 20 27 2e 2f 75 74 69 6c 2f 63 6f 6d 70 6f 6e m './util/compon 00015140: 65 6e 74 2d 66 75 6e 63 74 69 6f 6e 73 2e 6a 73 ent-functions.js 00015150: 27 5c 6e 69 6d 70 6f 72 74 20 46 6f 63 75 73 54 '\nimport FocusT 00015160: 72 61 70 20 66 72 6f 6d 20 27 2e 2f 75 74 69 6c rap from './util 00015170: 2f 66 6f 63 75 73 74 72 61 70 2e 6a 73 27 5c 6e /focustrap.js'\n 00015180: 69 6d 70 6f 72 74 20 7b 5c 6e 20 20 64 65 66 69 import {\n defi 00015190: 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 6e 2c 5c neJQueryPlugin,\ 000151a0: 6e 20 20 69 73 44 69 73 61 62 6c 65 64 2c 5c 6e n isDisabled,\n 000151b0: 20 20 69 73 56 69 73 69 62 6c 65 5c 6e 7d 20 66 isVisible\n} f 000151c0: 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 69 6e 64 65 rom './util/inde 000151d0: 78 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 53 63 x.js'\nimport Sc 000151e0: 72 6f 6c 6c 42 61 72 48 65 6c 70 65 72 20 66 72 rollBarHelper fr 000151f0: 6f 6d 20 27 2e 2f 75 74 69 6c 2f 73 63 72 6f 6c om './util/scrol 00015200: 6c 62 61 72 2e 6a 73 27 5c 6e 5c 6e 2f 2a 2a 5c lbar.js'\n\n/**\ 00015210: 6e 20 2a 20 43 6f 6e 73 74 61 6e 74 73 5c 6e 20 n * Constants\n 00015220: 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 20 4e 41 4d 45 */\n\nconst NAME 00015230: 20 3d 20 27 6f 66 66 63 61 6e 76 61 73 27 5c 6e = 'offcanvas'\n 00015240: 63 6f 6e 73 74 20 44 41 54 41 5f 4b 45 59 20 3d const DATA_KEY = 00015250: 20 27 62 73 2e 6f 66 66 63 61 6e 76 61 73 27 5c 'bs.offcanvas'\ 00015260: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4b 45 59 nconst EVENT_KEY 00015270: 20 3d 20 60 2e 24 7b 44 41 54 41 5f 4b 45 59 7d = `.${DATA_KEY} 00015280: 60 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f 41 50 `\nconst DATA_AP 00015290: 49 5f 4b 45 59 20 3d 20 27 2e 64 61 74 61 2d 61 I_KEY = '.data-a 000152a0: 70 69 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 pi'\nconst EVENT 000152b0: 5f 4c 4f 41 44 5f 44 41 54 41 5f 41 50 49 20 3d _LOAD_DATA_API = 000152c0: 20 60 6c 6f 61 64 24 7b 45 56 45 4e 54 5f 4b 45 `load${EVENT_KE 000152d0: 59 7d 24 7b 44 41 54 41 5f 41 50 49 5f 4b 45 59 Y}${DATA_API_KEY 000152e0: 7d 60 5c 6e 63 6f 6e 73 74 20 45 53 43 41 50 45 }`\nconst ESCAPE 000152f0: 5f 4b 45 59 20 3d 20 27 45 73 63 61 70 65 27 5c _KEY = 'Escape'\ 00015300: 6e 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e n\nconst CLASS_N 00015310: 41 4d 45 5f 53 48 4f 57 20 3d 20 27 73 68 6f 77 AME_SHOW = 'show 00015320: 27 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e '\nconst CLASS_N 00015330: 41 4d 45 5f 53 48 4f 57 49 4e 47 20 3d 20 27 73 AME_SHOWING = 's 00015340: 68 6f 77 69 6e 67 27 5c 6e 63 6f 6e 73 74 20 43 howing'\nconst C 00015350: 4c 41 53 53 5f 4e 41 4d 45 5f 48 49 44 49 4e 47 LASS_NAME_HIDING 00015360: 20 3d 20 27 68 69 64 69 6e 67 27 5c 6e 63 6f 6e = 'hiding'\ncon 00015370: 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 42 41 st CLASS_NAME_BA 00015380: 43 4b 44 52 4f 50 20 3d 20 27 6f 66 66 63 61 6e CKDROP = 'offcan 00015390: 76 61 73 2d 62 61 63 6b 64 72 6f 70 27 5c 6e 63 vas-backdrop'\nc 000153a0: 6f 6e 73 74 20 4f 50 45 4e 5f 53 45 4c 45 43 54 onst OPEN_SELECT 000153b0: 4f 52 20 3d 20 27 2e 6f 66 66 63 61 6e 76 61 73 OR = '.offcanvas 000153c0: 2e 73 68 6f 77 27 5c 6e 5c 6e 63 6f 6e 73 74 20 .show'\n\nconst 000153d0: 45 56 45 4e 54 5f 53 48 4f 57 20 3d 20 60 73 68 EVENT_SHOW = `sh 000153e0: 6f 77 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c ow${EVENT_KEY}`\ 000153f0: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 53 48 4f nconst EVENT_SHO 00015400: 57 4e 20 3d 20 60 73 68 6f 77 6e 24 7b 45 56 45 WN = `shown${EVE 00015410: 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 NT_KEY}`\nconst 00015420: 45 56 45 4e 54 5f 48 49 44 45 20 3d 20 60 68 69 EVENT_HIDE = `hi 00015430: 64 65 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c de${EVENT_KEY}`\ 00015440: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 48 49 44 nconst EVENT_HID 00015450: 45 5f 50 52 45 56 45 4e 54 45 44 20 3d 20 60 68 E_PREVENTED = `h 00015460: 69 64 65 50 72 65 76 65 6e 74 65 64 24 7b 45 56 idePrevented${EV 00015470: 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 ENT_KEY}`\nconst 00015480: 20 45 56 45 4e 54 5f 48 49 44 44 45 4e 20 3d 20 EVENT_HIDDEN = 00015490: 60 68 69 64 64 65 6e 24 7b 45 56 45 4e 54 5f 4b `hidden${EVENT_K 000154a0: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e EY}`\nconst EVEN 000154b0: 54 5f 52 45 53 49 5a 45 20 3d 20 60 72 65 73 69 T_RESIZE = `resi 000154c0: 7a 65 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c ze${EVENT_KEY}`\ 000154d0: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 43 4c 49 nconst EVENT_CLI 000154e0: 43 4b 5f 44 41 54 41 5f 41 50 49 20 3d 20 60 63 CK_DATA_API = `c 000154f0: 6c 69 63 6b 24 7b 45 56 45 4e 54 5f 4b 45 59 7d lick${EVENT_KEY} 00015500: 24 7b 44 41 54 41 5f 41 50 49 5f 4b 45 59 7d 60 ${DATA_API_KEY}` 00015510: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4b 45 \nconst EVENT_KE 00015520: 59 44 4f 57 4e 5f 44 49 53 4d 49 53 53 20 3d 20 YDOWN_DISMISS = 00015530: 60 6b 65 79 64 6f 77 6e 2e 64 69 73 6d 69 73 73 `keydown.dismiss 00015540: 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c 6e 5c ${EVENT_KEY}`\n\ 00015550: 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f nconst SELECTOR_ 00015560: 44 41 54 41 5f 54 4f 47 47 4c 45 20 3d 20 27 5b DATA_TOGGLE = '[ 00015570: 64 61 74 61 2d 62 73 2d 74 6f 67 67 6c 65 3d 5c data-bs-toggle=\ 00015580: 22 6f 66 66 63 61 6e 76 61 73 5c 22 5d 27 5c 6e "offcanvas\"]'\n 00015590: 5c 6e 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 20 \nconst Default 000155a0: 3d 20 7b 5c 6e 20 20 62 61 63 6b 64 72 6f 70 3a = {\n backdrop: 000155b0: 20 74 72 75 65 2c 5c 6e 20 20 6b 65 79 62 6f 61 true,\n keyboa 000155c0: 72 64 3a 20 74 72 75 65 2c 5c 6e 20 20 73 63 72 rd: true,\n scr 000155d0: 6f 6c 6c 3a 20 66 61 6c 73 65 5c 6e 7d 5c 6e 5c oll: false\n}\n\ 000155e0: 6e 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 54 79 nconst DefaultTy 000155f0: 70 65 20 3d 20 7b 5c 6e 20 20 62 61 63 6b 64 72 pe = {\n backdr 00015600: 6f 70 3a 20 27 28 62 6f 6f 6c 65 61 6e 7c 73 74 op: '(boolean|st 00015610: 72 69 6e 67 29 27 2c 5c 6e 20 20 6b 65 79 62 6f ring)',\n keybo 00015620: 61 72 64 3a 20 27 62 6f 6f 6c 65 61 6e 27 2c 5c ard: 'boolean',\ 00015630: 6e 20 20 73 63 72 6f 6c 6c 3a 20 27 62 6f 6f 6c n scroll: 'bool 00015640: 65 61 6e 27 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e ean'\n}\n\n/**\n 00015650: 20 2a 20 43 6c 61 73 73 20 64 65 66 69 6e 69 74 * Class definit 00015660: 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6c 61 73 ion\n */\n\nclas 00015670: 73 20 4f 66 66 63 61 6e 76 61 73 20 65 78 74 65 s Offcanvas exte 00015680: 6e 64 73 20 42 61 73 65 43 6f 6d 70 6f 6e 65 6e nds BaseComponen 00015690: 74 20 7b 5c 6e 20 20 63 6f 6e 73 74 72 75 63 74 t {\n construct 000156a0: 6f 72 28 65 6c 65 6d 65 6e 74 2c 20 63 6f 6e 66 or(element, conf 000156b0: 69 67 29 20 7b 5c 6e 20 20 20 20 73 75 70 65 72 ig) {\n super 000156c0: 28 65 6c 65 6d 65 6e 74 2c 20 63 6f 6e 66 69 67 (element, config 000156d0: 29 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 )\n\n this._i 000156e0: 73 53 68 6f 77 6e 20 3d 20 66 61 6c 73 65 5c 6e sShown = false\n 000156f0: 20 20 20 20 74 68 69 73 2e 5f 62 61 63 6b 64 72 this._backdr 00015700: 6f 70 20 3d 20 74 68 69 73 2e 5f 69 6e 69 74 69 op = this._initi 00015710: 61 6c 69 7a 65 42 61 63 6b 44 72 6f 70 28 29 5c alizeBackDrop()\ 00015720: 6e 20 20 20 20 74 68 69 73 2e 5f 66 6f 63 75 73 n this._focus 00015730: 74 72 61 70 20 3d 20 74 68 69 73 2e 5f 69 6e 69 trap = this._ini 00015740: 74 69 61 6c 69 7a 65 46 6f 63 75 73 54 72 61 70 tializeFocusTrap 00015750: 28 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 64 ()\n this._ad 00015760: 64 45 76 65 6e 74 4c 69 73 74 65 6e 65 72 73 28 dEventListeners( 00015770: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 47 )\n }\n\n // G 00015780: 65 74 74 65 72 73 5c 6e 20 20 73 74 61 74 69 63 etters\n static 00015790: 20 67 65 74 20 44 65 66 61 75 6c 74 28 29 20 7b get Default() { 000157a0: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 44 65 66 \n return Def 000157b0: 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 ault\n }\n\n s 000157c0: 74 61 74 69 63 20 67 65 74 20 44 65 66 61 75 6c tatic get Defaul 000157d0: 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 20 20 72 tType() {\n r 000157e0: 65 74 75 72 6e 20 44 65 66 61 75 6c 74 54 79 70 eturn DefaultTyp 000157f0: 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 74 61 74 e\n }\n\n stat 00015800: 69 63 20 67 65 74 20 4e 41 4d 45 28 29 20 7b 5c ic get NAME() {\ 00015810: 6e 20 20 20 20 72 65 74 75 72 6e 20 4e 41 4d 45 n return NAME 00015820: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 75 \n }\n\n // Pu 00015830: 62 6c 69 63 5c 6e 20 20 74 6f 67 67 6c 65 28 72 blic\n toggle(r 00015840: 65 6c 61 74 65 64 54 61 72 67 65 74 29 20 7b 5c elatedTarget) {\ 00015850: 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 n return this 00015860: 2e 5f 69 73 53 68 6f 77 6e 20 3f 20 74 68 69 73 ._isShown ? this 00015870: 2e 68 69 64 65 28 29 20 3a 20 74 68 69 73 2e 73 .hide() : this.s 00015880: 68 6f 77 28 72 65 6c 61 74 65 64 54 61 72 67 65 how(relatedTarge 00015890: 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 68 6f t)\n }\n\n sho 000158a0: 77 28 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 w(relatedTarget) 000158b0: 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 {\n if (this 000158c0: 2e 5f 69 73 53 68 6f 77 6e 29 20 7b 5c 6e 20 20 ._isShown) {\n 000158d0: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 000158e0: 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 73 }\n\n const s 000158f0: 68 6f 77 45 76 65 6e 74 20 3d 20 45 76 65 6e 74 howEvent = Event 00015900: 48 61 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 28 Handler.trigger( 00015910: 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 this._element, E 00015920: 56 45 4e 54 5f 53 48 4f 57 2c 20 7b 20 72 65 6c VENT_SHOW, { rel 00015930: 61 74 65 64 54 61 72 67 65 74 20 7d 29 5c 6e 5c atedTarget })\n\ 00015940: 6e 20 20 20 20 69 66 20 28 73 68 6f 77 45 76 65 n if (showEve 00015950: 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 76 65 6e nt.defaultPreven 00015960: 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 ted) {\n re 00015970: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 00015980: 20 20 20 74 68 69 73 2e 5f 69 73 53 68 6f 77 6e this._isShown 00015990: 20 3d 20 74 72 75 65 5c 6e 20 20 20 20 74 68 69 = true\n thi 000159a0: 73 2e 5f 62 61 63 6b 64 72 6f 70 2e 73 68 6f 77 s._backdrop.show 000159b0: 28 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 74 ()\n\n if (!t 000159c0: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 73 63 72 6f his._config.scro 000159d0: 6c 6c 29 20 7b 5c 6e 20 20 20 20 20 20 6e 65 77 ll) {\n new 000159e0: 20 53 63 72 6f 6c 6c 42 61 72 48 65 6c 70 65 72 ScrollBarHelper 000159f0: 28 29 2e 68 69 64 65 28 29 5c 6e 20 20 20 20 7d ().hide()\n } 00015a00: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c \n\n this._el 00015a10: 65 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 75 ement.setAttribu 00015a20: 74 65 28 27 61 72 69 61 2d 6d 6f 64 61 6c 27 2c te('aria-modal', 00015a30: 20 74 72 75 65 29 5c 6e 20 20 20 20 74 68 69 73 true)\n this 00015a40: 2e 5f 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 ._element.setAtt 00015a50: 72 69 62 75 74 65 28 27 72 6f 6c 65 27 2c 20 27 ribute('role', ' 00015a60: 64 69 61 6c 6f 67 27 29 5c 6e 20 20 20 20 74 68 dialog')\n th 00015a70: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 is._element.clas 00015a80: 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 53 53 5f sList.add(CLASS_ 00015a90: 4e 41 4d 45 5f 53 48 4f 57 49 4e 47 29 5c 6e 5c NAME_SHOWING)\n\ 00015aa0: 6e 20 20 20 20 63 6f 6e 73 74 20 63 6f 6d 70 6c n const compl 00015ab0: 65 74 65 43 61 6c 6c 42 61 63 6b 20 3d 20 28 29 eteCallBack = () 00015ac0: 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 69 66 20 => {\n if 00015ad0: 28 21 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 73 (!this._config.s 00015ae0: 63 72 6f 6c 6c 20 7c 7c 20 74 68 69 73 2e 5f 63 croll || this._c 00015af0: 6f 6e 66 69 67 2e 62 61 63 6b 64 72 6f 70 29 20 onfig.backdrop) 00015b00: 7b 5c 6e 20 20 20 20 20 20 20 20 74 68 69 73 2e {\n this. 00015b10: 5f 66 6f 63 75 73 74 72 61 70 2e 61 63 74 69 76 _focustrap.activ 00015b20: 61 74 65 28 29 5c 6e 20 20 20 20 20 20 7d 5c 6e ate()\n }\n 00015b30: 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 65 6c \n this._el 00015b40: 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e ement.classList. 00015b50: 61 64 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 add(CLASS_NAME_S 00015b60: 48 4f 57 29 5c 6e 20 20 20 20 20 20 74 68 69 73 HOW)\n this 00015b70: 2e 5f 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c ._element.classL 00015b80: 69 73 74 2e 72 65 6d 6f 76 65 28 43 4c 41 53 53 ist.remove(CLASS 00015b90: 5f 4e 41 4d 45 5f 53 48 4f 57 49 4e 47 29 5c 6e _NAME_SHOWING)\n 00015ba0: 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c EventHandl 00015bb0: 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e er.trigger(this. 00015bc0: 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f _element, EVENT_ 00015bd0: 53 48 4f 57 4e 2c 20 7b 20 72 65 6c 61 74 65 64 SHOWN, { related 00015be0: 54 61 72 67 65 74 20 7d 29 5c 6e 20 20 20 20 7d Target })\n } 00015bf0: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 71 75 \n\n this._qu 00015c00: 65 75 65 43 61 6c 6c 62 61 63 6b 28 63 6f 6d 70 eueCallback(comp 00015c10: 6c 65 74 65 43 61 6c 6c 42 61 63 6b 2c 20 74 68 leteCallBack, th 00015c20: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 74 72 75 is._element, tru 00015c30: 65 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 68 69 64 e)\n }\n\n hid 00015c40: 65 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 e() {\n if (! 00015c50: 74 68 69 73 2e 5f 69 73 53 68 6f 77 6e 29 20 7b this._isShown) { 00015c60: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 00015c70: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e }\n\n con 00015c80: 73 74 20 68 69 64 65 45 76 65 6e 74 20 3d 20 45 st hideEvent = E 00015c90: 76 65 6e 74 48 61 6e 64 6c 65 72 2e 74 72 69 67 ventHandler.trig 00015ca0: 67 65 72 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e ger(this._elemen 00015cb0: 74 2c 20 45 56 45 4e 54 5f 48 49 44 45 29 5c 6e t, EVENT_HIDE)\n 00015cc0: 5c 6e 20 20 20 20 69 66 20 28 68 69 64 65 45 76 \n if (hideEv 00015cd0: 65 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 76 65 ent.defaultPreve 00015ce0: 6e 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 72 nted) {\n r 00015cf0: 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e eturn\n }\n\n 00015d00: 20 20 20 20 74 68 69 73 2e 5f 66 6f 63 75 73 74 this._focust 00015d10: 72 61 70 2e 64 65 61 63 74 69 76 61 74 65 28 29 rap.deactivate() 00015d20: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d \n this._elem 00015d30: 65 6e 74 2e 62 6c 75 72 28 29 5c 6e 20 20 20 20 ent.blur()\n 00015d40: 74 68 69 73 2e 5f 69 73 53 68 6f 77 6e 20 3d 20 this._isShown = 00015d50: 66 61 6c 73 65 5c 6e 20 20 20 20 74 68 69 73 2e false\n this. 00015d60: 5f 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 _element.classLi 00015d70: 73 74 2e 61 64 64 28 43 4c 41 53 53 5f 4e 41 4d st.add(CLASS_NAM 00015d80: 45 5f 48 49 44 49 4e 47 29 5c 6e 20 20 20 20 74 E_HIDING)\n t 00015d90: 68 69 73 2e 5f 62 61 63 6b 64 72 6f 70 2e 68 69 his._backdrop.hi 00015da0: 64 65 28 29 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 de()\n\n cons 00015db0: 74 20 63 6f 6d 70 6c 65 74 65 43 61 6c 6c 62 61 t completeCallba 00015dc0: 63 6b 20 3d 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 ck = () => {\n 00015dd0: 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e this._elemen 00015de0: 74 2e 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f t.classList.remo 00015df0: 76 65 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 ve(CLASS_NAME_SH 00015e00: 4f 57 2c 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 48 OW, CLASS_NAME_H 00015e10: 49 44 49 4e 47 29 5c 6e 20 20 20 20 20 20 74 68 IDING)\n th 00015e20: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 65 6d 6f is._element.remo 00015e30: 76 65 41 74 74 72 69 62 75 74 65 28 27 61 72 69 veAttribute('ari 00015e40: 61 2d 6d 6f 64 61 6c 27 29 5c 6e 20 20 20 20 20 a-modal')\n 00015e50: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 this._element.r 00015e60: 65 6d 6f 76 65 41 74 74 72 69 62 75 74 65 28 27 emoveAttribute(' 00015e70: 72 6f 6c 65 27 29 5c 6e 5c 6e 20 20 20 20 20 20 role')\n\n 00015e80: 69 66 20 28 21 74 68 69 73 2e 5f 63 6f 6e 66 69 if (!this._confi 00015e90: 67 2e 73 63 72 6f 6c 6c 29 20 7b 5c 6e 20 20 20 g.scroll) {\n 00015ea0: 20 20 20 20 20 6e 65 77 20 53 63 72 6f 6c 6c 42 new ScrollB 00015eb0: 61 72 48 65 6c 70 65 72 28 29 2e 72 65 73 65 74 arHelper().reset 00015ec0: 28 29 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 ()\n }\n\n 00015ed0: 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 EventHandle 00015ee0: 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f r.trigger(this._ 00015ef0: 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 48 element, EVENT_H 00015f00: 49 44 44 45 4e 29 5c 6e 20 20 20 20 7d 5c 6e 5c IDDEN)\n }\n\ 00015f10: 6e 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 65 n this._queue 00015f20: 43 61 6c 6c 62 61 63 6b 28 63 6f 6d 70 6c 65 74 Callback(complet 00015f30: 65 43 61 6c 6c 62 61 63 6b 2c 20 74 68 69 73 2e eCallback, this. 00015f40: 5f 65 6c 65 6d 65 6e 74 2c 20 74 72 75 65 29 5c _element, true)\ 00015f50: 6e 20 20 7d 5c 6e 5c 6e 20 20 64 69 73 70 6f 73 n }\n\n dispos 00015f60: 65 28 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e e() {\n this. 00015f70: 5f 62 61 63 6b 64 72 6f 70 2e 64 69 73 70 6f 73 _backdrop.dispos 00015f80: 65 28 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 66 e()\n this._f 00015f90: 6f 63 75 73 74 72 61 70 2e 64 65 61 63 74 69 76 ocustrap.deactiv 00015fa0: 61 74 65 28 29 5c 6e 20 20 20 20 73 75 70 65 72 ate()\n super 00015fb0: 2e 64 69 73 70 6f 73 65 28 29 5c 6e 20 20 7d 5c .dispose()\n }\ 00015fc0: 6e 5c 6e 20 20 2f 2f 20 50 72 69 76 61 74 65 5c n\n // Private\ 00015fd0: 6e 20 20 5f 69 6e 69 74 69 61 6c 69 7a 65 42 61 n _initializeBa 00015fe0: 63 6b 44 72 6f 70 28 29 20 7b 5c 6e 20 20 20 20 ckDrop() {\n 00015ff0: 63 6f 6e 73 74 20 63 6c 69 63 6b 43 61 6c 6c 62 const clickCallb 00016000: 61 63 6b 20 3d 20 28 29 20 3d 3e 20 7b 5c 6e 20 ack = () => {\n 00016010: 20 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f 63 if (this._c 00016020: 6f 6e 66 69 67 2e 62 61 63 6b 64 72 6f 70 20 3d onfig.backdrop = 00016030: 3d 3d 20 27 73 74 61 74 69 63 27 29 20 7b 5c 6e == 'static') {\n 00016040: 20 20 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e EventHan 00016050: 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 dler.trigger(thi 00016060: 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e s._element, EVEN 00016070: 54 5f 48 49 44 45 5f 50 52 45 56 45 4e 54 45 44 T_HIDE_PREVENTED 00016080: 29 5c 6e 20 20 20 20 20 20 20 20 72 65 74 75 72 )\n retur 00016090: 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 n\n }\n\n 000160a0: 20 20 20 20 74 68 69 73 2e 68 69 64 65 28 29 5c this.hide()\ 000160b0: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f n }\n\n // 000160c0: 20 27 73 74 61 74 69 63 27 20 6f 70 74 69 6f 6e 'static' option 000160d0: 20 77 69 6c 6c 20 62 65 20 74 72 61 6e 73 6c 61 will be transla 000160e0: 74 65 64 20 74 6f 20 74 72 75 65 2c 20 61 6e 64 ted to true, and 000160f0: 20 62 6f 6f 6c 65 61 6e 73 20 77 69 6c 6c 20 6b booleans will k 00016100: 65 65 70 20 74 68 65 69 72 20 76 61 6c 75 65 5c eep their value\ 00016110: 6e 20 20 20 20 63 6f 6e 73 74 20 69 73 56 69 73 n const isVis 00016120: 69 62 6c 65 20 3d 20 42 6f 6f 6c 65 61 6e 28 74 ible = Boolean(t 00016130: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 62 61 63 6b his._config.back 00016140: 64 72 6f 70 29 5c 6e 5c 6e 20 20 20 20 72 65 74 drop)\n\n ret 00016150: 75 72 6e 20 6e 65 77 20 42 61 63 6b 64 72 6f 70 urn new Backdrop 00016160: 28 7b 5c 6e 20 20 20 20 20 20 63 6c 61 73 73 4e ({\n classN 00016170: 61 6d 65 3a 20 43 4c 41 53 53 5f 4e 41 4d 45 5f ame: CLASS_NAME_ 00016180: 42 41 43 4b 44 52 4f 50 2c 5c 6e 20 20 20 20 20 BACKDROP,\n 00016190: 20 69 73 56 69 73 69 62 6c 65 2c 5c 6e 20 20 20 isVisible,\n 000161a0: 20 20 20 69 73 41 6e 69 6d 61 74 65 64 3a 20 74 isAnimated: t 000161b0: 72 75 65 2c 5c 6e 20 20 20 20 20 20 72 6f 6f 74 rue,\n root 000161c0: 45 6c 65 6d 65 6e 74 3a 20 74 68 69 73 2e 5f 65 Element: this._e 000161d0: 6c 65 6d 65 6e 74 2e 70 61 72 65 6e 74 4e 6f 64 lement.parentNod 000161e0: 65 2c 5c 6e 20 20 20 20 20 20 63 6c 69 63 6b 43 e,\n clickC 000161f0: 61 6c 6c 62 61 63 6b 3a 20 69 73 56 69 73 69 62 allback: isVisib 00016200: 6c 65 20 3f 20 63 6c 69 63 6b 43 61 6c 6c 62 61 le ? clickCallba 00016210: 63 6b 20 3a 20 6e 75 6c 6c 5c 6e 20 20 20 20 7d ck : null\n } 00016220: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 69 6e 69 )\n }\n\n _ini 00016230: 74 69 61 6c 69 7a 65 46 6f 63 75 73 54 72 61 70 tializeFocusTrap 00016240: 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e () {\n return 00016250: 20 6e 65 77 20 46 6f 63 75 73 54 72 61 70 28 7b new FocusTrap({ 00016260: 5c 6e 20 20 20 20 20 20 74 72 61 70 45 6c 65 6d \n trapElem 00016270: 65 6e 74 3a 20 74 68 69 73 2e 5f 65 6c 65 6d 65 ent: this._eleme 00016280: 6e 74 5c 6e 20 20 20 20 7d 29 5c 6e 20 20 7d 5c nt\n })\n }\ 00016290: 6e 5c 6e 20 20 5f 61 64 64 45 76 65 6e 74 4c 69 n\n _addEventLi 000162a0: 73 74 65 6e 65 72 73 28 29 20 7b 5c 6e 20 20 20 steners() {\n 000162b0: 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e EventHandler.on 000162c0: 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 (this._element, 000162d0: 45 56 45 4e 54 5f 4b 45 59 44 4f 57 4e 5f 44 49 EVENT_KEYDOWN_DI 000162e0: 53 4d 49 53 53 2c 20 65 76 65 6e 74 20 3d 3e 20 SMISS, event => 000162f0: 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 65 76 65 {\n if (eve 00016300: 6e 74 2e 6b 65 79 20 21 3d 3d 20 45 53 43 41 50 nt.key !== ESCAP 00016310: 45 5f 4b 45 59 29 20 7b 5c 6e 20 20 20 20 20 20 E_KEY) {\n 00016320: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 20 20 return\n 00016330: 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 74 }\n\n if (t 00016340: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 6b 65 79 62 his._config.keyb 00016350: 6f 61 72 64 29 20 7b 5c 6e 20 20 20 20 20 20 20 oard) {\n 00016360: 20 74 68 69 73 2e 68 69 64 65 28 29 5c 6e 20 20 this.hide()\n 00016370: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 00016380: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 45 }\n\n E 00016390: 76 65 6e 74 48 61 6e 64 6c 65 72 2e 74 72 69 67 ventHandler.trig 000163a0: 67 65 72 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e ger(this._elemen 000163b0: 74 2c 20 45 56 45 4e 54 5f 48 49 44 45 5f 50 52 t, EVENT_HIDE_PR 000163c0: 45 56 45 4e 54 45 44 29 5c 6e 20 20 20 20 7d 29 EVENTED)\n }) 000163d0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 53 74 \n }\n\n // St 000163e0: 61 74 69 63 5c 6e 20 20 73 74 61 74 69 63 20 6a atic\n static j 000163f0: 51 75 65 72 79 49 6e 74 65 72 66 61 63 65 28 63 QueryInterface(c 00016400: 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 72 65 onfig) {\n re 00016410: 74 75 72 6e 20 74 68 69 73 2e 65 61 63 68 28 66 turn this.each(f 00016420: 75 6e 63 74 69 6f 6e 20 28 29 20 7b 5c 6e 20 20 unction () {\n 00016430: 20 20 20 20 63 6f 6e 73 74 20 64 61 74 61 20 3d const data = 00016440: 20 4f 66 66 63 61 6e 76 61 73 2e 67 65 74 4f 72 Offcanvas.getOr 00016450: 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 74 CreateInstance(t 00016460: 68 69 73 2c 20 63 6f 6e 66 69 67 29 5c 6e 5c 6e his, config)\n\n 00016470: 20 20 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 if (typeof 00016480: 20 63 6f 6e 66 69 67 20 21 3d 3d 20 27 73 74 72 config !== 'str 00016490: 69 6e 67 27 29 20 7b 5c 6e 20 20 20 20 20 20 20 ing') {\n 000164a0: 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 20 20 7d return\n } 000164b0: 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 64 61 \n\n if (da 000164c0: 74 61 5b 63 6f 6e 66 69 67 5d 20 3d 3d 3d 20 75 ta[config] === u 000164d0: 6e 64 65 66 69 6e 65 64 20 7c 7c 20 63 6f 6e 66 ndefined || conf 000164e0: 69 67 2e 73 74 61 72 74 73 57 69 74 68 28 27 5f ig.startsWith('_ 000164f0: 27 29 20 7c 7c 20 63 6f 6e 66 69 67 20 3d 3d 3d ') || config === 00016500: 20 27 63 6f 6e 73 74 72 75 63 74 6f 72 27 29 20 'constructor') 00016510: 7b 5c 6e 20 20 20 20 20 20 20 20 74 68 72 6f 77 {\n throw 00016520: 20 6e 65 77 20 54 79 70 65 45 72 72 6f 72 28 60 new TypeError(` 00016530: 4e 6f 20 6d 65 74 68 6f 64 20 6e 61 6d 65 64 20 No method named 00016540: 5c 22 24 7b 63 6f 6e 66 69 67 7d 5c 22 60 29 5c \"${config}\"`)\ 00016550: 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 n }\n\n 00016560: 20 20 64 61 74 61 5b 63 6f 6e 66 69 67 5d 28 74 data[config](t 00016570: 68 69 73 29 5c 6e 20 20 20 20 7d 29 5c 6e 20 20 his)\n })\n 00016580: 7d 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 }\n}\n\n/**\n * 00016590: 44 61 74 61 20 41 50 49 20 69 6d 70 6c 65 6d 65 Data API impleme 000165a0: 6e 74 61 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e ntation\n */\n\n 000165b0: 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 EventHandler.on( 000165c0: 64 6f 63 75 6d 65 6e 74 2c 20 45 56 45 4e 54 5f document, EVENT_ 000165d0: 43 4c 49 43 4b 5f 44 41 54 41 5f 41 50 49 2c 20 CLICK_DATA_API, 000165e0: 53 45 4c 45 43 54 4f 52 5f 44 41 54 41 5f 54 4f SELECTOR_DATA_TO 000165f0: 47 47 4c 45 2c 20 66 75 6e 63 74 69 6f 6e 20 28 GGLE, function ( 00016600: 65 76 65 6e 74 29 20 7b 5c 6e 20 20 63 6f 6e 73 event) {\n cons 00016610: 74 20 74 61 72 67 65 74 20 3d 20 53 65 6c 65 63 t target = Selec 00016620: 74 6f 72 45 6e 67 69 6e 65 2e 67 65 74 45 6c 65 torEngine.getEle 00016630: 6d 65 6e 74 46 72 6f 6d 53 65 6c 65 63 74 6f 72 mentFromSelector 00016640: 28 74 68 69 73 29 5c 6e 5c 6e 20 20 69 66 20 28 (this)\n\n if ( 00016650: 5b 27 41 27 2c 20 27 41 52 45 41 27 5d 2e 69 6e ['A', 'AREA'].in 00016660: 63 6c 75 64 65 73 28 74 68 69 73 2e 74 61 67 4e cludes(this.tagN 00016670: 61 6d 65 29 29 20 7b 5c 6e 20 20 20 20 65 76 65 ame)) {\n eve 00016680: 6e 74 2e 70 72 65 76 65 6e 74 44 65 66 61 75 6c nt.preventDefaul 00016690: 74 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 69 66 t()\n }\n\n if 000166a0: 20 28 69 73 44 69 73 61 62 6c 65 64 28 74 68 69 (isDisabled(thi 000166b0: 73 29 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 s)) {\n retur 000166c0: 6e 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 45 76 65 6e n\n }\n\n Even 000166d0: 74 48 61 6e 64 6c 65 72 2e 6f 6e 65 28 74 61 72 tHandler.one(tar 000166e0: 67 65 74 2c 20 45 56 45 4e 54 5f 48 49 44 44 45 get, EVENT_HIDDE 000166f0: 4e 2c 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 N, () => {\n 00016700: 2f 2f 20 66 6f 63 75 73 20 6f 6e 20 74 72 69 67 // focus on trig 00016710: 67 65 72 20 77 68 65 6e 20 69 74 20 69 73 20 63 ger when it is c 00016720: 6c 6f 73 65 64 5c 6e 20 20 20 20 69 66 20 28 69 losed\n if (i 00016730: 73 56 69 73 69 62 6c 65 28 74 68 69 73 29 29 20 sVisible(this)) 00016740: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 66 6f {\n this.fo 00016750: 63 75 73 28 29 5c 6e 20 20 20 20 7d 5c 6e 20 20 cus()\n }\n 00016760: 7d 29 5c 6e 5c 6e 20 20 2f 2f 20 61 76 6f 69 64 })\n\n // avoid 00016770: 20 63 6f 6e 66 6c 69 63 74 20 77 68 65 6e 20 63 conflict when c 00016780: 6c 69 63 6b 69 6e 67 20 61 20 74 6f 67 67 6c 65 licking a toggle 00016790: 72 20 6f 66 20 61 6e 20 6f 66 66 63 61 6e 76 61 r of an offcanva 000167a0: 73 2c 20 77 68 69 6c 65 20 61 6e 6f 74 68 65 72 s, while another 000167b0: 20 69 73 20 6f 70 65 6e 5c 6e 20 20 63 6f 6e 73 is open\n cons 000167c0: 74 20 61 6c 72 65 61 64 79 4f 70 65 6e 20 3d 20 t alreadyOpen = 000167d0: 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 SelectorEngine.f 000167e0: 69 6e 64 4f 6e 65 28 4f 50 45 4e 5f 53 45 4c 45 indOne(OPEN_SELE 000167f0: 43 54 4f 52 29 5c 6e 20 20 69 66 20 28 61 6c 72 CTOR)\n if (alr 00016800: 65 61 64 79 4f 70 65 6e 20 26 26 20 61 6c 72 65 eadyOpen && alre 00016810: 61 64 79 4f 70 65 6e 20 21 3d 3d 20 74 61 72 67 adyOpen !== targ 00016820: 65 74 29 20 7b 5c 6e 20 20 20 20 4f 66 66 63 61 et) {\n Offca 00016830: 6e 76 61 73 2e 67 65 74 49 6e 73 74 61 6e 63 65 nvas.getInstance 00016840: 28 61 6c 72 65 61 64 79 4f 70 65 6e 29 2e 68 69 (alreadyOpen).hi 00016850: 64 65 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 63 de()\n }\n\n c 00016860: 6f 6e 73 74 20 64 61 74 61 20 3d 20 4f 66 66 63 onst data = Offc 00016870: 61 6e 76 61 73 2e 67 65 74 4f 72 43 72 65 61 74 anvas.getOrCreat 00016880: 65 49 6e 73 74 61 6e 63 65 28 74 61 72 67 65 74 eInstance(target 00016890: 29 5c 6e 20 20 64 61 74 61 2e 74 6f 67 67 6c 65 )\n data.toggle 000168a0: 28 74 68 69 73 29 5c 6e 7d 29 5c 6e 5c 6e 45 76 (this)\n})\n\nEv 000168b0: 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 77 69 entHandler.on(wi 000168c0: 6e 64 6f 77 2c 20 45 56 45 4e 54 5f 4c 4f 41 44 ndow, EVENT_LOAD 000168d0: 5f 44 41 54 41 5f 41 50 49 2c 20 28 29 20 3d 3e _DATA_API, () => 000168e0: 20 7b 5c 6e 20 20 66 6f 72 20 28 63 6f 6e 73 74 {\n for (const 000168f0: 20 73 65 6c 65 63 74 6f 72 20 6f 66 20 53 65 6c selector of Sel 00016900: 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 ectorEngine.find 00016910: 28 4f 50 45 4e 5f 53 45 4c 45 43 54 4f 52 29 29 (OPEN_SELECTOR)) 00016920: 20 7b 5c 6e 20 20 20 20 4f 66 66 63 61 6e 76 61 {\n Offcanva 00016930: 73 2e 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 s.getOrCreateIns 00016940: 74 61 6e 63 65 28 73 65 6c 65 63 74 6f 72 29 2e tance(selector). 00016950: 73 68 6f 77 28 29 5c 6e 20 20 7d 5c 6e 7d 29 5c show()\n }\n})\ 00016960: 6e 5c 6e 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e n\nEventHandler. 00016970: 6f 6e 28 77 69 6e 64 6f 77 2c 20 45 56 45 4e 54 on(window, EVENT 00016980: 5f 52 45 53 49 5a 45 2c 20 28 29 20 3d 3e 20 7b _RESIZE, () => { 00016990: 5c 6e 20 20 66 6f 72 20 28 63 6f 6e 73 74 20 65 \n for (const e 000169a0: 6c 65 6d 65 6e 74 20 6f 66 20 53 65 6c 65 63 74 lement of Select 000169b0: 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 28 27 5b orEngine.find('[ 000169c0: 61 72 69 61 2d 6d 6f 64 61 6c 5d 5b 63 6c 61 73 aria-modal][clas 000169d0: 73 2a 3d 73 68 6f 77 5d 5b 63 6c 61 73 73 2a 3d s*=show][class*= 000169e0: 6f 66 66 63 61 6e 76 61 73 2d 5d 27 29 29 20 7b offcanvas-]')) { 000169f0: 5c 6e 20 20 20 20 69 66 20 28 67 65 74 43 6f 6d \n if (getCom 00016a00: 70 75 74 65 64 53 74 79 6c 65 28 65 6c 65 6d 65 putedStyle(eleme 00016a10: 6e 74 29 2e 70 6f 73 69 74 69 6f 6e 20 21 3d 3d nt).position !== 00016a20: 20 27 66 69 78 65 64 27 29 20 7b 5c 6e 20 20 20 'fixed') {\n 00016a30: 20 20 20 4f 66 66 63 61 6e 76 61 73 2e 67 65 74 Offcanvas.get 00016a40: 4f 72 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 OrCreateInstance 00016a50: 28 65 6c 65 6d 65 6e 74 29 2e 68 69 64 65 28 29 (element).hide() 00016a60: 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 7d 29 \n }\n }\n}) 00016a70: 5c 6e 5c 6e 65 6e 61 62 6c 65 44 69 73 6d 69 73 \n\nenableDismis 00016a80: 73 54 72 69 67 67 65 72 28 4f 66 66 63 61 6e 76 sTrigger(Offcanv 00016a90: 61 73 29 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 6a as)\n\n/**\n * j 00016aa0: 51 75 65 72 79 5c 6e 20 2a 2f 5c 6e 5c 6e 64 65 Query\n */\n\nde 00016ab0: 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 6e fineJQueryPlugin 00016ac0: 28 4f 66 66 63 61 6e 76 61 73 29 5c 6e 5c 6e 65 (Offcanvas)\n\ne 00016ad0: 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 4f 66 xport default Of 00016ae0: 66 63 61 6e 76 61 73 5c 6e 22 2c 22 2f 2a 2a 5c fcanvas\n","/**\ 00016af0: 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d n * ------------ 00016b00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016b10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016b20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016b30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e --------------\n 00016b40: 20 2a 20 42 6f 6f 74 73 74 72 61 70 20 75 74 69 * Bootstrap uti 00016b50: 6c 2f 73 61 6e 69 74 69 7a 65 72 2e 6a 73 5c 6e l/sanitizer.js\n 00016b60: 20 2a 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 * Licensed unde 00016b70: 72 20 4d 49 54 20 28 68 74 74 70 73 3a 2f 2f 67 r MIT (https://g 00016b80: 69 74 68 75 62 2e 63 6f 6d 2f 74 77 62 73 2f 62 ithub.com/twbs/b 00016b90: 6f 6f 74 73 74 72 61 70 2f 62 6c 6f 62 2f 6d 61 ootstrap/blob/ma 00016ba0: 69 6e 2f 4c 49 43 45 4e 53 45 29 5c 6e 20 2a 20 in/LICENSE)\n * 00016bb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016bc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016bd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016be0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016bf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c ----------\n */\ 00016c00: 6e 5c 6e 2f 2f 20 6a 73 2d 64 6f 63 73 2d 73 74 n\n// js-docs-st 00016c10: 61 72 74 20 61 6c 6c 6f 77 2d 6c 69 73 74 5c 6e art allow-list\n 00016c20: 63 6f 6e 73 74 20 41 52 49 41 5f 41 54 54 52 49 const ARIA_ATTRI 00016c30: 42 55 54 45 5f 50 41 54 54 45 52 4e 20 3d 20 2f BUTE_PATTERN = / 00016c40: 5e 61 72 69 61 2d 5b 5c 5c 77 2d 5d 2a 24 2f 69 ^aria-[\\w-]*$/i 00016c50: 5c 6e 5c 6e 65 78 70 6f 72 74 20 63 6f 6e 73 74 \n\nexport const 00016c60: 20 44 65 66 61 75 6c 74 41 6c 6c 6f 77 6c 69 73 DefaultAllowlis 00016c70: 74 20 3d 20 7b 5c 6e 20 20 2f 2f 20 47 6c 6f 62 t = {\n // Glob 00016c80: 61 6c 20 61 74 74 72 69 62 75 74 65 73 20 61 6c al attributes al 00016c90: 6c 6f 77 65 64 20 6f 6e 20 61 6e 79 20 73 75 70 lowed on any sup 00016ca0: 70 6c 69 65 64 20 65 6c 65 6d 65 6e 74 20 62 65 plied element be 00016cb0: 6c 6f 77 2e 5c 6e 20 20 27 2a 27 3a 20 5b 27 63 low.\n '*': ['c 00016cc0: 6c 61 73 73 27 2c 20 27 64 69 72 27 2c 20 27 69 lass', 'dir', 'i 00016cd0: 64 27 2c 20 27 6c 61 6e 67 27 2c 20 27 72 6f 6c d', 'lang', 'rol 00016ce0: 65 27 2c 20 41 52 49 41 5f 41 54 54 52 49 42 55 e', ARIA_ATTRIBU 00016cf0: 54 45 5f 50 41 54 54 45 52 4e 5d 2c 5c 6e 20 20 TE_PATTERN],\n 00016d00: 61 3a 20 5b 27 74 61 72 67 65 74 27 2c 20 27 68 a: ['target', 'h 00016d10: 72 65 66 27 2c 20 27 74 69 74 6c 65 27 2c 20 27 ref', 'title', ' 00016d20: 72 65 6c 27 5d 2c 5c 6e 20 20 61 72 65 61 3a 20 rel'],\n area: 00016d30: 5b 5d 2c 5c 6e 20 20 62 3a 20 5b 5d 2c 5c 6e 20 [],\n b: [],\n 00016d40: 20 62 72 3a 20 5b 5d 2c 5c 6e 20 20 63 6f 6c 3a br: [],\n col: 00016d50: 20 5b 5d 2c 5c 6e 20 20 63 6f 64 65 3a 20 5b 5d [],\n code: [] 00016d60: 2c 5c 6e 20 20 64 64 3a 20 5b 5d 2c 5c 6e 20 20 ,\n dd: [],\n 00016d70: 64 69 76 3a 20 5b 5d 2c 5c 6e 20 20 64 6c 3a 20 div: [],\n dl: 00016d80: 5b 5d 2c 5c 6e 20 20 64 74 3a 20 5b 5d 2c 5c 6e [],\n dt: [],\n 00016d90: 20 20 65 6d 3a 20 5b 5d 2c 5c 6e 20 20 68 72 3a em: [],\n hr: 00016da0: 20 5b 5d 2c 5c 6e 20 20 68 31 3a 20 5b 5d 2c 5c [],\n h1: [],\ 00016db0: 6e 20 20 68 32 3a 20 5b 5d 2c 5c 6e 20 20 68 33 n h2: [],\n h3 00016dc0: 3a 20 5b 5d 2c 5c 6e 20 20 68 34 3a 20 5b 5d 2c : [],\n h4: [], 00016dd0: 5c 6e 20 20 68 35 3a 20 5b 5d 2c 5c 6e 20 20 68 \n h5: [],\n h 00016de0: 36 3a 20 5b 5d 2c 5c 6e 20 20 69 3a 20 5b 5d 2c 6: [],\n i: [], 00016df0: 5c 6e 20 20 69 6d 67 3a 20 5b 27 73 72 63 27 2c \n img: ['src', 00016e00: 20 27 73 72 63 73 65 74 27 2c 20 27 61 6c 74 27 'srcset', 'alt' 00016e10: 2c 20 27 74 69 74 6c 65 27 2c 20 27 77 69 64 74 , 'title', 'widt 00016e20: 68 27 2c 20 27 68 65 69 67 68 74 27 5d 2c 5c 6e h', 'height'],\n 00016e30: 20 20 6c 69 3a 20 5b 5d 2c 5c 6e 20 20 6f 6c 3a li: [],\n ol: 00016e40: 20 5b 5d 2c 5c 6e 20 20 70 3a 20 5b 5d 2c 5c 6e [],\n p: [],\n 00016e50: 20 20 70 72 65 3a 20 5b 5d 2c 5c 6e 20 20 73 3a pre: [],\n s: 00016e60: 20 5b 5d 2c 5c 6e 20 20 73 6d 61 6c 6c 3a 20 5b [],\n small: [ 00016e70: 5d 2c 5c 6e 20 20 73 70 61 6e 3a 20 5b 5d 2c 5c ],\n span: [],\ 00016e80: 6e 20 20 73 75 62 3a 20 5b 5d 2c 5c 6e 20 20 73 n sub: [],\n s 00016e90: 75 70 3a 20 5b 5d 2c 5c 6e 20 20 73 74 72 6f 6e up: [],\n stron 00016ea0: 67 3a 20 5b 5d 2c 5c 6e 20 20 75 3a 20 5b 5d 2c g: [],\n u: [], 00016eb0: 5c 6e 20 20 75 6c 3a 20 5b 5d 5c 6e 7d 5c 6e 2f \n ul: []\n}\n/ 00016ec0: 2f 20 6a 73 2d 64 6f 63 73 2d 65 6e 64 20 61 6c / js-docs-end al 00016ed0: 6c 6f 77 2d 6c 69 73 74 5c 6e 5c 6e 63 6f 6e 73 low-list\n\ncons 00016ee0: 74 20 75 72 69 41 74 74 72 69 62 75 74 65 73 20 t uriAttributes 00016ef0: 3d 20 6e 65 77 20 53 65 74 28 5b 5c 6e 20 20 27 = new Set([\n ' 00016f00: 62 61 63 6b 67 72 6f 75 6e 64 27 2c 5c 6e 20 20 background',\n 00016f10: 27 63 69 74 65 27 2c 5c 6e 20 20 27 68 72 65 66 'cite',\n 'href 00016f20: 27 2c 5c 6e 20 20 27 69 74 65 6d 74 79 70 65 27 ',\n 'itemtype' 00016f30: 2c 5c 6e 20 20 27 6c 6f 6e 67 64 65 73 63 27 2c ,\n 'longdesc', 00016f40: 5c 6e 20 20 27 70 6f 73 74 65 72 27 2c 5c 6e 20 \n 'poster',\n 00016f50: 20 27 73 72 63 27 2c 5c 6e 20 20 27 78 6c 69 6e 'src',\n 'xlin 00016f60: 6b 3a 68 72 65 66 27 5c 6e 5d 29 5c 6e 5c 6e 2f k:href'\n])\n\n/ 00016f70: 2a 2a 5c 6e 20 2a 20 41 20 70 61 74 74 65 72 6e **\n * A pattern 00016f80: 20 74 68 61 74 20 72 65 63 6f 67 6e 69 7a 65 73 that recognizes 00016f90: 20 55 52 4c 73 20 74 68 61 74 20 61 72 65 20 73 URLs that are s 00016fa0: 61 66 65 20 77 72 74 2e 20 58 53 53 20 69 6e 20 afe wrt. XSS in 00016fb0: 55 52 4c 20 6e 61 76 69 67 61 74 69 6f 6e 5c 6e URL navigation\n 00016fc0: 20 2a 20 63 6f 6e 74 65 78 74 73 2e 5c 6e 20 2a * contexts.\n * 00016fd0: 5c 6e 20 2a 20 53 68 6f 75 74 2d 6f 75 74 20 74 \n * Shout-out t 00016fe0: 6f 20 41 6e 67 75 6c 61 72 20 68 74 74 70 73 3a o Angular https: 00016ff0: 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 61 6e 67 //github.com/ang 00017000: 75 6c 61 72 2f 61 6e 67 75 6c 61 72 2f 62 6c 6f ular/angular/blo 00017010: 62 2f 31 35 2e 32 2e 38 2f 70 61 63 6b 61 67 65 b/15.2.8/package 00017020: 73 2f 63 6f 72 65 2f 73 72 63 2f 73 61 6e 69 74 s/core/src/sanit 00017030: 69 7a 61 74 69 6f 6e 2f 75 72 6c 5f 73 61 6e 69 ization/url_sani 00017040: 74 69 7a 65 72 2e 74 73 23 4c 33 38 5c 6e 20 2a tizer.ts#L38\n * 00017050: 2f 5c 6e 2f 2f 20 65 73 6c 69 6e 74 2d 64 69 73 /\n// eslint-dis 00017060: 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 20 75 able-next-line u 00017070: 6e 69 63 6f 72 6e 2f 62 65 74 74 65 72 2d 72 65 nicorn/better-re 00017080: 67 65 78 5c 6e 63 6f 6e 73 74 20 53 41 46 45 5f gex\nconst SAFE_ 00017090: 55 52 4c 5f 50 41 54 54 45 52 4e 20 3d 20 2f 5e URL_PATTERN = /^ 000170a0: 28 3f 21 6a 61 76 61 73 63 72 69 70 74 3a 29 28 (?!javascript:)( 000170b0: 3f 3a 5b 61 2d 7a 30 2d 39 2b 2e 2d 5d 2b 3a 7c ?:[a-z0-9+.-]+:| 000170c0: 5b 5e 26 3a 2f 3f 23 5d 2a 28 3f 3a 5b 2f 3f 23 [^&:/?#]*(?:[/?# 000170d0: 5d 7c 24 29 29 2f 69 5c 6e 5c 6e 63 6f 6e 73 74 ]|$))/i\n\nconst 000170e0: 20 61 6c 6c 6f 77 65 64 41 74 74 72 69 62 75 74 allowedAttribut 000170f0: 65 20 3d 20 28 61 74 74 72 69 62 75 74 65 2c 20 e = (attribute, 00017100: 61 6c 6c 6f 77 65 64 41 74 74 72 69 62 75 74 65 allowedAttribute 00017110: 4c 69 73 74 29 20 3d 3e 20 7b 5c 6e 20 20 63 6f List) => {\n co 00017120: 6e 73 74 20 61 74 74 72 69 62 75 74 65 4e 61 6d nst attributeNam 00017130: 65 20 3d 20 61 74 74 72 69 62 75 74 65 2e 6e 6f e = attribute.no 00017140: 64 65 4e 61 6d 65 2e 74 6f 4c 6f 77 65 72 43 61 deName.toLowerCa 00017150: 73 65 28 29 5c 6e 5c 6e 20 20 69 66 20 28 61 6c se()\n\n if (al 00017160: 6c 6f 77 65 64 41 74 74 72 69 62 75 74 65 4c 69 lowedAttributeLi 00017170: 73 74 2e 69 6e 63 6c 75 64 65 73 28 61 74 74 72 st.includes(attr 00017180: 69 62 75 74 65 4e 61 6d 65 29 29 20 7b 5c 6e 20 ibuteName)) {\n 00017190: 20 20 20 69 66 20 28 75 72 69 41 74 74 72 69 62 if (uriAttrib 000171a0: 75 74 65 73 2e 68 61 73 28 61 74 74 72 69 62 75 utes.has(attribu 000171b0: 74 65 4e 61 6d 65 29 29 20 7b 5c 6e 20 20 20 20 teName)) {\n 000171c0: 20 20 72 65 74 75 72 6e 20 42 6f 6f 6c 65 61 6e return Boolean 000171d0: 28 53 41 46 45 5f 55 52 4c 5f 50 41 54 54 45 52 (SAFE_URL_PATTER 000171e0: 4e 2e 74 65 73 74 28 61 74 74 72 69 62 75 74 65 N.test(attribute 000171f0: 2e 6e 6f 64 65 56 61 6c 75 65 29 29 5c 6e 20 20 .nodeValue))\n 00017200: 20 20 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 75 72 }\n\n retur 00017210: 6e 20 74 72 75 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 n true\n }\n\n 00017220: 20 2f 2f 20 43 68 65 63 6b 20 69 66 20 61 20 72 // Check if a r 00017230: 65 67 75 6c 61 72 20 65 78 70 72 65 73 73 69 6f egular expressio 00017240: 6e 20 76 61 6c 69 64 61 74 65 73 20 74 68 65 20 n validates the 00017250: 61 74 74 72 69 62 75 74 65 2e 5c 6e 20 20 72 65 attribute.\n re 00017260: 74 75 72 6e 20 61 6c 6c 6f 77 65 64 41 74 74 72 turn allowedAttr 00017270: 69 62 75 74 65 4c 69 73 74 2e 66 69 6c 74 65 72 ibuteList.filter 00017280: 28 61 74 74 72 69 62 75 74 65 52 65 67 65 78 20 (attributeRegex 00017290: 3d 3e 20 61 74 74 72 69 62 75 74 65 52 65 67 65 => attributeRege 000172a0: 78 20 69 6e 73 74 61 6e 63 65 6f 66 20 52 65 67 x instanceof Reg 000172b0: 45 78 70 29 5c 6e 20 20 20 20 2e 73 6f 6d 65 28 Exp)\n .some( 000172c0: 72 65 67 65 78 20 3d 3e 20 72 65 67 65 78 2e 74 regex => regex.t 000172d0: 65 73 74 28 61 74 74 72 69 62 75 74 65 4e 61 6d est(attributeNam 000172e0: 65 29 29 5c 6e 7d 5c 6e 5c 6e 65 78 70 6f 72 74 e))\n}\n\nexport 000172f0: 20 66 75 6e 63 74 69 6f 6e 20 73 61 6e 69 74 69 function saniti 00017300: 7a 65 48 74 6d 6c 28 75 6e 73 61 66 65 48 74 6d zeHtml(unsafeHtm 00017310: 6c 2c 20 61 6c 6c 6f 77 4c 69 73 74 2c 20 73 61 l, allowList, sa 00017320: 6e 69 74 69 7a 65 46 75 6e 63 74 69 6f 6e 29 20 nitizeFunction) 00017330: 7b 5c 6e 20 20 69 66 20 28 21 75 6e 73 61 66 65 {\n if (!unsafe 00017340: 48 74 6d 6c 2e 6c 65 6e 67 74 68 29 20 7b 5c 6e Html.length) {\n 00017350: 20 20 20 20 72 65 74 75 72 6e 20 75 6e 73 61 66 return unsaf 00017360: 65 48 74 6d 6c 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 eHtml\n }\n\n 00017370: 69 66 20 28 73 61 6e 69 74 69 7a 65 46 75 6e 63 if (sanitizeFunc 00017380: 74 69 6f 6e 20 26 26 20 74 79 70 65 6f 66 20 73 tion && typeof s 00017390: 61 6e 69 74 69 7a 65 46 75 6e 63 74 69 6f 6e 20 anitizeFunction 000173a0: 3d 3d 3d 20 27 66 75 6e 63 74 69 6f 6e 27 29 20 === 'function') 000173b0: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 73 61 {\n return sa 000173c0: 6e 69 74 69 7a 65 46 75 6e 63 74 69 6f 6e 28 75 nitizeFunction(u 000173d0: 6e 73 61 66 65 48 74 6d 6c 29 5c 6e 20 20 7d 5c nsafeHtml)\n }\ 000173e0: 6e 5c 6e 20 20 63 6f 6e 73 74 20 64 6f 6d 50 61 n\n const domPa 000173f0: 72 73 65 72 20 3d 20 6e 65 77 20 77 69 6e 64 6f rser = new windo 00017400: 77 2e 44 4f 4d 50 61 72 73 65 72 28 29 5c 6e 20 w.DOMParser()\n 00017410: 20 63 6f 6e 73 74 20 63 72 65 61 74 65 64 44 6f const createdDo 00017420: 63 75 6d 65 6e 74 20 3d 20 64 6f 6d 50 61 72 73 cument = domPars 00017430: 65 72 2e 70 61 72 73 65 46 72 6f 6d 53 74 72 69 er.parseFromStri 00017440: 6e 67 28 75 6e 73 61 66 65 48 74 6d 6c 2c 20 27 ng(unsafeHtml, ' 00017450: 74 65 78 74 2f 68 74 6d 6c 27 29 5c 6e 20 20 63 text/html')\n c 00017460: 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 73 20 3d 20 onst elements = 00017470: 5b 5d 2e 63 6f 6e 63 61 74 28 2e 2e 2e 63 72 65 [].concat(...cre 00017480: 61 74 65 64 44 6f 63 75 6d 65 6e 74 2e 62 6f 64 atedDocument.bod 00017490: 79 2e 71 75 65 72 79 53 65 6c 65 63 74 6f 72 41 y.querySelectorA 000174a0: 6c 6c 28 27 2a 27 29 29 5c 6e 5c 6e 20 20 66 6f ll('*'))\n\n fo 000174b0: 72 20 28 63 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 r (const element 000174c0: 20 6f 66 20 65 6c 65 6d 65 6e 74 73 29 20 7b 5c of elements) {\ 000174d0: 6e 20 20 20 20 63 6f 6e 73 74 20 65 6c 65 6d 65 n const eleme 000174e0: 6e 74 4e 61 6d 65 20 3d 20 65 6c 65 6d 65 6e 74 ntName = element 000174f0: 2e 6e 6f 64 65 4e 61 6d 65 2e 74 6f 4c 6f 77 65 .nodeName.toLowe 00017500: 72 43 61 73 65 28 29 5c 6e 5c 6e 20 20 20 20 69 rCase()\n\n i 00017510: 66 20 28 21 4f 62 6a 65 63 74 2e 6b 65 79 73 28 f (!Object.keys( 00017520: 61 6c 6c 6f 77 4c 69 73 74 29 2e 69 6e 63 6c 75 allowList).inclu 00017530: 64 65 73 28 65 6c 65 6d 65 6e 74 4e 61 6d 65 29 des(elementName) 00017540: 29 20 7b 5c 6e 20 20 20 20 20 20 65 6c 65 6d 65 ) {\n eleme 00017550: 6e 74 2e 72 65 6d 6f 76 65 28 29 5c 6e 20 20 20 nt.remove()\n 00017560: 20 20 20 63 6f 6e 74 69 6e 75 65 5c 6e 20 20 20 continue\n 00017570: 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 }\n\n const 00017580: 61 74 74 72 69 62 75 74 65 4c 69 73 74 20 3d 20 attributeList = 00017590: 5b 5d 2e 63 6f 6e 63 61 74 28 2e 2e 2e 65 6c 65 [].concat(...ele 000175a0: 6d 65 6e 74 2e 61 74 74 72 69 62 75 74 65 73 29 ment.attributes) 000175b0: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 61 6c 6c 6f \n const allo 000175c0: 77 65 64 41 74 74 72 69 62 75 74 65 73 20 3d 20 wedAttributes = 000175d0: 5b 5d 2e 63 6f 6e 63 61 74 28 61 6c 6c 6f 77 4c [].concat(allowL 000175e0: 69 73 74 5b 27 2a 27 5d 20 7c 7c 20 5b 5d 2c 20 ist['*'] || [], 000175f0: 61 6c 6c 6f 77 4c 69 73 74 5b 65 6c 65 6d 65 6e allowList[elemen 00017600: 74 4e 61 6d 65 5d 20 7c 7c 20 5b 5d 29 5c 6e 5c tName] || [])\n\ 00017610: 6e 20 20 20 20 66 6f 72 20 28 63 6f 6e 73 74 20 n for (const 00017620: 61 74 74 72 69 62 75 74 65 20 6f 66 20 61 74 74 attribute of att 00017630: 72 69 62 75 74 65 4c 69 73 74 29 20 7b 5c 6e 20 ributeList) {\n 00017640: 20 20 20 20 20 69 66 20 28 21 61 6c 6c 6f 77 65 if (!allowe 00017650: 64 41 74 74 72 69 62 75 74 65 28 61 74 74 72 69 dAttribute(attri 00017660: 62 75 74 65 2c 20 61 6c 6c 6f 77 65 64 41 74 74 bute, allowedAtt 00017670: 72 69 62 75 74 65 73 29 29 20 7b 5c 6e 20 20 20 ributes)) {\n 00017680: 20 20 20 20 20 65 6c 65 6d 65 6e 74 2e 72 65 6d element.rem 00017690: 6f 76 65 41 74 74 72 69 62 75 74 65 28 61 74 74 oveAttribute(att 000176a0: 72 69 62 75 74 65 2e 6e 6f 64 65 4e 61 6d 65 29 ribute.nodeName) 000176b0: 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d \n }\n } 000176c0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 72 \n }\n\n retur 000176d0: 6e 20 63 72 65 61 74 65 64 44 6f 63 75 6d 65 6e n createdDocumen 000176e0: 74 2e 62 6f 64 79 2e 69 6e 6e 65 72 48 54 4d 4c t.body.innerHTML 000176f0: 5c 6e 7d 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 \n}\n","/**\n * 00017700: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00017710: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00017720: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00017730: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00017740: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 ----------\n * B 00017750: 6f 6f 74 73 74 72 61 70 20 75 74 69 6c 2f 74 65 ootstrap util/te 00017760: 6d 70 6c 61 74 65 2d 66 61 63 74 6f 72 79 2e 6a mplate-factory.j 00017770: 73 5c 6e 20 2a 20 4c 69 63 65 6e 73 65 64 20 75 s\n * Licensed u 00017780: 6e 64 65 72 20 4d 49 54 20 28 68 74 74 70 73 3a nder MIT (https: 00017790: 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 77 62 //github.com/twb 000177a0: 73 2f 62 6f 6f 74 73 74 72 61 70 2f 62 6c 6f 62 s/bootstrap/blob 000177b0: 2f 6d 61 69 6e 2f 4c 49 43 45 4e 53 45 29 5c 6e /main/LICENSE)\n 000177c0: 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d * ------------- 000177d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000177e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000177f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00017800: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 -------------\n 00017810: 2a 2f 5c 6e 5c 6e 69 6d 70 6f 72 74 20 53 65 6c */\n\nimport Sel 00017820: 65 63 74 6f 72 45 6e 67 69 6e 65 20 66 72 6f 6d ectorEngine from 00017830: 20 27 2e 2e 2f 64 6f 6d 2f 73 65 6c 65 63 74 6f '../dom/selecto 00017840: 72 2d 65 6e 67 69 6e 65 2e 6a 73 27 5c 6e 69 6d r-engine.js'\nim 00017850: 70 6f 72 74 20 43 6f 6e 66 69 67 20 66 72 6f 6d port Config from 00017860: 20 27 2e 2f 63 6f 6e 66 69 67 2e 6a 73 27 5c 6e './config.js'\n 00017870: 69 6d 70 6f 72 74 20 7b 20 44 65 66 61 75 6c 74 import { Default 00017880: 41 6c 6c 6f 77 6c 69 73 74 2c 20 73 61 6e 69 74 Allowlist, sanit 00017890: 69 7a 65 48 74 6d 6c 20 7d 20 66 72 6f 6d 20 27 izeHtml } from ' 000178a0: 2e 2f 73 61 6e 69 74 69 7a 65 72 2e 6a 73 27 5c ./sanitizer.js'\ 000178b0: 6e 69 6d 70 6f 72 74 20 7b 20 65 78 65 63 75 74 nimport { execut 000178c0: 65 2c 20 67 65 74 45 6c 65 6d 65 6e 74 2c 20 69 e, getElement, i 000178d0: 73 45 6c 65 6d 65 6e 74 20 7d 20 66 72 6f 6d 20 sElement } from 000178e0: 27 2e 2f 69 6e 64 65 78 2e 6a 73 27 5c 6e 5c 6e './index.js'\n\n 000178f0: 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e 73 74 61 6e 74 /**\n * Constant 00017900: 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 20 s\n */\n\nconst 00017910: 4e 41 4d 45 20 3d 20 27 54 65 6d 70 6c 61 74 65 NAME = 'Template 00017920: 46 61 63 74 6f 72 79 27 5c 6e 5c 6e 63 6f 6e 73 Factory'\n\ncons 00017930: 74 20 44 65 66 61 75 6c 74 20 3d 20 7b 5c 6e 20 t Default = {\n 00017940: 20 61 6c 6c 6f 77 4c 69 73 74 3a 20 44 65 66 61 allowList: Defa 00017950: 75 6c 74 41 6c 6c 6f 77 6c 69 73 74 2c 5c 6e 20 ultAllowlist,\n 00017960: 20 63 6f 6e 74 65 6e 74 3a 20 7b 7d 2c 20 2f 2f content: {}, // 00017970: 20 7b 20 73 65 6c 65 63 74 6f 72 20 3a 20 74 65 { selector : te 00017980: 78 74 20 2c 20 20 73 65 6c 65 63 74 6f 72 32 20 xt , selector2 00017990: 3a 20 74 65 78 74 32 20 2c 20 7d 5c 6e 20 20 65 : text2 , }\n e 000179a0: 78 74 72 61 43 6c 61 73 73 3a 20 27 27 2c 5c 6e xtraClass: '',\n 000179b0: 20 20 68 74 6d 6c 3a 20 66 61 6c 73 65 2c 5c 6e html: false,\n 000179c0: 20 20 73 61 6e 69 74 69 7a 65 3a 20 74 72 75 65 sanitize: true 000179d0: 2c 5c 6e 20 20 73 61 6e 69 74 69 7a 65 46 6e 3a ,\n sanitizeFn: 000179e0: 20 6e 75 6c 6c 2c 5c 6e 20 20 74 65 6d 70 6c 61 null,\n templa 000179f0: 74 65 3a 20 27 3c 64 69 76 3e 3c 2f 64 69 76 3e te: '<div></div> 00017a00: 27 5c 6e 7d 5c 6e 5c 6e 63 6f 6e 73 74 20 44 65 '\n}\n\nconst De 00017a10: 66 61 75 6c 74 54 79 70 65 20 3d 20 7b 5c 6e 20 faultType = {\n 00017a20: 20 61 6c 6c 6f 77 4c 69 73 74 3a 20 27 6f 62 6a allowList: 'obj 00017a30: 65 63 74 27 2c 5c 6e 20 20 63 6f 6e 74 65 6e 74 ect',\n content 00017a40: 3a 20 27 6f 62 6a 65 63 74 27 2c 5c 6e 20 20 65 : 'object',\n e 00017a50: 78 74 72 61 43 6c 61 73 73 3a 20 27 28 73 74 72 xtraClass: '(str 00017a60: 69 6e 67 7c 66 75 6e 63 74 69 6f 6e 29 27 2c 5c ing|function)',\ 00017a70: 6e 20 20 68 74 6d 6c 3a 20 27 62 6f 6f 6c 65 61 n html: 'boolea 00017a80: 6e 27 2c 5c 6e 20 20 73 61 6e 69 74 69 7a 65 3a n',\n sanitize: 00017a90: 20 27 62 6f 6f 6c 65 61 6e 27 2c 5c 6e 20 20 73 'boolean',\n s 00017aa0: 61 6e 69 74 69 7a 65 46 6e 3a 20 27 28 6e 75 6c anitizeFn: '(nul 00017ab0: 6c 7c 66 75 6e 63 74 69 6f 6e 29 27 2c 5c 6e 20 l|function)',\n 00017ac0: 20 74 65 6d 70 6c 61 74 65 3a 20 27 73 74 72 69 template: 'stri 00017ad0: 6e 67 27 5c 6e 7d 5c 6e 5c 6e 63 6f 6e 73 74 20 ng'\n}\n\nconst 00017ae0: 44 65 66 61 75 6c 74 43 6f 6e 74 65 6e 74 54 79 DefaultContentTy 00017af0: 70 65 20 3d 20 7b 5c 6e 20 20 65 6e 74 72 79 3a pe = {\n entry: 00017b00: 20 27 28 73 74 72 69 6e 67 7c 65 6c 65 6d 65 6e '(string|elemen 00017b10: 74 7c 66 75 6e 63 74 69 6f 6e 7c 6e 75 6c 6c 29 t|function|null) 00017b20: 27 2c 5c 6e 20 20 73 65 6c 65 63 74 6f 72 3a 20 ',\n selector: 00017b30: 27 28 73 74 72 69 6e 67 7c 65 6c 65 6d 65 6e 74 '(string|element 00017b40: 29 27 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a )'\n}\n\n/**\n * 00017b50: 20 43 6c 61 73 73 20 64 65 66 69 6e 69 74 69 6f Class definitio 00017b60: 6e 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6c 61 73 73 20 n\n */\n\nclass 00017b70: 54 65 6d 70 6c 61 74 65 46 61 63 74 6f 72 79 20 TemplateFactory 00017b80: 65 78 74 65 6e 64 73 20 43 6f 6e 66 69 67 20 7b extends Config { 00017b90: 5c 6e 20 20 63 6f 6e 73 74 72 75 63 74 6f 72 28 \n constructor( 00017ba0: 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 73 config) {\n s 00017bb0: 75 70 65 72 28 29 5c 6e 20 20 20 20 74 68 69 73 uper()\n this 00017bc0: 2e 5f 63 6f 6e 66 69 67 20 3d 20 74 68 69 73 2e ._config = this. 00017bd0: 5f 67 65 74 43 6f 6e 66 69 67 28 63 6f 6e 66 69 _getConfig(confi 00017be0: 67 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 g)\n }\n\n // 00017bf0: 47 65 74 74 65 72 73 5c 6e 20 20 73 74 61 74 69 Getters\n stati 00017c00: 63 20 67 65 74 20 44 65 66 61 75 6c 74 28 29 20 c get Default() 00017c10: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 44 65 {\n return De 00017c20: 66 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 fault\n }\n\n 00017c30: 73 74 61 74 69 63 20 67 65 74 20 44 65 66 61 75 static get Defau 00017c40: 6c 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 20 20 ltType() {\n 00017c50: 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 54 79 return DefaultTy 00017c60: 70 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 74 61 pe\n }\n\n sta 00017c70: 74 69 63 20 67 65 74 20 4e 41 4d 45 28 29 20 7b tic get NAME() { 00017c80: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 4e 41 4d \n return NAM 00017c90: 45 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 E\n }\n\n // P 00017ca0: 75 62 6c 69 63 5c 6e 20 20 67 65 74 43 6f 6e 74 ublic\n getCont 00017cb0: 65 6e 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 ent() {\n ret 00017cc0: 75 72 6e 20 4f 62 6a 65 63 74 2e 76 61 6c 75 65 urn Object.value 00017cd0: 73 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 63 s(this._config.c 00017ce0: 6f 6e 74 65 6e 74 29 5c 6e 20 20 20 20 20 20 2e ontent)\n . 00017cf0: 6d 61 70 28 63 6f 6e 66 69 67 20 3d 3e 20 74 68 map(config => th 00017d00: 69 73 2e 5f 72 65 73 6f 6c 76 65 50 6f 73 73 69 is._resolvePossi 00017d10: 62 6c 65 46 75 6e 63 74 69 6f 6e 28 63 6f 6e 66 bleFunction(conf 00017d20: 69 67 29 29 5c 6e 20 20 20 20 20 20 2e 66 69 6c ig))\n .fil 00017d30: 74 65 72 28 42 6f 6f 6c 65 61 6e 29 5c 6e 20 20 ter(Boolean)\n 00017d40: 7d 5c 6e 5c 6e 20 20 68 61 73 43 6f 6e 74 65 6e }\n\n hasConten 00017d50: 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 t() {\n retur 00017d60: 6e 20 74 68 69 73 2e 67 65 74 43 6f 6e 74 65 6e n this.getConten 00017d70: 74 28 29 2e 6c 65 6e 67 74 68 20 3e 20 30 5c 6e t().length > 0\n 00017d80: 20 20 7d 5c 6e 5c 6e 20 20 63 68 61 6e 67 65 43 }\n\n changeC 00017d90: 6f 6e 74 65 6e 74 28 63 6f 6e 74 65 6e 74 29 20 ontent(content) 00017da0: 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f 63 68 65 {\n this._che 00017db0: 63 6b 43 6f 6e 74 65 6e 74 28 63 6f 6e 74 65 6e ckContent(conten 00017dc0: 74 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 63 6f t)\n this._co 00017dd0: 6e 66 69 67 2e 63 6f 6e 74 65 6e 74 20 3d 20 7b nfig.content = { 00017de0: 20 2e 2e 2e 74 68 69 73 2e 5f 63 6f 6e 66 69 67 ...this._config 00017df0: 2e 63 6f 6e 74 65 6e 74 2c 20 2e 2e 2e 63 6f 6e .content, ...con 00017e00: 74 65 6e 74 20 7d 5c 6e 20 20 20 20 72 65 74 75 tent }\n retu 00017e10: 72 6e 20 74 68 69 73 5c 6e 20 20 7d 5c 6e 5c 6e rn this\n }\n\n 00017e20: 20 20 74 6f 48 74 6d 6c 28 29 20 7b 5c 6e 20 20 toHtml() {\n 00017e30: 20 20 63 6f 6e 73 74 20 74 65 6d 70 6c 61 74 65 const template 00017e40: 57 72 61 70 70 65 72 20 3d 20 64 6f 63 75 6d 65 Wrapper = docume 00017e50: 6e 74 2e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 nt.createElement 00017e60: 28 27 64 69 76 27 29 5c 6e 20 20 20 20 74 65 6d ('div')\n tem 00017e70: 70 6c 61 74 65 57 72 61 70 70 65 72 2e 69 6e 6e plateWrapper.inn 00017e80: 65 72 48 54 4d 4c 20 3d 20 74 68 69 73 2e 5f 6d erHTML = this._m 00017e90: 61 79 62 65 53 61 6e 69 74 69 7a 65 28 74 68 69 aybeSanitize(thi 00017ea0: 73 2e 5f 63 6f 6e 66 69 67 2e 74 65 6d 70 6c 61 s._config.templa 00017eb0: 74 65 29 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 te)\n\n for ( 00017ec0: 63 6f 6e 73 74 20 5b 73 65 6c 65 63 74 6f 72 2c const [selector, 00017ed0: 20 74 65 78 74 5d 20 6f 66 20 4f 62 6a 65 63 74 text] of Object 00017ee0: 2e 65 6e 74 72 69 65 73 28 74 68 69 73 2e 5f 63 .entries(this._c 00017ef0: 6f 6e 66 69 67 2e 63 6f 6e 74 65 6e 74 29 29 20 onfig.content)) 00017f00: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 73 {\n this._s 00017f10: 65 74 43 6f 6e 74 65 6e 74 28 74 65 6d 70 6c 61 etContent(templa 00017f20: 74 65 57 72 61 70 70 65 72 2c 20 74 65 78 74 2c teWrapper, text, 00017f30: 20 73 65 6c 65 63 74 6f 72 29 5c 6e 20 20 20 20 selector)\n 00017f40: 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 74 }\n\n const t 00017f50: 65 6d 70 6c 61 74 65 20 3d 20 74 65 6d 70 6c 61 emplate = templa 00017f60: 74 65 57 72 61 70 70 65 72 2e 63 68 69 6c 64 72 teWrapper.childr 00017f70: 65 6e 5b 30 5d 5c 6e 20 20 20 20 63 6f 6e 73 74 en[0]\n const 00017f80: 20 65 78 74 72 61 43 6c 61 73 73 20 3d 20 74 68 extraClass = th 00017f90: 69 73 2e 5f 72 65 73 6f 6c 76 65 50 6f 73 73 69 is._resolvePossi 00017fa0: 62 6c 65 46 75 6e 63 74 69 6f 6e 28 74 68 69 73 bleFunction(this 00017fb0: 2e 5f 63 6f 6e 66 69 67 2e 65 78 74 72 61 43 6c ._config.extraCl 00017fc0: 61 73 73 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 ass)\n\n if ( 00017fd0: 65 78 74 72 61 43 6c 61 73 73 29 20 7b 5c 6e 20 extraClass) {\n 00017fe0: 20 20 20 20 20 74 65 6d 70 6c 61 74 65 2e 63 6c template.cl 00017ff0: 61 73 73 4c 69 73 74 2e 61 64 64 28 2e 2e 2e 65 assList.add(...e 00018000: 78 74 72 61 43 6c 61 73 73 2e 73 70 6c 69 74 28 xtraClass.split( 00018010: 27 20 27 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e ' '))\n }\n\n 00018020: 20 20 20 20 72 65 74 75 72 6e 20 74 65 6d 70 6c return templ 00018030: 61 74 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f ate\n }\n\n // 00018040: 20 50 72 69 76 61 74 65 5c 6e 20 20 5f 74 79 70 Private\n _typ 00018050: 65 43 68 65 63 6b 43 6f 6e 66 69 67 28 63 6f 6e eCheckConfig(con 00018060: 66 69 67 29 20 7b 5c 6e 20 20 20 20 73 75 70 65 fig) {\n supe 00018070: 72 2e 5f 74 79 70 65 43 68 65 63 6b 43 6f 6e 66 r._typeCheckConf 00018080: 69 67 28 63 6f 6e 66 69 67 29 5c 6e 20 20 20 20 ig(config)\n 00018090: 74 68 69 73 2e 5f 63 68 65 63 6b 43 6f 6e 74 65 this._checkConte 000180a0: 6e 74 28 63 6f 6e 66 69 67 2e 63 6f 6e 74 65 6e nt(config.conten 000180b0: 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 68 t)\n }\n\n _ch 000180c0: 65 63 6b 43 6f 6e 74 65 6e 74 28 61 72 67 29 20 eckContent(arg) 000180d0: 7b 5c 6e 20 20 20 20 66 6f 72 20 28 63 6f 6e 73 {\n for (cons 000180e0: 74 20 5b 73 65 6c 65 63 74 6f 72 2c 20 63 6f 6e t [selector, con 000180f0: 74 65 6e 74 5d 20 6f 66 20 4f 62 6a 65 63 74 2e tent] of Object. 00018100: 65 6e 74 72 69 65 73 28 61 72 67 29 29 20 7b 5c entries(arg)) {\ 00018110: 6e 20 20 20 20 20 20 73 75 70 65 72 2e 5f 74 79 n super._ty 00018120: 70 65 43 68 65 63 6b 43 6f 6e 66 69 67 28 7b 20 peCheckConfig({ 00018130: 73 65 6c 65 63 74 6f 72 2c 20 65 6e 74 72 79 3a selector, entry: 00018140: 20 63 6f 6e 74 65 6e 74 20 7d 2c 20 44 65 66 61 content }, Defa 00018150: 75 6c 74 43 6f 6e 74 65 6e 74 54 79 70 65 29 5c ultContentType)\ 00018160: 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 n }\n }\n\n 00018170: 20 5f 73 65 74 43 6f 6e 74 65 6e 74 28 74 65 6d _setContent(tem 00018180: 70 6c 61 74 65 2c 20 63 6f 6e 74 65 6e 74 2c 20 plate, content, 00018190: 73 65 6c 65 63 74 6f 72 29 20 7b 5c 6e 20 20 20 selector) {\n 000181a0: 20 63 6f 6e 73 74 20 74 65 6d 70 6c 61 74 65 45 const templateE 000181b0: 6c 65 6d 65 6e 74 20 3d 20 53 65 6c 65 63 74 6f lement = Selecto 000181c0: 72 45 6e 67 69 6e 65 2e 66 69 6e 64 4f 6e 65 28 rEngine.findOne( 000181d0: 73 65 6c 65 63 74 6f 72 2c 20 74 65 6d 70 6c 61 selector, templa 000181e0: 74 65 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 te)\n\n if (! 000181f0: 74 65 6d 70 6c 61 74 65 45 6c 65 6d 65 6e 74 29 templateElement) 00018200: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 00018210: 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 \n }\n\n c 00018220: 6f 6e 74 65 6e 74 20 3d 20 74 68 69 73 2e 5f 72 ontent = this._r 00018230: 65 73 6f 6c 76 65 50 6f 73 73 69 62 6c 65 46 75 esolvePossibleFu 00018240: 6e 63 74 69 6f 6e 28 63 6f 6e 74 65 6e 74 29 5c nction(content)\ 00018250: 6e 5c 6e 20 20 20 20 69 66 20 28 21 63 6f 6e 74 n\n if (!cont 00018260: 65 6e 74 29 20 7b 5c 6e 20 20 20 20 20 20 74 65 ent) {\n te 00018270: 6d 70 6c 61 74 65 45 6c 65 6d 65 6e 74 2e 72 65 mplateElement.re 00018280: 6d 6f 76 65 28 29 5c 6e 20 20 20 20 20 20 72 65 move()\n re 00018290: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 000182a0: 20 20 20 69 66 20 28 69 73 45 6c 65 6d 65 6e 74 if (isElement 000182b0: 28 63 6f 6e 74 65 6e 74 29 29 20 7b 5c 6e 20 20 (content)) {\n 000182c0: 20 20 20 20 74 68 69 73 2e 5f 70 75 74 45 6c 65 this._putEle 000182d0: 6d 65 6e 74 49 6e 54 65 6d 70 6c 61 74 65 28 67 mentInTemplate(g 000182e0: 65 74 45 6c 65 6d 65 6e 74 28 63 6f 6e 74 65 6e etElement(conten 000182f0: 74 29 2c 20 74 65 6d 70 6c 61 74 65 45 6c 65 6d t), templateElem 00018300: 65 6e 74 29 5c 6e 20 20 20 20 20 20 72 65 74 75 ent)\n retu 00018310: 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 rn\n }\n\n 00018320: 20 69 66 20 28 74 68 69 73 2e 5f 63 6f 6e 66 69 if (this._confi 00018330: 67 2e 68 74 6d 6c 29 20 7b 5c 6e 20 20 20 20 20 g.html) {\n 00018340: 20 74 65 6d 70 6c 61 74 65 45 6c 65 6d 65 6e 74 templateElement 00018350: 2e 69 6e 6e 65 72 48 54 4d 4c 20 3d 20 74 68 69 .innerHTML = thi 00018360: 73 2e 5f 6d 61 79 62 65 53 61 6e 69 74 69 7a 65 s._maybeSanitize 00018370: 28 63 6f 6e 74 65 6e 74 29 5c 6e 20 20 20 20 20 (content)\n 00018380: 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e return\n }\n 00018390: 5c 6e 20 20 20 20 74 65 6d 70 6c 61 74 65 45 6c \n templateEl 000183a0: 65 6d 65 6e 74 2e 74 65 78 74 43 6f 6e 74 65 6e ement.textConten 000183b0: 74 20 3d 20 63 6f 6e 74 65 6e 74 5c 6e 20 20 7d t = content\n } 000183c0: 5c 6e 5c 6e 20 20 5f 6d 61 79 62 65 53 61 6e 69 \n\n _maybeSani 000183d0: 74 69 7a 65 28 61 72 67 29 20 7b 5c 6e 20 20 20 tize(arg) {\n 000183e0: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 63 6f return this._co 000183f0: 6e 66 69 67 2e 73 61 6e 69 74 69 7a 65 20 3f 20 nfig.sanitize ? 00018400: 73 61 6e 69 74 69 7a 65 48 74 6d 6c 28 61 72 67 sanitizeHtml(arg 00018410: 2c 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 61 , this._config.a 00018420: 6c 6c 6f 77 4c 69 73 74 2c 20 74 68 69 73 2e 5f llowList, this._ 00018430: 63 6f 6e 66 69 67 2e 73 61 6e 69 74 69 7a 65 46 config.sanitizeF 00018440: 6e 29 20 3a 20 61 72 67 5c 6e 20 20 7d 5c 6e 5c n) : arg\n }\n\ 00018450: 6e 20 20 5f 72 65 73 6f 6c 76 65 50 6f 73 73 69 n _resolvePossi 00018460: 62 6c 65 46 75 6e 63 74 69 6f 6e 28 61 72 67 29 bleFunction(arg) 00018470: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 65 {\n return e 00018480: 78 65 63 75 74 65 28 61 72 67 2c 20 5b 74 68 69 xecute(arg, [thi 00018490: 73 5d 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 70 s])\n }\n\n _p 000184a0: 75 74 45 6c 65 6d 65 6e 74 49 6e 54 65 6d 70 6c utElementInTempl 000184b0: 61 74 65 28 65 6c 65 6d 65 6e 74 2c 20 74 65 6d ate(element, tem 000184c0: 70 6c 61 74 65 45 6c 65 6d 65 6e 74 29 20 7b 5c plateElement) {\ 000184d0: 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f 63 n if (this._c 000184e0: 6f 6e 66 69 67 2e 68 74 6d 6c 29 20 7b 5c 6e 20 onfig.html) {\n 000184f0: 20 20 20 20 20 74 65 6d 70 6c 61 74 65 45 6c 65 templateEle 00018500: 6d 65 6e 74 2e 69 6e 6e 65 72 48 54 4d 4c 20 3d ment.innerHTML = 00018510: 20 27 27 5c 6e 20 20 20 20 20 20 74 65 6d 70 6c ''\n templ 00018520: 61 74 65 45 6c 65 6d 65 6e 74 2e 61 70 70 65 6e ateElement.appen 00018530: 64 28 65 6c 65 6d 65 6e 74 29 5c 6e 20 20 20 20 d(element)\n 00018540: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c return\n }\ 00018550: 6e 5c 6e 20 20 20 20 74 65 6d 70 6c 61 74 65 45 n\n templateE 00018560: 6c 65 6d 65 6e 74 2e 74 65 78 74 43 6f 6e 74 65 lement.textConte 00018570: 6e 74 20 3d 20 65 6c 65 6d 65 6e 74 2e 74 65 78 nt = element.tex 00018580: 74 43 6f 6e 74 65 6e 74 5c 6e 20 20 7d 5c 6e 7d tContent\n }\n} 00018590: 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 \n\nexport defau 000185a0: 6c 74 20 54 65 6d 70 6c 61 74 65 46 61 63 74 6f lt TemplateFacto 000185b0: 72 79 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d ry\n","/**\n * - 000185c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000185d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000185e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000185f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00018600: 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f ---------\n * Bo 00018610: 6f 74 73 74 72 61 70 20 74 6f 6f 6c 74 69 70 2e otstrap tooltip. 00018620: 6a 73 5c 6e 20 2a 20 4c 69 63 65 6e 73 65 64 20 js\n * Licensed 00018630: 75 6e 64 65 72 20 4d 49 54 20 28 68 74 74 70 73 under MIT (https 00018640: 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 77 ://github.com/tw 00018650: 62 73 2f 62 6f 6f 74 73 74 72 61 70 2f 62 6c 6f bs/bootstrap/blo 00018660: 62 2f 6d 61 69 6e 2f 4c 49 43 45 4e 53 45 29 5c b/main/LICENSE)\ 00018670: 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d n * ------------ 00018680: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00018690: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000186a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000186b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e --------------\n 000186c0: 20 2a 2f 5c 6e 5c 6e 69 6d 70 6f 72 74 20 2a 20 */\n\nimport * 000186d0: 61 73 20 50 6f 70 70 65 72 20 66 72 6f 6d 20 27 as Popper from ' 000186e0: 40 70 6f 70 70 65 72 6a 73 2f 63 6f 72 65 27 5c @popperjs/core'\ 000186f0: 6e 69 6d 70 6f 72 74 20 42 61 73 65 43 6f 6d 70 nimport BaseComp 00018700: 6f 6e 65 6e 74 20 66 72 6f 6d 20 27 2e 2f 62 61 onent from './ba 00018710: 73 65 2d 63 6f 6d 70 6f 6e 65 6e 74 2e 6a 73 27 se-component.js' 00018720: 5c 6e 69 6d 70 6f 72 74 20 45 76 65 6e 74 48 61 \nimport EventHa 00018730: 6e 64 6c 65 72 20 66 72 6f 6d 20 27 2e 2f 64 6f ndler from './do 00018740: 6d 2f 65 76 65 6e 74 2d 68 61 6e 64 6c 65 72 2e m/event-handler. 00018750: 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 4d 61 6e 69 js'\nimport Mani 00018760: 70 75 6c 61 74 6f 72 20 66 72 6f 6d 20 27 2e 2f pulator from './ 00018770: 64 6f 6d 2f 6d 61 6e 69 70 75 6c 61 74 6f 72 2e dom/manipulator. 00018780: 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 7b 5c 6e 20 js'\nimport {\n 00018790: 20 64 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 defineJQueryPlu 000187a0: 67 69 6e 2c 20 65 78 65 63 75 74 65 2c 20 66 69 gin, execute, fi 000187b0: 6e 64 53 68 61 64 6f 77 52 6f 6f 74 2c 20 67 65 ndShadowRoot, ge 000187c0: 74 45 6c 65 6d 65 6e 74 2c 20 67 65 74 55 49 44 tElement, getUID 000187d0: 2c 20 69 73 52 54 4c 2c 20 6e 6f 6f 70 5c 6e 7d , isRTL, noop\n} 000187e0: 20 66 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 69 6e from './util/in 000187f0: 64 65 78 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 dex.js'\nimport 00018800: 7b 20 44 65 66 61 75 6c 74 41 6c 6c 6f 77 6c 69 { DefaultAllowli 00018810: 73 74 20 7d 20 66 72 6f 6d 20 27 2e 2f 75 74 69 st } from './uti 00018820: 6c 2f 73 61 6e 69 74 69 7a 65 72 2e 6a 73 27 5c l/sanitizer.js'\ 00018830: 6e 69 6d 70 6f 72 74 20 54 65 6d 70 6c 61 74 65 nimport Template 00018840: 46 61 63 74 6f 72 79 20 66 72 6f 6d 20 27 2e 2f Factory from './ 00018850: 75 74 69 6c 2f 74 65 6d 70 6c 61 74 65 2d 66 61 util/template-fa 00018860: 63 74 6f 72 79 2e 6a 73 27 5c 6e 5c 6e 2f 2a 2a ctory.js'\n\n/** 00018870: 5c 6e 20 2a 20 43 6f 6e 73 74 61 6e 74 73 5c 6e \n * Constants\n 00018880: 20 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 20 4e 41 4d */\n\nconst NAM 00018890: 45 20 3d 20 27 74 6f 6f 6c 74 69 70 27 5c 6e 63 E = 'tooltip'\nc 000188a0: 6f 6e 73 74 20 44 49 53 41 4c 4c 4f 57 45 44 5f onst DISALLOWED_ 000188b0: 41 54 54 52 49 42 55 54 45 53 20 3d 20 6e 65 77 ATTRIBUTES = new 000188c0: 20 53 65 74 28 5b 27 73 61 6e 69 74 69 7a 65 27 Set(['sanitize' 000188d0: 2c 20 27 61 6c 6c 6f 77 4c 69 73 74 27 2c 20 27 , 'allowList', ' 000188e0: 73 61 6e 69 74 69 7a 65 46 6e 27 5d 29 5c 6e 5c sanitizeFn'])\n\ 000188f0: 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d nconst CLASS_NAM 00018900: 45 5f 46 41 44 45 20 3d 20 27 66 61 64 65 27 5c E_FADE = 'fade'\ 00018910: 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d nconst CLASS_NAM 00018920: 45 5f 4d 4f 44 41 4c 20 3d 20 27 6d 6f 64 61 6c E_MODAL = 'modal 00018930: 27 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e '\nconst CLASS_N 00018940: 41 4d 45 5f 53 48 4f 57 20 3d 20 27 73 68 6f 77 AME_SHOW = 'show 00018950: 27 5c 6e 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 '\n\nconst SELEC 00018960: 54 4f 52 5f 54 4f 4f 4c 54 49 50 5f 49 4e 4e 45 TOR_TOOLTIP_INNE 00018970: 52 20 3d 20 27 2e 74 6f 6f 6c 74 69 70 2d 69 6e R = '.tooltip-in 00018980: 6e 65 72 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 ner'\nconst SELE 00018990: 43 54 4f 52 5f 4d 4f 44 41 4c 20 3d 20 60 2e 24 CTOR_MODAL = `.$ 000189a0: 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 4d 4f 44 41 {CLASS_NAME_MODA 000189b0: 4c 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 20 45 56 45 L}`\n\nconst EVE 000189c0: 4e 54 5f 4d 4f 44 41 4c 5f 48 49 44 45 20 3d 20 NT_MODAL_HIDE = 000189d0: 27 68 69 64 65 2e 62 73 2e 6d 6f 64 61 6c 27 5c 'hide.bs.modal'\ 000189e0: 6e 5c 6e 63 6f 6e 73 74 20 54 52 49 47 47 45 52 n\nconst TRIGGER 000189f0: 5f 48 4f 56 45 52 20 3d 20 27 68 6f 76 65 72 27 _HOVER = 'hover' 00018a00: 5c 6e 63 6f 6e 73 74 20 54 52 49 47 47 45 52 5f \nconst TRIGGER_ 00018a10: 46 4f 43 55 53 20 3d 20 27 66 6f 63 75 73 27 5c FOCUS = 'focus'\ 00018a20: 6e 63 6f 6e 73 74 20 54 52 49 47 47 45 52 5f 43 nconst TRIGGER_C 00018a30: 4c 49 43 4b 20 3d 20 27 63 6c 69 63 6b 27 5c 6e LICK = 'click'\n 00018a40: 63 6f 6e 73 74 20 54 52 49 47 47 45 52 5f 4d 41 const TRIGGER_MA 00018a50: 4e 55 41 4c 20 3d 20 27 6d 61 6e 75 61 6c 27 5c NUAL = 'manual'\ 00018a60: 6e 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 48 n\nconst EVENT_H 00018a70: 49 44 45 20 3d 20 27 68 69 64 65 27 5c 6e 63 6f IDE = 'hide'\nco 00018a80: 6e 73 74 20 45 56 45 4e 54 5f 48 49 44 44 45 4e nst EVENT_HIDDEN 00018a90: 20 3d 20 27 68 69 64 64 65 6e 27 5c 6e 63 6f 6e = 'hidden'\ncon 00018aa0: 73 74 20 45 56 45 4e 54 5f 53 48 4f 57 20 3d 20 st EVENT_SHOW = 00018ab0: 27 73 68 6f 77 27 5c 6e 63 6f 6e 73 74 20 45 56 'show'\nconst EV 00018ac0: 45 4e 54 5f 53 48 4f 57 4e 20 3d 20 27 73 68 6f ENT_SHOWN = 'sho 00018ad0: 77 6e 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 wn'\nconst EVENT 00018ae0: 5f 49 4e 53 45 52 54 45 44 20 3d 20 27 69 6e 73 _INSERTED = 'ins 00018af0: 65 72 74 65 64 27 5c 6e 63 6f 6e 73 74 20 45 56 erted'\nconst EV 00018b00: 45 4e 54 5f 43 4c 49 43 4b 20 3d 20 27 63 6c 69 ENT_CLICK = 'cli 00018b10: 63 6b 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 ck'\nconst EVENT 00018b20: 5f 46 4f 43 55 53 49 4e 20 3d 20 27 66 6f 63 75 _FOCUSIN = 'focu 00018b30: 73 69 6e 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e sin'\nconst EVEN 00018b40: 54 5f 46 4f 43 55 53 4f 55 54 20 3d 20 27 66 6f T_FOCUSOUT = 'fo 00018b50: 63 75 73 6f 75 74 27 5c 6e 63 6f 6e 73 74 20 45 cusout'\nconst E 00018b60: 56 45 4e 54 5f 4d 4f 55 53 45 45 4e 54 45 52 20 VENT_MOUSEENTER 00018b70: 3d 20 27 6d 6f 75 73 65 65 6e 74 65 72 27 5c 6e = 'mouseenter'\n 00018b80: 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4d 4f 55 53 const EVENT_MOUS 00018b90: 45 4c 45 41 56 45 20 3d 20 27 6d 6f 75 73 65 6c ELEAVE = 'mousel 00018ba0: 65 61 76 65 27 5c 6e 5c 6e 63 6f 6e 73 74 20 41 eave'\n\nconst A 00018bb0: 74 74 61 63 68 6d 65 6e 74 4d 61 70 20 3d 20 7b ttachmentMap = { 00018bc0: 5c 6e 20 20 41 55 54 4f 3a 20 27 61 75 74 6f 27 \n AUTO: 'auto' 00018bd0: 2c 5c 6e 20 20 54 4f 50 3a 20 27 74 6f 70 27 2c ,\n TOP: 'top', 00018be0: 5c 6e 20 20 52 49 47 48 54 3a 20 69 73 52 54 4c \n RIGHT: isRTL 00018bf0: 28 29 20 3f 20 27 6c 65 66 74 27 20 3a 20 27 72 () ? 'left' : 'r 00018c00: 69 67 68 74 27 2c 5c 6e 20 20 42 4f 54 54 4f 4d ight',\n BOTTOM 00018c10: 3a 20 27 62 6f 74 74 6f 6d 27 2c 5c 6e 20 20 4c : 'bottom',\n L 00018c20: 45 46 54 3a 20 69 73 52 54 4c 28 29 20 3f 20 27 EFT: isRTL() ? ' 00018c30: 72 69 67 68 74 27 20 3a 20 27 6c 65 66 74 27 5c right' : 'left'\ 00018c40: 6e 7d 5c 6e 5c 6e 63 6f 6e 73 74 20 44 65 66 61 n}\n\nconst Defa 00018c50: 75 6c 74 20 3d 20 7b 5c 6e 20 20 61 6c 6c 6f 77 ult = {\n allow 00018c60: 4c 69 73 74 3a 20 44 65 66 61 75 6c 74 41 6c 6c List: DefaultAll 00018c70: 6f 77 6c 69 73 74 2c 5c 6e 20 20 61 6e 69 6d 61 owlist,\n anima 00018c80: 74 69 6f 6e 3a 20 74 72 75 65 2c 5c 6e 20 20 62 tion: true,\n b 00018c90: 6f 75 6e 64 61 72 79 3a 20 27 63 6c 69 70 70 69 oundary: 'clippi 00018ca0: 6e 67 50 61 72 65 6e 74 73 27 2c 5c 6e 20 20 63 ngParents',\n c 00018cb0: 6f 6e 74 61 69 6e 65 72 3a 20 66 61 6c 73 65 2c ontainer: false, 00018cc0: 5c 6e 20 20 63 75 73 74 6f 6d 43 6c 61 73 73 3a \n customClass: 00018cd0: 20 27 27 2c 5c 6e 20 20 64 65 6c 61 79 3a 20 30 '',\n delay: 0 00018ce0: 2c 5c 6e 20 20 66 61 6c 6c 62 61 63 6b 50 6c 61 ,\n fallbackPla 00018cf0: 63 65 6d 65 6e 74 73 3a 20 5b 27 74 6f 70 27 2c cements: ['top', 00018d00: 20 27 72 69 67 68 74 27 2c 20 27 62 6f 74 74 6f 'right', 'botto 00018d10: 6d 27 2c 20 27 6c 65 66 74 27 5d 2c 5c 6e 20 20 m', 'left'],\n 00018d20: 68 74 6d 6c 3a 20 66 61 6c 73 65 2c 5c 6e 20 20 html: false,\n 00018d30: 6f 66 66 73 65 74 3a 20 5b 30 2c 20 36 5d 2c 5c offset: [0, 6],\ 00018d40: 6e 20 20 70 6c 61 63 65 6d 65 6e 74 3a 20 27 74 n placement: 't 00018d50: 6f 70 27 2c 5c 6e 20 20 70 6f 70 70 65 72 43 6f op',\n popperCo 00018d60: 6e 66 69 67 3a 20 6e 75 6c 6c 2c 5c 6e 20 20 73 nfig: null,\n s 00018d70: 61 6e 69 74 69 7a 65 3a 20 74 72 75 65 2c 5c 6e anitize: true,\n 00018d80: 20 20 73 61 6e 69 74 69 7a 65 46 6e 3a 20 6e 75 sanitizeFn: nu 00018d90: 6c 6c 2c 5c 6e 20 20 73 65 6c 65 63 74 6f 72 3a ll,\n selector: 00018da0: 20 66 61 6c 73 65 2c 5c 6e 20 20 74 65 6d 70 6c false,\n templ 00018db0: 61 74 65 3a 20 27 3c 64 69 76 20 63 6c 61 73 73 ate: '<div class 00018dc0: 3d 5c 22 74 6f 6f 6c 74 69 70 5c 22 20 72 6f 6c =\"tooltip\" rol 00018dd0: 65 3d 5c 22 74 6f 6f 6c 74 69 70 5c 22 3e 27 20 e=\"tooltip\">' 00018de0: 2b 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 27 +\n ' 00018df0: 3c 64 69 76 20 63 6c 61 73 73 3d 5c 22 74 6f 6f <div class=\"too 00018e00: 6c 74 69 70 2d 61 72 72 6f 77 5c 22 3e 3c 2f 64 ltip-arrow\"></d 00018e10: 69 76 3e 27 20 2b 5c 6e 20 20 20 20 20 20 20 20 iv>' +\n 00018e20: 20 20 20 20 27 3c 64 69 76 20 63 6c 61 73 73 3d '<div class= 00018e30: 5c 22 74 6f 6f 6c 74 69 70 2d 69 6e 6e 65 72 5c \"tooltip-inner\ 00018e40: 22 3e 3c 2f 64 69 76 3e 27 20 2b 5c 6e 20 20 20 "></div>' +\n 00018e50: 20 20 20 20 20 20 20 20 20 27 3c 2f 64 69 76 3e '</div> 00018e60: 27 2c 5c 6e 20 20 74 69 74 6c 65 3a 20 27 27 2c ',\n title: '', 00018e70: 5c 6e 20 20 74 72 69 67 67 65 72 3a 20 27 68 6f \n trigger: 'ho 00018e80: 76 65 72 20 66 6f 63 75 73 27 5c 6e 7d 5c 6e 5c ver focus'\n}\n\ 00018e90: 6e 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 54 79 nconst DefaultTy 00018ea0: 70 65 20 3d 20 7b 5c 6e 20 20 61 6c 6c 6f 77 4c pe = {\n allowL 00018eb0: 69 73 74 3a 20 27 6f 62 6a 65 63 74 27 2c 5c 6e ist: 'object',\n 00018ec0: 20 20 61 6e 69 6d 61 74 69 6f 6e 3a 20 27 62 6f animation: 'bo 00018ed0: 6f 6c 65 61 6e 27 2c 5c 6e 20 20 62 6f 75 6e 64 olean',\n bound 00018ee0: 61 72 79 3a 20 27 28 73 74 72 69 6e 67 7c 65 6c ary: '(string|el 00018ef0: 65 6d 65 6e 74 29 27 2c 5c 6e 20 20 63 6f 6e 74 ement)',\n cont 00018f00: 61 69 6e 65 72 3a 20 27 28 73 74 72 69 6e 67 7c ainer: '(string| 00018f10: 65 6c 65 6d 65 6e 74 7c 62 6f 6f 6c 65 61 6e 29 element|boolean) 00018f20: 27 2c 5c 6e 20 20 63 75 73 74 6f 6d 43 6c 61 73 ',\n customClas 00018f30: 73 3a 20 27 28 73 74 72 69 6e 67 7c 66 75 6e 63 s: '(string|func 00018f40: 74 69 6f 6e 29 27 2c 5c 6e 20 20 64 65 6c 61 79 tion)',\n delay 00018f50: 3a 20 27 28 6e 75 6d 62 65 72 7c 6f 62 6a 65 63 : '(number|objec 00018f60: 74 29 27 2c 5c 6e 20 20 66 61 6c 6c 62 61 63 6b t)',\n fallback 00018f70: 50 6c 61 63 65 6d 65 6e 74 73 3a 20 27 61 72 72 Placements: 'arr 00018f80: 61 79 27 2c 5c 6e 20 20 68 74 6d 6c 3a 20 27 62 ay',\n html: 'b 00018f90: 6f 6f 6c 65 61 6e 27 2c 5c 6e 20 20 6f 66 66 73 oolean',\n offs 00018fa0: 65 74 3a 20 27 28 61 72 72 61 79 7c 73 74 72 69 et: '(array|stri 00018fb0: 6e 67 7c 66 75 6e 63 74 69 6f 6e 29 27 2c 5c 6e ng|function)',\n 00018fc0: 20 20 70 6c 61 63 65 6d 65 6e 74 3a 20 27 28 73 placement: '(s 00018fd0: 74 72 69 6e 67 7c 66 75 6e 63 74 69 6f 6e 29 27 tring|function)' 00018fe0: 2c 5c 6e 20 20 70 6f 70 70 65 72 43 6f 6e 66 69 ,\n popperConfi 00018ff0: 67 3a 20 27 28 6e 75 6c 6c 7c 6f 62 6a 65 63 74 g: '(null|object 00019000: 7c 66 75 6e 63 74 69 6f 6e 29 27 2c 5c 6e 20 20 |function)',\n 00019010: 73 61 6e 69 74 69 7a 65 3a 20 27 62 6f 6f 6c 65 sanitize: 'boole 00019020: 61 6e 27 2c 5c 6e 20 20 73 61 6e 69 74 69 7a 65 an',\n sanitize 00019030: 46 6e 3a 20 27 28 6e 75 6c 6c 7c 66 75 6e 63 74 Fn: '(null|funct 00019040: 69 6f 6e 29 27 2c 5c 6e 20 20 73 65 6c 65 63 74 ion)',\n select 00019050: 6f 72 3a 20 27 28 73 74 72 69 6e 67 7c 62 6f 6f or: '(string|boo 00019060: 6c 65 61 6e 29 27 2c 5c 6e 20 20 74 65 6d 70 6c lean)',\n templ 00019070: 61 74 65 3a 20 27 73 74 72 69 6e 67 27 2c 5c 6e ate: 'string',\n 00019080: 20 20 74 69 74 6c 65 3a 20 27 28 73 74 72 69 6e title: '(strin 00019090: 67 7c 65 6c 65 6d 65 6e 74 7c 66 75 6e 63 74 69 g|element|functi 000190a0: 6f 6e 29 27 2c 5c 6e 20 20 74 72 69 67 67 65 72 on)',\n trigger 000190b0: 3a 20 27 73 74 72 69 6e 67 27 5c 6e 7d 5c 6e 5c : 'string'\n}\n\ 000190c0: 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 73 20 64 n/**\n * Class d 000190d0: 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e efinition\n */\n 000190e0: 5c 6e 63 6c 61 73 73 20 54 6f 6f 6c 74 69 70 20 \nclass Tooltip 000190f0: 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 70 extends BaseComp 00019100: 6f 6e 65 6e 74 20 7b 5c 6e 20 20 63 6f 6e 73 74 onent {\n const 00019110: 72 75 63 74 6f 72 28 65 6c 65 6d 65 6e 74 2c 20 ructor(element, 00019120: 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 69 config) {\n i 00019130: 66 20 28 74 79 70 65 6f 66 20 50 6f 70 70 65 72 f (typeof Popper 00019140: 20 3d 3d 3d 20 27 75 6e 64 65 66 69 6e 65 64 27 === 'undefined' 00019150: 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 72 6f 77 ) {\n throw 00019160: 20 6e 65 77 20 54 79 70 65 45 72 72 6f 72 28 27 new TypeError(' 00019170: 42 6f 6f 74 73 74 72 61 70 5c 5c 27 73 20 74 6f Bootstrap\\'s to 00019180: 6f 6c 74 69 70 73 20 72 65 71 75 69 72 65 20 50 oltips require P 00019190: 6f 70 70 65 72 20 28 68 74 74 70 73 3a 2f 2f 70 opper (https://p 000191a0: 6f 70 70 65 72 2e 6a 73 2e 6f 72 67 29 27 29 5c opper.js.org)')\ 000191b0: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 73 75 n }\n\n su 000191c0: 70 65 72 28 65 6c 65 6d 65 6e 74 2c 20 63 6f 6e per(element, con 000191d0: 66 69 67 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 50 fig)\n\n // P 000191e0: 72 69 76 61 74 65 5c 6e 20 20 20 20 74 68 69 73 rivate\n this 000191f0: 2e 5f 69 73 45 6e 61 62 6c 65 64 20 3d 20 74 72 ._isEnabled = tr 00019200: 75 65 5c 6e 20 20 20 20 74 68 69 73 2e 5f 74 69 ue\n this._ti 00019210: 6d 65 6f 75 74 20 3d 20 30 5c 6e 20 20 20 20 74 meout = 0\n t 00019220: 68 69 73 2e 5f 69 73 48 6f 76 65 72 65 64 20 3d his._isHovered = 00019230: 20 6e 75 6c 6c 5c 6e 20 20 20 20 74 68 69 73 2e null\n this. 00019240: 5f 61 63 74 69 76 65 54 72 69 67 67 65 72 20 3d _activeTrigger = 00019250: 20 7b 7d 5c 6e 20 20 20 20 74 68 69 73 2e 5f 70 {}\n this._p 00019260: 6f 70 70 65 72 20 3d 20 6e 75 6c 6c 5c 6e 20 20 opper = null\n 00019270: 20 20 74 68 69 73 2e 5f 74 65 6d 70 6c 61 74 65 this._template 00019280: 46 61 63 74 6f 72 79 20 3d 20 6e 75 6c 6c 5c 6e Factory = null\n 00019290: 20 20 20 20 74 68 69 73 2e 5f 6e 65 77 43 6f 6e this._newCon 000192a0: 74 65 6e 74 20 3d 20 6e 75 6c 6c 5c 6e 5c 6e 20 tent = null\n\n 000192b0: 20 20 20 2f 2f 20 50 72 6f 74 65 63 74 65 64 5c // Protected\ 000192c0: 6e 20 20 20 20 74 68 69 73 2e 74 69 70 20 3d 20 n this.tip = 000192d0: 6e 75 6c 6c 5c 6e 5c 6e 20 20 20 20 74 68 69 73 null\n\n this 000192e0: 2e 5f 73 65 74 4c 69 73 74 65 6e 65 72 73 28 29 ._setListeners() 000192f0: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 \n\n if (!thi 00019300: 73 2e 5f 63 6f 6e 66 69 67 2e 73 65 6c 65 63 74 s._config.select 00019310: 6f 72 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 or) {\n thi 00019320: 73 2e 5f 66 69 78 54 69 74 6c 65 28 29 5c 6e 20 s._fixTitle()\n 00019330: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f }\n }\n\n / 00019340: 2f 20 47 65 74 74 65 72 73 5c 6e 20 20 73 74 61 / Getters\n sta 00019350: 74 69 63 20 67 65 74 20 44 65 66 61 75 6c 74 28 tic get Default( 00019360: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 00019370: 44 65 66 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e Default\n }\n\n 00019380: 20 20 73 74 61 74 69 63 20 67 65 74 20 44 65 66 static get Def 00019390: 61 75 6c 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 aultType() {\n 000193a0: 20 20 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 return Default 000193b0: 54 79 70 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 Type\n }\n\n s 000193c0: 74 61 74 69 63 20 67 65 74 20 4e 41 4d 45 28 29 tatic get NAME() 000193d0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 4e {\n return N 000193e0: 41 4d 45 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f AME\n }\n\n // 000193f0: 20 50 75 62 6c 69 63 5c 6e 20 20 65 6e 61 62 6c Public\n enabl 00019400: 65 28 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e e() {\n this. 00019410: 5f 69 73 45 6e 61 62 6c 65 64 20 3d 20 74 72 75 _isEnabled = tru 00019420: 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 64 69 73 61 e\n }\n\n disa 00019430: 62 6c 65 28 29 20 7b 5c 6e 20 20 20 20 74 68 69 ble() {\n thi 00019440: 73 2e 5f 69 73 45 6e 61 62 6c 65 64 20 3d 20 66 s._isEnabled = f 00019450: 61 6c 73 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 74 alse\n }\n\n t 00019460: 6f 67 67 6c 65 45 6e 61 62 6c 65 64 28 29 20 7b oggleEnabled() { 00019470: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 73 45 6e \n this._isEn 00019480: 61 62 6c 65 64 20 3d 20 21 74 68 69 73 2e 5f 69 abled = !this._i 00019490: 73 45 6e 61 62 6c 65 64 5c 6e 20 20 7d 5c 6e 5c sEnabled\n }\n\ 000194a0: 6e 20 20 74 6f 67 67 6c 65 28 29 20 7b 5c 6e 20 n toggle() {\n 000194b0: 20 20 20 69 66 20 28 21 74 68 69 73 2e 5f 69 73 if (!this._is 000194c0: 45 6e 61 62 6c 65 64 29 20 7b 5c 6e 20 20 20 20 Enabled) {\n 000194d0: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c return\n }\ 000194e0: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 63 74 n\n this._act 000194f0: 69 76 65 54 72 69 67 67 65 72 2e 63 6c 69 63 6b iveTrigger.click 00019500: 20 3d 20 21 74 68 69 73 2e 5f 61 63 74 69 76 65 = !this._active 00019510: 54 72 69 67 67 65 72 2e 63 6c 69 63 6b 5c 6e 20 Trigger.click\n 00019520: 20 20 20 69 66 20 28 74 68 69 73 2e 5f 69 73 53 if (this._isS 00019530: 68 6f 77 6e 28 29 29 20 7b 5c 6e 20 20 20 20 20 hown()) {\n 00019540: 20 74 68 69 73 2e 5f 6c 65 61 76 65 28 29 5c 6e this._leave()\n 00019550: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 00019560: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 00019570: 5f 65 6e 74 65 72 28 29 5c 6e 20 20 7d 5c 6e 5c _enter()\n }\n\ 00019580: 6e 20 20 64 69 73 70 6f 73 65 28 29 20 7b 5c 6e n dispose() {\n 00019590: 20 20 20 20 63 6c 65 61 72 54 69 6d 65 6f 75 74 clearTimeout 000195a0: 28 74 68 69 73 2e 5f 74 69 6d 65 6f 75 74 29 5c (this._timeout)\ 000195b0: 6e 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 n\n EventHand 000195c0: 6c 65 72 2e 6f 66 66 28 74 68 69 73 2e 5f 65 6c ler.off(this._el 000195d0: 65 6d 65 6e 74 2e 63 6c 6f 73 65 73 74 28 53 45 ement.closest(SE 000195e0: 4c 45 43 54 4f 52 5f 4d 4f 44 41 4c 29 2c 20 45 LECTOR_MODAL), E 000195f0: 56 45 4e 54 5f 4d 4f 44 41 4c 5f 48 49 44 45 2c VENT_MODAL_HIDE, 00019600: 20 74 68 69 73 2e 5f 68 69 64 65 4d 6f 64 61 6c this._hideModal 00019610: 48 61 6e 64 6c 65 72 29 5c 6e 5c 6e 20 20 20 20 Handler)\n\n 00019620: 69 66 20 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e if (this._elemen 00019630: 74 2e 67 65 74 41 74 74 72 69 62 75 74 65 28 27 t.getAttribute(' 00019640: 64 61 74 61 2d 62 73 2d 6f 72 69 67 69 6e 61 6c data-bs-original 00019650: 2d 74 69 74 6c 65 27 29 29 20 7b 5c 6e 20 20 20 -title')) {\n 00019660: 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 this._element 00019670: 2e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 74 .setAttribute('t 00019680: 69 74 6c 65 27 2c 20 74 68 69 73 2e 5f 65 6c 65 itle', this._ele 00019690: 6d 65 6e 74 2e 67 65 74 41 74 74 72 69 62 75 74 ment.getAttribut 000196a0: 65 28 27 64 61 74 61 2d 62 73 2d 6f 72 69 67 69 e('data-bs-origi 000196b0: 6e 61 6c 2d 74 69 74 6c 65 27 29 29 5c 6e 20 20 nal-title'))\n 000196c0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 000196d0: 5f 64 69 73 70 6f 73 65 50 6f 70 70 65 72 28 29 _disposePopper() 000196e0: 5c 6e 20 20 20 20 73 75 70 65 72 2e 64 69 73 70 \n super.disp 000196f0: 6f 73 65 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 ose()\n }\n\n 00019700: 73 68 6f 77 28 29 20 7b 5c 6e 20 20 20 20 69 66 show() {\n if 00019710: 20 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e (this._element. 00019720: 73 74 79 6c 65 2e 64 69 73 70 6c 61 79 20 3d 3d style.display == 00019730: 3d 20 27 6e 6f 6e 65 27 29 20 7b 5c 6e 20 20 20 = 'none') {\n 00019740: 20 20 20 74 68 72 6f 77 20 6e 65 77 20 45 72 72 throw new Err 00019750: 6f 72 28 27 50 6c 65 61 73 65 20 75 73 65 20 73 or('Please use s 00019760: 68 6f 77 20 6f 6e 20 76 69 73 69 62 6c 65 20 65 how on visible e 00019770: 6c 65 6d 65 6e 74 73 27 29 5c 6e 20 20 20 20 7d lements')\n } 00019780: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 28 74 68 \n\n if (!(th 00019790: 69 73 2e 5f 69 73 57 69 74 68 43 6f 6e 74 65 6e is._isWithConten 000197a0: 74 28 29 20 26 26 20 74 68 69 73 2e 5f 69 73 45 t() && this._isE 000197b0: 6e 61 62 6c 65 64 29 29 20 7b 5c 6e 20 20 20 20 nabled)) {\n 000197c0: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c return\n }\ 000197d0: 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 73 68 6f n\n const sho 000197e0: 77 45 76 65 6e 74 20 3d 20 45 76 65 6e 74 48 61 wEvent = EventHa 000197f0: 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 ndler.trigger(th 00019800: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 74 68 69 is._element, thi 00019810: 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 65 76 s.constructor.ev 00019820: 65 6e 74 4e 61 6d 65 28 45 56 45 4e 54 5f 53 48 entName(EVENT_SH 00019830: 4f 57 29 29 5c 6e 20 20 20 20 63 6f 6e 73 74 20 OW))\n const 00019840: 73 68 61 64 6f 77 52 6f 6f 74 20 3d 20 66 69 6e shadowRoot = fin 00019850: 64 53 68 61 64 6f 77 52 6f 6f 74 28 74 68 69 73 dShadowRoot(this 00019860: 2e 5f 65 6c 65 6d 65 6e 74 29 5c 6e 20 20 20 20 ._element)\n 00019870: 63 6f 6e 73 74 20 69 73 49 6e 54 68 65 44 6f 6d const isInTheDom 00019880: 20 3d 20 28 73 68 61 64 6f 77 52 6f 6f 74 20 7c = (shadowRoot | 00019890: 7c 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e | this._element. 000198a0: 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 74 2e 64 6f ownerDocument.do 000198b0: 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 29 2e 63 cumentElement).c 000198c0: 6f 6e 74 61 69 6e 73 28 74 68 69 73 2e 5f 65 6c ontains(this._el 000198d0: 65 6d 65 6e 74 29 5c 6e 5c 6e 20 20 20 20 69 66 ement)\n\n if 000198e0: 20 28 73 68 6f 77 45 76 65 6e 74 2e 64 65 66 61 (showEvent.defa 000198f0: 75 6c 74 50 72 65 76 65 6e 74 65 64 20 7c 7c 20 ultPrevented || 00019900: 21 69 73 49 6e 54 68 65 44 6f 6d 29 20 7b 5c 6e !isInTheDom) {\n 00019910: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 00019920: 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 54 4f }\n\n // TO 00019930: 44 4f 3a 20 76 36 20 72 65 6d 6f 76 65 20 74 68 DO: v6 remove th 00019940: 69 73 20 6f 72 20 6d 61 6b 65 20 69 74 20 6f 70 is or make it op 00019950: 74 69 6f 6e 61 6c 5c 6e 20 20 20 20 74 68 69 73 tional\n this 00019960: 2e 5f 64 69 73 70 6f 73 65 50 6f 70 70 65 72 28 ._disposePopper( 00019970: 29 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 74 )\n\n const t 00019980: 69 70 20 3d 20 74 68 69 73 2e 5f 67 65 74 54 69 ip = this._getTi 00019990: 70 45 6c 65 6d 65 6e 74 28 29 5c 6e 5c 6e 20 20 pElement()\n\n 000199a0: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e this._element. 000199b0: 73 65 74 41 74 74 72 69 62 75 74 65 28 27 61 72 setAttribute('ar 000199c0: 69 61 2d 64 65 73 63 72 69 62 65 64 62 79 27 2c ia-describedby', 000199d0: 20 74 69 70 2e 67 65 74 41 74 74 72 69 62 75 74 tip.getAttribut 000199e0: 65 28 27 69 64 27 29 29 5c 6e 5c 6e 20 20 20 20 e('id'))\n\n 000199f0: 63 6f 6e 73 74 20 7b 20 63 6f 6e 74 61 69 6e 65 const { containe 00019a00: 72 20 7d 20 3d 20 74 68 69 73 2e 5f 63 6f 6e 66 r } = this._conf 00019a10: 69 67 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 74 ig\n\n if (!t 00019a20: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 6f 77 6e his._element.own 00019a30: 65 72 44 6f 63 75 6d 65 6e 74 2e 64 6f 63 75 6d erDocument.docum 00019a40: 65 6e 74 45 6c 65 6d 65 6e 74 2e 63 6f 6e 74 61 entElement.conta 00019a50: 69 6e 73 28 74 68 69 73 2e 74 69 70 29 29 20 7b ins(this.tip)) { 00019a60: 5c 6e 20 20 20 20 20 20 63 6f 6e 74 61 69 6e 65 \n containe 00019a70: 72 2e 61 70 70 65 6e 64 28 74 69 70 29 5c 6e 20 r.append(tip)\n 00019a80: 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 EventHandle 00019a90: 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f r.trigger(this._ 00019aa0: 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 2e 63 6f element, this.co 00019ab0: 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 6e 74 4e nstructor.eventN 00019ac0: 61 6d 65 28 45 56 45 4e 54 5f 49 4e 53 45 52 54 ame(EVENT_INSERT 00019ad0: 45 44 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 ED))\n }\n\n 00019ae0: 20 20 20 74 68 69 73 2e 5f 70 6f 70 70 65 72 20 this._popper 00019af0: 3d 20 74 68 69 73 2e 5f 63 72 65 61 74 65 50 6f = this._createPo 00019b00: 70 70 65 72 28 74 69 70 29 5c 6e 5c 6e 20 20 20 pper(tip)\n\n 00019b10: 20 74 69 70 2e 63 6c 61 73 73 4c 69 73 74 2e 61 tip.classList.a 00019b20: 64 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 dd(CLASS_NAME_SH 00019b30: 4f 57 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 49 66 OW)\n\n // If 00019b40: 20 74 68 69 73 20 69 73 20 61 20 74 6f 75 63 68 this is a touch 00019b50: 2d 65 6e 61 62 6c 65 64 20 64 65 76 69 63 65 20 -enabled device 00019b60: 77 65 20 61 64 64 20 65 78 74 72 61 5c 6e 20 20 we add extra\n 00019b70: 20 20 2f 2f 20 65 6d 70 74 79 20 6d 6f 75 73 65 // empty mouse 00019b80: 6f 76 65 72 20 6c 69 73 74 65 6e 65 72 73 20 74 over listeners t 00019b90: 6f 20 74 68 65 20 62 6f 64 79 27 73 20 69 6d 6d o the body's imm 00019ba0: 65 64 69 61 74 65 20 63 68 69 6c 64 72 65 6e 3b ediate children; 00019bb0: 5c 6e 20 20 20 20 2f 2f 20 6f 6e 6c 79 20 6e 65 \n // only ne 00019bc0: 65 64 65 64 20 62 65 63 61 75 73 65 20 6f 66 20 eded because of 00019bd0: 62 72 6f 6b 65 6e 20 65 76 65 6e 74 20 64 65 6c broken event del 00019be0: 65 67 61 74 69 6f 6e 20 6f 6e 20 69 4f 53 5c 6e egation on iOS\n 00019bf0: 20 20 20 20 2f 2f 20 68 74 74 70 73 3a 2f 2f 77 // https://w 00019c00: 77 77 2e 71 75 69 72 6b 73 6d 6f 64 65 2e 6f 72 ww.quirksmode.or 00019c10: 67 2f 62 6c 6f 67 2f 61 72 63 68 69 76 65 73 2f g/blog/archives/ 00019c20: 32 30 31 34 2f 30 32 2f 6d 6f 75 73 65 5f 65 76 2014/02/mouse_ev 00019c30: 65 6e 74 5f 62 75 62 2e 68 74 6d 6c 5c 6e 20 20 ent_bub.html\n 00019c40: 20 20 69 66 20 28 27 6f 6e 74 6f 75 63 68 73 74 if ('ontouchst 00019c50: 61 72 74 27 20 69 6e 20 64 6f 63 75 6d 65 6e 74 art' in document 00019c60: 2e 64 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 .documentElement 00019c70: 29 20 7b 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 ) {\n for ( 00019c80: 63 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 20 6f 66 const element of 00019c90: 20 5b 5d 2e 63 6f 6e 63 61 74 28 2e 2e 2e 64 6f [].concat(...do 00019ca0: 63 75 6d 65 6e 74 2e 62 6f 64 79 2e 63 68 69 6c cument.body.chil 00019cb0: 64 72 65 6e 29 29 20 7b 5c 6e 20 20 20 20 20 20 dren)) {\n 00019cc0: 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f EventHandler.o 00019cd0: 6e 28 65 6c 65 6d 65 6e 74 2c 20 27 6d 6f 75 73 n(element, 'mous 00019ce0: 65 6f 76 65 72 27 2c 20 6e 6f 6f 70 29 5c 6e 20 eover', noop)\n 00019cf0: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c }\n }\n\ 00019d00: 6e 20 20 20 20 63 6f 6e 73 74 20 63 6f 6d 70 6c n const compl 00019d10: 65 74 65 20 3d 20 28 29 20 3d 3e 20 7b 5c 6e 20 ete = () => {\n 00019d20: 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 EventHandle 00019d30: 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f r.trigger(this._ 00019d40: 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 2e 63 6f element, this.co 00019d50: 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 6e 74 4e nstructor.eventN 00019d60: 61 6d 65 28 45 56 45 4e 54 5f 53 48 4f 57 4e 29 ame(EVENT_SHOWN) 00019d70: 29 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 74 )\n\n if (t 00019d80: 68 69 73 2e 5f 69 73 48 6f 76 65 72 65 64 20 3d his._isHovered = 00019d90: 3d 3d 20 66 61 6c 73 65 29 20 7b 5c 6e 20 20 20 == false) {\n 00019da0: 20 20 20 20 20 74 68 69 73 2e 5f 6c 65 61 76 65 this._leave 00019db0: 28 29 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 ()\n }\n\n 00019dc0: 20 20 20 20 20 74 68 69 73 2e 5f 69 73 48 6f 76 this._isHov 00019dd0: 65 72 65 64 20 3d 20 66 61 6c 73 65 5c 6e 20 20 ered = false\n 00019de0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 00019df0: 5f 71 75 65 75 65 43 61 6c 6c 62 61 63 6b 28 63 _queueCallback(c 00019e00: 6f 6d 70 6c 65 74 65 2c 20 74 68 69 73 2e 74 69 omplete, this.ti 00019e10: 70 2c 20 74 68 69 73 2e 5f 69 73 41 6e 69 6d 61 p, this._isAnima 00019e20: 74 65 64 28 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 ted())\n }\n\n 00019e30: 20 68 69 64 65 28 29 20 7b 5c 6e 20 20 20 20 69 hide() {\n i 00019e40: 66 20 28 21 74 68 69 73 2e 5f 69 73 53 68 6f 77 f (!this._isShow 00019e50: 6e 28 29 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 n()) {\n re 00019e60: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 00019e70: 20 20 20 63 6f 6e 73 74 20 68 69 64 65 45 76 65 const hideEve 00019e80: 6e 74 20 3d 20 45 76 65 6e 74 48 61 6e 64 6c 65 nt = EventHandle 00019e90: 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f r.trigger(this._ 00019ea0: 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 2e 63 6f element, this.co 00019eb0: 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 6e 74 4e nstructor.eventN 00019ec0: 61 6d 65 28 45 56 45 4e 54 5f 48 49 44 45 29 29 ame(EVENT_HIDE)) 00019ed0: 5c 6e 20 20 20 20 69 66 20 28 68 69 64 65 45 76 \n if (hideEv 00019ee0: 65 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 76 65 ent.defaultPreve 00019ef0: 6e 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 72 nted) {\n r 00019f00: 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e eturn\n }\n\n 00019f10: 20 20 20 20 63 6f 6e 73 74 20 74 69 70 20 3d 20 const tip = 00019f20: 74 68 69 73 2e 5f 67 65 74 54 69 70 45 6c 65 6d this._getTipElem 00019f30: 65 6e 74 28 29 5c 6e 20 20 20 20 74 69 70 2e 63 ent()\n tip.c 00019f40: 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 65 28 lassList.remove( 00019f50: 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 CLASS_NAME_SHOW) 00019f60: 5c 6e 5c 6e 20 20 20 20 2f 2f 20 49 66 20 74 68 \n\n // If th 00019f70: 69 73 20 69 73 20 61 20 74 6f 75 63 68 2d 65 6e is is a touch-en 00019f80: 61 62 6c 65 64 20 64 65 76 69 63 65 20 77 65 20 abled device we 00019f90: 72 65 6d 6f 76 65 20 74 68 65 20 65 78 74 72 61 remove the extra 00019fa0: 5c 6e 20 20 20 20 2f 2f 20 65 6d 70 74 79 20 6d \n // empty m 00019fb0: 6f 75 73 65 6f 76 65 72 20 6c 69 73 74 65 6e 65 ouseover listene 00019fc0: 72 73 20 77 65 20 61 64 64 65 64 20 66 6f 72 20 rs we added for 00019fd0: 69 4f 53 20 73 75 70 70 6f 72 74 5c 6e 20 20 20 iOS support\n 00019fe0: 20 69 66 20 28 27 6f 6e 74 6f 75 63 68 73 74 61 if ('ontouchsta 00019ff0: 72 74 27 20 69 6e 20 64 6f 63 75 6d 65 6e 74 2e rt' in document. 0001a000: 64 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 29 documentElement) 0001a010: 20 7b 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 63 {\n for (c 0001a020: 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 20 6f 66 20 onst element of 0001a030: 5b 5d 2e 63 6f 6e 63 61 74 28 2e 2e 2e 64 6f 63 [].concat(...doc 0001a040: 75 6d 65 6e 74 2e 62 6f 64 79 2e 63 68 69 6c 64 ument.body.child 0001a050: 72 65 6e 29 29 20 7b 5c 6e 20 20 20 20 20 20 20 ren)) {\n 0001a060: 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 66 EventHandler.of 0001a070: 66 28 65 6c 65 6d 65 6e 74 2c 20 27 6d 6f 75 73 f(element, 'mous 0001a080: 65 6f 76 65 72 27 2c 20 6e 6f 6f 70 29 5c 6e 20 eover', noop)\n 0001a090: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c }\n }\n\ 0001a0a0: 6e 20 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 n this._activ 0001a0b0: 65 54 72 69 67 67 65 72 5b 54 52 49 47 47 45 52 eTrigger[TRIGGER 0001a0c0: 5f 43 4c 49 43 4b 5d 20 3d 20 66 61 6c 73 65 5c _CLICK] = false\ 0001a0d0: 6e 20 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 n this._activ 0001a0e0: 65 54 72 69 67 67 65 72 5b 54 52 49 47 47 45 52 eTrigger[TRIGGER 0001a0f0: 5f 46 4f 43 55 53 5d 20 3d 20 66 61 6c 73 65 5c _FOCUS] = false\ 0001a100: 6e 20 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 n this._activ 0001a110: 65 54 72 69 67 67 65 72 5b 54 52 49 47 47 45 52 eTrigger[TRIGGER 0001a120: 5f 48 4f 56 45 52 5d 20 3d 20 66 61 6c 73 65 5c _HOVER] = false\ 0001a130: 6e 20 20 20 20 74 68 69 73 2e 5f 69 73 48 6f 76 n this._isHov 0001a140: 65 72 65 64 20 3d 20 6e 75 6c 6c 20 2f 2f 20 69 ered = null // i 0001a150: 74 20 69 73 20 61 20 74 72 69 63 6b 20 74 6f 20 t is a trick to 0001a160: 73 75 70 70 6f 72 74 20 6d 61 6e 75 61 6c 20 74 support manual t 0001a170: 72 69 67 67 65 72 69 6e 67 5c 6e 5c 6e 20 20 20 riggering\n\n 0001a180: 20 63 6f 6e 73 74 20 63 6f 6d 70 6c 65 74 65 20 const complete 0001a190: 3d 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 = () => {\n 0001a1a0: 20 69 66 20 28 74 68 69 73 2e 5f 69 73 57 69 74 if (this._isWit 0001a1b0: 68 41 63 74 69 76 65 54 72 69 67 67 65 72 28 29 hActiveTrigger() 0001a1c0: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 65 74 ) {\n ret 0001a1d0: 75 72 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e urn\n }\n\n 0001a1e0: 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73 2e if (!this. 0001a1f0: 5f 69 73 48 6f 76 65 72 65 64 29 20 7b 5c 6e 20 _isHovered) {\n 0001a200: 20 20 20 20 20 20 20 74 68 69 73 2e 5f 64 69 73 this._dis 0001a210: 70 6f 73 65 50 6f 70 70 65 72 28 29 5c 6e 20 20 posePopper()\n 0001a220: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 74 }\n\n t 0001a230: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 65 6d his._element.rem 0001a240: 6f 76 65 41 74 74 72 69 62 75 74 65 28 27 61 72 oveAttribute('ar 0001a250: 69 61 2d 64 65 73 63 72 69 62 65 64 62 79 27 29 ia-describedby') 0001a260: 5c 6e 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e \n EventHan 0001a270: 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 dler.trigger(thi 0001a280: 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 s._element, this 0001a290: 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 .constructor.eve 0001a2a0: 6e 74 4e 61 6d 65 28 45 56 45 4e 54 5f 48 49 44 ntName(EVENT_HID 0001a2b0: 44 45 4e 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e DEN))\n }\n\n 0001a2c0: 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 65 43 this._queueC 0001a2d0: 61 6c 6c 62 61 63 6b 28 63 6f 6d 70 6c 65 74 65 allback(complete 0001a2e0: 2c 20 74 68 69 73 2e 74 69 70 2c 20 74 68 69 73 , this.tip, this 0001a2f0: 2e 5f 69 73 41 6e 69 6d 61 74 65 64 28 29 29 5c ._isAnimated())\ 0001a300: 6e 20 20 7d 5c 6e 5c 6e 20 20 75 70 64 61 74 65 n }\n\n update 0001a310: 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 () {\n if (th 0001a320: 69 73 2e 5f 70 6f 70 70 65 72 29 20 7b 5c 6e 20 is._popper) {\n 0001a330: 20 20 20 20 20 74 68 69 73 2e 5f 70 6f 70 70 65 this._poppe 0001a340: 72 2e 75 70 64 61 74 65 28 29 5c 6e 20 20 20 20 r.update()\n 0001a350: 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 }\n }\n\n // P 0001a360: 72 6f 74 65 63 74 65 64 5c 6e 20 20 5f 69 73 57 rotected\n _isW 0001a370: 69 74 68 43 6f 6e 74 65 6e 74 28 29 20 7b 5c 6e ithContent() {\n 0001a380: 20 20 20 20 72 65 74 75 72 6e 20 42 6f 6f 6c 65 return Boole 0001a390: 61 6e 28 74 68 69 73 2e 5f 67 65 74 54 69 74 6c an(this._getTitl 0001a3a0: 65 28 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f e())\n }\n\n _ 0001a3b0: 67 65 74 54 69 70 45 6c 65 6d 65 6e 74 28 29 20 getTipElement() 0001a3c0: 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 73 {\n if (!this 0001a3d0: 2e 74 69 70 29 20 7b 5c 6e 20 20 20 20 20 20 74 .tip) {\n t 0001a3e0: 68 69 73 2e 74 69 70 20 3d 20 74 68 69 73 2e 5f his.tip = this._ 0001a3f0: 63 72 65 61 74 65 54 69 70 45 6c 65 6d 65 6e 74 createTipElement 0001a400: 28 74 68 69 73 2e 5f 6e 65 77 43 6f 6e 74 65 6e (this._newConten 0001a410: 74 20 7c 7c 20 74 68 69 73 2e 5f 67 65 74 43 6f t || this._getCo 0001a420: 6e 74 65 6e 74 46 6f 72 54 65 6d 70 6c 61 74 65 ntentForTemplate 0001a430: 28 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 ())\n }\n\n 0001a440: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 74 69 return this.ti 0001a450: 70 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 72 65 p\n }\n\n _cre 0001a460: 61 74 65 54 69 70 45 6c 65 6d 65 6e 74 28 63 6f ateTipElement(co 0001a470: 6e 74 65 6e 74 29 20 7b 5c 6e 20 20 20 20 63 6f ntent) {\n co 0001a480: 6e 73 74 20 74 69 70 20 3d 20 74 68 69 73 2e 5f nst tip = this._ 0001a490: 67 65 74 54 65 6d 70 6c 61 74 65 46 61 63 74 6f getTemplateFacto 0001a4a0: 72 79 28 63 6f 6e 74 65 6e 74 29 2e 74 6f 48 74 ry(content).toHt 0001a4b0: 6d 6c 28 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 54 ml()\n\n // T 0001a4c0: 4f 44 4f 3a 20 72 65 6d 6f 76 65 20 74 68 69 73 ODO: remove this 0001a4d0: 20 63 68 65 63 6b 20 69 6e 20 76 36 5c 6e 20 20 check in v6\n 0001a4e0: 20 20 69 66 20 28 21 74 69 70 29 20 7b 5c 6e 20 if (!tip) {\n 0001a4f0: 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c 6c return null 0001a500: 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 \n }\n\n t 0001a510: 69 70 2e 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d ip.classList.rem 0001a520: 6f 76 65 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 46 ove(CLASS_NAME_F 0001a530: 41 44 45 2c 20 43 4c 41 53 53 5f 4e 41 4d 45 5f ADE, CLASS_NAME_ 0001a540: 53 48 4f 57 29 5c 6e 20 20 20 20 2f 2f 20 54 4f SHOW)\n // TO 0001a550: 44 4f 3a 20 76 36 20 74 68 65 20 66 6f 6c 6c 6f DO: v6 the follo 0001a560: 77 69 6e 67 20 63 61 6e 20 62 65 20 61 63 68 69 wing can be achi 0001a570: 65 76 65 64 20 77 69 74 68 20 43 53 53 20 6f 6e eved with CSS on 0001a580: 6c 79 5c 6e 20 20 20 20 74 69 70 2e 63 6c 61 73 ly\n tip.clas 0001a590: 73 4c 69 73 74 2e 61 64 64 28 60 62 73 2d 24 7b sList.add(`bs-${ 0001a5a0: 74 68 69 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 this.constructor 0001a5b0: 2e 4e 41 4d 45 7d 2d 61 75 74 6f 60 29 5c 6e 5c .NAME}-auto`)\n\ 0001a5c0: 6e 20 20 20 20 63 6f 6e 73 74 20 74 69 70 49 64 n const tipId 0001a5d0: 20 3d 20 67 65 74 55 49 44 28 74 68 69 73 2e 63 = getUID(this.c 0001a5e0: 6f 6e 73 74 72 75 63 74 6f 72 2e 4e 41 4d 45 29 onstructor.NAME) 0001a5f0: 2e 74 6f 53 74 72 69 6e 67 28 29 5c 6e 5c 6e 20 .toString()\n\n 0001a600: 20 20 20 74 69 70 2e 73 65 74 41 74 74 72 69 62 tip.setAttrib 0001a610: 75 74 65 28 27 69 64 27 2c 20 74 69 70 49 64 29 ute('id', tipId) 0001a620: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 \n\n if (this 0001a630: 2e 5f 69 73 41 6e 69 6d 61 74 65 64 28 29 29 20 ._isAnimated()) 0001a640: 7b 5c 6e 20 20 20 20 20 20 74 69 70 2e 63 6c 61 {\n tip.cla 0001a650: 73 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 53 53 ssList.add(CLASS 0001a660: 5f 4e 41 4d 45 5f 46 41 44 45 29 5c 6e 20 20 20 _NAME_FADE)\n 0001a670: 20 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e }\n\n return 0001a680: 20 74 69 70 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 tip\n }\n\n s 0001a690: 65 74 43 6f 6e 74 65 6e 74 28 63 6f 6e 74 65 6e etContent(conten 0001a6a0: 74 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f t) {\n this._ 0001a6b0: 6e 65 77 43 6f 6e 74 65 6e 74 20 3d 20 63 6f 6e newContent = con 0001a6c0: 74 65 6e 74 5c 6e 20 20 20 20 69 66 20 28 74 68 tent\n if (th 0001a6d0: 69 73 2e 5f 69 73 53 68 6f 77 6e 28 29 29 20 7b is._isShown()) { 0001a6e0: 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 64 69 \n this._di 0001a6f0: 73 70 6f 73 65 50 6f 70 70 65 72 28 29 5c 6e 20 sposePopper()\n 0001a700: 20 20 20 20 20 74 68 69 73 2e 73 68 6f 77 28 29 this.show() 0001a710: 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e \n }\n }\n\n 0001a720: 20 20 5f 67 65 74 54 65 6d 70 6c 61 74 65 46 61 _getTemplateFa 0001a730: 63 74 6f 72 79 28 63 6f 6e 74 65 6e 74 29 20 7b ctory(content) { 0001a740: 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f \n if (this._ 0001a750: 74 65 6d 70 6c 61 74 65 46 61 63 74 6f 72 79 29 templateFactory) 0001a760: 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f {\n this._ 0001a770: 74 65 6d 70 6c 61 74 65 46 61 63 74 6f 72 79 2e templateFactory. 0001a780: 63 68 61 6e 67 65 43 6f 6e 74 65 6e 74 28 63 6f changeContent(co 0001a790: 6e 74 65 6e 74 29 5c 6e 20 20 20 20 7d 20 65 6c ntent)\n } el 0001a7a0: 73 65 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 se {\n this 0001a7b0: 2e 5f 74 65 6d 70 6c 61 74 65 46 61 63 74 6f 72 ._templateFactor 0001a7c0: 79 20 3d 20 6e 65 77 20 54 65 6d 70 6c 61 74 65 y = new Template 0001a7d0: 46 61 63 74 6f 72 79 28 7b 5c 6e 20 20 20 20 20 Factory({\n 0001a7e0: 20 20 20 2e 2e 2e 74 68 69 73 2e 5f 63 6f 6e 66 ...this._conf 0001a7f0: 69 67 2c 5c 6e 20 20 20 20 20 20 20 20 2f 2f 20 ig,\n // 0001a800: 74 68 65 20 60 63 6f 6e 74 65 6e 74 60 20 76 61 the `content` va 0001a810: 72 20 68 61 73 20 74 6f 20 62 65 20 61 66 74 65 r has to be afte 0001a820: 72 20 60 74 68 69 73 2e 5f 63 6f 6e 66 69 67 60 r `this._config` 0001a830: 5c 6e 20 20 20 20 20 20 20 20 2f 2f 20 74 6f 20 \n // to 0001a840: 6f 76 65 72 72 69 64 65 20 63 6f 6e 66 69 67 2e override config. 0001a850: 63 6f 6e 74 65 6e 74 20 69 6e 20 63 61 73 65 20 content in case 0001a860: 6f 66 20 70 6f 70 6f 76 65 72 5c 6e 20 20 20 20 of popover\n 0001a870: 20 20 20 20 63 6f 6e 74 65 6e 74 2c 5c 6e 20 20 content,\n 0001a880: 20 20 20 20 20 20 65 78 74 72 61 43 6c 61 73 73 extraClass 0001a890: 3a 20 74 68 69 73 2e 5f 72 65 73 6f 6c 76 65 50 : this._resolveP 0001a8a0: 6f 73 73 69 62 6c 65 46 75 6e 63 74 69 6f 6e 28 ossibleFunction( 0001a8b0: 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 63 75 73 this._config.cus 0001a8c0: 74 6f 6d 43 6c 61 73 73 29 5c 6e 20 20 20 20 20 tomClass)\n 0001a8d0: 20 7d 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 })\n }\n\n 0001a8e0: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 74 return this._t 0001a8f0: 65 6d 70 6c 61 74 65 46 61 63 74 6f 72 79 5c 6e emplateFactory\n 0001a900: 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 74 43 6f 6e }\n\n _getCon 0001a910: 74 65 6e 74 46 6f 72 54 65 6d 70 6c 61 74 65 28 tentForTemplate( 0001a920: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 0001a930: 7b 5c 6e 20 20 20 20 20 20 5b 53 45 4c 45 43 54 {\n [SELECT 0001a940: 4f 52 5f 54 4f 4f 4c 54 49 50 5f 49 4e 4e 45 52 OR_TOOLTIP_INNER 0001a950: 5d 3a 20 74 68 69 73 2e 5f 67 65 74 54 69 74 6c ]: this._getTitl 0001a960: 65 28 29 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c e()\n }\n }\ 0001a970: 6e 5c 6e 20 20 5f 67 65 74 54 69 74 6c 65 28 29 n\n _getTitle() 0001a980: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 {\n return t 0001a990: 68 69 73 2e 5f 72 65 73 6f 6c 76 65 50 6f 73 73 his._resolvePoss 0001a9a0: 69 62 6c 65 46 75 6e 63 74 69 6f 6e 28 74 68 69 ibleFunction(thi 0001a9b0: 73 2e 5f 63 6f 6e 66 69 67 2e 74 69 74 6c 65 29 s._config.title) 0001a9c0: 20 7c 7c 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e || this._elemen 0001a9d0: 74 2e 67 65 74 41 74 74 72 69 62 75 74 65 28 27 t.getAttribute(' 0001a9e0: 64 61 74 61 2d 62 73 2d 6f 72 69 67 69 6e 61 6c data-bs-original 0001a9f0: 2d 74 69 74 6c 65 27 29 5c 6e 20 20 7d 5c 6e 5c -title')\n }\n\ 0001aa00: 6e 20 20 2f 2f 20 50 72 69 76 61 74 65 5c 6e 20 n // Private\n 0001aa10: 20 5f 69 6e 69 74 69 61 6c 69 7a 65 4f 6e 44 65 _initializeOnDe 0001aa20: 6c 65 67 61 74 65 64 54 61 72 67 65 74 28 65 76 legatedTarget(ev 0001aa30: 65 6e 74 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 ent) {\n retu 0001aa40: 72 6e 20 74 68 69 73 2e 63 6f 6e 73 74 72 75 63 rn this.construc 0001aa50: 74 6f 72 2e 67 65 74 4f 72 43 72 65 61 74 65 49 tor.getOrCreateI 0001aa60: 6e 73 74 61 6e 63 65 28 65 76 65 6e 74 2e 64 65 nstance(event.de 0001aa70: 6c 65 67 61 74 65 54 61 72 67 65 74 2c 20 74 68 legateTarget, th 0001aa80: 69 73 2e 5f 67 65 74 44 65 6c 65 67 61 74 65 43 is._getDelegateC 0001aa90: 6f 6e 66 69 67 28 29 29 5c 6e 20 20 7d 5c 6e 5c onfig())\n }\n\ 0001aaa0: 6e 20 20 5f 69 73 41 6e 69 6d 61 74 65 64 28 29 n _isAnimated() 0001aab0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 {\n return t 0001aac0: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 61 6e 69 6d his._config.anim 0001aad0: 61 74 69 6f 6e 20 7c 7c 20 28 74 68 69 73 2e 74 ation || (this.t 0001aae0: 69 70 20 26 26 20 74 68 69 73 2e 74 69 70 2e 63 ip && this.tip.c 0001aaf0: 6c 61 73 73 4c 69 73 74 2e 63 6f 6e 74 61 69 6e lassList.contain 0001ab00: 73 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 46 41 44 s(CLASS_NAME_FAD 0001ab10: 45 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 69 E))\n }\n\n _i 0001ab20: 73 53 68 6f 77 6e 28 29 20 7b 5c 6e 20 20 20 20 sShown() {\n 0001ab30: 72 65 74 75 72 6e 20 74 68 69 73 2e 74 69 70 20 return this.tip 0001ab40: 26 26 20 74 68 69 73 2e 74 69 70 2e 63 6c 61 73 && this.tip.clas 0001ab50: 73 4c 69 73 74 2e 63 6f 6e 74 61 69 6e 73 28 43 sList.contains(C 0001ab60: 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c LASS_NAME_SHOW)\ 0001ab70: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 72 65 61 74 n }\n\n _creat 0001ab80: 65 50 6f 70 70 65 72 28 74 69 70 29 20 7b 5c 6e ePopper(tip) {\n 0001ab90: 20 20 20 20 63 6f 6e 73 74 20 70 6c 61 63 65 6d const placem 0001aba0: 65 6e 74 20 3d 20 65 78 65 63 75 74 65 28 74 68 ent = execute(th 0001abb0: 69 73 2e 5f 63 6f 6e 66 69 67 2e 70 6c 61 63 65 is._config.place 0001abc0: 6d 65 6e 74 2c 20 5b 74 68 69 73 2c 20 74 69 70 ment, [this, tip 0001abd0: 2c 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 5d , this._element] 0001abe0: 29 5c 6e 20 20 20 20 63 6f 6e 73 74 20 61 74 74 )\n const att 0001abf0: 61 63 68 6d 65 6e 74 20 3d 20 41 74 74 61 63 68 achment = Attach 0001ac00: 6d 65 6e 74 4d 61 70 5b 70 6c 61 63 65 6d 65 6e mentMap[placemen 0001ac10: 74 2e 74 6f 55 70 70 65 72 43 61 73 65 28 29 5d t.toUpperCase()] 0001ac20: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 50 6f 70 \n return Pop 0001ac30: 70 65 72 2e 63 72 65 61 74 65 50 6f 70 70 65 72 per.createPopper 0001ac40: 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 (this._element, 0001ac50: 74 69 70 2c 20 74 68 69 73 2e 5f 67 65 74 50 6f tip, this._getPo 0001ac60: 70 70 65 72 43 6f 6e 66 69 67 28 61 74 74 61 63 pperConfig(attac 0001ac70: 68 6d 65 6e 74 29 29 5c 6e 20 20 7d 5c 6e 5c 6e hment))\n }\n\n 0001ac80: 20 20 5f 67 65 74 4f 66 66 73 65 74 28 29 20 7b _getOffset() { 0001ac90: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 7b 20 6f 66 \n const { of 0001aca0: 66 73 65 74 20 7d 20 3d 20 74 68 69 73 2e 5f 63 fset } = this._c 0001acb0: 6f 6e 66 69 67 5c 6e 5c 6e 20 20 20 20 69 66 20 onfig\n\n if 0001acc0: 28 74 79 70 65 6f 66 20 6f 66 66 73 65 74 20 3d (typeof offset = 0001acd0: 3d 3d 20 27 73 74 72 69 6e 67 27 29 20 7b 5c 6e == 'string') {\n 0001ace0: 20 20 20 20 20 20 72 65 74 75 72 6e 20 6f 66 66 return off 0001acf0: 73 65 74 2e 73 70 6c 69 74 28 27 2c 27 29 2e 6d set.split(',').m 0001ad00: 61 70 28 76 61 6c 75 65 20 3d 3e 20 4e 75 6d 62 ap(value => Numb 0001ad10: 65 72 2e 70 61 72 73 65 49 6e 74 28 76 61 6c 75 er.parseInt(valu 0001ad20: 65 2c 20 31 30 29 29 5c 6e 20 20 20 20 7d 5c 6e e, 10))\n }\n 0001ad30: 5c 6e 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 \n if (typeof 0001ad40: 20 6f 66 66 73 65 74 20 3d 3d 3d 20 27 66 75 6e offset === 'fun 0001ad50: 63 74 69 6f 6e 27 29 20 7b 5c 6e 20 20 20 20 20 ction') {\n 0001ad60: 20 72 65 74 75 72 6e 20 70 6f 70 70 65 72 44 61 return popperDa 0001ad70: 74 61 20 3d 3e 20 6f 66 66 73 65 74 28 70 6f 70 ta => offset(pop 0001ad80: 70 65 72 44 61 74 61 2c 20 74 68 69 73 2e 5f 65 perData, this._e 0001ad90: 6c 65 6d 65 6e 74 29 5c 6e 20 20 20 20 7d 5c 6e lement)\n }\n 0001ada0: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6f 66 66 \n return off 0001adb0: 73 65 74 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 72 set\n }\n\n _r 0001adc0: 65 73 6f 6c 76 65 50 6f 73 73 69 62 6c 65 46 75 esolvePossibleFu 0001add0: 6e 63 74 69 6f 6e 28 61 72 67 29 20 7b 5c 6e 20 nction(arg) {\n 0001ade0: 20 20 20 72 65 74 75 72 6e 20 65 78 65 63 75 74 return execut 0001adf0: 65 28 61 72 67 2c 20 5b 74 68 69 73 2e 5f 65 6c e(arg, [this._el 0001ae00: 65 6d 65 6e 74 5d 29 5c 6e 20 20 7d 5c 6e 5c 6e ement])\n }\n\n 0001ae10: 20 20 5f 67 65 74 50 6f 70 70 65 72 43 6f 6e 66 _getPopperConf 0001ae20: 69 67 28 61 74 74 61 63 68 6d 65 6e 74 29 20 7b ig(attachment) { 0001ae30: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 64 65 66 61 \n const defa 0001ae40: 75 6c 74 42 73 50 6f 70 70 65 72 43 6f 6e 66 69 ultBsPopperConfi 0001ae50: 67 20 3d 20 7b 5c 6e 20 20 20 20 20 20 70 6c 61 g = {\n pla 0001ae60: 63 65 6d 65 6e 74 3a 20 61 74 74 61 63 68 6d 65 cement: attachme 0001ae70: 6e 74 2c 5c 6e 20 20 20 20 20 20 6d 6f 64 69 66 nt,\n modif 0001ae80: 69 65 72 73 3a 20 5b 5c 6e 20 20 20 20 20 20 20 iers: [\n 0001ae90: 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6e 61 {\n na 0001aea0: 6d 65 3a 20 27 66 6c 69 70 27 2c 5c 6e 20 20 20 me: 'flip',\n 0001aeb0: 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 3a 20 options: 0001aec0: 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 66 {\n f 0001aed0: 61 6c 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e 74 allbackPlacement 0001aee0: 73 3a 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e s: this._config. 0001aef0: 66 61 6c 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e fallbackPlacemen 0001af00: 74 73 5c 6e 20 20 20 20 20 20 20 20 20 20 7d 5c ts\n }\ 0001af10: 6e 20 20 20 20 20 20 20 20 7d 2c 5c 6e 20 20 20 n },\n 0001af20: 20 20 20 20 20 7b 5c 6e 20 20 20 20 20 20 20 20 {\n 0001af30: 20 20 6e 61 6d 65 3a 20 27 6f 66 66 73 65 74 27 name: 'offset' 0001af40: 2c 5c 6e 20 20 20 20 20 20 20 20 20 20 6f 70 74 ,\n opt 0001af50: 69 6f 6e 73 3a 20 7b 5c 6e 20 20 20 20 20 20 20 ions: {\n 0001af60: 20 20 20 20 20 6f 66 66 73 65 74 3a 20 74 68 69 offset: thi 0001af70: 73 2e 5f 67 65 74 4f 66 66 73 65 74 28 29 5c 6e s._getOffset()\n 0001af80: 20 20 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 }\n 0001af90: 20 20 20 20 20 7d 2c 5c 6e 20 20 20 20 20 20 20 },\n 0001afa0: 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6e 61 {\n na 0001afb0: 6d 65 3a 20 27 70 72 65 76 65 6e 74 4f 76 65 72 me: 'preventOver 0001afc0: 66 6c 6f 77 27 2c 5c 6e 20 20 20 20 20 20 20 20 flow',\n 0001afd0: 20 20 6f 70 74 69 6f 6e 73 3a 20 7b 5c 6e 20 20 options: {\n 0001afe0: 20 20 20 20 20 20 20 20 20 20 62 6f 75 6e 64 61 bounda 0001aff0: 72 79 3a 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 ry: this._config 0001b000: 2e 62 6f 75 6e 64 61 72 79 5c 6e 20 20 20 20 20 .boundary\n 0001b010: 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 20 20 }\n 0001b020: 7d 2c 5c 6e 20 20 20 20 20 20 20 20 7b 5c 6e 20 },\n {\n 0001b030: 20 20 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 27 name: ' 0001b040: 61 72 72 6f 77 27 2c 5c 6e 20 20 20 20 20 20 20 arrow',\n 0001b050: 20 20 20 6f 70 74 69 6f 6e 73 3a 20 7b 5c 6e 20 options: {\n 0001b060: 20 20 20 20 20 20 20 20 20 20 20 65 6c 65 6d 65 eleme 0001b070: 6e 74 3a 20 60 2e 24 7b 74 68 69 73 2e 63 6f 6e nt: `.${this.con 0001b080: 73 74 72 75 63 74 6f 72 2e 4e 41 4d 45 7d 2d 61 structor.NAME}-a 0001b090: 72 72 6f 77 60 5c 6e 20 20 20 20 20 20 20 20 20 rrow`\n 0001b0a0: 20 7d 5c 6e 20 20 20 20 20 20 20 20 7d 2c 5c 6e }\n },\n 0001b0b0: 20 20 20 20 20 20 20 20 7b 5c 6e 20 20 20 20 20 {\n 0001b0c0: 20 20 20 20 20 6e 61 6d 65 3a 20 27 70 72 65 53 name: 'preS 0001b0d0: 65 74 50 6c 61 63 65 6d 65 6e 74 27 2c 5c 6e 20 etPlacement',\n 0001b0e0: 20 20 20 20 20 20 20 20 20 65 6e 61 62 6c 65 64 enabled 0001b0f0: 3a 20 74 72 75 65 2c 5c 6e 20 20 20 20 20 20 20 : true,\n 0001b100: 20 20 20 70 68 61 73 65 3a 20 27 62 65 66 6f 72 phase: 'befor 0001b110: 65 4d 61 69 6e 27 2c 5c 6e 20 20 20 20 20 20 20 eMain',\n 0001b120: 20 20 20 66 6e 3a 20 64 61 74 61 20 3d 3e 20 7b fn: data => { 0001b130: 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f \n // 0001b140: 20 50 72 65 2d 73 65 74 20 50 6f 70 70 65 72 27 Pre-set Popper' 0001b150: 73 20 70 6c 61 63 65 6d 65 6e 74 20 61 74 74 72 s placement attr 0001b160: 69 62 75 74 65 20 69 6e 20 6f 72 64 65 72 20 74 ibute in order t 0001b170: 6f 20 72 65 61 64 20 74 68 65 20 61 72 72 6f 77 o read the arrow 0001b180: 20 73 69 7a 65 73 20 70 72 6f 70 65 72 6c 79 2e sizes properly. 0001b190: 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f \n // 0001b1a0: 20 4f 74 68 65 72 77 69 73 65 2c 20 50 6f 70 70 Otherwise, Popp 0001b1b0: 65 72 20 6d 69 78 65 73 20 75 70 20 74 68 65 20 er mixes up the 0001b1c0: 77 69 64 74 68 20 61 6e 64 20 68 65 69 67 68 74 width and height 0001b1d0: 20 64 69 6d 65 6e 73 69 6f 6e 73 20 73 69 6e 63 dimensions sinc 0001b1e0: 65 20 74 68 65 20 69 6e 69 74 69 61 6c 20 61 72 e the initial ar 0001b1f0: 72 6f 77 20 73 74 79 6c 65 20 69 73 20 66 6f 72 row style is for 0001b200: 20 74 6f 70 20 70 6c 61 63 65 6d 65 6e 74 5c 6e top placement\n 0001b210: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 this 0001b220: 2e 5f 67 65 74 54 69 70 45 6c 65 6d 65 6e 74 28 ._getTipElement( 0001b230: 29 2e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 ).setAttribute(' 0001b240: 64 61 74 61 2d 70 6f 70 70 65 72 2d 70 6c 61 63 data-popper-plac 0001b250: 65 6d 65 6e 74 27 2c 20 64 61 74 61 2e 73 74 61 ement', data.sta 0001b260: 74 65 2e 70 6c 61 63 65 6d 65 6e 74 29 5c 6e 20 te.placement)\n 0001b270: 20 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 }\n 0001b280: 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 5d 5c 6e }\n ]\n 0001b290: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 }\n\n ret 0001b2a0: 75 72 6e 20 7b 5c 6e 20 20 20 20 20 20 2e 2e 2e urn {\n ... 0001b2b0: 64 65 66 61 75 6c 74 42 73 50 6f 70 70 65 72 43 defaultBsPopperC 0001b2c0: 6f 6e 66 69 67 2c 5c 6e 20 20 20 20 20 20 2e 2e onfig,\n .. 0001b2d0: 2e 65 78 65 63 75 74 65 28 74 68 69 73 2e 5f 63 .execute(this._c 0001b2e0: 6f 6e 66 69 67 2e 70 6f 70 70 65 72 43 6f 6e 66 onfig.popperConf 0001b2f0: 69 67 2c 20 5b 64 65 66 61 75 6c 74 42 73 50 6f ig, [defaultBsPo 0001b300: 70 70 65 72 43 6f 6e 66 69 67 5d 29 5c 6e 20 20 pperConfig])\n 0001b310: 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 73 }\n }\n\n _s 0001b320: 65 74 4c 69 73 74 65 6e 65 72 73 28 29 20 7b 5c etListeners() {\ 0001b330: 6e 20 20 20 20 63 6f 6e 73 74 20 74 72 69 67 67 n const trigg 0001b340: 65 72 73 20 3d 20 74 68 69 73 2e 5f 63 6f 6e 66 ers = this._conf 0001b350: 69 67 2e 74 72 69 67 67 65 72 2e 73 70 6c 69 74 ig.trigger.split 0001b360: 28 27 20 27 29 5c 6e 5c 6e 20 20 20 20 66 6f 72 (' ')\n\n for 0001b370: 20 28 63 6f 6e 73 74 20 74 72 69 67 67 65 72 20 (const trigger 0001b380: 6f 66 20 74 72 69 67 67 65 72 73 29 20 7b 5c 6e of triggers) {\n 0001b390: 20 20 20 20 20 20 69 66 20 28 74 72 69 67 67 65 if (trigge 0001b3a0: 72 20 3d 3d 3d 20 27 63 6c 69 63 6b 27 29 20 7b r === 'click') { 0001b3b0: 5c 6e 20 20 20 20 20 20 20 20 45 76 65 6e 74 48 \n EventH 0001b3c0: 61 6e 64 6c 65 72 2e 6f 6e 28 74 68 69 73 2e 5f andler.on(this._ 0001b3d0: 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 2e 63 6f element, this.co 0001b3e0: 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 6e 74 4e nstructor.eventN 0001b3f0: 61 6d 65 28 45 56 45 4e 54 5f 43 4c 49 43 4b 29 ame(EVENT_CLICK) 0001b400: 2c 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 73 , this._config.s 0001b410: 65 6c 65 63 74 6f 72 2c 20 65 76 65 6e 74 20 3d elector, event = 0001b420: 3e 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 63 > {\n c 0001b430: 6f 6e 73 74 20 63 6f 6e 74 65 78 74 20 3d 20 74 onst context = t 0001b440: 68 69 73 2e 5f 69 6e 69 74 69 61 6c 69 7a 65 4f his._initializeO 0001b450: 6e 44 65 6c 65 67 61 74 65 64 54 61 72 67 65 74 nDelegatedTarget 0001b460: 28 65 76 65 6e 74 29 5c 6e 20 20 20 20 20 20 20 (event)\n 0001b470: 20 20 20 63 6f 6e 74 65 78 74 2e 74 6f 67 67 6c context.toggl 0001b480: 65 28 29 5c 6e 20 20 20 20 20 20 20 20 7d 29 5c e()\n })\ 0001b490: 6e 20 20 20 20 20 20 7d 20 65 6c 73 65 20 69 66 n } else if 0001b4a0: 20 28 74 72 69 67 67 65 72 20 21 3d 3d 20 54 52 (trigger !== TR 0001b4b0: 49 47 47 45 52 5f 4d 41 4e 55 41 4c 29 20 7b 5c IGGER_MANUAL) {\ 0001b4c0: 6e 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 65 n const e 0001b4d0: 76 65 6e 74 49 6e 20 3d 20 74 72 69 67 67 65 72 ventIn = trigger 0001b4e0: 20 3d 3d 3d 20 54 52 49 47 47 45 52 5f 48 4f 56 === TRIGGER_HOV 0001b4f0: 45 52 20 3f 5c 6e 20 20 20 20 20 20 20 20 20 20 ER ?\n 0001b500: 74 68 69 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 this.constructor 0001b510: 2e 65 76 65 6e 74 4e 61 6d 65 28 45 56 45 4e 54 .eventName(EVENT 0001b520: 5f 4d 4f 55 53 45 45 4e 54 45 52 29 20 3a 5c 6e _MOUSEENTER) :\n 0001b530: 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 63 this.c 0001b540: 6f 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 6e 74 onstructor.event 0001b550: 4e 61 6d 65 28 45 56 45 4e 54 5f 46 4f 43 55 53 Name(EVENT_FOCUS 0001b560: 49 4e 29 5c 6e 20 20 20 20 20 20 20 20 63 6f 6e IN)\n con 0001b570: 73 74 20 65 76 65 6e 74 4f 75 74 20 3d 20 74 72 st eventOut = tr 0001b580: 69 67 67 65 72 20 3d 3d 3d 20 54 52 49 47 47 45 igger === TRIGGE 0001b590: 52 5f 48 4f 56 45 52 20 3f 5c 6e 20 20 20 20 20 R_HOVER ?\n 0001b5a0: 20 20 20 20 20 74 68 69 73 2e 63 6f 6e 73 74 72 this.constr 0001b5b0: 75 63 74 6f 72 2e 65 76 65 6e 74 4e 61 6d 65 28 uctor.eventName( 0001b5c0: 45 56 45 4e 54 5f 4d 4f 55 53 45 4c 45 41 56 45 EVENT_MOUSELEAVE 0001b5d0: 29 20 3a 5c 6e 20 20 20 20 20 20 20 20 20 20 74 ) :\n t 0001b5e0: 68 69 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e his.constructor. 0001b5f0: 65 76 65 6e 74 4e 61 6d 65 28 45 56 45 4e 54 5f eventName(EVENT_ 0001b600: 46 4f 43 55 53 4f 55 54 29 5c 6e 5c 6e 20 20 20 FOCUSOUT)\n\n 0001b610: 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 EventHandle 0001b620: 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d 65 r.on(this._eleme 0001b630: 6e 74 2c 20 65 76 65 6e 74 49 6e 2c 20 74 68 69 nt, eventIn, thi 0001b640: 73 2e 5f 63 6f 6e 66 69 67 2e 73 65 6c 65 63 74 s._config.select 0001b650: 6f 72 2c 20 65 76 65 6e 74 20 3d 3e 20 7b 5c 6e or, event => {\n 0001b660: 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 const 0001b670: 63 6f 6e 74 65 78 74 20 3d 20 74 68 69 73 2e 5f context = this._ 0001b680: 69 6e 69 74 69 61 6c 69 7a 65 4f 6e 44 65 6c 65 initializeOnDele 0001b690: 67 61 74 65 64 54 61 72 67 65 74 28 65 76 65 6e gatedTarget(even 0001b6a0: 74 29 5c 6e 20 20 20 20 20 20 20 20 20 20 63 6f t)\n co 0001b6b0: 6e 74 65 78 74 2e 5f 61 63 74 69 76 65 54 72 69 ntext._activeTri 0001b6c0: 67 67 65 72 5b 65 76 65 6e 74 2e 74 79 70 65 20 gger[event.type 0001b6d0: 3d 3d 3d 20 27 66 6f 63 75 73 69 6e 27 20 3f 20 === 'focusin' ? 0001b6e0: 54 52 49 47 47 45 52 5f 46 4f 43 55 53 20 3a 20 TRIGGER_FOCUS : 0001b6f0: 54 52 49 47 47 45 52 5f 48 4f 56 45 52 5d 20 3d TRIGGER_HOVER] = 0001b700: 20 74 72 75 65 5c 6e 20 20 20 20 20 20 20 20 20 true\n 0001b710: 20 63 6f 6e 74 65 78 74 2e 5f 65 6e 74 65 72 28 context._enter( 0001b720: 29 5c 6e 20 20 20 20 20 20 20 20 7d 29 5c 6e 20 )\n })\n 0001b730: 20 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 EventHand 0001b740: 6c 65 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 ler.on(this._ele 0001b750: 6d 65 6e 74 2c 20 65 76 65 6e 74 4f 75 74 2c 20 ment, eventOut, 0001b760: 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 73 65 6c this._config.sel 0001b770: 65 63 74 6f 72 2c 20 65 76 65 6e 74 20 3d 3e 20 ector, event => 0001b780: 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 63 6f 6e {\n con 0001b790: 73 74 20 63 6f 6e 74 65 78 74 20 3d 20 74 68 69 st context = thi 0001b7a0: 73 2e 5f 69 6e 69 74 69 61 6c 69 7a 65 4f 6e 44 s._initializeOnD 0001b7b0: 65 6c 65 67 61 74 65 64 54 61 72 67 65 74 28 65 elegatedTarget(e 0001b7c0: 76 65 6e 74 29 5c 6e 20 20 20 20 20 20 20 20 20 vent)\n 0001b7d0: 20 63 6f 6e 74 65 78 74 2e 5f 61 63 74 69 76 65 context._active 0001b7e0: 54 72 69 67 67 65 72 5b 65 76 65 6e 74 2e 74 79 Trigger[event.ty 0001b7f0: 70 65 20 3d 3d 3d 20 27 66 6f 63 75 73 6f 75 74 pe === 'focusout 0001b800: 27 20 3f 20 54 52 49 47 47 45 52 5f 46 4f 43 55 ' ? TRIGGER_FOCU 0001b810: 53 20 3a 20 54 52 49 47 47 45 52 5f 48 4f 56 45 S : TRIGGER_HOVE 0001b820: 52 5d 20 3d 5c 6e 20 20 20 20 20 20 20 20 20 20 R] =\n 0001b830: 20 20 63 6f 6e 74 65 78 74 2e 5f 65 6c 65 6d 65 context._eleme 0001b840: 6e 74 2e 63 6f 6e 74 61 69 6e 73 28 65 76 65 6e nt.contains(even 0001b850: 74 2e 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 t.relatedTarget) 0001b860: 5c 6e 5c 6e 20 20 20 20 20 20 20 20 20 20 63 6f \n\n co 0001b870: 6e 74 65 78 74 2e 5f 6c 65 61 76 65 28 29 5c 6e ntext._leave()\n 0001b880: 20 20 20 20 20 20 20 20 7d 29 5c 6e 20 20 20 20 })\n 0001b890: 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 }\n }\n\n 0001b8a0: 20 20 74 68 69 73 2e 5f 68 69 64 65 4d 6f 64 61 this._hideModa 0001b8b0: 6c 48 61 6e 64 6c 65 72 20 3d 20 28 29 20 3d 3e lHandler = () => 0001b8c0: 20 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 74 68 {\n if (th 0001b8d0: 69 73 2e 5f 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e is._element) {\n 0001b8e0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 68 69 64 this.hid 0001b8f0: 65 28 29 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 e()\n }\n 0001b900: 20 20 7d 5c 6e 5c 6e 20 20 20 20 45 76 65 6e 74 }\n\n Event 0001b910: 48 61 6e 64 6c 65 72 2e 6f 6e 28 74 68 69 73 2e Handler.on(this. 0001b920: 5f 65 6c 65 6d 65 6e 74 2e 63 6c 6f 73 65 73 74 _element.closest 0001b930: 28 53 45 4c 45 43 54 4f 52 5f 4d 4f 44 41 4c 29 (SELECTOR_MODAL) 0001b940: 2c 20 45 56 45 4e 54 5f 4d 4f 44 41 4c 5f 48 49 , EVENT_MODAL_HI 0001b950: 44 45 2c 20 74 68 69 73 2e 5f 68 69 64 65 4d 6f DE, this._hideMo 0001b960: 64 61 6c 48 61 6e 64 6c 65 72 29 5c 6e 20 20 7d dalHandler)\n } 0001b970: 5c 6e 5c 6e 20 20 5f 66 69 78 54 69 74 6c 65 28 \n\n _fixTitle( 0001b980: 29 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 74 ) {\n const t 0001b990: 69 74 6c 65 20 3d 20 74 68 69 73 2e 5f 65 6c 65 itle = this._ele 0001b9a0: 6d 65 6e 74 2e 67 65 74 41 74 74 72 69 62 75 74 ment.getAttribut 0001b9b0: 65 28 27 74 69 74 6c 65 27 29 5c 6e 5c 6e 20 20 e('title')\n\n 0001b9c0: 20 20 69 66 20 28 21 74 69 74 6c 65 29 20 7b 5c if (!title) {\ 0001b9d0: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 n return\n 0001b9e0: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 }\n\n if ( 0001b9f0: 21 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 67 !this._element.g 0001ba00: 65 74 41 74 74 72 69 62 75 74 65 28 27 61 72 69 etAttribute('ari 0001ba10: 61 2d 6c 61 62 65 6c 27 29 20 26 26 20 21 74 68 a-label') && !th 0001ba20: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 74 65 78 74 is._element.text 0001ba30: 43 6f 6e 74 65 6e 74 2e 74 72 69 6d 28 29 29 20 Content.trim()) 0001ba40: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 65 {\n this._e 0001ba50: 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 lement.setAttrib 0001ba60: 75 74 65 28 27 61 72 69 61 2d 6c 61 62 65 6c 27 ute('aria-label' 0001ba70: 2c 20 74 69 74 6c 65 29 5c 6e 20 20 20 20 7d 5c , title)\n }\ 0001ba80: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 n\n this._ele 0001ba90: 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 75 74 ment.setAttribut 0001baa0: 65 28 27 64 61 74 61 2d 62 73 2d 6f 72 69 67 69 e('data-bs-origi 0001bab0: 6e 61 6c 2d 74 69 74 6c 65 27 2c 20 74 69 74 6c nal-title', titl 0001bac0: 65 29 20 2f 2f 20 44 4f 20 4e 4f 54 20 55 53 45 e) // DO NOT USE 0001bad0: 20 49 54 2e 20 49 73 20 6f 6e 6c 79 20 66 6f 72 IT. Is only for 0001bae0: 20 62 61 63 6b 77 61 72 64 73 20 63 6f 6d 70 61 backwards compa 0001baf0: 74 69 62 69 6c 69 74 79 5c 6e 20 20 20 20 74 68 tibility\n th 0001bb00: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 65 6d 6f is._element.remo 0001bb10: 76 65 41 74 74 72 69 62 75 74 65 28 27 74 69 74 veAttribute('tit 0001bb20: 6c 65 27 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f le')\n }\n\n _ 0001bb30: 65 6e 74 65 72 28 29 20 7b 5c 6e 20 20 20 20 69 enter() {\n i 0001bb40: 66 20 28 74 68 69 73 2e 5f 69 73 53 68 6f 77 6e f (this._isShown 0001bb50: 28 29 20 7c 7c 20 74 68 69 73 2e 5f 69 73 48 6f () || this._isHo 0001bb60: 76 65 72 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 vered) {\n 0001bb70: 74 68 69 73 2e 5f 69 73 48 6f 76 65 72 65 64 20 this._isHovered 0001bb80: 3d 20 74 72 75 65 5c 6e 20 20 20 20 20 20 72 65 = true\n re 0001bb90: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 0001bba0: 20 20 20 74 68 69 73 2e 5f 69 73 48 6f 76 65 72 this._isHover 0001bbb0: 65 64 20 3d 20 74 72 75 65 5c 6e 5c 6e 20 20 20 ed = true\n\n 0001bbc0: 20 74 68 69 73 2e 5f 73 65 74 54 69 6d 65 6f 75 this._setTimeou 0001bbd0: 74 28 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 t(() => {\n 0001bbe0: 20 69 66 20 28 74 68 69 73 2e 5f 69 73 48 6f 76 if (this._isHov 0001bbf0: 65 72 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 20 ered) {\n 0001bc00: 20 74 68 69 73 2e 73 68 6f 77 28 29 5c 6e 20 20 this.show()\n 0001bc10: 20 20 20 20 7d 5c 6e 20 20 20 20 7d 2c 20 74 68 }\n }, th 0001bc20: 69 73 2e 5f 63 6f 6e 66 69 67 2e 64 65 6c 61 79 is._config.delay 0001bc30: 2e 73 68 6f 77 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 .show)\n }\n\n 0001bc40: 20 5f 6c 65 61 76 65 28 29 20 7b 5c 6e 20 20 20 _leave() {\n 0001bc50: 20 69 66 20 28 74 68 69 73 2e 5f 69 73 57 69 74 if (this._isWit 0001bc60: 68 41 63 74 69 76 65 54 72 69 67 67 65 72 28 29 hActiveTrigger() 0001bc70: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 ) {\n retur 0001bc80: 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 n\n }\n\n 0001bc90: 74 68 69 73 2e 5f 69 73 48 6f 76 65 72 65 64 20 this._isHovered 0001bca0: 3d 20 66 61 6c 73 65 5c 6e 5c 6e 20 20 20 20 74 = false\n\n t 0001bcb0: 68 69 73 2e 5f 73 65 74 54 69 6d 65 6f 75 74 28 his._setTimeout( 0001bcc0: 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 69 () => {\n i 0001bcd0: 66 20 28 21 74 68 69 73 2e 5f 69 73 48 6f 76 65 f (!this._isHove 0001bce0: 72 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 red) {\n 0001bcf0: 74 68 69 73 2e 68 69 64 65 28 29 5c 6e 20 20 20 this.hide()\n 0001bd00: 20 20 20 7d 5c 6e 20 20 20 20 7d 2c 20 74 68 69 }\n }, thi 0001bd10: 73 2e 5f 63 6f 6e 66 69 67 2e 64 65 6c 61 79 2e s._config.delay. 0001bd20: 68 69 64 65 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 hide)\n }\n\n 0001bd30: 5f 73 65 74 54 69 6d 65 6f 75 74 28 68 61 6e 64 _setTimeout(hand 0001bd40: 6c 65 72 2c 20 74 69 6d 65 6f 75 74 29 20 7b 5c ler, timeout) {\ 0001bd50: 6e 20 20 20 20 63 6c 65 61 72 54 69 6d 65 6f 75 n clearTimeou 0001bd60: 74 28 74 68 69 73 2e 5f 74 69 6d 65 6f 75 74 29 t(this._timeout) 0001bd70: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 74 69 6d 65 \n this._time 0001bd80: 6f 75 74 20 3d 20 73 65 74 54 69 6d 65 6f 75 74 out = setTimeout 0001bd90: 28 68 61 6e 64 6c 65 72 2c 20 74 69 6d 65 6f 75 (handler, timeou 0001bda0: 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 69 73 t)\n }\n\n _is 0001bdb0: 57 69 74 68 41 63 74 69 76 65 54 72 69 67 67 65 WithActiveTrigge 0001bdc0: 72 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 r() {\n retur 0001bdd0: 6e 20 4f 62 6a 65 63 74 2e 76 61 6c 75 65 73 28 n Object.values( 0001bde0: 74 68 69 73 2e 5f 61 63 74 69 76 65 54 72 69 67 this._activeTrig 0001bdf0: 67 65 72 29 2e 69 6e 63 6c 75 64 65 73 28 74 72 ger).includes(tr 0001be00: 75 65 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 67 ue)\n }\n\n _g 0001be10: 65 74 43 6f 6e 66 69 67 28 63 6f 6e 66 69 67 29 etConfig(config) 0001be20: 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 64 61 {\n const da 0001be30: 74 61 41 74 74 72 69 62 75 74 65 73 20 3d 20 4d taAttributes = M 0001be40: 61 6e 69 70 75 6c 61 74 6f 72 2e 67 65 74 44 61 anipulator.getDa 0001be50: 74 61 41 74 74 72 69 62 75 74 65 73 28 74 68 69 taAttributes(thi 0001be60: 73 2e 5f 65 6c 65 6d 65 6e 74 29 5c 6e 5c 6e 20 s._element)\n\n 0001be70: 20 20 20 66 6f 72 20 28 63 6f 6e 73 74 20 64 61 for (const da 0001be80: 74 61 41 74 74 72 69 62 75 74 65 20 6f 66 20 4f taAttribute of O 0001be90: 62 6a 65 63 74 2e 6b 65 79 73 28 64 61 74 61 41 bject.keys(dataA 0001bea0: 74 74 72 69 62 75 74 65 73 29 29 20 7b 5c 6e 20 ttributes)) {\n 0001beb0: 20 20 20 20 20 69 66 20 28 44 49 53 41 4c 4c 4f if (DISALLO 0001bec0: 57 45 44 5f 41 54 54 52 49 42 55 54 45 53 2e 68 WED_ATTRIBUTES.h 0001bed0: 61 73 28 64 61 74 61 41 74 74 72 69 62 75 74 65 as(dataAttribute 0001bee0: 29 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 64 65 )) {\n de 0001bef0: 6c 65 74 65 20 64 61 74 61 41 74 74 72 69 62 75 lete dataAttribu 0001bf00: 74 65 73 5b 64 61 74 61 41 74 74 72 69 62 75 74 tes[dataAttribut 0001bf10: 65 5d 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 e]\n }\n 0001bf20: 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 66 69 67 }\n\n config 0001bf30: 20 3d 20 7b 5c 6e 20 20 20 20 20 20 2e 2e 2e 64 = {\n ...d 0001bf40: 61 74 61 41 74 74 72 69 62 75 74 65 73 2c 5c 6e ataAttributes,\n 0001bf50: 20 20 20 20 20 20 2e 2e 2e 28 74 79 70 65 6f 66 ...(typeof 0001bf60: 20 63 6f 6e 66 69 67 20 3d 3d 3d 20 27 6f 62 6a config === 'obj 0001bf70: 65 63 74 27 20 26 26 20 63 6f 6e 66 69 67 20 3f ect' && config ? 0001bf80: 20 63 6f 6e 66 69 67 20 3a 20 7b 7d 29 5c 6e 20 config : {})\n 0001bf90: 20 20 20 7d 5c 6e 20 20 20 20 63 6f 6e 66 69 67 }\n config 0001bfa0: 20 3d 20 74 68 69 73 2e 5f 6d 65 72 67 65 43 6f = this._mergeCo 0001bfb0: 6e 66 69 67 4f 62 6a 28 63 6f 6e 66 69 67 29 5c nfigObj(config)\ 0001bfc0: 6e 20 20 20 20 63 6f 6e 66 69 67 20 3d 20 74 68 n config = th 0001bfd0: 69 73 2e 5f 63 6f 6e 66 69 67 41 66 74 65 72 4d is._configAfterM 0001bfe0: 65 72 67 65 28 63 6f 6e 66 69 67 29 5c 6e 20 20 erge(config)\n 0001bff0: 20 20 74 68 69 73 2e 5f 74 79 70 65 43 68 65 63 this._typeChec 0001c000: 6b 43 6f 6e 66 69 67 28 63 6f 6e 66 69 67 29 5c kConfig(config)\ 0001c010: 6e 20 20 20 20 72 65 74 75 72 6e 20 63 6f 6e 66 n return conf 0001c020: 69 67 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 6f ig\n }\n\n _co 0001c030: 6e 66 69 67 41 66 74 65 72 4d 65 72 67 65 28 63 nfigAfterMerge(c 0001c040: 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 63 6f onfig) {\n co 0001c050: 6e 66 69 67 2e 63 6f 6e 74 61 69 6e 65 72 20 3d nfig.container = 0001c060: 20 63 6f 6e 66 69 67 2e 63 6f 6e 74 61 69 6e 65 config.containe 0001c070: 72 20 3d 3d 3d 20 66 61 6c 73 65 20 3f 20 64 6f r === false ? do 0001c080: 63 75 6d 65 6e 74 2e 62 6f 64 79 20 3a 20 67 65 cument.body : ge 0001c090: 74 45 6c 65 6d 65 6e 74 28 63 6f 6e 66 69 67 2e tElement(config. 0001c0a0: 63 6f 6e 74 61 69 6e 65 72 29 5c 6e 5c 6e 20 20 container)\n\n 0001c0b0: 20 20 69 66 20 28 74 79 70 65 6f 66 20 63 6f 6e if (typeof con 0001c0c0: 66 69 67 2e 64 65 6c 61 79 20 3d 3d 3d 20 27 6e fig.delay === 'n 0001c0d0: 75 6d 62 65 72 27 29 20 7b 5c 6e 20 20 20 20 20 umber') {\n 0001c0e0: 20 63 6f 6e 66 69 67 2e 64 65 6c 61 79 20 3d 20 config.delay = 0001c0f0: 7b 5c 6e 20 20 20 20 20 20 20 20 73 68 6f 77 3a {\n show: 0001c100: 20 63 6f 6e 66 69 67 2e 64 65 6c 61 79 2c 5c 6e config.delay,\n 0001c110: 20 20 20 20 20 20 20 20 68 69 64 65 3a 20 63 6f hide: co 0001c120: 6e 66 69 67 2e 64 65 6c 61 79 5c 6e 20 20 20 20 nfig.delay\n 0001c130: 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 }\n }\n\n 0001c140: 20 20 69 66 20 28 74 79 70 65 6f 66 20 63 6f 6e if (typeof con 0001c150: 66 69 67 2e 74 69 74 6c 65 20 3d 3d 3d 20 27 6e fig.title === 'n 0001c160: 75 6d 62 65 72 27 29 20 7b 5c 6e 20 20 20 20 20 umber') {\n 0001c170: 20 63 6f 6e 66 69 67 2e 74 69 74 6c 65 20 3d 20 config.title = 0001c180: 63 6f 6e 66 69 67 2e 74 69 74 6c 65 2e 74 6f 53 config.title.toS 0001c190: 74 72 69 6e 67 28 29 5c 6e 20 20 20 20 7d 5c 6e tring()\n }\n 0001c1a0: 5c 6e 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 \n if (typeof 0001c1b0: 20 63 6f 6e 66 69 67 2e 63 6f 6e 74 65 6e 74 20 config.content 0001c1c0: 3d 3d 3d 20 27 6e 75 6d 62 65 72 27 29 20 7b 5c === 'number') {\ 0001c1d0: 6e 20 20 20 20 20 20 63 6f 6e 66 69 67 2e 63 6f n config.co 0001c1e0: 6e 74 65 6e 74 20 3d 20 63 6f 6e 66 69 67 2e 63 ntent = config.c 0001c1f0: 6f 6e 74 65 6e 74 2e 74 6f 53 74 72 69 6e 67 28 ontent.toString( 0001c200: 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 )\n }\n\n 0001c210: 72 65 74 75 72 6e 20 63 6f 6e 66 69 67 5c 6e 20 return config\n 0001c220: 20 7d 5c 6e 5c 6e 20 20 5f 67 65 74 44 65 6c 65 }\n\n _getDele 0001c230: 67 61 74 65 43 6f 6e 66 69 67 28 29 20 7b 5c 6e gateConfig() {\n 0001c240: 20 20 20 20 63 6f 6e 73 74 20 63 6f 6e 66 69 67 const config 0001c250: 20 3d 20 7b 7d 5c 6e 5c 6e 20 20 20 20 66 6f 72 = {}\n\n for 0001c260: 20 28 63 6f 6e 73 74 20 5b 6b 65 79 2c 20 76 61 (const [key, va 0001c270: 6c 75 65 5d 20 6f 66 20 4f 62 6a 65 63 74 2e 65 lue] of Object.e 0001c280: 6e 74 72 69 65 73 28 74 68 69 73 2e 5f 63 6f 6e ntries(this._con 0001c290: 66 69 67 29 29 20 7b 5c 6e 20 20 20 20 20 20 69 fig)) {\n i 0001c2a0: 66 20 28 74 68 69 73 2e 63 6f 6e 73 74 72 75 63 f (this.construc 0001c2b0: 74 6f 72 2e 44 65 66 61 75 6c 74 5b 6b 65 79 5d tor.Default[key] 0001c2c0: 20 21 3d 3d 20 76 61 6c 75 65 29 20 7b 5c 6e 20 !== value) {\n 0001c2d0: 20 20 20 20 20 20 20 63 6f 6e 66 69 67 5b 6b 65 config[ke 0001c2e0: 79 5d 20 3d 20 76 61 6c 75 65 5c 6e 20 20 20 20 y] = value\n 0001c2f0: 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 }\n }\n\n 0001c300: 20 20 63 6f 6e 66 69 67 2e 73 65 6c 65 63 74 6f config.selecto 0001c310: 72 20 3d 20 66 61 6c 73 65 5c 6e 20 20 20 20 63 r = false\n c 0001c320: 6f 6e 66 69 67 2e 74 72 69 67 67 65 72 20 3d 20 onfig.trigger = 0001c330: 27 6d 61 6e 75 61 6c 27 5c 6e 5c 6e 20 20 20 20 'manual'\n\n 0001c340: 2f 2f 20 49 6e 20 74 68 65 20 66 75 74 75 72 65 // In the future 0001c350: 20 63 61 6e 20 62 65 20 72 65 70 6c 61 63 65 64 can be replaced 0001c360: 20 77 69 74 68 3a 5c 6e 20 20 20 20 2f 2f 20 63 with:\n // c 0001c370: 6f 6e 73 74 20 6b 65 79 73 57 69 74 68 44 69 66 onst keysWithDif 0001c380: 66 65 72 65 6e 74 56 61 6c 75 65 73 20 3d 20 4f ferentValues = O 0001c390: 62 6a 65 63 74 2e 65 6e 74 72 69 65 73 28 74 68 bject.entries(th 0001c3a0: 69 73 2e 5f 63 6f 6e 66 69 67 29 2e 66 69 6c 74 is._config).filt 0001c3b0: 65 72 28 65 6e 74 72 79 20 3d 3e 20 74 68 69 73 er(entry => this 0001c3c0: 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 44 65 66 .constructor.Def 0001c3d0: 61 75 6c 74 5b 65 6e 74 72 79 5b 30 5d 5d 20 21 ault[entry[0]] ! 0001c3e0: 3d 3d 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 5b == this._config[ 0001c3f0: 65 6e 74 72 79 5b 30 5d 5d 29 5c 6e 20 20 20 20 entry[0]])\n 0001c400: 2f 2f 20 60 4f 62 6a 65 63 74 2e 66 72 6f 6d 45 // `Object.fromE 0001c410: 6e 74 72 69 65 73 28 6b 65 79 73 57 69 74 68 44 ntries(keysWithD 0001c420: 69 66 66 65 72 65 6e 74 56 61 6c 75 65 73 29 60 ifferentValues)` 0001c430: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 63 6f 6e \n return con 0001c440: 66 69 67 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 64 fig\n }\n\n _d 0001c450: 69 73 70 6f 73 65 50 6f 70 70 65 72 28 29 20 7b isposePopper() { 0001c460: 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f \n if (this._ 0001c470: 70 6f 70 70 65 72 29 20 7b 5c 6e 20 20 20 20 20 popper) {\n 0001c480: 20 74 68 69 73 2e 5f 70 6f 70 70 65 72 2e 64 65 this._popper.de 0001c490: 73 74 72 6f 79 28 29 5c 6e 20 20 20 20 20 20 74 stroy()\n t 0001c4a0: 68 69 73 2e 5f 70 6f 70 70 65 72 20 3d 20 6e 75 his._popper = nu 0001c4b0: 6c 6c 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 ll\n }\n\n 0001c4c0: 20 69 66 20 28 74 68 69 73 2e 74 69 70 29 20 7b if (this.tip) { 0001c4d0: 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 74 69 70 \n this.tip 0001c4e0: 2e 72 65 6d 6f 76 65 28 29 5c 6e 20 20 20 20 20 .remove()\n 0001c4f0: 20 74 68 69 73 2e 74 69 70 20 3d 20 6e 75 6c 6c this.tip = null 0001c500: 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e \n }\n }\n\n 0001c510: 20 20 2f 2f 20 53 74 61 74 69 63 5c 6e 20 20 73 // Static\n s 0001c520: 74 61 74 69 63 20 6a 51 75 65 72 79 49 6e 74 65 tatic jQueryInte 0001c530: 72 66 61 63 65 28 63 6f 6e 66 69 67 29 20 7b 5c rface(config) {\ 0001c540: 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 n return this 0001c550: 2e 65 61 63 68 28 66 75 6e 63 74 69 6f 6e 20 28 .each(function ( 0001c560: 29 20 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 ) {\n const 0001c570: 20 64 61 74 61 20 3d 20 54 6f 6f 6c 74 69 70 2e data = Tooltip. 0001c580: 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 getOrCreateInsta 0001c590: 6e 63 65 28 74 68 69 73 2c 20 63 6f 6e 66 69 67 nce(this, config 0001c5a0: 29 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 74 )\n\n if (t 0001c5b0: 79 70 65 6f 66 20 63 6f 6e 66 69 67 20 21 3d 3d ypeof config !== 0001c5c0: 20 27 73 74 72 69 6e 67 27 29 20 7b 5c 6e 20 20 'string') {\n 0001c5d0: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 0001c5e0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 }\n\n i 0001c5f0: 66 20 28 74 79 70 65 6f 66 20 64 61 74 61 5b 63 f (typeof data[c 0001c600: 6f 6e 66 69 67 5d 20 3d 3d 3d 20 27 75 6e 64 65 onfig] === 'unde 0001c610: 66 69 6e 65 64 27 29 20 7b 5c 6e 20 20 20 20 20 fined') {\n 0001c620: 20 20 20 74 68 72 6f 77 20 6e 65 77 20 54 79 70 throw new Typ 0001c630: 65 45 72 72 6f 72 28 60 4e 6f 20 6d 65 74 68 6f eError(`No metho 0001c640: 64 20 6e 61 6d 65 64 20 5c 22 24 7b 63 6f 6e 66 d named \"${conf 0001c650: 69 67 7d 5c 22 60 29 5c 6e 20 20 20 20 20 20 7d ig}\"`)\n } 0001c660: 5c 6e 5c 6e 20 20 20 20 20 20 64 61 74 61 5b 63 \n\n data[c 0001c670: 6f 6e 66 69 67 5d 28 29 5c 6e 20 20 20 20 7d 29 onfig]()\n }) 0001c680: 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c \n }\n}\n\n/**\ 0001c690: 6e 20 2a 20 6a 51 75 65 72 79 5c 6e 20 2a 2f 5c n * jQuery\n */\ 0001c6a0: 6e 5c 6e 64 65 66 69 6e 65 4a 51 75 65 72 79 50 n\ndefineJQueryP 0001c6b0: 6c 75 67 69 6e 28 54 6f 6f 6c 74 69 70 29 5c 6e lugin(Tooltip)\n 0001c6c0: 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 \nexport default 0001c6d0: 20 54 6f 6f 6c 74 69 70 5c 6e 22 2c 22 2f 2a 2a Tooltip\n","/** 0001c6e0: 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d \n * ----------- 0001c6f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c700: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c710: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c720: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c ---------------\ 0001c730: 6e 20 2a 20 42 6f 6f 74 73 74 72 61 70 20 70 6f n * Bootstrap po 0001c740: 70 6f 76 65 72 2e 6a 73 5c 6e 20 2a 20 4c 69 63 pover.js\n * Lic 0001c750: 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 20 ensed under MIT 0001c760: 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e (https://github. 0001c770: 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 72 com/twbs/bootstr 0001c780: 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 43 ap/blob/main/LIC 0001c790: 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d ENSE)\n * ------ 0001c7a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c7b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c7c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c7d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c7e0: 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d 70 ----\n */\n\nimp 0001c7f0: 6f 72 74 20 54 6f 6f 6c 74 69 70 20 66 72 6f 6d ort Tooltip from 0001c800: 20 27 2e 2f 74 6f 6f 6c 74 69 70 2e 6a 73 27 5c './tooltip.js'\ 0001c810: 6e 69 6d 70 6f 72 74 20 7b 20 64 65 66 69 6e 65 nimport { define 0001c820: 4a 51 75 65 72 79 50 6c 75 67 69 6e 20 7d 20 66 JQueryPlugin } f 0001c830: 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 69 6e 64 65 rom './util/inde 0001c840: 78 2e 6a 73 27 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a x.js'\n\n/**\n * 0001c850: 20 43 6f 6e 73 74 61 6e 74 73 5c 6e 20 2a 2f 5c Constants\n */\ 0001c860: 6e 5c 6e 63 6f 6e 73 74 20 4e 41 4d 45 20 3d 20 n\nconst NAME = 0001c870: 27 70 6f 70 6f 76 65 72 27 5c 6e 5c 6e 63 6f 6e 'popover'\n\ncon 0001c880: 73 74 20 53 45 4c 45 43 54 4f 52 5f 54 49 54 4c st SELECTOR_TITL 0001c890: 45 20 3d 20 27 2e 70 6f 70 6f 76 65 72 2d 68 65 E = '.popover-he 0001c8a0: 61 64 65 72 27 5c 6e 63 6f 6e 73 74 20 53 45 4c ader'\nconst SEL 0001c8b0: 45 43 54 4f 52 5f 43 4f 4e 54 45 4e 54 20 3d 20 ECTOR_CONTENT = 0001c8c0: 27 2e 70 6f 70 6f 76 65 72 2d 62 6f 64 79 27 5c '.popover-body'\ 0001c8d0: 6e 5c 6e 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 n\nconst Default 0001c8e0: 20 3d 20 7b 5c 6e 20 20 2e 2e 2e 54 6f 6f 6c 74 = {\n ...Toolt 0001c8f0: 69 70 2e 44 65 66 61 75 6c 74 2c 5c 6e 20 20 63 ip.Default,\n c 0001c900: 6f 6e 74 65 6e 74 3a 20 27 27 2c 5c 6e 20 20 6f ontent: '',\n o 0001c910: 66 66 73 65 74 3a 20 5b 30 2c 20 38 5d 2c 5c 6e ffset: [0, 8],\n 0001c920: 20 20 70 6c 61 63 65 6d 65 6e 74 3a 20 27 72 69 placement: 'ri 0001c930: 67 68 74 27 2c 5c 6e 20 20 74 65 6d 70 6c 61 74 ght',\n templat 0001c940: 65 3a 20 27 3c 64 69 76 20 63 6c 61 73 73 3d 5c e: '<div class=\ 0001c950: 22 70 6f 70 6f 76 65 72 5c 22 20 72 6f 6c 65 3d "popover\" role= 0001c960: 5c 22 74 6f 6f 6c 74 69 70 5c 22 3e 27 20 2b 5c \"tooltip\">' +\ 0001c970: 6e 20 20 20 20 27 3c 64 69 76 20 63 6c 61 73 73 n '<div class 0001c980: 3d 5c 22 70 6f 70 6f 76 65 72 2d 61 72 72 6f 77 =\"popover-arrow 0001c990: 5c 22 3e 3c 2f 64 69 76 3e 27 20 2b 5c 6e 20 20 \"></div>' +\n 0001c9a0: 20 20 27 3c 68 33 20 63 6c 61 73 73 3d 5c 22 70 '<h3 class=\"p 0001c9b0: 6f 70 6f 76 65 72 2d 68 65 61 64 65 72 5c 22 3e opover-header\"> 0001c9c0: 3c 2f 68 33 3e 27 20 2b 5c 6e 20 20 20 20 27 3c </h3>' +\n '< 0001c9d0: 64 69 76 20 63 6c 61 73 73 3d 5c 22 70 6f 70 6f div class=\"popo 0001c9e0: 76 65 72 2d 62 6f 64 79 5c 22 3e 3c 2f 64 69 76 ver-body\"></div 0001c9f0: 3e 27 20 2b 5c 6e 20 20 20 20 27 3c 2f 64 69 76 >' +\n '</div 0001ca00: 3e 27 2c 5c 6e 20 20 74 72 69 67 67 65 72 3a 20 >',\n trigger: 0001ca10: 27 63 6c 69 63 6b 27 5c 6e 7d 5c 6e 5c 6e 63 6f 'click'\n}\n\nco 0001ca20: 6e 73 74 20 44 65 66 61 75 6c 74 54 79 70 65 20 nst DefaultType 0001ca30: 3d 20 7b 5c 6e 20 20 2e 2e 2e 54 6f 6f 6c 74 69 = {\n ...Toolti 0001ca40: 70 2e 44 65 66 61 75 6c 74 54 79 70 65 2c 5c 6e p.DefaultType,\n 0001ca50: 20 20 63 6f 6e 74 65 6e 74 3a 20 27 28 6e 75 6c content: '(nul 0001ca60: 6c 7c 73 74 72 69 6e 67 7c 65 6c 65 6d 65 6e 74 l|string|element 0001ca70: 7c 66 75 6e 63 74 69 6f 6e 29 27 5c 6e 7d 5c 6e |function)'\n}\n 0001ca80: 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 73 20 \n/**\n * Class 0001ca90: 64 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a 2f 5c definition\n */\ 0001caa0: 6e 5c 6e 63 6c 61 73 73 20 50 6f 70 6f 76 65 72 n\nclass Popover 0001cab0: 20 65 78 74 65 6e 64 73 20 54 6f 6f 6c 74 69 70 extends Tooltip 0001cac0: 20 7b 5c 6e 20 20 2f 2f 20 47 65 74 74 65 72 73 {\n // Getters 0001cad0: 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 20 44 \n static get D 0001cae0: 65 66 61 75 6c 74 28 29 20 7b 5c 6e 20 20 20 20 efault() {\n 0001caf0: 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 5c 6e return Default\n 0001cb00: 20 20 7d 5c 6e 5c 6e 20 20 73 74 61 74 69 63 20 }\n\n static 0001cb10: 67 65 74 20 44 65 66 61 75 6c 74 54 79 70 65 28 get DefaultType( 0001cb20: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 0001cb30: 44 65 66 61 75 6c 74 54 79 70 65 5c 6e 20 20 7d DefaultType\n } 0001cb40: 5c 6e 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 \n\n static get 0001cb50: 20 4e 41 4d 45 28 29 20 7b 5c 6e 20 20 20 20 72 NAME() {\n r 0001cb60: 65 74 75 72 6e 20 4e 41 4d 45 5c 6e 20 20 7d 5c eturn NAME\n }\ 0001cb70: 6e 5c 6e 20 20 2f 2f 20 4f 76 65 72 72 69 64 65 n\n // Override 0001cb80: 73 5c 6e 20 20 5f 69 73 57 69 74 68 43 6f 6e 74 s\n _isWithCont 0001cb90: 65 6e 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 ent() {\n ret 0001cba0: 75 72 6e 20 74 68 69 73 2e 5f 67 65 74 54 69 74 urn this._getTit 0001cbb0: 6c 65 28 29 20 7c 7c 20 74 68 69 73 2e 5f 67 65 le() || this._ge 0001cbc0: 74 43 6f 6e 74 65 6e 74 28 29 5c 6e 20 20 7d 5c tContent()\n }\ 0001cbd0: 6e 5c 6e 20 20 2f 2f 20 50 72 69 76 61 74 65 5c n\n // Private\ 0001cbe0: 6e 20 20 5f 67 65 74 43 6f 6e 74 65 6e 74 46 6f n _getContentFo 0001cbf0: 72 54 65 6d 70 6c 61 74 65 28 29 20 7b 5c 6e 20 rTemplate() {\n 0001cc00: 20 20 20 72 65 74 75 72 6e 20 7b 5c 6e 20 20 20 return {\n 0001cc10: 20 20 20 5b 53 45 4c 45 43 54 4f 52 5f 54 49 54 [SELECTOR_TIT 0001cc20: 4c 45 5d 3a 20 74 68 69 73 2e 5f 67 65 74 54 69 LE]: this._getTi 0001cc30: 74 6c 65 28 29 2c 5c 6e 20 20 20 20 20 20 5b 53 tle(),\n [S 0001cc40: 45 4c 45 43 54 4f 52 5f 43 4f 4e 54 45 4e 54 5d ELECTOR_CONTENT] 0001cc50: 3a 20 74 68 69 73 2e 5f 67 65 74 43 6f 6e 74 65 : this._getConte 0001cc60: 6e 74 28 29 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d nt()\n }\n } 0001cc70: 5c 6e 5c 6e 20 20 5f 67 65 74 43 6f 6e 74 65 6e \n\n _getConten 0001cc80: 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 t() {\n retur 0001cc90: 6e 20 74 68 69 73 2e 5f 72 65 73 6f 6c 76 65 50 n this._resolveP 0001cca0: 6f 73 73 69 62 6c 65 46 75 6e 63 74 69 6f 6e 28 ossibleFunction( 0001ccb0: 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 63 6f 6e this._config.con 0001ccc0: 74 65 6e 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 tent)\n }\n\n 0001ccd0: 2f 2f 20 53 74 61 74 69 63 5c 6e 20 20 73 74 61 // Static\n sta 0001cce0: 74 69 63 20 6a 51 75 65 72 79 49 6e 74 65 72 66 tic jQueryInterf 0001ccf0: 61 63 65 28 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 ace(config) {\n 0001cd00: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 65 return this.e 0001cd10: 61 63 68 28 66 75 6e 63 74 69 6f 6e 20 28 29 20 ach(function () 0001cd20: 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 64 {\n const d 0001cd30: 61 74 61 20 3d 20 50 6f 70 6f 76 65 72 2e 67 65 ata = Popover.ge 0001cd40: 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 6e 63 tOrCreateInstanc 0001cd50: 65 28 74 68 69 73 2c 20 63 6f 6e 66 69 67 29 5c e(this, config)\ 0001cd60: 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 74 79 70 n\n if (typ 0001cd70: 65 6f 66 20 63 6f 6e 66 69 67 20 21 3d 3d 20 27 eof config !== ' 0001cd80: 73 74 72 69 6e 67 27 29 20 7b 5c 6e 20 20 20 20 string') {\n 0001cd90: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 0001cda0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 }\n\n if 0001cdb0: 28 74 79 70 65 6f 66 20 64 61 74 61 5b 63 6f 6e (typeof data[con 0001cdc0: 66 69 67 5d 20 3d 3d 3d 20 27 75 6e 64 65 66 69 fig] === 'undefi 0001cdd0: 6e 65 64 27 29 20 7b 5c 6e 20 20 20 20 20 20 20 ned') {\n 0001cde0: 20 74 68 72 6f 77 20 6e 65 77 20 54 79 70 65 45 throw new TypeE 0001cdf0: 72 72 6f 72 28 60 4e 6f 20 6d 65 74 68 6f 64 20 rror(`No method 0001ce00: 6e 61 6d 65 64 20 5c 22 24 7b 63 6f 6e 66 69 67 named \"${config 0001ce10: 7d 5c 22 60 29 5c 6e 20 20 20 20 20 20 7d 5c 6e }\"`)\n }\n 0001ce20: 5c 6e 20 20 20 20 20 20 64 61 74 61 5b 63 6f 6e \n data[con 0001ce30: 66 69 67 5d 28 29 5c 6e 20 20 20 20 7d 29 5c 6e fig]()\n })\n 0001ce40: 20 20 7d 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 }\n}\n\n/**\n 0001ce50: 2a 20 6a 51 75 65 72 79 5c 6e 20 2a 2f 5c 6e 5c * jQuery\n */\n\ 0001ce60: 6e 64 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 ndefineJQueryPlu 0001ce70: 67 69 6e 28 50 6f 70 6f 76 65 72 29 5c 6e 5c 6e gin(Popover)\n\n 0001ce80: 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 50 export default P 0001ce90: 6f 70 6f 76 65 72 5c 6e 22 2c 22 2f 2a 2a 5c 6e opover\n","/**\n 0001cea0: 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d * ------------- 0001ceb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cec0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001ced0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cee0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 -------------\n 0001cef0: 2a 20 42 6f 6f 74 73 74 72 61 70 20 73 63 72 6f * Bootstrap scro 0001cf00: 6c 6c 73 70 79 2e 6a 73 5c 6e 20 2a 20 4c 69 63 llspy.js\n * Lic 0001cf10: 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 20 ensed under MIT 0001cf20: 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e (https://github. 0001cf30: 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 72 com/twbs/bootstr 0001cf40: 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 43 ap/blob/main/LIC 0001cf50: 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d ENSE)\n * ------ 0001cf60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cf70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cf80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cf90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cfa0: 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d 70 ----\n */\n\nimp 0001cfb0: 6f 72 74 20 42 61 73 65 43 6f 6d 70 6f 6e 65 6e ort BaseComponen 0001cfc0: 74 20 66 72 6f 6d 20 27 2e 2f 62 61 73 65 2d 63 t from './base-c 0001cfd0: 6f 6d 70 6f 6e 65 6e 74 2e 6a 73 27 5c 6e 69 6d omponent.js'\nim 0001cfe0: 70 6f 72 74 20 45 76 65 6e 74 48 61 6e 64 6c 65 port EventHandle 0001cff0: 72 20 66 72 6f 6d 20 27 2e 2f 64 6f 6d 2f 65 76 r from './dom/ev 0001d000: 65 6e 74 2d 68 61 6e 64 6c 65 72 2e 6a 73 27 5c ent-handler.js'\ 0001d010: 6e 69 6d 70 6f 72 74 20 53 65 6c 65 63 74 6f 72 nimport Selector 0001d020: 45 6e 67 69 6e 65 20 66 72 6f 6d 20 27 2e 2f 64 Engine from './d 0001d030: 6f 6d 2f 73 65 6c 65 63 74 6f 72 2d 65 6e 67 69 om/selector-engi 0001d040: 6e 65 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 7b ne.js'\nimport { 0001d050: 5c 6e 20 20 64 65 66 69 6e 65 4a 51 75 65 72 79 \n defineJQuery 0001d060: 50 6c 75 67 69 6e 2c 20 67 65 74 45 6c 65 6d 65 Plugin, getEleme 0001d070: 6e 74 2c 20 69 73 44 69 73 61 62 6c 65 64 2c 20 nt, isDisabled, 0001d080: 69 73 56 69 73 69 62 6c 65 5c 6e 7d 20 66 72 6f isVisible\n} fro 0001d090: 6d 20 27 2e 2f 75 74 69 6c 2f 69 6e 64 65 78 2e m './util/index. 0001d0a0: 6a 73 27 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 js'\n\n/**\n * C 0001d0b0: 6f 6e 73 74 61 6e 74 73 5c 6e 20 2a 2f 5c 6e 5c onstants\n */\n\ 0001d0c0: 6e 63 6f 6e 73 74 20 4e 41 4d 45 20 3d 20 27 73 nconst NAME = 's 0001d0d0: 63 72 6f 6c 6c 73 70 79 27 5c 6e 63 6f 6e 73 74 crollspy'\nconst 0001d0e0: 20 44 41 54 41 5f 4b 45 59 20 3d 20 27 62 73 2e DATA_KEY = 'bs. 0001d0f0: 73 63 72 6f 6c 6c 73 70 79 27 5c 6e 63 6f 6e 73 scrollspy'\ncons 0001d100: 74 20 45 56 45 4e 54 5f 4b 45 59 20 3d 20 60 2e t EVENT_KEY = `. 0001d110: 24 7b 44 41 54 41 5f 4b 45 59 7d 60 5c 6e 63 6f ${DATA_KEY}`\nco 0001d120: 6e 73 74 20 44 41 54 41 5f 41 50 49 5f 4b 45 59 nst DATA_API_KEY 0001d130: 20 3d 20 27 2e 64 61 74 61 2d 61 70 69 27 5c 6e = '.data-api'\n 0001d140: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 41 43 \nconst EVENT_AC 0001d150: 54 49 56 41 54 45 20 3d 20 60 61 63 74 69 76 61 TIVATE = `activa 0001d160: 74 65 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c te${EVENT_KEY}`\ 0001d170: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 43 4c 49 nconst EVENT_CLI 0001d180: 43 4b 20 3d 20 60 63 6c 69 63 6b 24 7b 45 56 45 CK = `click${EVE 0001d190: 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 NT_KEY}`\nconst 0001d1a0: 45 56 45 4e 54 5f 4c 4f 41 44 5f 44 41 54 41 5f EVENT_LOAD_DATA_ 0001d1b0: 41 50 49 20 3d 20 60 6c 6f 61 64 24 7b 45 56 45 API = `load${EVE 0001d1c0: 4e 54 5f 4b 45 59 7d 24 7b 44 41 54 41 5f 41 50 NT_KEY}${DATA_AP 0001d1d0: 49 5f 4b 45 59 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 I_KEY}`\n\nconst 0001d1e0: 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 44 52 4f 50 CLASS_NAME_DROP 0001d1f0: 44 4f 57 4e 5f 49 54 45 4d 20 3d 20 27 64 72 6f DOWN_ITEM = 'dro 0001d200: 70 64 6f 77 6e 2d 69 74 65 6d 27 5c 6e 63 6f 6e pdown-item'\ncon 0001d210: 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 st CLASS_NAME_AC 0001d220: 54 49 56 45 20 3d 20 27 61 63 74 69 76 65 27 5c TIVE = 'active'\ 0001d230: 6e 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f n\nconst SELECTO 0001d240: 52 5f 44 41 54 41 5f 53 50 59 20 3d 20 27 5b 64 R_DATA_SPY = '[d 0001d250: 61 74 61 2d 62 73 2d 73 70 79 3d 5c 22 73 63 72 ata-bs-spy=\"scr 0001d260: 6f 6c 6c 5c 22 5d 27 5c 6e 63 6f 6e 73 74 20 53 oll\"]'\nconst S 0001d270: 45 4c 45 43 54 4f 52 5f 54 41 52 47 45 54 5f 4c ELECTOR_TARGET_L 0001d280: 49 4e 4b 53 20 3d 20 27 5b 68 72 65 66 5d 27 5c INKS = '[href]'\ 0001d290: 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f nconst SELECTOR_ 0001d2a0: 4e 41 56 5f 4c 49 53 54 5f 47 52 4f 55 50 20 3d NAV_LIST_GROUP = 0001d2b0: 20 27 2e 6e 61 76 2c 20 2e 6c 69 73 74 2d 67 72 '.nav, .list-gr 0001d2c0: 6f 75 70 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 oup'\nconst SELE 0001d2d0: 43 54 4f 52 5f 4e 41 56 5f 4c 49 4e 4b 53 20 3d CTOR_NAV_LINKS = 0001d2e0: 20 27 2e 6e 61 76 2d 6c 69 6e 6b 27 5c 6e 63 6f '.nav-link'\nco 0001d2f0: 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 4e 41 56 nst SELECTOR_NAV 0001d300: 5f 49 54 45 4d 53 20 3d 20 27 2e 6e 61 76 2d 69 _ITEMS = '.nav-i 0001d310: 74 65 6d 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 tem'\nconst SELE 0001d320: 43 54 4f 52 5f 4c 49 53 54 5f 49 54 45 4d 53 20 CTOR_LIST_ITEMS 0001d330: 3d 20 27 2e 6c 69 73 74 2d 67 72 6f 75 70 2d 69 = '.list-group-i 0001d340: 74 65 6d 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 tem'\nconst SELE 0001d350: 43 54 4f 52 5f 4c 49 4e 4b 5f 49 54 45 4d 53 20 CTOR_LINK_ITEMS 0001d360: 3d 20 60 24 7b 53 45 4c 45 43 54 4f 52 5f 4e 41 = `${SELECTOR_NA 0001d370: 56 5f 4c 49 4e 4b 53 7d 2c 20 24 7b 53 45 4c 45 V_LINKS}, ${SELE 0001d380: 43 54 4f 52 5f 4e 41 56 5f 49 54 45 4d 53 7d 20 CTOR_NAV_ITEMS} 0001d390: 3e 20 24 7b 53 45 4c 45 43 54 4f 52 5f 4e 41 56 > ${SELECTOR_NAV 0001d3a0: 5f 4c 49 4e 4b 53 7d 2c 20 24 7b 53 45 4c 45 43 _LINKS}, ${SELEC 0001d3b0: 54 4f 52 5f 4c 49 53 54 5f 49 54 45 4d 53 7d 60 TOR_LIST_ITEMS}` 0001d3c0: 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 \nconst SELECTOR 0001d3d0: 5f 44 52 4f 50 44 4f 57 4e 20 3d 20 27 2e 64 72 _DROPDOWN = '.dr 0001d3e0: 6f 70 64 6f 77 6e 27 5c 6e 63 6f 6e 73 74 20 53 opdown'\nconst S 0001d3f0: 45 4c 45 43 54 4f 52 5f 44 52 4f 50 44 4f 57 4e ELECTOR_DROPDOWN 0001d400: 5f 54 4f 47 47 4c 45 20 3d 20 27 2e 64 72 6f 70 _TOGGLE = '.drop 0001d410: 64 6f 77 6e 2d 74 6f 67 67 6c 65 27 5c 6e 5c 6e down-toggle'\n\n 0001d420: 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 20 3d 20 const Default = 0001d430: 7b 5c 6e 20 20 6f 66 66 73 65 74 3a 20 6e 75 6c {\n offset: nul 0001d440: 6c 2c 20 2f 2f 20 54 4f 44 4f 3a 20 76 36 20 40 l, // TODO: v6 @ 0001d450: 64 65 70 72 65 63 61 74 65 64 2c 20 6b 65 65 70 deprecated, keep 0001d460: 20 69 74 20 66 6f 72 20 62 61 63 6b 77 61 72 64 it for backward 0001d470: 73 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 s compatibility 0001d480: 72 65 61 73 6f 6e 73 5c 6e 20 20 72 6f 6f 74 4d reasons\n rootM 0001d490: 61 72 67 69 6e 3a 20 27 30 70 78 20 30 70 78 20 argin: '0px 0px 0001d4a0: 2d 32 35 25 27 2c 5c 6e 20 20 73 6d 6f 6f 74 68 -25%',\n smooth 0001d4b0: 53 63 72 6f 6c 6c 3a 20 66 61 6c 73 65 2c 5c 6e Scroll: false,\n 0001d4c0: 20 20 74 61 72 67 65 74 3a 20 6e 75 6c 6c 2c 5c target: null,\ 0001d4d0: 6e 20 20 74 68 72 65 73 68 6f 6c 64 3a 20 5b 30 n threshold: [0 0001d4e0: 2e 31 2c 20 30 2e 35 2c 20 31 5d 5c 6e 7d 5c 6e .1, 0.5, 1]\n}\n 0001d4f0: 5c 6e 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 54 \nconst DefaultT 0001d500: 79 70 65 20 3d 20 7b 5c 6e 20 20 6f 66 66 73 65 ype = {\n offse 0001d510: 74 3a 20 27 28 6e 75 6d 62 65 72 7c 6e 75 6c 6c t: '(number|null 0001d520: 29 27 2c 20 2f 2f 20 54 4f 44 4f 20 76 36 20 40 )', // TODO v6 @ 0001d530: 64 65 70 72 65 63 61 74 65 64 2c 20 6b 65 65 70 deprecated, keep 0001d540: 20 69 74 20 66 6f 72 20 62 61 63 6b 77 61 72 64 it for backward 0001d550: 73 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 s compatibility 0001d560: 72 65 61 73 6f 6e 73 5c 6e 20 20 72 6f 6f 74 4d reasons\n rootM 0001d570: 61 72 67 69 6e 3a 20 27 73 74 72 69 6e 67 27 2c argin: 'string', 0001d580: 5c 6e 20 20 73 6d 6f 6f 74 68 53 63 72 6f 6c 6c \n smoothScroll 0001d590: 3a 20 27 62 6f 6f 6c 65 61 6e 27 2c 5c 6e 20 20 : 'boolean',\n 0001d5a0: 74 61 72 67 65 74 3a 20 27 65 6c 65 6d 65 6e 74 target: 'element 0001d5b0: 27 2c 5c 6e 20 20 74 68 72 65 73 68 6f 6c 64 3a ',\n threshold: 0001d5c0: 20 27 61 72 72 61 79 27 5c 6e 7d 5c 6e 5c 6e 2f 'array'\n}\n\n/ 0001d5d0: 2a 2a 5c 6e 20 2a 20 43 6c 61 73 73 20 64 65 66 **\n * Class def 0001d5e0: 69 6e 69 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e inition\n */\n\n 0001d5f0: 63 6c 61 73 73 20 53 63 72 6f 6c 6c 53 70 79 20 class ScrollSpy 0001d600: 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 70 extends BaseComp 0001d610: 6f 6e 65 6e 74 20 7b 5c 6e 20 20 63 6f 6e 73 74 onent {\n const 0001d620: 72 75 63 74 6f 72 28 65 6c 65 6d 65 6e 74 2c 20 ructor(element, 0001d630: 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 73 config) {\n s 0001d640: 75 70 65 72 28 65 6c 65 6d 65 6e 74 2c 20 63 6f uper(element, co 0001d650: 6e 66 69 67 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 nfig)\n\n // 0001d660: 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 20 69 73 this._element is 0001d670: 20 74 68 65 20 6f 62 73 65 72 76 61 62 6c 65 73 the observables 0001d680: 43 6f 6e 74 61 69 6e 65 72 20 61 6e 64 20 63 6f Container and co 0001d690: 6e 66 69 67 2e 74 61 72 67 65 74 20 74 68 65 20 nfig.target the 0001d6a0: 6d 65 6e 75 20 6c 69 6e 6b 73 20 77 72 61 70 70 menu links wrapp 0001d6b0: 65 72 5c 6e 20 20 20 20 74 68 69 73 2e 5f 74 61 er\n this._ta 0001d6c0: 72 67 65 74 4c 69 6e 6b 73 20 3d 20 6e 65 77 20 rgetLinks = new 0001d6d0: 4d 61 70 28 29 5c 6e 20 20 20 20 74 68 69 73 2e Map()\n this. 0001d6e0: 5f 6f 62 73 65 72 76 61 62 6c 65 53 65 63 74 69 _observableSecti 0001d6f0: 6f 6e 73 20 3d 20 6e 65 77 20 4d 61 70 28 29 5c ons = new Map()\ 0001d700: 6e 20 20 20 20 74 68 69 73 2e 5f 72 6f 6f 74 45 n this._rootE 0001d710: 6c 65 6d 65 6e 74 20 3d 20 67 65 74 43 6f 6d 70 lement = getComp 0001d720: 75 74 65 64 53 74 79 6c 65 28 74 68 69 73 2e 5f utedStyle(this._ 0001d730: 65 6c 65 6d 65 6e 74 29 2e 6f 76 65 72 66 6c 6f element).overflo 0001d740: 77 59 20 3d 3d 3d 20 27 76 69 73 69 62 6c 65 27 wY === 'visible' 0001d750: 20 3f 20 6e 75 6c 6c 20 3a 20 74 68 69 73 2e 5f ? null : this._ 0001d760: 65 6c 65 6d 65 6e 74 5c 6e 20 20 20 20 74 68 69 element\n thi 0001d770: 73 2e 5f 61 63 74 69 76 65 54 61 72 67 65 74 20 s._activeTarget 0001d780: 3d 20 6e 75 6c 6c 5c 6e 20 20 20 20 74 68 69 73 = null\n this 0001d790: 2e 5f 6f 62 73 65 72 76 65 72 20 3d 20 6e 75 6c ._observer = nul 0001d7a0: 6c 5c 6e 20 20 20 20 74 68 69 73 2e 5f 70 72 65 l\n this._pre 0001d7b0: 76 69 6f 75 73 53 63 72 6f 6c 6c 44 61 74 61 20 viousScrollData 0001d7c0: 3d 20 7b 5c 6e 20 20 20 20 20 20 76 69 73 69 62 = {\n visib 0001d7d0: 6c 65 45 6e 74 72 79 54 6f 70 3a 20 30 2c 5c 6e leEntryTop: 0,\n 0001d7e0: 20 20 20 20 20 20 70 61 72 65 6e 74 53 63 72 6f parentScro 0001d7f0: 6c 6c 54 6f 70 3a 20 30 5c 6e 20 20 20 20 7d 5c llTop: 0\n }\ 0001d800: 6e 20 20 20 20 74 68 69 73 2e 72 65 66 72 65 73 n this.refres 0001d810: 68 28 29 20 2f 2f 20 69 6e 69 74 69 61 6c 69 7a h() // initializ 0001d820: 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 47 e\n }\n\n // G 0001d830: 65 74 74 65 72 73 5c 6e 20 20 73 74 61 74 69 63 etters\n static 0001d840: 20 67 65 74 20 44 65 66 61 75 6c 74 28 29 20 7b get Default() { 0001d850: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 44 65 66 \n return Def 0001d860: 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 ault\n }\n\n s 0001d870: 74 61 74 69 63 20 67 65 74 20 44 65 66 61 75 6c tatic get Defaul 0001d880: 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 20 20 72 tType() {\n r 0001d890: 65 74 75 72 6e 20 44 65 66 61 75 6c 74 54 79 70 eturn DefaultTyp 0001d8a0: 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 74 61 74 e\n }\n\n stat 0001d8b0: 69 63 20 67 65 74 20 4e 41 4d 45 28 29 20 7b 5c ic get NAME() {\ 0001d8c0: 6e 20 20 20 20 72 65 74 75 72 6e 20 4e 41 4d 45 n return NAME 0001d8d0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 75 \n }\n\n // Pu 0001d8e0: 62 6c 69 63 5c 6e 20 20 72 65 66 72 65 73 68 28 blic\n refresh( 0001d8f0: 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 ) {\n this._i 0001d900: 6e 69 74 69 61 6c 69 7a 65 54 61 72 67 65 74 73 nitializeTargets 0001d910: 41 6e 64 4f 62 73 65 72 76 61 62 6c 65 73 28 29 AndObservables() 0001d920: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 6d 61 79 62 \n this._mayb 0001d930: 65 45 6e 61 62 6c 65 53 6d 6f 6f 74 68 53 63 72 eEnableSmoothScr 0001d940: 6f 6c 6c 28 29 5c 6e 5c 6e 20 20 20 20 69 66 20 oll()\n\n if 0001d950: 28 74 68 69 73 2e 5f 6f 62 73 65 72 76 65 72 29 (this._observer) 0001d960: 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f {\n this._ 0001d970: 6f 62 73 65 72 76 65 72 2e 64 69 73 63 6f 6e 6e observer.disconn 0001d980: 65 63 74 28 29 5c 6e 20 20 20 20 7d 20 65 6c 73 ect()\n } els 0001d990: 65 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e e {\n this. 0001d9a0: 5f 6f 62 73 65 72 76 65 72 20 3d 20 74 68 69 73 _observer = this 0001d9b0: 2e 5f 67 65 74 4e 65 77 4f 62 73 65 72 76 65 72 ._getNewObserver 0001d9c0: 28 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 ()\n }\n\n 0001d9d0: 20 66 6f 72 20 28 63 6f 6e 73 74 20 73 65 63 74 for (const sect 0001d9e0: 69 6f 6e 20 6f 66 20 74 68 69 73 2e 5f 6f 62 73 ion of this._obs 0001d9f0: 65 72 76 61 62 6c 65 53 65 63 74 69 6f 6e 73 2e ervableSections. 0001da00: 76 61 6c 75 65 73 28 29 29 20 7b 5c 6e 20 20 20 values()) {\n 0001da10: 20 20 20 74 68 69 73 2e 5f 6f 62 73 65 72 76 65 this._observe 0001da20: 72 2e 6f 62 73 65 72 76 65 28 73 65 63 74 69 6f r.observe(sectio 0001da30: 6e 29 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e n)\n }\n }\n 0001da40: 5c 6e 20 20 64 69 73 70 6f 73 65 28 29 20 7b 5c \n dispose() {\ 0001da50: 6e 20 20 20 20 74 68 69 73 2e 5f 6f 62 73 65 72 n this._obser 0001da60: 76 65 72 2e 64 69 73 63 6f 6e 6e 65 63 74 28 29 ver.disconnect() 0001da70: 5c 6e 20 20 20 20 73 75 70 65 72 2e 64 69 73 70 \n super.disp 0001da80: 6f 73 65 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 ose()\n }\n\n 0001da90: 2f 2f 20 50 72 69 76 61 74 65 5c 6e 20 20 5f 63 // Private\n _c 0001daa0: 6f 6e 66 69 67 41 66 74 65 72 4d 65 72 67 65 28 onfigAfterMerge( 0001dab0: 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 2f config) {\n / 0001dac0: 2f 20 54 4f 44 4f 3a 20 6f 6e 20 76 36 20 74 61 / TODO: on v6 ta 0001dad0: 72 67 65 74 20 73 68 6f 75 6c 64 20 62 65 20 67 rget should be g 0001dae0: 69 76 65 6e 20 65 78 70 6c 69 63 69 74 6c 79 20 iven explicitly 0001daf0: 26 20 72 65 6d 6f 76 65 20 74 68 65 20 7b 74 61 & remove the {ta 0001db00: 72 67 65 74 3a 20 27 73 73 2d 74 61 72 67 65 74 rget: 'ss-target 0001db10: 27 7d 20 63 61 73 65 5c 6e 20 20 20 20 63 6f 6e '} case\n con 0001db20: 66 69 67 2e 74 61 72 67 65 74 20 3d 20 67 65 74 fig.target = get 0001db30: 45 6c 65 6d 65 6e 74 28 63 6f 6e 66 69 67 2e 74 Element(config.t 0001db40: 61 72 67 65 74 29 20 7c 7c 20 64 6f 63 75 6d 65 arget) || docume 0001db50: 6e 74 2e 62 6f 64 79 5c 6e 5c 6e 20 20 20 20 2f nt.body\n\n / 0001db60: 2f 20 54 4f 44 4f 3a 20 76 36 20 4f 6e 6c 79 20 / TODO: v6 Only 0001db70: 66 6f 72 20 62 61 63 6b 77 61 72 64 73 20 63 6f for backwards co 0001db80: 6d 70 61 74 69 62 69 6c 69 74 79 20 72 65 61 73 mpatibility reas 0001db90: 6f 6e 73 2e 20 55 73 65 20 72 6f 6f 74 4d 61 72 ons. Use rootMar 0001dba0: 67 69 6e 20 6f 6e 6c 79 5c 6e 20 20 20 20 63 6f gin only\n co 0001dbb0: 6e 66 69 67 2e 72 6f 6f 74 4d 61 72 67 69 6e 20 nfig.rootMargin 0001dbc0: 3d 20 63 6f 6e 66 69 67 2e 6f 66 66 73 65 74 20 = config.offset 0001dbd0: 3f 20 60 24 7b 63 6f 6e 66 69 67 2e 6f 66 66 73 ? `${config.offs 0001dbe0: 65 74 7d 70 78 20 30 70 78 20 2d 33 30 25 60 20 et}px 0px -30%` 0001dbf0: 3a 20 63 6f 6e 66 69 67 2e 72 6f 6f 74 4d 61 72 : config.rootMar 0001dc00: 67 69 6e 5c 6e 5c 6e 20 20 20 20 69 66 20 28 74 gin\n\n if (t 0001dc10: 79 70 65 6f 66 20 63 6f 6e 66 69 67 2e 74 68 72 ypeof config.thr 0001dc20: 65 73 68 6f 6c 64 20 3d 3d 3d 20 27 73 74 72 69 eshold === 'stri 0001dc30: 6e 67 27 29 20 7b 5c 6e 20 20 20 20 20 20 63 6f ng') {\n co 0001dc40: 6e 66 69 67 2e 74 68 72 65 73 68 6f 6c 64 20 3d nfig.threshold = 0001dc50: 20 63 6f 6e 66 69 67 2e 74 68 72 65 73 68 6f 6c config.threshol 0001dc60: 64 2e 73 70 6c 69 74 28 27 2c 27 29 2e 6d 61 70 d.split(',').map 0001dc70: 28 76 61 6c 75 65 20 3d 3e 20 4e 75 6d 62 65 72 (value => Number 0001dc80: 2e 70 61 72 73 65 46 6c 6f 61 74 28 76 61 6c 75 .parseFloat(valu 0001dc90: 65 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 e))\n }\n\n 0001dca0: 20 20 72 65 74 75 72 6e 20 63 6f 6e 66 69 67 5c return config\ 0001dcb0: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 6d 61 79 62 65 n }\n\n _maybe 0001dcc0: 45 6e 61 62 6c 65 53 6d 6f 6f 74 68 53 63 72 6f EnableSmoothScro 0001dcd0: 6c 6c 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 ll() {\n if ( 0001dce0: 21 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 73 6d !this._config.sm 0001dcf0: 6f 6f 74 68 53 63 72 6f 6c 6c 29 20 7b 5c 6e 20 oothScroll) {\n 0001dd00: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 0001dd10: 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 75 6e 72 }\n\n // unr 0001dd20: 65 67 69 73 74 65 72 20 61 6e 79 20 70 72 65 76 egister any prev 0001dd30: 69 6f 75 73 20 6c 69 73 74 65 6e 65 72 73 5c 6e ious listeners\n 0001dd40: 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 EventHandler 0001dd50: 2e 6f 66 66 28 74 68 69 73 2e 5f 63 6f 6e 66 69 .off(this._confi 0001dd60: 67 2e 74 61 72 67 65 74 2c 20 45 56 45 4e 54 5f g.target, EVENT_ 0001dd70: 43 4c 49 43 4b 29 5c 6e 5c 6e 20 20 20 20 45 76 CLICK)\n\n Ev 0001dd80: 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 74 68 entHandler.on(th 0001dd90: 69 73 2e 5f 63 6f 6e 66 69 67 2e 74 61 72 67 65 is._config.targe 0001dda0: 74 2c 20 45 56 45 4e 54 5f 43 4c 49 43 4b 2c 20 t, EVENT_CLICK, 0001ddb0: 53 45 4c 45 43 54 4f 52 5f 54 41 52 47 45 54 5f SELECTOR_TARGET_ 0001ddc0: 4c 49 4e 4b 53 2c 20 65 76 65 6e 74 20 3d 3e 20 LINKS, event => 0001ddd0: 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 6f {\n const o 0001dde0: 62 73 65 72 76 61 62 6c 65 53 65 63 74 69 6f 6e bservableSection 0001ddf0: 20 3d 20 74 68 69 73 2e 5f 6f 62 73 65 72 76 61 = this._observa 0001de00: 62 6c 65 53 65 63 74 69 6f 6e 73 2e 67 65 74 28 bleSections.get( 0001de10: 65 76 65 6e 74 2e 74 61 72 67 65 74 2e 68 61 73 event.target.has 0001de20: 68 29 5c 6e 20 20 20 20 20 20 69 66 20 28 6f 62 h)\n if (ob 0001de30: 73 65 72 76 61 62 6c 65 53 65 63 74 69 6f 6e 29 servableSection) 0001de40: 20 7b 5c 6e 20 20 20 20 20 20 20 20 65 76 65 6e {\n even 0001de50: 74 2e 70 72 65 76 65 6e 74 44 65 66 61 75 6c 74 t.preventDefault 0001de60: 28 29 5c 6e 20 20 20 20 20 20 20 20 63 6f 6e 73 ()\n cons 0001de70: 74 20 72 6f 6f 74 20 3d 20 74 68 69 73 2e 5f 72 t root = this._r 0001de80: 6f 6f 74 45 6c 65 6d 65 6e 74 20 7c 7c 20 77 69 ootElement || wi 0001de90: 6e 64 6f 77 5c 6e 20 20 20 20 20 20 20 20 63 6f ndow\n co 0001dea0: 6e 73 74 20 68 65 69 67 68 74 20 3d 20 6f 62 73 nst height = obs 0001deb0: 65 72 76 61 62 6c 65 53 65 63 74 69 6f 6e 2e 6f ervableSection.o 0001dec0: 66 66 73 65 74 54 6f 70 20 2d 20 74 68 69 73 2e ffsetTop - this. 0001ded0: 5f 65 6c 65 6d 65 6e 74 2e 6f 66 66 73 65 74 54 _element.offsetT 0001dee0: 6f 70 5c 6e 20 20 20 20 20 20 20 20 69 66 20 28 op\n if ( 0001def0: 72 6f 6f 74 2e 73 63 72 6f 6c 6c 54 6f 29 20 7b root.scrollTo) { 0001df00: 5c 6e 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 \n root 0001df10: 2e 73 63 72 6f 6c 6c 54 6f 28 7b 20 74 6f 70 3a .scrollTo({ top: 0001df20: 20 68 65 69 67 68 74 2c 20 62 65 68 61 76 69 6f height, behavio 0001df30: 72 3a 20 27 73 6d 6f 6f 74 68 27 20 7d 29 5c 6e r: 'smooth' })\n 0001df40: 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e return 0001df50: 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 \n }\n\n 0001df60: 20 20 20 20 20 20 20 2f 2f 20 43 68 72 6f 6d 65 // Chrome 0001df70: 20 36 30 20 64 6f 65 73 6e 27 74 20 73 75 70 70 60 doesn't supp 0001df80: 6f 72 74 20 60 73 63 72 6f 6c 6c 54 6f 60 5c 6e ort `scrollTo`\n 0001df90: 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 73 63 72 root.scr 0001dfa0: 6f 6c 6c 54 6f 70 20 3d 20 68 65 69 67 68 74 5c ollTop = height\ 0001dfb0: 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 29 n }\n }) 0001dfc0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 74 4e \n }\n\n _getN 0001dfd0: 65 77 4f 62 73 65 72 76 65 72 28 29 20 7b 5c 6e ewObserver() {\n 0001dfe0: 20 20 20 20 63 6f 6e 73 74 20 6f 70 74 69 6f 6e const option 0001dff0: 73 20 3d 20 7b 5c 6e 20 20 20 20 20 20 72 6f 6f s = {\n roo 0001e000: 74 3a 20 74 68 69 73 2e 5f 72 6f 6f 74 45 6c 65 t: this._rootEle 0001e010: 6d 65 6e 74 2c 5c 6e 20 20 20 20 20 20 74 68 72 ment,\n thr 0001e020: 65 73 68 6f 6c 64 3a 20 74 68 69 73 2e 5f 63 6f eshold: this._co 0001e030: 6e 66 69 67 2e 74 68 72 65 73 68 6f 6c 64 2c 5c nfig.threshold,\ 0001e040: 6e 20 20 20 20 20 20 72 6f 6f 74 4d 61 72 67 69 n rootMargi 0001e050: 6e 3a 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e n: this._config. 0001e060: 72 6f 6f 74 4d 61 72 67 69 6e 5c 6e 20 20 20 20 rootMargin\n 0001e070: 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 }\n\n return 0001e080: 6e 65 77 20 49 6e 74 65 72 73 65 63 74 69 6f 6e new Intersection 0001e090: 4f 62 73 65 72 76 65 72 28 65 6e 74 72 69 65 73 Observer(entries 0001e0a0: 20 3d 3e 20 74 68 69 73 2e 5f 6f 62 73 65 72 76 => this._observ 0001e0b0: 65 72 43 61 6c 6c 62 61 63 6b 28 65 6e 74 72 69 erCallback(entri 0001e0c0: 65 73 29 2c 20 6f 70 74 69 6f 6e 73 29 5c 6e 20 es), options)\n 0001e0d0: 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 54 68 65 20 6c }\n\n // The l 0001e0e0: 6f 67 69 63 20 6f 66 20 73 65 6c 65 63 74 69 6f ogic of selectio 0001e0f0: 6e 5c 6e 20 20 5f 6f 62 73 65 72 76 65 72 43 61 n\n _observerCa 0001e100: 6c 6c 62 61 63 6b 28 65 6e 74 72 69 65 73 29 20 llback(entries) 0001e110: 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 74 61 72 {\n const tar 0001e120: 67 65 74 45 6c 65 6d 65 6e 74 20 3d 20 65 6e 74 getElement = ent 0001e130: 72 79 20 3d 3e 20 74 68 69 73 2e 5f 74 61 72 67 ry => this._targ 0001e140: 65 74 4c 69 6e 6b 73 2e 67 65 74 28 60 23 24 7b etLinks.get(`#${ 0001e150: 65 6e 74 72 79 2e 74 61 72 67 65 74 2e 69 64 7d entry.target.id} 0001e160: 60 29 5c 6e 20 20 20 20 63 6f 6e 73 74 20 61 63 `)\n const ac 0001e170: 74 69 76 61 74 65 20 3d 20 65 6e 74 72 79 20 3d tivate = entry = 0001e180: 3e 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e > {\n this. 0001e190: 5f 70 72 65 76 69 6f 75 73 53 63 72 6f 6c 6c 44 _previousScrollD 0001e1a0: 61 74 61 2e 76 69 73 69 62 6c 65 45 6e 74 72 79 ata.visibleEntry 0001e1b0: 54 6f 70 20 3d 20 65 6e 74 72 79 2e 74 61 72 67 Top = entry.targ 0001e1c0: 65 74 2e 6f 66 66 73 65 74 54 6f 70 5c 6e 20 20 et.offsetTop\n 0001e1d0: 20 20 20 20 74 68 69 73 2e 5f 70 72 6f 63 65 73 this._proces 0001e1e0: 73 28 74 61 72 67 65 74 45 6c 65 6d 65 6e 74 28 s(targetElement( 0001e1f0: 65 6e 74 72 79 29 29 5c 6e 20 20 20 20 7d 5c 6e entry))\n }\n 0001e200: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 70 61 72 65 \n const pare 0001e210: 6e 74 53 63 72 6f 6c 6c 54 6f 70 20 3d 20 28 74 ntScrollTop = (t 0001e220: 68 69 73 2e 5f 72 6f 6f 74 45 6c 65 6d 65 6e 74 his._rootElement 0001e230: 20 7c 7c 20 64 6f 63 75 6d 65 6e 74 2e 64 6f 63 || document.doc 0001e240: 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 29 2e 73 63 umentElement).sc 0001e250: 72 6f 6c 6c 54 6f 70 5c 6e 20 20 20 20 63 6f 6e rollTop\n con 0001e260: 73 74 20 75 73 65 72 53 63 72 6f 6c 6c 73 44 6f st userScrollsDo 0001e270: 77 6e 20 3d 20 70 61 72 65 6e 74 53 63 72 6f 6c wn = parentScrol 0001e280: 6c 54 6f 70 20 3e 3d 20 74 68 69 73 2e 5f 70 72 lTop >= this._pr 0001e290: 65 76 69 6f 75 73 53 63 72 6f 6c 6c 44 61 74 61 eviousScrollData 0001e2a0: 2e 70 61 72 65 6e 74 53 63 72 6f 6c 6c 54 6f 70 .parentScrollTop 0001e2b0: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 70 72 65 76 \n this._prev 0001e2c0: 69 6f 75 73 53 63 72 6f 6c 6c 44 61 74 61 2e 70 iousScrollData.p 0001e2d0: 61 72 65 6e 74 53 63 72 6f 6c 6c 54 6f 70 20 3d arentScrollTop = 0001e2e0: 20 70 61 72 65 6e 74 53 63 72 6f 6c 6c 54 6f 70 parentScrollTop 0001e2f0: 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 63 6f 6e \n\n for (con 0001e300: 73 74 20 65 6e 74 72 79 20 6f 66 20 65 6e 74 72 st entry of entr 0001e310: 69 65 73 29 20 7b 5c 6e 20 20 20 20 20 20 69 66 ies) {\n if 0001e320: 20 28 21 65 6e 74 72 79 2e 69 73 49 6e 74 65 72 (!entry.isInter 0001e330: 73 65 63 74 69 6e 67 29 20 7b 5c 6e 20 20 20 20 secting) {\n 0001e340: 20 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 65 this._active 0001e350: 54 61 72 67 65 74 20 3d 20 6e 75 6c 6c 5c 6e 20 Target = null\n 0001e360: 20 20 20 20 20 20 20 74 68 69 73 2e 5f 63 6c 65 this._cle 0001e370: 61 72 41 63 74 69 76 65 43 6c 61 73 73 28 74 61 arActiveClass(ta 0001e380: 72 67 65 74 45 6c 65 6d 65 6e 74 28 65 6e 74 72 rgetElement(entr 0001e390: 79 29 29 5c 6e 5c 6e 20 20 20 20 20 20 20 20 63 y))\n\n c 0001e3a0: 6f 6e 74 69 6e 75 65 5c 6e 20 20 20 20 20 20 7d ontinue\n } 0001e3b0: 5c 6e 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 \n\n const 0001e3c0: 65 6e 74 72 79 49 73 4c 6f 77 65 72 54 68 61 6e entryIsLowerThan 0001e3d0: 50 72 65 76 69 6f 75 73 20 3d 20 65 6e 74 72 79 Previous = entry 0001e3e0: 2e 74 61 72 67 65 74 2e 6f 66 66 73 65 74 54 6f .target.offsetTo 0001e3f0: 70 20 3e 3d 20 74 68 69 73 2e 5f 70 72 65 76 69 p >= this._previ 0001e400: 6f 75 73 53 63 72 6f 6c 6c 44 61 74 61 2e 76 69 ousScrollData.vi 0001e410: 73 69 62 6c 65 45 6e 74 72 79 54 6f 70 5c 6e 20 sibleEntryTop\n 0001e420: 20 20 20 20 20 2f 2f 20 69 66 20 77 65 20 61 72 // if we ar 0001e430: 65 20 73 63 72 6f 6c 6c 69 6e 67 20 64 6f 77 6e e scrolling down 0001e440: 2c 20 70 69 63 6b 20 74 68 65 20 62 69 67 67 65 , pick the bigge 0001e450: 72 20 6f 66 66 73 65 74 54 6f 70 5c 6e 20 20 20 r offsetTop\n 0001e460: 20 20 20 69 66 20 28 75 73 65 72 53 63 72 6f 6c if (userScrol 0001e470: 6c 73 44 6f 77 6e 20 26 26 20 65 6e 74 72 79 49 lsDown && entryI 0001e480: 73 4c 6f 77 65 72 54 68 61 6e 50 72 65 76 69 6f sLowerThanPrevio 0001e490: 75 73 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 61 us) {\n a 0001e4a0: 63 74 69 76 61 74 65 28 65 6e 74 72 79 29 5c 6e ctivate(entry)\n 0001e4b0: 20 20 20 20 20 20 20 20 2f 2f 20 69 66 20 70 61 // if pa 0001e4c0: 72 65 6e 74 20 69 73 6e 27 74 20 73 63 72 6f 6c rent isn't scrol 0001e4d0: 6c 65 64 2c 20 6c 65 74 27 73 20 6b 65 65 70 20 led, let's keep 0001e4e0: 74 68 65 20 66 69 72 73 74 20 76 69 73 69 62 6c the first visibl 0001e4f0: 65 20 69 74 65 6d 2c 20 62 72 65 61 6b 69 6e 67 e item, breaking 0001e500: 20 74 68 65 20 69 74 65 72 61 74 69 6f 6e 5c 6e the iteration\n 0001e510: 20 20 20 20 20 20 20 20 69 66 20 28 21 70 61 72 if (!par 0001e520: 65 6e 74 53 63 72 6f 6c 6c 54 6f 70 29 20 7b 5c entScrollTop) {\ 0001e530: 6e 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 n retur 0001e540: 6e 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 5c 6e n\n }\n\n 0001e550: 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 continue 0001e560: 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 \n }\n\n 0001e570: 20 20 20 2f 2f 20 69 66 20 77 65 20 61 72 65 20 // if we are 0001e580: 73 63 72 6f 6c 6c 69 6e 67 20 75 70 2c 20 70 69 scrolling up, pi 0001e590: 63 6b 20 74 68 65 20 73 6d 61 6c 6c 65 73 74 20 ck the smallest 0001e5a0: 6f 66 66 73 65 74 54 6f 70 5c 6e 20 20 20 20 20 offsetTop\n 0001e5b0: 20 69 66 20 28 21 75 73 65 72 53 63 72 6f 6c 6c if (!userScroll 0001e5c0: 73 44 6f 77 6e 20 26 26 20 21 65 6e 74 72 79 49 sDown && !entryI 0001e5d0: 73 4c 6f 77 65 72 54 68 61 6e 50 72 65 76 69 6f sLowerThanPrevio 0001e5e0: 75 73 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 61 us) {\n a 0001e5f0: 63 74 69 76 61 74 65 28 65 6e 74 72 79 29 5c 6e ctivate(entry)\n 0001e600: 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e }\n }\n 0001e610: 20 20 7d 5c 6e 5c 6e 20 20 5f 69 6e 69 74 69 61 }\n\n _initia 0001e620: 6c 69 7a 65 54 61 72 67 65 74 73 41 6e 64 4f 62 lizeTargetsAndOb 0001e630: 73 65 72 76 61 62 6c 65 73 28 29 20 7b 5c 6e 20 servables() {\n 0001e640: 20 20 20 74 68 69 73 2e 5f 74 61 72 67 65 74 4c this._targetL 0001e650: 69 6e 6b 73 20 3d 20 6e 65 77 20 4d 61 70 28 29 inks = new Map() 0001e660: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 6f 62 73 65 \n this._obse 0001e670: 72 76 61 62 6c 65 53 65 63 74 69 6f 6e 73 20 3d rvableSections = 0001e680: 20 6e 65 77 20 4d 61 70 28 29 5c 6e 5c 6e 20 20 new Map()\n\n 0001e690: 20 20 63 6f 6e 73 74 20 74 61 72 67 65 74 4c 69 const targetLi 0001e6a0: 6e 6b 73 20 3d 20 53 65 6c 65 63 74 6f 72 45 6e nks = SelectorEn 0001e6b0: 67 69 6e 65 2e 66 69 6e 64 28 53 45 4c 45 43 54 gine.find(SELECT 0001e6c0: 4f 52 5f 54 41 52 47 45 54 5f 4c 49 4e 4b 53 2c OR_TARGET_LINKS, 0001e6d0: 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 74 61 this._config.ta 0001e6e0: 72 67 65 74 29 5c 6e 5c 6e 20 20 20 20 66 6f 72 rget)\n\n for 0001e6f0: 20 28 63 6f 6e 73 74 20 61 6e 63 68 6f 72 20 6f (const anchor o 0001e700: 66 20 74 61 72 67 65 74 4c 69 6e 6b 73 29 20 7b f targetLinks) { 0001e710: 5c 6e 20 20 20 20 20 20 2f 2f 20 65 6e 73 75 72 \n // ensur 0001e720: 65 20 74 68 61 74 20 74 68 65 20 61 6e 63 68 6f e that the ancho 0001e730: 72 20 68 61 73 20 61 6e 20 69 64 20 61 6e 64 20 r has an id and 0001e740: 69 73 20 6e 6f 74 20 64 69 73 61 62 6c 65 64 5c is not disabled\ 0001e750: 6e 20 20 20 20 20 20 69 66 20 28 21 61 6e 63 68 n if (!anch 0001e760: 6f 72 2e 68 61 73 68 20 7c 7c 20 69 73 44 69 73 or.hash || isDis 0001e770: 61 62 6c 65 64 28 61 6e 63 68 6f 72 29 29 20 7b abled(anchor)) { 0001e780: 5c 6e 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e \n contin 0001e790: 75 65 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 ue\n }\n\n 0001e7a0: 20 20 20 20 20 63 6f 6e 73 74 20 6f 62 73 65 72 const obser 0001e7b0: 76 61 62 6c 65 53 65 63 74 69 6f 6e 20 3d 20 53 vableSection = S 0001e7c0: 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 electorEngine.fi 0001e7d0: 6e 64 4f 6e 65 28 64 65 63 6f 64 65 55 52 49 28 ndOne(decodeURI( 0001e7e0: 61 6e 63 68 6f 72 2e 68 61 73 68 29 2c 20 74 68 anchor.hash), th 0001e7f0: 69 73 2e 5f 65 6c 65 6d 65 6e 74 29 5c 6e 5c 6e is._element)\n\n 0001e800: 20 20 20 20 20 20 2f 2f 20 65 6e 73 75 72 65 20 // ensure 0001e810: 74 68 61 74 20 74 68 65 20 6f 62 73 65 72 76 61 that the observa 0001e820: 62 6c 65 53 65 63 74 69 6f 6e 20 65 78 69 73 74 bleSection exist 0001e830: 73 20 26 20 69 73 20 76 69 73 69 62 6c 65 5c 6e s & is visible\n 0001e840: 20 20 20 20 20 20 69 66 20 28 69 73 56 69 73 69 if (isVisi 0001e850: 62 6c 65 28 6f 62 73 65 72 76 61 62 6c 65 53 65 ble(observableSe 0001e860: 63 74 69 6f 6e 29 29 20 7b 5c 6e 20 20 20 20 20 ction)) {\n 0001e870: 20 20 20 74 68 69 73 2e 5f 74 61 72 67 65 74 4c this._targetL 0001e880: 69 6e 6b 73 2e 73 65 74 28 64 65 63 6f 64 65 55 inks.set(decodeU 0001e890: 52 49 28 61 6e 63 68 6f 72 2e 68 61 73 68 29 2c RI(anchor.hash), 0001e8a0: 20 61 6e 63 68 6f 72 29 5c 6e 20 20 20 20 20 20 anchor)\n 0001e8b0: 20 20 74 68 69 73 2e 5f 6f 62 73 65 72 76 61 62 this._observab 0001e8c0: 6c 65 53 65 63 74 69 6f 6e 73 2e 73 65 74 28 61 leSections.set(a 0001e8d0: 6e 63 68 6f 72 2e 68 61 73 68 2c 20 6f 62 73 65 nchor.hash, obse 0001e8e0: 72 76 61 62 6c 65 53 65 63 74 69 6f 6e 29 5c 6e rvableSection)\n 0001e8f0: 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e }\n }\n 0001e900: 20 20 7d 5c 6e 5c 6e 20 20 5f 70 72 6f 63 65 73 }\n\n _proces 0001e910: 73 28 74 61 72 67 65 74 29 20 7b 5c 6e 20 20 20 s(target) {\n 0001e920: 20 69 66 20 28 74 68 69 73 2e 5f 61 63 74 69 76 if (this._activ 0001e930: 65 54 61 72 67 65 74 20 3d 3d 3d 20 74 61 72 67 eTarget === targ 0001e940: 65 74 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 et) {\n ret 0001e950: 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 urn\n }\n\n 0001e960: 20 20 74 68 69 73 2e 5f 63 6c 65 61 72 41 63 74 this._clearAct 0001e970: 69 76 65 43 6c 61 73 73 28 74 68 69 73 2e 5f 63 iveClass(this._c 0001e980: 6f 6e 66 69 67 2e 74 61 72 67 65 74 29 5c 6e 20 onfig.target)\n 0001e990: 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 65 54 this._activeT 0001e9a0: 61 72 67 65 74 20 3d 20 74 61 72 67 65 74 5c 6e arget = target\n 0001e9b0: 20 20 20 20 74 61 72 67 65 74 2e 63 6c 61 73 73 target.class 0001e9c0: 4c 69 73 74 2e 61 64 64 28 43 4c 41 53 53 5f 4e List.add(CLASS_N 0001e9d0: 41 4d 45 5f 41 43 54 49 56 45 29 5c 6e 20 20 20 AME_ACTIVE)\n 0001e9e0: 20 74 68 69 73 2e 5f 61 63 74 69 76 61 74 65 50 this._activateP 0001e9f0: 61 72 65 6e 74 73 28 74 61 72 67 65 74 29 5c 6e arents(target)\n 0001ea00: 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c \n EventHandl 0001ea10: 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e er.trigger(this. 0001ea20: 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f _element, EVENT_ 0001ea30: 41 43 54 49 56 41 54 45 2c 20 7b 20 72 65 6c 61 ACTIVATE, { rela 0001ea40: 74 65 64 54 61 72 67 65 74 3a 20 74 61 72 67 65 tedTarget: targe 0001ea50: 74 20 7d 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f t })\n }\n\n _ 0001ea60: 61 63 74 69 76 61 74 65 50 61 72 65 6e 74 73 28 activateParents( 0001ea70: 74 61 72 67 65 74 29 20 7b 5c 6e 20 20 20 20 2f target) {\n / 0001ea80: 2f 20 41 63 74 69 76 61 74 65 20 64 72 6f 70 64 / Activate dropd 0001ea90: 6f 77 6e 20 70 61 72 65 6e 74 73 5c 6e 20 20 20 own parents\n 0001eaa0: 20 69 66 20 28 74 61 72 67 65 74 2e 63 6c 61 73 if (target.clas 0001eab0: 73 4c 69 73 74 2e 63 6f 6e 74 61 69 6e 73 28 43 sList.contains(C 0001eac0: 4c 41 53 53 5f 4e 41 4d 45 5f 44 52 4f 50 44 4f LASS_NAME_DROPDO 0001ead0: 57 4e 5f 49 54 45 4d 29 29 20 7b 5c 6e 20 20 20 WN_ITEM)) {\n 0001eae0: 20 20 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e SelectorEngin 0001eaf0: 65 2e 66 69 6e 64 4f 6e 65 28 53 45 4c 45 43 54 e.findOne(SELECT 0001eb00: 4f 52 5f 44 52 4f 50 44 4f 57 4e 5f 54 4f 47 47 OR_DROPDOWN_TOGG 0001eb10: 4c 45 2c 20 74 61 72 67 65 74 2e 63 6c 6f 73 65 LE, target.close 0001eb20: 73 74 28 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 st(SELECTOR_DROP 0001eb30: 44 4f 57 4e 29 29 5c 6e 20 20 20 20 20 20 20 20 DOWN))\n 0001eb40: 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 .classList.add(C 0001eb50: 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 54 49 56 45 LASS_NAME_ACTIVE 0001eb60: 29 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c )\n return\ 0001eb70: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 66 6f n }\n\n fo 0001eb80: 72 20 28 63 6f 6e 73 74 20 6c 69 73 74 47 72 6f r (const listGro 0001eb90: 75 70 20 6f 66 20 53 65 6c 65 63 74 6f 72 45 6e up of SelectorEn 0001eba0: 67 69 6e 65 2e 70 61 72 65 6e 74 73 28 74 61 72 gine.parents(tar 0001ebb0: 67 65 74 2c 20 53 45 4c 45 43 54 4f 52 5f 4e 41 get, SELECTOR_NA 0001ebc0: 56 5f 4c 49 53 54 5f 47 52 4f 55 50 29 29 20 7b V_LIST_GROUP)) { 0001ebd0: 5c 6e 20 20 20 20 20 20 2f 2f 20 53 65 74 20 74 \n // Set t 0001ebe0: 72 69 67 67 65 72 65 64 20 6c 69 6e 6b 73 20 70 riggered links p 0001ebf0: 61 72 65 6e 74 73 20 61 73 20 61 63 74 69 76 65 arents as active 0001ec00: 5c 6e 20 20 20 20 20 20 2f 2f 20 57 69 74 68 20 \n // With 0001ec10: 62 6f 74 68 20 3c 75 6c 3e 20 61 6e 64 20 3c 6e both <ul> and <n 0001ec20: 61 76 3e 20 6d 61 72 6b 75 70 20 61 20 70 61 72 av> markup a par 0001ec30: 65 6e 74 20 69 73 20 74 68 65 20 70 72 65 76 69 ent is the previ 0001ec40: 6f 75 73 20 73 69 62 6c 69 6e 67 20 6f 66 20 61 ous sibling of a 0001ec50: 6e 79 20 6e 61 76 20 61 6e 63 65 73 74 6f 72 5c ny nav ancestor\ 0001ec60: 6e 20 20 20 20 20 20 66 6f 72 20 28 63 6f 6e 73 n for (cons 0001ec70: 74 20 69 74 65 6d 20 6f 66 20 53 65 6c 65 63 74 t item of Select 0001ec80: 6f 72 45 6e 67 69 6e 65 2e 70 72 65 76 28 6c 69 orEngine.prev(li 0001ec90: 73 74 47 72 6f 75 70 2c 20 53 45 4c 45 43 54 4f stGroup, SELECTO 0001eca0: 52 5f 4c 49 4e 4b 5f 49 54 45 4d 53 29 29 20 7b R_LINK_ITEMS)) { 0001ecb0: 5c 6e 20 20 20 20 20 20 20 20 69 74 65 6d 2e 63 \n item.c 0001ecc0: 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 lassList.add(CLA 0001ecd0: 53 53 5f 4e 41 4d 45 5f 41 43 54 49 56 45 29 5c SS_NAME_ACTIVE)\ 0001ece0: 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c n }\n }\ 0001ecf0: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 6c 65 61 72 n }\n\n _clear 0001ed00: 41 63 74 69 76 65 43 6c 61 73 73 28 70 61 72 65 ActiveClass(pare 0001ed10: 6e 74 29 20 7b 5c 6e 20 20 20 20 70 61 72 65 6e nt) {\n paren 0001ed20: 74 2e 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f t.classList.remo 0001ed30: 76 65 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 ve(CLASS_NAME_AC 0001ed40: 54 49 56 45 29 5c 6e 5c 6e 20 20 20 20 63 6f 6e TIVE)\n\n con 0001ed50: 73 74 20 61 63 74 69 76 65 4e 6f 64 65 73 20 3d st activeNodes = 0001ed60: 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e SelectorEngine. 0001ed70: 66 69 6e 64 28 60 24 7b 53 45 4c 45 43 54 4f 52 find(`${SELECTOR 0001ed80: 5f 54 41 52 47 45 54 5f 4c 49 4e 4b 53 7d 2e 24 _TARGET_LINKS}.$ 0001ed90: 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 54 49 {CLASS_NAME_ACTI 0001eda0: 56 45 7d 60 2c 20 70 61 72 65 6e 74 29 5c 6e 20 VE}`, parent)\n 0001edb0: 20 20 20 66 6f 72 20 28 63 6f 6e 73 74 20 6e 6f for (const no 0001edc0: 64 65 20 6f 66 20 61 63 74 69 76 65 4e 6f 64 65 de of activeNode 0001edd0: 73 29 20 7b 5c 6e 20 20 20 20 20 20 6e 6f 64 65 s) {\n node 0001ede0: 2e 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 .classList.remov 0001edf0: 65 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 54 e(CLASS_NAME_ACT 0001ee00: 49 56 45 29 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d IVE)\n }\n } 0001ee10: 5c 6e 5c 6e 20 20 2f 2f 20 53 74 61 74 69 63 5c \n\n // Static\ 0001ee20: 6e 20 20 73 74 61 74 69 63 20 6a 51 75 65 72 79 n static jQuery 0001ee30: 49 6e 74 65 72 66 61 63 65 28 63 6f 6e 66 69 67 Interface(config 0001ee40: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 0001ee50: 74 68 69 73 2e 65 61 63 68 28 66 75 6e 63 74 69 this.each(functi 0001ee60: 6f 6e 20 28 29 20 7b 5c 6e 20 20 20 20 20 20 63 on () {\n c 0001ee70: 6f 6e 73 74 20 64 61 74 61 20 3d 20 53 63 72 6f onst data = Scro 0001ee80: 6c 6c 53 70 79 2e 67 65 74 4f 72 43 72 65 61 74 llSpy.getOrCreat 0001ee90: 65 49 6e 73 74 61 6e 63 65 28 74 68 69 73 2c 20 eInstance(this, 0001eea0: 63 6f 6e 66 69 67 29 5c 6e 5c 6e 20 20 20 20 20 config)\n\n 0001eeb0: 20 69 66 20 28 74 79 70 65 6f 66 20 63 6f 6e 66 if (typeof conf 0001eec0: 69 67 20 21 3d 3d 20 27 73 74 72 69 6e 67 27 29 ig !== 'string') 0001eed0: 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 65 74 75 {\n retu 0001eee0: 72 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 rn\n }\n\n 0001eef0: 20 20 20 20 20 69 66 20 28 64 61 74 61 5b 63 6f if (data[co 0001ef00: 6e 66 69 67 5d 20 3d 3d 3d 20 75 6e 64 65 66 69 nfig] === undefi 0001ef10: 6e 65 64 20 7c 7c 20 63 6f 6e 66 69 67 2e 73 74 ned || config.st 0001ef20: 61 72 74 73 57 69 74 68 28 27 5f 27 29 20 7c 7c artsWith('_') || 0001ef30: 20 63 6f 6e 66 69 67 20 3d 3d 3d 20 27 63 6f 6e config === 'con 0001ef40: 73 74 72 75 63 74 6f 72 27 29 20 7b 5c 6e 20 20 structor') {\n 0001ef50: 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 throw new 0001ef60: 54 79 70 65 45 72 72 6f 72 28 60 4e 6f 20 6d 65 TypeError(`No me 0001ef70: 74 68 6f 64 20 6e 61 6d 65 64 20 5c 22 24 7b 63 thod named \"${c 0001ef80: 6f 6e 66 69 67 7d 5c 22 60 29 5c 6e 20 20 20 20 onfig}\"`)\n 0001ef90: 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 64 61 74 }\n\n dat 0001efa0: 61 5b 63 6f 6e 66 69 67 5d 28 29 5c 6e 20 20 20 a[config]()\n 0001efb0: 20 7d 29 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c 6e 2f })\n }\n}\n\n/ 0001efc0: 2a 2a 5c 6e 20 2a 20 44 61 74 61 20 41 50 49 20 **\n * Data API 0001efd0: 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 5c 6e implementation\n 0001efe0: 20 2a 2f 5c 6e 5c 6e 45 76 65 6e 74 48 61 6e 64 */\n\nEventHand 0001eff0: 6c 65 72 2e 6f 6e 28 77 69 6e 64 6f 77 2c 20 45 ler.on(window, E 0001f000: 56 45 4e 54 5f 4c 4f 41 44 5f 44 41 54 41 5f 41 VENT_LOAD_DATA_A 0001f010: 50 49 2c 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 66 PI, () => {\n f 0001f020: 6f 72 20 28 63 6f 6e 73 74 20 73 70 79 20 6f 66 or (const spy of 0001f030: 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e SelectorEngine. 0001f040: 66 69 6e 64 28 53 45 4c 45 43 54 4f 52 5f 44 41 find(SELECTOR_DA 0001f050: 54 41 5f 53 50 59 29 29 20 7b 5c 6e 20 20 20 20 TA_SPY)) {\n 0001f060: 53 63 72 6f 6c 6c 53 70 79 2e 67 65 74 4f 72 43 ScrollSpy.getOrC 0001f070: 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 73 70 reateInstance(sp 0001f080: 79 29 5c 6e 20 20 7d 5c 6e 7d 29 5c 6e 5c 6e 2f y)\n }\n})\n\n/ 0001f090: 2a 2a 5c 6e 20 2a 20 6a 51 75 65 72 79 5c 6e 20 **\n * jQuery\n 0001f0a0: 2a 2f 5c 6e 5c 6e 64 65 66 69 6e 65 4a 51 75 65 */\n\ndefineJQue 0001f0b0: 72 79 50 6c 75 67 69 6e 28 53 63 72 6f 6c 6c 53 ryPlugin(ScrollS 0001f0c0: 70 79 29 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 py)\n\nexport de 0001f0d0: 66 61 75 6c 74 20 53 63 72 6f 6c 6c 53 70 79 5c fault ScrollSpy\ 0001f0e0: 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d 2d 2d 2d n","/**\n * ---- 0001f0f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f100: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f110: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f120: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f130: 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f 6f 74 73 ------\n * Boots 0001f140: 74 72 61 70 20 74 61 62 2e 6a 73 5c 6e 20 2a 20 trap tab.js\n * 0001f150: 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 72 20 4d Licensed under M 0001f160: 49 54 20 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 IT (https://gith 0001f170: 75 62 2e 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 ub.com/twbs/boot 0001f180: 73 74 72 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f strap/blob/main/ 0001f190: 4c 49 43 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d LICENSE)\n * --- 0001f1a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f1b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f1c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f1d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f1e0: 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e -------\n */\n\n 0001f1f0: 69 6d 70 6f 72 74 20 42 61 73 65 43 6f 6d 70 6f import BaseCompo 0001f200: 6e 65 6e 74 20 66 72 6f 6d 20 27 2e 2f 62 61 73 nent from './bas 0001f210: 65 2d 63 6f 6d 70 6f 6e 65 6e 74 2e 6a 73 27 5c e-component.js'\ 0001f220: 6e 69 6d 70 6f 72 74 20 45 76 65 6e 74 48 61 6e nimport EventHan 0001f230: 64 6c 65 72 20 66 72 6f 6d 20 27 2e 2f 64 6f 6d dler from './dom 0001f240: 2f 65 76 65 6e 74 2d 68 61 6e 64 6c 65 72 2e 6a /event-handler.j 0001f250: 73 27 5c 6e 69 6d 70 6f 72 74 20 53 65 6c 65 63 s'\nimport Selec 0001f260: 74 6f 72 45 6e 67 69 6e 65 20 66 72 6f 6d 20 27 torEngine from ' 0001f270: 2e 2f 64 6f 6d 2f 73 65 6c 65 63 74 6f 72 2d 65 ./dom/selector-e 0001f280: 6e 67 69 6e 65 2e 6a 73 27 5c 6e 69 6d 70 6f 72 ngine.js'\nimpor 0001f290: 74 20 7b 20 64 65 66 69 6e 65 4a 51 75 65 72 79 t { defineJQuery 0001f2a0: 50 6c 75 67 69 6e 2c 20 67 65 74 4e 65 78 74 41 Plugin, getNextA 0001f2b0: 63 74 69 76 65 45 6c 65 6d 65 6e 74 2c 20 69 73 ctiveElement, is 0001f2c0: 44 69 73 61 62 6c 65 64 20 7d 20 66 72 6f 6d 20 Disabled } from 0001f2d0: 27 2e 2f 75 74 69 6c 2f 69 6e 64 65 78 2e 6a 73 './util/index.js 0001f2e0: 27 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e '\n\n/**\n * Con 0001f2f0: 73 74 61 6e 74 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 stants\n */\n\nc 0001f300: 6f 6e 73 74 20 4e 41 4d 45 20 3d 20 27 74 61 62 onst NAME = 'tab 0001f310: 27 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f 4b 45 '\nconst DATA_KE 0001f320: 59 20 3d 20 27 62 73 2e 74 61 62 27 5c 6e 63 6f Y = 'bs.tab'\nco 0001f330: 6e 73 74 20 45 56 45 4e 54 5f 4b 45 59 20 3d 20 nst EVENT_KEY = 0001f340: 60 2e 24 7b 44 41 54 41 5f 4b 45 59 7d 60 5c 6e `.${DATA_KEY}`\n 0001f350: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 48 49 \nconst EVENT_HI 0001f360: 44 45 20 3d 20 60 68 69 64 65 24 7b 45 56 45 4e DE = `hide${EVEN 0001f370: 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 T_KEY}`\nconst E 0001f380: 56 45 4e 54 5f 48 49 44 44 45 4e 20 3d 20 60 68 VENT_HIDDEN = `h 0001f390: 69 64 64 65 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 idden${EVENT_KEY 0001f3a0: 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f }`\nconst EVENT_ 0001f3b0: 53 48 4f 57 20 3d 20 60 73 68 6f 77 24 7b 45 56 SHOW = `show${EV 0001f3c0: 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 ENT_KEY}`\nconst 0001f3d0: 20 45 56 45 4e 54 5f 53 48 4f 57 4e 20 3d 20 60 EVENT_SHOWN = ` 0001f3e0: 73 68 6f 77 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 shown${EVENT_KEY 0001f3f0: 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f }`\nconst EVENT_ 0001f400: 43 4c 49 43 4b 5f 44 41 54 41 5f 41 50 49 20 3d CLICK_DATA_API = 0001f410: 20 60 63 6c 69 63 6b 24 7b 45 56 45 4e 54 5f 4b `click${EVENT_K 0001f420: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e EY}`\nconst EVEN 0001f430: 54 5f 4b 45 59 44 4f 57 4e 20 3d 20 60 6b 65 79 T_KEYDOWN = `key 0001f440: 64 6f 77 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 7d down${EVENT_KEY} 0001f450: 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4c `\nconst EVENT_L 0001f460: 4f 41 44 5f 44 41 54 41 5f 41 50 49 20 3d 20 60 OAD_DATA_API = ` 0001f470: 6c 6f 61 64 24 7b 45 56 45 4e 54 5f 4b 45 59 7d load${EVENT_KEY} 0001f480: 60 5c 6e 5c 6e 63 6f 6e 73 74 20 41 52 52 4f 57 `\n\nconst ARROW 0001f490: 5f 4c 45 46 54 5f 4b 45 59 20 3d 20 27 41 72 72 _LEFT_KEY = 'Arr 0001f4a0: 6f 77 4c 65 66 74 27 5c 6e 63 6f 6e 73 74 20 41 owLeft'\nconst A 0001f4b0: 52 52 4f 57 5f 52 49 47 48 54 5f 4b 45 59 20 3d RROW_RIGHT_KEY = 0001f4c0: 20 27 41 72 72 6f 77 52 69 67 68 74 27 5c 6e 63 'ArrowRight'\nc 0001f4d0: 6f 6e 73 74 20 41 52 52 4f 57 5f 55 50 5f 4b 45 onst ARROW_UP_KE 0001f4e0: 59 20 3d 20 27 41 72 72 6f 77 55 70 27 5c 6e 63 Y = 'ArrowUp'\nc 0001f4f0: 6f 6e 73 74 20 41 52 52 4f 57 5f 44 4f 57 4e 5f onst ARROW_DOWN_ 0001f500: 4b 45 59 20 3d 20 27 41 72 72 6f 77 44 6f 77 6e KEY = 'ArrowDown 0001f510: 27 5c 6e 63 6f 6e 73 74 20 48 4f 4d 45 5f 4b 45 '\nconst HOME_KE 0001f520: 59 20 3d 20 27 48 6f 6d 65 27 5c 6e 63 6f 6e 73 Y = 'Home'\ncons 0001f530: 74 20 45 4e 44 5f 4b 45 59 20 3d 20 27 45 6e 64 t END_KEY = 'End 0001f540: 27 5c 6e 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 '\n\nconst CLASS 0001f550: 5f 4e 41 4d 45 5f 41 43 54 49 56 45 20 3d 20 27 _NAME_ACTIVE = ' 0001f560: 61 63 74 69 76 65 27 5c 6e 63 6f 6e 73 74 20 43 active'\nconst C 0001f570: 4c 41 53 53 5f 4e 41 4d 45 5f 46 41 44 45 20 3d LASS_NAME_FADE = 0001f580: 20 27 66 61 64 65 27 5c 6e 63 6f 6e 73 74 20 43 'fade'\nconst C 0001f590: 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 20 3d LASS_NAME_SHOW = 0001f5a0: 20 27 73 68 6f 77 27 5c 6e 63 6f 6e 73 74 20 43 'show'\nconst C 0001f5b0: 4c 41 53 53 5f 44 52 4f 50 44 4f 57 4e 20 3d 20 LASS_DROPDOWN = 0001f5c0: 27 64 72 6f 70 64 6f 77 6e 27 5c 6e 5c 6e 63 6f 'dropdown'\n\nco 0001f5d0: 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 44 52 4f nst SELECTOR_DRO 0001f5e0: 50 44 4f 57 4e 5f 54 4f 47 47 4c 45 20 3d 20 27 PDOWN_TOGGLE = ' 0001f5f0: 2e 64 72 6f 70 64 6f 77 6e 2d 74 6f 67 67 6c 65 .dropdown-toggle 0001f600: 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f '\nconst SELECTO 0001f610: 52 5f 44 52 4f 50 44 4f 57 4e 5f 4d 45 4e 55 20 R_DROPDOWN_MENU 0001f620: 3d 20 27 2e 64 72 6f 70 64 6f 77 6e 2d 6d 65 6e = '.dropdown-men 0001f630: 75 27 5c 6e 63 6f 6e 73 74 20 4e 4f 54 5f 53 45 u'\nconst NOT_SE 0001f640: 4c 45 43 54 4f 52 5f 44 52 4f 50 44 4f 57 4e 5f LECTOR_DROPDOWN_ 0001f650: 54 4f 47 47 4c 45 20 3d 20 60 3a 6e 6f 74 28 24 TOGGLE = `:not($ 0001f660: 7b 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 44 4f {SELECTOR_DROPDO 0001f670: 57 4e 5f 54 4f 47 47 4c 45 7d 29 60 5c 6e 5c 6e WN_TOGGLE})`\n\n 0001f680: 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 54 const SELECTOR_T 0001f690: 41 42 5f 50 41 4e 45 4c 20 3d 20 27 2e 6c 69 73 AB_PANEL = '.lis 0001f6a0: 74 2d 67 72 6f 75 70 2c 20 2e 6e 61 76 2c 20 5b t-group, .nav, [ 0001f6b0: 72 6f 6c 65 3d 5c 22 74 61 62 6c 69 73 74 5c 22 role=\"tablist\" 0001f6c0: 5d 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 ]'\nconst SELECT 0001f6d0: 4f 52 5f 4f 55 54 45 52 20 3d 20 27 2e 6e 61 76 OR_OUTER = '.nav 0001f6e0: 2d 69 74 65 6d 2c 20 2e 6c 69 73 74 2d 67 72 6f -item, .list-gro 0001f6f0: 75 70 2d 69 74 65 6d 27 5c 6e 63 6f 6e 73 74 20 up-item'\nconst 0001f700: 53 45 4c 45 43 54 4f 52 5f 49 4e 4e 45 52 20 3d SELECTOR_INNER = 0001f710: 20 60 2e 6e 61 76 2d 6c 69 6e 6b 24 7b 4e 4f 54 `.nav-link${NOT 0001f720: 5f 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 44 4f _SELECTOR_DROPDO 0001f730: 57 4e 5f 54 4f 47 47 4c 45 7d 2c 20 2e 6c 69 73 WN_TOGGLE}, .lis 0001f740: 74 2d 67 72 6f 75 70 2d 69 74 65 6d 24 7b 4e 4f t-group-item${NO 0001f750: 54 5f 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 44 T_SELECTOR_DROPD 0001f760: 4f 57 4e 5f 54 4f 47 47 4c 45 7d 2c 20 5b 72 6f OWN_TOGGLE}, [ro 0001f770: 6c 65 3d 5c 22 74 61 62 5c 22 5d 24 7b 4e 4f 54 le=\"tab\"]${NOT 0001f780: 5f 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 44 4f _SELECTOR_DROPDO 0001f790: 57 4e 5f 54 4f 47 47 4c 45 7d 60 5c 6e 63 6f 6e WN_TOGGLE}`\ncon 0001f7a0: 73 74 20 53 45 4c 45 43 54 4f 52 5f 44 41 54 41 st SELECTOR_DATA 0001f7b0: 5f 54 4f 47 47 4c 45 20 3d 20 27 5b 64 61 74 61 _TOGGLE = '[data 0001f7c0: 2d 62 73 2d 74 6f 67 67 6c 65 3d 5c 22 74 61 62 -bs-toggle=\"tab 0001f7d0: 5c 22 5d 2c 20 5b 64 61 74 61 2d 62 73 2d 74 6f \"], [data-bs-to 0001f7e0: 67 67 6c 65 3d 5c 22 70 69 6c 6c 5c 22 5d 2c 20 ggle=\"pill\"], 0001f7f0: 5b 64 61 74 61 2d 62 73 2d 74 6f 67 67 6c 65 3d [data-bs-toggle= 0001f800: 5c 22 6c 69 73 74 5c 22 5d 27 20 2f 2f 20 54 4f \"list\"]' // TO 0001f810: 44 4f 3a 20 63 6f 75 6c 64 20 6f 6e 6c 79 20 62 DO: could only b 0001f820: 65 20 60 74 61 62 60 20 69 6e 20 76 36 5c 6e 63 e `tab` in v6\nc 0001f830: 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 49 4e onst SELECTOR_IN 0001f840: 4e 45 52 5f 45 4c 45 4d 20 3d 20 60 24 7b 53 45 NER_ELEM = `${SE 0001f850: 4c 45 43 54 4f 52 5f 49 4e 4e 45 52 7d 2c 20 24 LECTOR_INNER}, $ 0001f860: 7b 53 45 4c 45 43 54 4f 52 5f 44 41 54 41 5f 54 {SELECTOR_DATA_T 0001f870: 4f 47 47 4c 45 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 OGGLE}`\n\nconst 0001f880: 20 53 45 4c 45 43 54 4f 52 5f 44 41 54 41 5f 54 SELECTOR_DATA_T 0001f890: 4f 47 47 4c 45 5f 41 43 54 49 56 45 20 3d 20 60 OGGLE_ACTIVE = ` 0001f8a0: 2e 24 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 .${CLASS_NAME_AC 0001f8b0: 54 49 56 45 7d 5b 64 61 74 61 2d 62 73 2d 74 6f TIVE}[data-bs-to 0001f8c0: 67 67 6c 65 3d 5c 22 74 61 62 5c 22 5d 2c 20 2e ggle=\"tab\"], . 0001f8d0: 24 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 54 ${CLASS_NAME_ACT 0001f8e0: 49 56 45 7d 5b 64 61 74 61 2d 62 73 2d 74 6f 67 IVE}[data-bs-tog 0001f8f0: 67 6c 65 3d 5c 22 70 69 6c 6c 5c 22 5d 2c 20 2e gle=\"pill\"], . 0001f900: 24 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 54 ${CLASS_NAME_ACT 0001f910: 49 56 45 7d 5b 64 61 74 61 2d 62 73 2d 74 6f 67 IVE}[data-bs-tog 0001f920: 67 6c 65 3d 5c 22 6c 69 73 74 5c 22 5d 60 5c 6e gle=\"list\"]`\n 0001f930: 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 73 20 \n/**\n * Class 0001f940: 64 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a 2f 5c definition\n */\ 0001f950: 6e 5c 6e 63 6c 61 73 73 20 54 61 62 20 65 78 74 n\nclass Tab ext 0001f960: 65 6e 64 73 20 42 61 73 65 43 6f 6d 70 6f 6e 65 ends BaseCompone 0001f970: 6e 74 20 7b 5c 6e 20 20 63 6f 6e 73 74 72 75 63 nt {\n construc 0001f980: 74 6f 72 28 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e tor(element) {\n 0001f990: 20 20 20 20 73 75 70 65 72 28 65 6c 65 6d 65 6e super(elemen 0001f9a0: 74 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 70 61 t)\n this._pa 0001f9b0: 72 65 6e 74 20 3d 20 74 68 69 73 2e 5f 65 6c 65 rent = this._ele 0001f9c0: 6d 65 6e 74 2e 63 6c 6f 73 65 73 74 28 53 45 4c ment.closest(SEL 0001f9d0: 45 43 54 4f 52 5f 54 41 42 5f 50 41 4e 45 4c 29 ECTOR_TAB_PANEL) 0001f9e0: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 \n\n if (!thi 0001f9f0: 73 2e 5f 70 61 72 65 6e 74 29 20 7b 5c 6e 20 20 s._parent) {\n 0001fa00: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 0001fa10: 20 20 2f 2f 20 54 4f 44 4f 3a 20 73 68 6f 75 6c // TODO: shoul 0001fa20: 64 20 74 68 72 6f 77 20 65 78 63 65 70 74 69 6f d throw exceptio 0001fa30: 6e 20 69 6e 20 76 36 5c 6e 20 20 20 20 20 20 2f n in v6\n / 0001fa40: 2f 20 74 68 72 6f 77 20 6e 65 77 20 54 79 70 65 / throw new Type 0001fa50: 45 72 72 6f 72 28 60 24 7b 65 6c 65 6d 65 6e 74 Error(`${element 0001fa60: 2e 6f 75 74 65 72 48 54 4d 4c 7d 20 68 61 73 20 .outerHTML} has 0001fa70: 6e 6f 74 20 61 20 76 61 6c 69 64 20 70 61 72 65 not a valid pare 0001fa80: 6e 74 20 24 7b 53 45 4c 45 43 54 4f 52 5f 49 4e nt ${SELECTOR_IN 0001fa90: 4e 45 52 5f 45 4c 45 4d 7d 60 29 5c 6e 20 20 20 NER_ELEM}`)\n 0001faa0: 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 53 65 74 }\n\n // Set 0001fab0: 20 75 70 20 69 6e 69 74 69 61 6c 20 61 72 69 61 up initial aria 0001fac0: 20 61 74 74 72 69 62 75 74 65 73 5c 6e 20 20 20 attributes\n 0001fad0: 20 74 68 69 73 2e 5f 73 65 74 49 6e 69 74 69 61 this._setInitia 0001fae0: 6c 41 74 74 72 69 62 75 74 65 73 28 74 68 69 73 lAttributes(this 0001faf0: 2e 5f 70 61 72 65 6e 74 2c 20 74 68 69 73 2e 5f ._parent, this._ 0001fb00: 67 65 74 43 68 69 6c 64 72 65 6e 28 29 29 5c 6e getChildren())\n 0001fb10: 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c \n EventHandl 0001fb20: 65 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d er.on(this._elem 0001fb30: 65 6e 74 2c 20 45 56 45 4e 54 5f 4b 45 59 44 4f ent, EVENT_KEYDO 0001fb40: 57 4e 2c 20 65 76 65 6e 74 20 3d 3e 20 74 68 69 WN, event => thi 0001fb50: 73 2e 5f 6b 65 79 64 6f 77 6e 28 65 76 65 6e 74 s._keydown(event 0001fb60: 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 ))\n }\n\n // 0001fb70: 47 65 74 74 65 72 73 5c 6e 20 20 73 74 61 74 69 Getters\n stati 0001fb80: 63 20 67 65 74 20 4e 41 4d 45 28 29 20 7b 5c 6e c get NAME() {\n 0001fb90: 20 20 20 20 72 65 74 75 72 6e 20 4e 41 4d 45 5c return NAME\ 0001fba0: 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 75 62 n }\n\n // Pub 0001fbb0: 6c 69 63 5c 6e 20 20 73 68 6f 77 28 29 20 7b 20 lic\n show() { 0001fbc0: 2f 2f 20 53 68 6f 77 73 20 74 68 69 73 20 65 6c // Shows this el 0001fbd0: 65 6d 20 61 6e 64 20 64 65 61 63 74 69 76 61 74 em and deactivat 0001fbe0: 65 20 74 68 65 20 61 63 74 69 76 65 20 73 69 62 e the active sib 0001fbf0: 6c 69 6e 67 20 69 66 20 65 78 69 73 74 73 5c 6e ling if exists\n 0001fc00: 20 20 20 20 63 6f 6e 73 74 20 69 6e 6e 65 72 45 const innerE 0001fc10: 6c 65 6d 20 3d 20 74 68 69 73 2e 5f 65 6c 65 6d lem = this._elem 0001fc20: 65 6e 74 5c 6e 20 20 20 20 69 66 20 28 74 68 69 ent\n if (thi 0001fc30: 73 2e 5f 65 6c 65 6d 49 73 41 63 74 69 76 65 28 s._elemIsActive( 0001fc40: 69 6e 6e 65 72 45 6c 65 6d 29 29 20 7b 5c 6e 20 innerElem)) {\n 0001fc50: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 0001fc60: 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 53 65 61 }\n\n // Sea 0001fc70: 72 63 68 20 66 6f 72 20 61 63 74 69 76 65 20 74 rch for active t 0001fc80: 61 62 20 6f 6e 20 73 61 6d 65 20 70 61 72 65 6e ab on same paren 0001fc90: 74 20 74 6f 20 64 65 61 63 74 69 76 61 74 65 20 t to deactivate 0001fca0: 69 74 5c 6e 20 20 20 20 63 6f 6e 73 74 20 61 63 it\n const ac 0001fcb0: 74 69 76 65 20 3d 20 74 68 69 73 2e 5f 67 65 74 tive = this._get 0001fcc0: 41 63 74 69 76 65 45 6c 65 6d 28 29 5c 6e 5c 6e ActiveElem()\n\n 0001fcd0: 20 20 20 20 63 6f 6e 73 74 20 68 69 64 65 45 76 const hideEv 0001fce0: 65 6e 74 20 3d 20 61 63 74 69 76 65 20 3f 5c 6e ent = active ?\n 0001fcf0: 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c EventHandl 0001fd00: 65 72 2e 74 72 69 67 67 65 72 28 61 63 74 69 76 er.trigger(activ 0001fd10: 65 2c 20 45 56 45 4e 54 5f 48 49 44 45 2c 20 7b e, EVENT_HIDE, { 0001fd20: 20 72 65 6c 61 74 65 64 54 61 72 67 65 74 3a 20 relatedTarget: 0001fd30: 69 6e 6e 65 72 45 6c 65 6d 20 7d 29 20 3a 5c 6e innerElem }) :\n 0001fd40: 20 20 20 20 20 20 6e 75 6c 6c 5c 6e 5c 6e 20 20 null\n\n 0001fd50: 20 20 63 6f 6e 73 74 20 73 68 6f 77 45 76 65 6e const showEven 0001fd60: 74 20 3d 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 t = EventHandler 0001fd70: 2e 74 72 69 67 67 65 72 28 69 6e 6e 65 72 45 6c .trigger(innerEl 0001fd80: 65 6d 2c 20 45 56 45 4e 54 5f 53 48 4f 57 2c 20 em, EVENT_SHOW, 0001fd90: 7b 20 72 65 6c 61 74 65 64 54 61 72 67 65 74 3a { relatedTarget: 0001fda0: 20 61 63 74 69 76 65 20 7d 29 5c 6e 5c 6e 20 20 active })\n\n 0001fdb0: 20 20 69 66 20 28 73 68 6f 77 45 76 65 6e 74 2e if (showEvent. 0001fdc0: 64 65 66 61 75 6c 74 50 72 65 76 65 6e 74 65 64 defaultPrevented 0001fdd0: 20 7c 7c 20 28 68 69 64 65 45 76 65 6e 74 20 26 || (hideEvent & 0001fde0: 26 20 68 69 64 65 45 76 65 6e 74 2e 64 65 66 61 & hideEvent.defa 0001fdf0: 75 6c 74 50 72 65 76 65 6e 74 65 64 29 29 20 7b ultPrevented)) { 0001fe00: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 0001fe10: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 }\n\n thi 0001fe20: 73 2e 5f 64 65 61 63 74 69 76 61 74 65 28 61 63 s._deactivate(ac 0001fe30: 74 69 76 65 2c 20 69 6e 6e 65 72 45 6c 65 6d 29 tive, innerElem) 0001fe40: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 63 74 69 \n this._acti 0001fe50: 76 61 74 65 28 69 6e 6e 65 72 45 6c 65 6d 2c 20 vate(innerElem, 0001fe60: 61 63 74 69 76 65 29 5c 6e 20 20 7d 5c 6e 5c 6e active)\n }\n\n 0001fe70: 20 20 2f 2f 20 50 72 69 76 61 74 65 5c 6e 20 20 // Private\n 0001fe80: 5f 61 63 74 69 76 61 74 65 28 65 6c 65 6d 65 6e _activate(elemen 0001fe90: 74 2c 20 72 65 6c 61 74 65 64 45 6c 65 6d 29 20 t, relatedElem) 0001fea0: 7b 5c 6e 20 20 20 20 69 66 20 28 21 65 6c 65 6d {\n if (!elem 0001feb0: 65 6e 74 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 ent) {\n re 0001fec0: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 0001fed0: 20 20 20 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 element.class 0001fee0: 4c 69 73 74 2e 61 64 64 28 43 4c 41 53 53 5f 4e List.add(CLASS_N 0001fef0: 41 4d 45 5f 41 43 54 49 56 45 29 5c 6e 5c 6e 20 AME_ACTIVE)\n\n 0001ff00: 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 61 74 this._activat 0001ff10: 65 28 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 e(SelectorEngine 0001ff20: 2e 67 65 74 45 6c 65 6d 65 6e 74 46 72 6f 6d 53 .getElementFromS 0001ff30: 65 6c 65 63 74 6f 72 28 65 6c 65 6d 65 6e 74 29 elector(element) 0001ff40: 29 20 2f 2f 20 53 65 61 72 63 68 20 61 6e 64 20 ) // Search and 0001ff50: 61 63 74 69 76 61 74 65 2f 73 68 6f 77 20 74 68 activate/show th 0001ff60: 65 20 70 72 6f 70 65 72 20 73 65 63 74 69 6f 6e e proper section 0001ff70: 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 63 6f \n\n const co 0001ff80: 6d 70 6c 65 74 65 20 3d 20 28 29 20 3d 3e 20 7b mplete = () => { 0001ff90: 5c 6e 20 20 20 20 20 20 69 66 20 28 65 6c 65 6d \n if (elem 0001ffa0: 65 6e 74 2e 67 65 74 41 74 74 72 69 62 75 74 65 ent.getAttribute 0001ffb0: 28 27 72 6f 6c 65 27 29 20 21 3d 3d 20 27 74 61 ('role') !== 'ta 0001ffc0: 62 27 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 65 b') {\n e 0001ffd0: 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 lement.classList 0001ffe0: 2e 61 64 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f .add(CLASS_NAME_ 0001fff0: 53 48 4f 57 29 5c 6e 20 20 20 20 20 20 20 20 72 SHOW)\n r 00020000: 65 74 75 72 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e eturn\n }\n 00020010: 5c 6e 20 20 20 20 20 20 65 6c 65 6d 65 6e 74 2e \n element. 00020020: 72 65 6d 6f 76 65 41 74 74 72 69 62 75 74 65 28 removeAttribute( 00020030: 27 74 61 62 69 6e 64 65 78 27 29 5c 6e 20 20 20 'tabindex')\n 00020040: 20 20 20 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 element.setAt 00020050: 74 72 69 62 75 74 65 28 27 61 72 69 61 2d 73 65 tribute('aria-se 00020060: 6c 65 63 74 65 64 27 2c 20 74 72 75 65 29 5c 6e lected', true)\n 00020070: 20 20 20 20 20 20 74 68 69 73 2e 5f 74 6f 67 67 this._togg 00020080: 6c 65 44 72 6f 70 44 6f 77 6e 28 65 6c 65 6d 65 leDropDown(eleme 00020090: 6e 74 2c 20 74 72 75 65 29 5c 6e 20 20 20 20 20 nt, true)\n 000200a0: 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 74 72 EventHandler.tr 000200b0: 69 67 67 65 72 28 65 6c 65 6d 65 6e 74 2c 20 45 igger(element, E 000200c0: 56 45 4e 54 5f 53 48 4f 57 4e 2c 20 7b 5c 6e 20 VENT_SHOWN, {\n 000200d0: 20 20 20 20 20 20 20 72 65 6c 61 74 65 64 54 61 relatedTa 000200e0: 72 67 65 74 3a 20 72 65 6c 61 74 65 64 45 6c 65 rget: relatedEle 000200f0: 6d 5c 6e 20 20 20 20 20 20 7d 29 5c 6e 20 20 20 m\n })\n 00020100: 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f }\n\n this._ 00020110: 71 75 65 75 65 43 61 6c 6c 62 61 63 6b 28 63 6f queueCallback(co 00020120: 6d 70 6c 65 74 65 2c 20 65 6c 65 6d 65 6e 74 2c mplete, element, 00020130: 20 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 element.classLi 00020140: 73 74 2e 63 6f 6e 74 61 69 6e 73 28 43 4c 41 53 st.contains(CLAS 00020150: 53 5f 4e 41 4d 45 5f 46 41 44 45 29 29 5c 6e 20 S_NAME_FADE))\n 00020160: 20 7d 5c 6e 5c 6e 20 20 5f 64 65 61 63 74 69 76 }\n\n _deactiv 00020170: 61 74 65 28 65 6c 65 6d 65 6e 74 2c 20 72 65 6c ate(element, rel 00020180: 61 74 65 64 45 6c 65 6d 29 20 7b 5c 6e 20 20 20 atedElem) {\n 00020190: 20 69 66 20 28 21 65 6c 65 6d 65 6e 74 29 20 7b if (!element) { 000201a0: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 000201b0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 65 6c 65 }\n\n ele 000201c0: 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e 72 ment.classList.r 000201d0: 65 6d 6f 76 65 28 43 4c 41 53 53 5f 4e 41 4d 45 emove(CLASS_NAME 000201e0: 5f 41 43 54 49 56 45 29 5c 6e 20 20 20 20 65 6c _ACTIVE)\n el 000201f0: 65 6d 65 6e 74 2e 62 6c 75 72 28 29 5c 6e 5c 6e ement.blur()\n\n 00020200: 20 20 20 20 74 68 69 73 2e 5f 64 65 61 63 74 69 this._deacti 00020210: 76 61 74 65 28 53 65 6c 65 63 74 6f 72 45 6e 67 vate(SelectorEng 00020220: 69 6e 65 2e 67 65 74 45 6c 65 6d 65 6e 74 46 72 ine.getElementFr 00020230: 6f 6d 53 65 6c 65 63 74 6f 72 28 65 6c 65 6d 65 omSelector(eleme 00020240: 6e 74 29 29 20 2f 2f 20 53 65 61 72 63 68 20 61 nt)) // Search a 00020250: 6e 64 20 64 65 61 63 74 69 76 61 74 65 20 74 68 nd deactivate th 00020260: 65 20 73 68 6f 77 6e 20 73 65 63 74 69 6f 6e 20 e shown section 00020270: 74 6f 6f 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 too\n\n const 00020280: 20 63 6f 6d 70 6c 65 74 65 20 3d 20 28 29 20 3d complete = () = 00020290: 3e 20 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 65 > {\n if (e 000202a0: 6c 65 6d 65 6e 74 2e 67 65 74 41 74 74 72 69 62 lement.getAttrib 000202b0: 75 74 65 28 27 72 6f 6c 65 27 29 20 21 3d 3d 20 ute('role') !== 000202c0: 27 74 61 62 27 29 20 7b 5c 6e 20 20 20 20 20 20 'tab') {\n 000202d0: 20 20 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c element.classL 000202e0: 69 73 74 2e 72 65 6d 6f 76 65 28 43 4c 41 53 53 ist.remove(CLASS 000202f0: 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 20 20 20 _NAME_SHOW)\n 00020300: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 00020310: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 65 6c }\n\n el 00020320: 65 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 75 ement.setAttribu 00020330: 74 65 28 27 61 72 69 61 2d 73 65 6c 65 63 74 65 te('aria-selecte 00020340: 64 27 2c 20 66 61 6c 73 65 29 5c 6e 20 20 20 20 d', false)\n 00020350: 20 20 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 element.setAtt 00020360: 72 69 62 75 74 65 28 27 74 61 62 69 6e 64 65 78 ribute('tabindex 00020370: 27 2c 20 27 2d 31 27 29 5c 6e 20 20 20 20 20 20 ', '-1')\n 00020380: 74 68 69 73 2e 5f 74 6f 67 67 6c 65 44 72 6f 70 this._toggleDrop 00020390: 44 6f 77 6e 28 65 6c 65 6d 65 6e 74 2c 20 66 61 Down(element, fa 000203a0: 6c 73 65 29 5c 6e 20 20 20 20 20 20 45 76 65 6e lse)\n Even 000203b0: 74 48 61 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 tHandler.trigger 000203c0: 28 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f (element, EVENT_ 000203d0: 48 49 44 44 45 4e 2c 20 7b 20 72 65 6c 61 74 65 HIDDEN, { relate 000203e0: 64 54 61 72 67 65 74 3a 20 72 65 6c 61 74 65 64 dTarget: related 000203f0: 45 6c 65 6d 20 7d 29 5c 6e 20 20 20 20 7d 5c 6e Elem })\n }\n 00020400: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 \n this._queu 00020410: 65 43 61 6c 6c 62 61 63 6b 28 63 6f 6d 70 6c 65 eCallback(comple 00020420: 74 65 2c 20 65 6c 65 6d 65 6e 74 2c 20 65 6c 65 te, element, ele 00020430: 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e 63 ment.classList.c 00020440: 6f 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f 4e 41 ontains(CLASS_NA 00020450: 4d 45 5f 46 41 44 45 29 29 5c 6e 20 20 7d 5c 6e ME_FADE))\n }\n 00020460: 5c 6e 20 20 5f 6b 65 79 64 6f 77 6e 28 65 76 65 \n _keydown(eve 00020470: 6e 74 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 nt) {\n if (! 00020480: 28 5b 41 52 52 4f 57 5f 4c 45 46 54 5f 4b 45 59 ([ARROW_LEFT_KEY 00020490: 2c 20 41 52 52 4f 57 5f 52 49 47 48 54 5f 4b 45 , ARROW_RIGHT_KE 000204a0: 59 2c 20 41 52 52 4f 57 5f 55 50 5f 4b 45 59 2c Y, ARROW_UP_KEY, 000204b0: 20 41 52 52 4f 57 5f 44 4f 57 4e 5f 4b 45 59 2c ARROW_DOWN_KEY, 000204c0: 20 48 4f 4d 45 5f 4b 45 59 2c 20 45 4e 44 5f 4b HOME_KEY, END_K 000204d0: 45 59 5d 2e 69 6e 63 6c 75 64 65 73 28 65 76 65 EY].includes(eve 000204e0: 6e 74 2e 6b 65 79 29 29 29 20 7b 5c 6e 20 20 20 nt.key))) {\n 000204f0: 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d return\n } 00020500: 5c 6e 5c 6e 20 20 20 20 65 76 65 6e 74 2e 73 74 \n\n event.st 00020510: 6f 70 50 72 6f 70 61 67 61 74 69 6f 6e 28 29 2f opPropagation()/ 00020520: 2f 20 73 74 6f 70 50 72 6f 70 61 67 61 74 69 6f / stopPropagatio 00020530: 6e 2f 70 72 65 76 65 6e 74 44 65 66 61 75 6c 74 n/preventDefault 00020540: 20 62 6f 74 68 20 61 64 64 65 64 20 74 6f 20 73 both added to s 00020550: 75 70 70 6f 72 74 20 75 70 2f 64 6f 77 6e 20 6b upport up/down k 00020560: 65 79 73 20 77 69 74 68 6f 75 74 20 73 63 72 6f eys without scro 00020570: 6c 6c 69 6e 67 20 74 68 65 20 70 61 67 65 5c 6e lling the page\n 00020580: 20 20 20 20 65 76 65 6e 74 2e 70 72 65 76 65 6e event.preven 00020590: 74 44 65 66 61 75 6c 74 28 29 5c 6e 5c 6e 20 20 tDefault()\n\n 000205a0: 20 20 63 6f 6e 73 74 20 63 68 69 6c 64 72 65 6e const children 000205b0: 20 3d 20 74 68 69 73 2e 5f 67 65 74 43 68 69 6c = this._getChil 000205c0: 64 72 65 6e 28 29 2e 66 69 6c 74 65 72 28 65 6c dren().filter(el 000205d0: 65 6d 65 6e 74 20 3d 3e 20 21 69 73 44 69 73 61 ement => !isDisa 000205e0: 62 6c 65 64 28 65 6c 65 6d 65 6e 74 29 29 5c 6e bled(element))\n 000205f0: 20 20 20 20 6c 65 74 20 6e 65 78 74 41 63 74 69 let nextActi 00020600: 76 65 45 6c 65 6d 65 6e 74 5c 6e 5c 6e 20 20 20 veElement\n\n 00020610: 20 69 66 20 28 5b 48 4f 4d 45 5f 4b 45 59 2c 20 if ([HOME_KEY, 00020620: 45 4e 44 5f 4b 45 59 5d 2e 69 6e 63 6c 75 64 65 END_KEY].include 00020630: 73 28 65 76 65 6e 74 2e 6b 65 79 29 29 20 7b 5c s(event.key)) {\ 00020640: 6e 20 20 20 20 20 20 6e 65 78 74 41 63 74 69 76 n nextActiv 00020650: 65 45 6c 65 6d 65 6e 74 20 3d 20 63 68 69 6c 64 eElement = child 00020660: 72 65 6e 5b 65 76 65 6e 74 2e 6b 65 79 20 3d 3d ren[event.key == 00020670: 3d 20 48 4f 4d 45 5f 4b 45 59 20 3f 20 30 20 3a = HOME_KEY ? 0 : 00020680: 20 63 68 69 6c 64 72 65 6e 2e 6c 65 6e 67 74 68 children.length 00020690: 20 2d 20 31 5d 5c 6e 20 20 20 20 7d 20 65 6c 73 - 1]\n } els 000206a0: 65 20 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 e {\n const 000206b0: 20 69 73 4e 65 78 74 20 3d 20 5b 41 52 52 4f 57 isNext = [ARROW 000206c0: 5f 52 49 47 48 54 5f 4b 45 59 2c 20 41 52 52 4f _RIGHT_KEY, ARRO 000206d0: 57 5f 44 4f 57 4e 5f 4b 45 59 5d 2e 69 6e 63 6c W_DOWN_KEY].incl 000206e0: 75 64 65 73 28 65 76 65 6e 74 2e 6b 65 79 29 5c udes(event.key)\ 000206f0: 6e 20 20 20 20 20 20 6e 65 78 74 41 63 74 69 76 n nextActiv 00020700: 65 45 6c 65 6d 65 6e 74 20 3d 20 67 65 74 4e 65 eElement = getNe 00020710: 78 74 41 63 74 69 76 65 45 6c 65 6d 65 6e 74 28 xtActiveElement( 00020720: 63 68 69 6c 64 72 65 6e 2c 20 65 76 65 6e 74 2e children, event. 00020730: 74 61 72 67 65 74 2c 20 69 73 4e 65 78 74 2c 20 target, isNext, 00020740: 74 72 75 65 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e true)\n }\n\n 00020750: 20 20 20 20 69 66 20 28 6e 65 78 74 41 63 74 69 if (nextActi 00020760: 76 65 45 6c 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 veElement) {\n 00020770: 20 20 20 20 6e 65 78 74 41 63 74 69 76 65 45 6c nextActiveEl 00020780: 65 6d 65 6e 74 2e 66 6f 63 75 73 28 7b 20 70 72 ement.focus({ pr 00020790: 65 76 65 6e 74 53 63 72 6f 6c 6c 3a 20 74 72 75 eventScroll: tru 000207a0: 65 20 7d 29 5c 6e 20 20 20 20 20 20 54 61 62 2e e })\n Tab. 000207b0: 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 getOrCreateInsta 000207c0: 6e 63 65 28 6e 65 78 74 41 63 74 69 76 65 45 6c nce(nextActiveEl 000207d0: 65 6d 65 6e 74 29 2e 73 68 6f 77 28 29 5c 6e 20 ement).show()\n 000207e0: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f }\n }\n\n _ 000207f0: 67 65 74 43 68 69 6c 64 72 65 6e 28 29 20 7b 20 getChildren() { 00020800: 2f 2f 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f 66 // collection of 00020810: 20 69 6e 6e 65 72 20 65 6c 65 6d 65 6e 74 73 5c inner elements\ 00020820: 6e 20 20 20 20 72 65 74 75 72 6e 20 53 65 6c 65 n return Sele 00020830: 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 28 ctorEngine.find( 00020840: 53 45 4c 45 43 54 4f 52 5f 49 4e 4e 45 52 5f 45 SELECTOR_INNER_E 00020850: 4c 45 4d 2c 20 74 68 69 73 2e 5f 70 61 72 65 6e LEM, this._paren 00020860: 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 t)\n }\n\n _ge 00020870: 74 41 63 74 69 76 65 45 6c 65 6d 28 29 20 7b 5c tActiveElem() {\ 00020880: 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 n return this 00020890: 2e 5f 67 65 74 43 68 69 6c 64 72 65 6e 28 29 2e ._getChildren(). 000208a0: 66 69 6e 64 28 63 68 69 6c 64 20 3d 3e 20 74 68 find(child => th 000208b0: 69 73 2e 5f 65 6c 65 6d 49 73 41 63 74 69 76 65 is._elemIsActive 000208c0: 28 63 68 69 6c 64 29 29 20 7c 7c 20 6e 75 6c 6c (child)) || null 000208d0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 73 65 74 49 \n }\n\n _setI 000208e0: 6e 69 74 69 61 6c 41 74 74 72 69 62 75 74 65 73 nitialAttributes 000208f0: 28 70 61 72 65 6e 74 2c 20 63 68 69 6c 64 72 65 (parent, childre 00020900: 6e 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f n) {\n this._ 00020910: 73 65 74 41 74 74 72 69 62 75 74 65 49 66 4e 6f setAttributeIfNo 00020920: 74 45 78 69 73 74 73 28 70 61 72 65 6e 74 2c 20 tExists(parent, 00020930: 27 72 6f 6c 65 27 2c 20 27 74 61 62 6c 69 73 74 'role', 'tablist 00020940: 27 29 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 63 ')\n\n for (c 00020950: 6f 6e 73 74 20 63 68 69 6c 64 20 6f 66 20 63 68 onst child of ch 00020960: 69 6c 64 72 65 6e 29 20 7b 5c 6e 20 20 20 20 20 ildren) {\n 00020970: 20 74 68 69 73 2e 5f 73 65 74 49 6e 69 74 69 61 this._setInitia 00020980: 6c 41 74 74 72 69 62 75 74 65 73 4f 6e 43 68 69 lAttributesOnChi 00020990: 6c 64 28 63 68 69 6c 64 29 5c 6e 20 20 20 20 7d ld(child)\n } 000209a0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 73 65 74 49 \n }\n\n _setI 000209b0: 6e 69 74 69 61 6c 41 74 74 72 69 62 75 74 65 73 nitialAttributes 000209c0: 4f 6e 43 68 69 6c 64 28 63 68 69 6c 64 29 20 7b OnChild(child) { 000209d0: 5c 6e 20 20 20 20 63 68 69 6c 64 20 3d 20 74 68 \n child = th 000209e0: 69 73 2e 5f 67 65 74 49 6e 6e 65 72 45 6c 65 6d is._getInnerElem 000209f0: 65 6e 74 28 63 68 69 6c 64 29 5c 6e 20 20 20 20 ent(child)\n 00020a00: 63 6f 6e 73 74 20 69 73 41 63 74 69 76 65 20 3d const isActive = 00020a10: 20 74 68 69 73 2e 5f 65 6c 65 6d 49 73 41 63 74 this._elemIsAct 00020a20: 69 76 65 28 63 68 69 6c 64 29 5c 6e 20 20 20 20 ive(child)\n 00020a30: 63 6f 6e 73 74 20 6f 75 74 65 72 45 6c 65 6d 20 const outerElem 00020a40: 3d 20 74 68 69 73 2e 5f 67 65 74 4f 75 74 65 72 = this._getOuter 00020a50: 45 6c 65 6d 65 6e 74 28 63 68 69 6c 64 29 5c 6e Element(child)\n 00020a60: 20 20 20 20 63 68 69 6c 64 2e 73 65 74 41 74 74 child.setAtt 00020a70: 72 69 62 75 74 65 28 27 61 72 69 61 2d 73 65 6c ribute('aria-sel 00020a80: 65 63 74 65 64 27 2c 20 69 73 41 63 74 69 76 65 ected', isActive 00020a90: 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 6f 75 74 )\n\n if (out 00020aa0: 65 72 45 6c 65 6d 20 21 3d 3d 20 63 68 69 6c 64 erElem !== child 00020ab0: 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e ) {\n this. 00020ac0: 5f 73 65 74 41 74 74 72 69 62 75 74 65 49 66 4e _setAttributeIfN 00020ad0: 6f 74 45 78 69 73 74 73 28 6f 75 74 65 72 45 6c otExists(outerEl 00020ae0: 65 6d 2c 20 27 72 6f 6c 65 27 2c 20 27 70 72 65 em, 'role', 'pre 00020af0: 73 65 6e 74 61 74 69 6f 6e 27 29 5c 6e 20 20 20 sentation')\n 00020b00: 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 69 }\n\n if (!i 00020b10: 73 41 63 74 69 76 65 29 20 7b 5c 6e 20 20 20 20 sActive) {\n 00020b20: 20 20 63 68 69 6c 64 2e 73 65 74 41 74 74 72 69 child.setAttri 00020b30: 62 75 74 65 28 27 74 61 62 69 6e 64 65 78 27 2c bute('tabindex', 00020b40: 20 27 2d 31 27 29 5c 6e 20 20 20 20 7d 5c 6e 5c '-1')\n }\n\ 00020b50: 6e 20 20 20 20 74 68 69 73 2e 5f 73 65 74 41 74 n this._setAt 00020b60: 74 72 69 62 75 74 65 49 66 4e 6f 74 45 78 69 73 tributeIfNotExis 00020b70: 74 73 28 63 68 69 6c 64 2c 20 27 72 6f 6c 65 27 ts(child, 'role' 00020b80: 2c 20 27 74 61 62 27 29 5c 6e 5c 6e 20 20 20 20 , 'tab')\n\n 00020b90: 2f 2f 20 73 65 74 20 61 74 74 72 69 62 75 74 65 // set attribute 00020ba0: 73 20 74 6f 20 74 68 65 20 72 65 6c 61 74 65 64 s to the related 00020bb0: 20 70 61 6e 65 6c 20 74 6f 6f 5c 6e 20 20 20 20 panel too\n 00020bc0: 74 68 69 73 2e 5f 73 65 74 49 6e 69 74 69 61 6c this._setInitial 00020bd0: 41 74 74 72 69 62 75 74 65 73 4f 6e 54 61 72 67 AttributesOnTarg 00020be0: 65 74 50 61 6e 65 6c 28 63 68 69 6c 64 29 5c 6e etPanel(child)\n 00020bf0: 20 20 7d 5c 6e 5c 6e 20 20 5f 73 65 74 49 6e 69 }\n\n _setIni 00020c00: 74 69 61 6c 41 74 74 72 69 62 75 74 65 73 4f 6e tialAttributesOn 00020c10: 54 61 72 67 65 74 50 61 6e 65 6c 28 63 68 69 6c TargetPanel(chil 00020c20: 64 29 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 d) {\n const 00020c30: 74 61 72 67 65 74 20 3d 20 53 65 6c 65 63 74 6f target = Selecto 00020c40: 72 45 6e 67 69 6e 65 2e 67 65 74 45 6c 65 6d 65 rEngine.getEleme 00020c50: 6e 74 46 72 6f 6d 53 65 6c 65 63 74 6f 72 28 63 ntFromSelector(c 00020c60: 68 69 6c 64 29 5c 6e 5c 6e 20 20 20 20 69 66 20 hild)\n\n if 00020c70: 28 21 74 61 72 67 65 74 29 20 7b 5c 6e 20 20 20 (!target) {\n 00020c80: 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d return\n } 00020c90: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 65 \n\n this._se 00020ca0: 74 41 74 74 72 69 62 75 74 65 49 66 4e 6f 74 45 tAttributeIfNotE 00020cb0: 78 69 73 74 73 28 74 61 72 67 65 74 2c 20 27 72 xists(target, 'r 00020cc0: 6f 6c 65 27 2c 20 27 74 61 62 70 61 6e 65 6c 27 ole', 'tabpanel' 00020cd0: 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 63 68 69 )\n\n if (chi 00020ce0: 6c 64 2e 69 64 29 20 7b 5c 6e 20 20 20 20 20 20 ld.id) {\n 00020cf0: 74 68 69 73 2e 5f 73 65 74 41 74 74 72 69 62 75 this._setAttribu 00020d00: 74 65 49 66 4e 6f 74 45 78 69 73 74 73 28 74 61 teIfNotExists(ta 00020d10: 72 67 65 74 2c 20 27 61 72 69 61 2d 6c 61 62 65 rget, 'aria-labe 00020d20: 6c 6c 65 64 62 79 27 2c 20 60 24 7b 63 68 69 6c lledby', `${chil 00020d30: 64 2e 69 64 7d 60 29 5c 6e 20 20 20 20 7d 5c 6e d.id}`)\n }\n 00020d40: 20 20 7d 5c 6e 5c 6e 20 20 5f 74 6f 67 67 6c 65 }\n\n _toggle 00020d50: 44 72 6f 70 44 6f 77 6e 28 65 6c 65 6d 65 6e 74 DropDown(element 00020d60: 2c 20 6f 70 65 6e 29 20 7b 5c 6e 20 20 20 20 63 , open) {\n c 00020d70: 6f 6e 73 74 20 6f 75 74 65 72 45 6c 65 6d 20 3d onst outerElem = 00020d80: 20 74 68 69 73 2e 5f 67 65 74 4f 75 74 65 72 45 this._getOuterE 00020d90: 6c 65 6d 65 6e 74 28 65 6c 65 6d 65 6e 74 29 5c lement(element)\ 00020da0: 6e 20 20 20 20 69 66 20 28 21 6f 75 74 65 72 45 n if (!outerE 00020db0: 6c 65 6d 2e 63 6c 61 73 73 4c 69 73 74 2e 63 6f lem.classList.co 00020dc0: 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f 44 52 4f ntains(CLASS_DRO 00020dd0: 50 44 4f 57 4e 29 29 20 7b 5c 6e 20 20 20 20 20 PDOWN)) {\n 00020de0: 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e return\n }\n 00020df0: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 74 6f 67 67 \n const togg 00020e00: 6c 65 20 3d 20 28 73 65 6c 65 63 74 6f 72 2c 20 le = (selector, 00020e10: 63 6c 61 73 73 4e 61 6d 65 29 20 3d 3e 20 7b 5c className) => {\ 00020e20: 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 65 6c 65 n const ele 00020e30: 6d 65 6e 74 20 3d 20 53 65 6c 65 63 74 6f 72 45 ment = SelectorE 00020e40: 6e 67 69 6e 65 2e 66 69 6e 64 4f 6e 65 28 73 65 ngine.findOne(se 00020e50: 6c 65 63 74 6f 72 2c 20 6f 75 74 65 72 45 6c 65 lector, outerEle 00020e60: 6d 29 5c 6e 20 20 20 20 20 20 69 66 20 28 65 6c m)\n if (el 00020e70: 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 20 20 20 20 ement) {\n 00020e80: 20 20 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c element.classL 00020e90: 69 73 74 2e 74 6f 67 67 6c 65 28 63 6c 61 73 73 ist.toggle(class 00020ea0: 4e 61 6d 65 2c 20 6f 70 65 6e 29 5c 6e 20 20 20 Name, open)\n 00020eb0: 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 }\n }\n\n 00020ec0: 20 20 20 74 6f 67 67 6c 65 28 53 45 4c 45 43 54 toggle(SELECT 00020ed0: 4f 52 5f 44 52 4f 50 44 4f 57 4e 5f 54 4f 47 47 OR_DROPDOWN_TOGG 00020ee0: 4c 45 2c 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 LE, CLASS_NAME_A 00020ef0: 43 54 49 56 45 29 5c 6e 20 20 20 20 74 6f 67 67 CTIVE)\n togg 00020f00: 6c 65 28 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 le(SELECTOR_DROP 00020f10: 44 4f 57 4e 5f 4d 45 4e 55 2c 20 43 4c 41 53 53 DOWN_MENU, CLASS 00020f20: 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 20 20 20 _NAME_SHOW)\n 00020f30: 20 6f 75 74 65 72 45 6c 65 6d 2e 73 65 74 41 74 outerElem.setAt 00020f40: 74 72 69 62 75 74 65 28 27 61 72 69 61 2d 65 78 tribute('aria-ex 00020f50: 70 61 6e 64 65 64 27 2c 20 6f 70 65 6e 29 5c 6e panded', open)\n 00020f60: 20 20 7d 5c 6e 5c 6e 20 20 5f 73 65 74 41 74 74 }\n\n _setAtt 00020f70: 72 69 62 75 74 65 49 66 4e 6f 74 45 78 69 73 74 ributeIfNotExist 00020f80: 73 28 65 6c 65 6d 65 6e 74 2c 20 61 74 74 72 69 s(element, attri 00020f90: 62 75 74 65 2c 20 76 61 6c 75 65 29 20 7b 5c 6e bute, value) {\n 00020fa0: 20 20 20 20 69 66 20 28 21 65 6c 65 6d 65 6e 74 if (!element 00020fb0: 2e 68 61 73 41 74 74 72 69 62 75 74 65 28 61 74 .hasAttribute(at 00020fc0: 74 72 69 62 75 74 65 29 29 20 7b 5c 6e 20 20 20 tribute)) {\n 00020fd0: 20 20 20 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 element.setAt 00020fe0: 74 72 69 62 75 74 65 28 61 74 74 72 69 62 75 74 tribute(attribut 00020ff0: 65 2c 20 76 61 6c 75 65 29 5c 6e 20 20 20 20 7d e, value)\n } 00021000: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 65 6c 65 6d \n }\n\n _elem 00021010: 49 73 41 63 74 69 76 65 28 65 6c 65 6d 29 20 7b IsActive(elem) { 00021020: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 65 6c 65 \n return ele 00021030: 6d 2e 63 6c 61 73 73 4c 69 73 74 2e 63 6f 6e 74 m.classList.cont 00021040: 61 69 6e 73 28 43 4c 41 53 53 5f 4e 41 4d 45 5f ains(CLASS_NAME_ 00021050: 41 43 54 49 56 45 29 5c 6e 20 20 7d 5c 6e 5c 6e ACTIVE)\n }\n\n 00021060: 20 20 2f 2f 20 54 72 79 20 74 6f 20 67 65 74 20 // Try to get 00021070: 74 68 65 20 69 6e 6e 65 72 20 65 6c 65 6d 65 6e the inner elemen 00021080: 74 20 28 75 73 75 61 6c 6c 79 20 74 68 65 20 2e t (usually the . 00021090: 6e 61 76 2d 6c 69 6e 6b 29 5c 6e 20 20 5f 67 65 nav-link)\n _ge 000210a0: 74 49 6e 6e 65 72 45 6c 65 6d 65 6e 74 28 65 6c tInnerElement(el 000210b0: 65 6d 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 em) {\n retur 000210c0: 6e 20 65 6c 65 6d 2e 6d 61 74 63 68 65 73 28 53 n elem.matches(S 000210d0: 45 4c 45 43 54 4f 52 5f 49 4e 4e 45 52 5f 45 4c ELECTOR_INNER_EL 000210e0: 45 4d 29 20 3f 20 65 6c 65 6d 20 3a 20 53 65 6c EM) ? elem : Sel 000210f0: 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 ectorEngine.find 00021100: 4f 6e 65 28 53 45 4c 45 43 54 4f 52 5f 49 4e 4e One(SELECTOR_INN 00021110: 45 52 5f 45 4c 45 4d 2c 20 65 6c 65 6d 29 5c 6e ER_ELEM, elem)\n 00021120: 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 54 72 79 20 }\n\n // Try 00021130: 74 6f 20 67 65 74 20 74 68 65 20 6f 75 74 65 72 to get the outer 00021140: 20 65 6c 65 6d 65 6e 74 20 28 75 73 75 61 6c 6c element (usuall 00021150: 79 20 74 68 65 20 2e 6e 61 76 2d 69 74 65 6d 29 y the .nav-item) 00021160: 5c 6e 20 20 5f 67 65 74 4f 75 74 65 72 45 6c 65 \n _getOuterEle 00021170: 6d 65 6e 74 28 65 6c 65 6d 29 20 7b 5c 6e 20 20 ment(elem) {\n 00021180: 20 20 72 65 74 75 72 6e 20 65 6c 65 6d 2e 63 6c return elem.cl 00021190: 6f 73 65 73 74 28 53 45 4c 45 43 54 4f 52 5f 4f osest(SELECTOR_O 000211a0: 55 54 45 52 29 20 7c 7c 20 65 6c 65 6d 5c 6e 20 UTER) || elem\n 000211b0: 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 53 74 61 74 69 }\n\n // Stati 000211c0: 63 5c 6e 20 20 73 74 61 74 69 63 20 6a 51 75 65 c\n static jQue 000211d0: 72 79 49 6e 74 65 72 66 61 63 65 28 63 6f 6e 66 ryInterface(conf 000211e0: 69 67 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 ig) {\n retur 000211f0: 6e 20 74 68 69 73 2e 65 61 63 68 28 66 75 6e 63 n this.each(func 00021200: 74 69 6f 6e 20 28 29 20 7b 5c 6e 20 20 20 20 20 tion () {\n 00021210: 20 63 6f 6e 73 74 20 64 61 74 61 20 3d 20 54 61 const data = Ta 00021220: 62 2e 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 b.getOrCreateIns 00021230: 74 61 6e 63 65 28 74 68 69 73 29 5c 6e 5c 6e 20 tance(this)\n\n 00021240: 20 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 20 if (typeof 00021250: 63 6f 6e 66 69 67 20 21 3d 3d 20 27 73 74 72 69 config !== 'stri 00021260: 6e 67 27 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 ng') {\n 00021270: 72 65 74 75 72 6e 5c 6e 20 20 20 20 20 20 7d 5c return\n }\ 00021280: 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 64 61 74 n\n if (dat 00021290: 61 5b 63 6f 6e 66 69 67 5d 20 3d 3d 3d 20 75 6e a[config] === un 000212a0: 64 65 66 69 6e 65 64 20 7c 7c 20 63 6f 6e 66 69 defined || confi 000212b0: 67 2e 73 74 61 72 74 73 57 69 74 68 28 27 5f 27 g.startsWith('_' 000212c0: 29 20 7c 7c 20 63 6f 6e 66 69 67 20 3d 3d 3d 20 ) || config === 000212d0: 27 63 6f 6e 73 74 72 75 63 74 6f 72 27 29 20 7b 'constructor') { 000212e0: 5c 6e 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 \n throw 000212f0: 6e 65 77 20 54 79 70 65 45 72 72 6f 72 28 60 4e new TypeError(`N 00021300: 6f 20 6d 65 74 68 6f 64 20 6e 61 6d 65 64 20 5c o method named \ 00021310: 22 24 7b 63 6f 6e 66 69 67 7d 5c 22 60 29 5c 6e "${config}\"`)\n 00021320: 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 }\n\n 00021330: 20 64 61 74 61 5b 63 6f 6e 66 69 67 5d 28 29 5c data[config]()\ 00021340: 6e 20 20 20 20 7d 29 5c 6e 20 20 7d 5c 6e 7d 5c n })\n }\n}\ 00021350: 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 44 61 74 61 20 n\n/**\n * Data 00021360: 41 50 49 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 API implementati 00021370: 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e 45 76 65 6e 74 on\n */\n\nEvent 00021380: 48 61 6e 64 6c 65 72 2e 6f 6e 28 64 6f 63 75 6d Handler.on(docum 00021390: 65 6e 74 2c 20 45 56 45 4e 54 5f 43 4c 49 43 4b ent, EVENT_CLICK 000213a0: 5f 44 41 54 41 5f 41 50 49 2c 20 53 45 4c 45 43 _DATA_API, SELEC 000213b0: 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 2c TOR_DATA_TOGGLE, 000213c0: 20 66 75 6e 63 74 69 6f 6e 20 28 65 76 65 6e 74 function (event 000213d0: 29 20 7b 5c 6e 20 20 69 66 20 28 5b 27 41 27 2c ) {\n if (['A', 000213e0: 20 27 41 52 45 41 27 5d 2e 69 6e 63 6c 75 64 65 'AREA'].include 000213f0: 73 28 74 68 69 73 2e 74 61 67 4e 61 6d 65 29 29 s(this.tagName)) 00021400: 20 7b 5c 6e 20 20 20 20 65 76 65 6e 74 2e 70 72 {\n event.pr 00021410: 65 76 65 6e 74 44 65 66 61 75 6c 74 28 29 5c 6e eventDefault()\n 00021420: 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 69 73 44 }\n\n if (isD 00021430: 69 73 61 62 6c 65 64 28 74 68 69 73 29 29 20 7b isabled(this)) { 00021440: 5c 6e 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 \n return\n 00021450: 7d 5c 6e 5c 6e 20 20 54 61 62 2e 67 65 74 4f 72 }\n\n Tab.getOr 00021460: 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 74 CreateInstance(t 00021470: 68 69 73 29 2e 73 68 6f 77 28 29 5c 6e 7d 29 5c his).show()\n})\ 00021480: 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 49 6e 69 74 69 n\n/**\n * Initi 00021490: 61 6c 69 7a 65 20 6f 6e 20 66 6f 63 75 73 5c 6e alize on focus\n 000214a0: 20 2a 2f 5c 6e 45 76 65 6e 74 48 61 6e 64 6c 65 */\nEventHandle 000214b0: 72 2e 6f 6e 28 77 69 6e 64 6f 77 2c 20 45 56 45 r.on(window, EVE 000214c0: 4e 54 5f 4c 4f 41 44 5f 44 41 54 41 5f 41 50 49 NT_LOAD_DATA_API 000214d0: 2c 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 66 6f 72 , () => {\n for 000214e0: 20 28 63 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 20 (const element 000214f0: 6f 66 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e of SelectorEngin 00021500: 65 2e 66 69 6e 64 28 53 45 4c 45 43 54 4f 52 5f e.find(SELECTOR_ 00021510: 44 41 54 41 5f 54 4f 47 47 4c 45 5f 41 43 54 49 DATA_TOGGLE_ACTI 00021520: 56 45 29 29 20 7b 5c 6e 20 20 20 20 54 61 62 2e VE)) {\n Tab. 00021530: 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 getOrCreateInsta 00021540: 6e 63 65 28 65 6c 65 6d 65 6e 74 29 5c 6e 20 20 nce(element)\n 00021550: 7d 5c 6e 7d 29 5c 6e 2f 2a 2a 5c 6e 20 2a 20 6a }\n})\n/**\n * j 00021560: 51 75 65 72 79 5c 6e 20 2a 2f 5c 6e 5c 6e 64 65 Query\n */\n\nde 00021570: 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 6e fineJQueryPlugin 00021580: 28 54 61 62 29 5c 6e 5c 6e 65 78 70 6f 72 74 20 (Tab)\n\nexport 00021590: 64 65 66 61 75 6c 74 20 54 61 62 5c 6e 22 2c 22 default Tab\n"," 000215a0: 2f 2a 2a 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d /**\n * -------- 000215b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000215c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000215d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000215e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000215f0: 2d 2d 5c 6e 20 2a 20 42 6f 6f 74 73 74 72 61 70 --\n * Bootstrap 00021600: 20 74 6f 61 73 74 2e 6a 73 5c 6e 20 2a 20 4c 69 toast.js\n * Li 00021610: 63 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 censed under MIT 00021620: 20 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 (https://github 00021630: 2e 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 .com/twbs/bootst 00021640: 72 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 rap/blob/main/LI 00021650: 43 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d CENSE)\n * ----- 00021660: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00021670: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00021680: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00021690: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000216a0: 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d -----\n */\n\nim 000216b0: 70 6f 72 74 20 42 61 73 65 43 6f 6d 70 6f 6e 65 port BaseCompone 000216c0: 6e 74 20 66 72 6f 6d 20 27 2e 2f 62 61 73 65 2d nt from './base- 000216d0: 63 6f 6d 70 6f 6e 65 6e 74 2e 6a 73 27 5c 6e 69 component.js'\ni 000216e0: 6d 70 6f 72 74 20 45 76 65 6e 74 48 61 6e 64 6c mport EventHandl 000216f0: 65 72 20 66 72 6f 6d 20 27 2e 2f 64 6f 6d 2f 65 er from './dom/e 00021700: 76 65 6e 74 2d 68 61 6e 64 6c 65 72 2e 6a 73 27 vent-handler.js' 00021710: 5c 6e 69 6d 70 6f 72 74 20 7b 20 65 6e 61 62 6c \nimport { enabl 00021720: 65 44 69 73 6d 69 73 73 54 72 69 67 67 65 72 20 eDismissTrigger 00021730: 7d 20 66 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 63 } from './util/c 00021740: 6f 6d 70 6f 6e 65 6e 74 2d 66 75 6e 63 74 69 6f omponent-functio 00021750: 6e 73 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 7b ns.js'\nimport { 00021760: 20 64 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 defineJQueryPlu 00021770: 67 69 6e 2c 20 72 65 66 6c 6f 77 20 7d 20 66 72 gin, reflow } fr 00021780: 6f 6d 20 27 2e 2f 75 74 69 6c 2f 69 6e 64 65 78 om './util/index 00021790: 2e 6a 73 27 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 .js'\n\n/**\n * 000217a0: 43 6f 6e 73 74 61 6e 74 73 5c 6e 20 2a 2f 5c 6e Constants\n */\n 000217b0: 5c 6e 63 6f 6e 73 74 20 4e 41 4d 45 20 3d 20 27 \nconst NAME = ' 000217c0: 74 6f 61 73 74 27 5c 6e 63 6f 6e 73 74 20 44 41 toast'\nconst DA 000217d0: 54 41 5f 4b 45 59 20 3d 20 27 62 73 2e 74 6f 61 TA_KEY = 'bs.toa 000217e0: 73 74 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 st'\nconst EVENT 000217f0: 5f 4b 45 59 20 3d 20 60 2e 24 7b 44 41 54 41 5f _KEY = `.${DATA_ 00021800: 4b 45 59 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 20 45 KEY}`\n\nconst E 00021810: 56 45 4e 54 5f 4d 4f 55 53 45 4f 56 45 52 20 3d VENT_MOUSEOVER = 00021820: 20 60 6d 6f 75 73 65 6f 76 65 72 24 7b 45 56 45 `mouseover${EVE 00021830: 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 NT_KEY}`\nconst 00021840: 45 56 45 4e 54 5f 4d 4f 55 53 45 4f 55 54 20 3d EVENT_MOUSEOUT = 00021850: 20 60 6d 6f 75 73 65 6f 75 74 24 7b 45 56 45 4e `mouseout${EVEN 00021860: 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 T_KEY}`\nconst E 00021870: 56 45 4e 54 5f 46 4f 43 55 53 49 4e 20 3d 20 60 VENT_FOCUSIN = ` 00021880: 66 6f 63 75 73 69 6e 24 7b 45 56 45 4e 54 5f 4b focusin${EVENT_K 00021890: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e EY}`\nconst EVEN 000218a0: 54 5f 46 4f 43 55 53 4f 55 54 20 3d 20 60 66 6f T_FOCUSOUT = `fo 000218b0: 63 75 73 6f 75 74 24 7b 45 56 45 4e 54 5f 4b 45 cusout${EVENT_KE 000218c0: 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 Y}`\nconst EVENT 000218d0: 5f 48 49 44 45 20 3d 20 60 68 69 64 65 24 7b 45 _HIDE = `hide${E 000218e0: 56 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 VENT_KEY}`\ncons 000218f0: 74 20 45 56 45 4e 54 5f 48 49 44 44 45 4e 20 3d t EVENT_HIDDEN = 00021900: 20 60 68 69 64 64 65 6e 24 7b 45 56 45 4e 54 5f `hidden${EVENT_ 00021910: 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 KEY}`\nconst EVE 00021920: 4e 54 5f 53 48 4f 57 20 3d 20 60 73 68 6f 77 24 NT_SHOW = `show$ 00021930: 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f {EVENT_KEY}`\nco 00021940: 6e 73 74 20 45 56 45 4e 54 5f 53 48 4f 57 4e 20 nst EVENT_SHOWN 00021950: 3d 20 60 73 68 6f 77 6e 24 7b 45 56 45 4e 54 5f = `shown${EVENT_ 00021960: 4b 45 59 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 20 43 KEY}`\n\nconst C 00021970: 4c 41 53 53 5f 4e 41 4d 45 5f 46 41 44 45 20 3d LASS_NAME_FADE = 00021980: 20 27 66 61 64 65 27 5c 6e 63 6f 6e 73 74 20 43 'fade'\nconst C 00021990: 4c 41 53 53 5f 4e 41 4d 45 5f 48 49 44 45 20 3d LASS_NAME_HIDE = 000219a0: 20 27 68 69 64 65 27 20 2f 2f 20 40 64 65 70 72 'hide' // @depr 000219b0: 65 63 61 74 65 64 20 2d 20 6b 65 70 74 20 68 65 ecated - kept he 000219c0: 72 65 20 6f 6e 6c 79 20 66 6f 72 20 62 61 63 6b re only for back 000219d0: 77 61 72 64 73 20 63 6f 6d 70 61 74 69 62 69 6c wards compatibil 000219e0: 69 74 79 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 ity\nconst CLASS 000219f0: 5f 4e 41 4d 45 5f 53 48 4f 57 20 3d 20 27 73 68 _NAME_SHOW = 'sh 00021a00: 6f 77 27 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 ow'\nconst CLASS 00021a10: 5f 4e 41 4d 45 5f 53 48 4f 57 49 4e 47 20 3d 20 _NAME_SHOWING = 00021a20: 27 73 68 6f 77 69 6e 67 27 5c 6e 5c 6e 63 6f 6e 'showing'\n\ncon 00021a30: 73 74 20 44 65 66 61 75 6c 74 54 79 70 65 20 3d st DefaultType = 00021a40: 20 7b 5c 6e 20 20 61 6e 69 6d 61 74 69 6f 6e 3a {\n animation: 00021a50: 20 27 62 6f 6f 6c 65 61 6e 27 2c 5c 6e 20 20 61 'boolean',\n a 00021a60: 75 74 6f 68 69 64 65 3a 20 27 62 6f 6f 6c 65 61 utohide: 'boolea 00021a70: 6e 27 2c 5c 6e 20 20 64 65 6c 61 79 3a 20 27 6e n',\n delay: 'n 00021a80: 75 6d 62 65 72 27 5c 6e 7d 5c 6e 5c 6e 63 6f 6e umber'\n}\n\ncon 00021a90: 73 74 20 44 65 66 61 75 6c 74 20 3d 20 7b 5c 6e st Default = {\n 00021aa0: 20 20 61 6e 69 6d 61 74 69 6f 6e 3a 20 74 72 75 animation: tru 00021ab0: 65 2c 5c 6e 20 20 61 75 74 6f 68 69 64 65 3a 20 e,\n autohide: 00021ac0: 74 72 75 65 2c 5c 6e 20 20 64 65 6c 61 79 3a 20 true,\n delay: 00021ad0: 35 30 30 30 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 5000\n}\n\n/**\n 00021ae0: 20 2a 20 43 6c 61 73 73 20 64 65 66 69 6e 69 74 * Class definit 00021af0: 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6c 61 73 ion\n */\n\nclas 00021b00: 73 20 54 6f 61 73 74 20 65 78 74 65 6e 64 73 20 s Toast extends 00021b10: 42 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 20 7b 5c BaseComponent {\ 00021b20: 6e 20 20 63 6f 6e 73 74 72 75 63 74 6f 72 28 65 n constructor(e 00021b30: 6c 65 6d 65 6e 74 2c 20 63 6f 6e 66 69 67 29 20 lement, config) 00021b40: 7b 5c 6e 20 20 20 20 73 75 70 65 72 28 65 6c 65 {\n super(ele 00021b50: 6d 65 6e 74 2c 20 63 6f 6e 66 69 67 29 5c 6e 5c ment, config)\n\ 00021b60: 6e 20 20 20 20 74 68 69 73 2e 5f 74 69 6d 65 6f n this._timeo 00021b70: 75 74 20 3d 20 6e 75 6c 6c 5c 6e 20 20 20 20 74 ut = null\n t 00021b80: 68 69 73 2e 5f 68 61 73 4d 6f 75 73 65 49 6e 74 his._hasMouseInt 00021b90: 65 72 61 63 74 69 6f 6e 20 3d 20 66 61 6c 73 65 eraction = false 00021ba0: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 68 61 73 4b \n this._hasK 00021bb0: 65 79 62 6f 61 72 64 49 6e 74 65 72 61 63 74 69 eyboardInteracti 00021bc0: 6f 6e 20 3d 20 66 61 6c 73 65 5c 6e 20 20 20 20 on = false\n 00021bd0: 74 68 69 73 2e 5f 73 65 74 4c 69 73 74 65 6e 65 this._setListene 00021be0: 72 73 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f rs()\n }\n\n / 00021bf0: 2f 20 47 65 74 74 65 72 73 5c 6e 20 20 73 74 61 / Getters\n sta 00021c00: 74 69 63 20 67 65 74 20 44 65 66 61 75 6c 74 28 tic get Default( 00021c10: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 00021c20: 44 65 66 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e Default\n }\n\n 00021c30: 20 20 73 74 61 74 69 63 20 67 65 74 20 44 65 66 static get Def 00021c40: 61 75 6c 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 aultType() {\n 00021c50: 20 20 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 return Default 00021c60: 54 79 70 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 Type\n }\n\n s 00021c70: 74 61 74 69 63 20 67 65 74 20 4e 41 4d 45 28 29 tatic get NAME() 00021c80: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 4e {\n return N 00021c90: 41 4d 45 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f AME\n }\n\n // 00021ca0: 20 50 75 62 6c 69 63 5c 6e 20 20 73 68 6f 77 28 Public\n show( 00021cb0: 29 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 73 ) {\n const s 00021cc0: 68 6f 77 45 76 65 6e 74 20 3d 20 45 76 65 6e 74 howEvent = Event 00021cd0: 48 61 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 28 Handler.trigger( 00021ce0: 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 this._element, E 00021cf0: 56 45 4e 54 5f 53 48 4f 57 29 5c 6e 5c 6e 20 20 VENT_SHOW)\n\n 00021d00: 20 20 69 66 20 28 73 68 6f 77 45 76 65 6e 74 2e if (showEvent. 00021d10: 64 65 66 61 75 6c 74 50 72 65 76 65 6e 74 65 64 defaultPrevented 00021d20: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 ) {\n retur 00021d30: 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 n\n }\n\n 00021d40: 74 68 69 73 2e 5f 63 6c 65 61 72 54 69 6d 65 6f this._clearTimeo 00021d50: 75 74 28 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 ut()\n\n if ( 00021d60: 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 61 6e 69 this._config.ani 00021d70: 6d 61 74 69 6f 6e 29 20 7b 5c 6e 20 20 20 20 20 mation) {\n 00021d80: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 63 this._element.c 00021d90: 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 lassList.add(CLA 00021da0: 53 53 5f 4e 41 4d 45 5f 46 41 44 45 29 5c 6e 20 SS_NAME_FADE)\n 00021db0: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 }\n\n cons 00021dc0: 74 20 63 6f 6d 70 6c 65 74 65 20 3d 20 28 29 20 t complete = () 00021dd0: 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 => {\n this 00021de0: 2e 5f 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c ._element.classL 00021df0: 69 73 74 2e 72 65 6d 6f 76 65 28 43 4c 41 53 53 ist.remove(CLASS 00021e00: 5f 4e 41 4d 45 5f 53 48 4f 57 49 4e 47 29 5c 6e _NAME_SHOWING)\n 00021e10: 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c EventHandl 00021e20: 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e er.trigger(this. 00021e30: 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f _element, EVENT_ 00021e40: 53 48 4f 57 4e 29 5c 6e 5c 6e 20 20 20 20 20 20 SHOWN)\n\n 00021e50: 74 68 69 73 2e 5f 6d 61 79 62 65 53 63 68 65 64 this._maybeSched 00021e60: 75 6c 65 48 69 64 65 28 29 5c 6e 20 20 20 20 7d uleHide()\n } 00021e70: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c \n\n this._el 00021e80: 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e ement.classList. 00021e90: 72 65 6d 6f 76 65 28 43 4c 41 53 53 5f 4e 41 4d remove(CLASS_NAM 00021ea0: 45 5f 48 49 44 45 29 20 2f 2f 20 40 64 65 70 72 E_HIDE) // @depr 00021eb0: 65 63 61 74 65 64 5c 6e 20 20 20 20 72 65 66 6c ecated\n refl 00021ec0: 6f 77 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 ow(this._element 00021ed0: 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 )\n this._ele 00021ee0: 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e 61 ment.classList.a 00021ef0: 64 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 dd(CLASS_NAME_SH 00021f00: 4f 57 2c 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 OW, CLASS_NAME_S 00021f10: 48 4f 57 49 4e 47 29 5c 6e 5c 6e 20 20 20 20 74 HOWING)\n\n t 00021f20: 68 69 73 2e 5f 71 75 65 75 65 43 61 6c 6c 62 61 his._queueCallba 00021f30: 63 6b 28 63 6f 6d 70 6c 65 74 65 2c 20 74 68 69 ck(complete, thi 00021f40: 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 s._element, this 00021f50: 2e 5f 63 6f 6e 66 69 67 2e 61 6e 69 6d 61 74 69 ._config.animati 00021f60: 6f 6e 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 68 69 on)\n }\n\n hi 00021f70: 64 65 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 de() {\n if ( 00021f80: 21 74 68 69 73 2e 69 73 53 68 6f 77 6e 28 29 29 !this.isShown()) 00021f90: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 00021fa0: 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 \n }\n\n c 00021fb0: 6f 6e 73 74 20 68 69 64 65 45 76 65 6e 74 20 3d onst hideEvent = 00021fc0: 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 74 72 EventHandler.tr 00021fd0: 69 67 67 65 72 28 74 68 69 73 2e 5f 65 6c 65 6d igger(this._elem 00021fe0: 65 6e 74 2c 20 45 56 45 4e 54 5f 48 49 44 45 29 ent, EVENT_HIDE) 00021ff0: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 68 69 64 65 \n\n if (hide 00022000: 45 76 65 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 Event.defaultPre 00022010: 76 65 6e 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 vented) {\n 00022020: 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e return\n }\n 00022030: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 63 6f 6d 70 \n const comp 00022040: 6c 65 74 65 20 3d 20 28 29 20 3d 3e 20 7b 5c 6e lete = () => {\n 00022050: 20 20 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d this._elem 00022060: 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 ent.classList.ad 00022070: 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 48 49 44 d(CLASS_NAME_HID 00022080: 45 29 20 2f 2f 20 40 64 65 70 72 65 63 61 74 65 E) // @deprecate 00022090: 64 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 65 d\n this._e 000220a0: 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 lement.classList 000220b0: 2e 72 65 6d 6f 76 65 28 43 4c 41 53 53 5f 4e 41 .remove(CLASS_NA 000220c0: 4d 45 5f 53 48 4f 57 49 4e 47 2c 20 43 4c 41 53 ME_SHOWING, CLAS 000220d0: 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 20 20 S_NAME_SHOW)\n 000220e0: 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 EventHandler 000220f0: 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f 65 .trigger(this._e 00022100: 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 48 49 lement, EVENT_HI 00022110: 44 44 45 4e 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e DDEN)\n }\n\n 00022120: 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e this._elemen 00022130: 74 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 t.classList.add( 00022140: 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 49 CLASS_NAME_SHOWI 00022150: 4e 47 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 71 NG)\n this._q 00022160: 75 65 75 65 43 61 6c 6c 62 61 63 6b 28 63 6f 6d ueueCallback(com 00022170: 70 6c 65 74 65 2c 20 74 68 69 73 2e 5f 65 6c 65 plete, this._ele 00022180: 6d 65 6e 74 2c 20 74 68 69 73 2e 5f 63 6f 6e 66 ment, this._conf 00022190: 69 67 2e 61 6e 69 6d 61 74 69 6f 6e 29 5c 6e 20 ig.animation)\n 000221a0: 20 7d 5c 6e 5c 6e 20 20 64 69 73 70 6f 73 65 28 }\n\n dispose( 000221b0: 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f 63 ) {\n this._c 000221c0: 6c 65 61 72 54 69 6d 65 6f 75 74 28 29 5c 6e 5c learTimeout()\n\ 000221d0: 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 69 73 n if (this.is 000221e0: 53 68 6f 77 6e 28 29 29 20 7b 5c 6e 20 20 20 20 Shown()) {\n 000221f0: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e this._element. 00022200: 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 65 classList.remove 00022210: 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 (CLASS_NAME_SHOW 00022220: 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 )\n }\n\n 00022230: 73 75 70 65 72 2e 64 69 73 70 6f 73 65 28 29 5c super.dispose()\ 00022240: 6e 20 20 7d 5c 6e 5c 6e 20 20 69 73 53 68 6f 77 n }\n\n isShow 00022250: 6e 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 n() {\n retur 00022260: 6e 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e n this._element. 00022270: 63 6c 61 73 73 4c 69 73 74 2e 63 6f 6e 74 61 69 classList.contai 00022280: 6e 73 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 ns(CLASS_NAME_SH 00022290: 4f 57 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f OW)\n }\n\n // 000222a0: 20 50 72 69 76 61 74 65 5c 6e 5c 6e 20 20 5f 6d Private\n\n _m 000222b0: 61 79 62 65 53 63 68 65 64 75 6c 65 48 69 64 65 aybeScheduleHide 000222c0: 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 () {\n if (!t 000222d0: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 61 75 74 6f his._config.auto 000222e0: 68 69 64 65 29 20 7b 5c 6e 20 20 20 20 20 20 72 hide) {\n r 000222f0: 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e eturn\n }\n\n 00022300: 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f 68 61 if (this._ha 00022310: 73 4d 6f 75 73 65 49 6e 74 65 72 61 63 74 69 6f sMouseInteractio 00022320: 6e 20 7c 7c 20 74 68 69 73 2e 5f 68 61 73 4b 65 n || this._hasKe 00022330: 79 62 6f 61 72 64 49 6e 74 65 72 61 63 74 69 6f yboardInteractio 00022340: 6e 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 n) {\n retu 00022350: 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 rn\n }\n\n 00022360: 20 74 68 69 73 2e 5f 74 69 6d 65 6f 75 74 20 3d this._timeout = 00022370: 20 73 65 74 54 69 6d 65 6f 75 74 28 28 29 20 3d setTimeout(() = 00022380: 3e 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e > {\n this. 00022390: 68 69 64 65 28 29 5c 6e 20 20 20 20 7d 2c 20 74 hide()\n }, t 000223a0: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 64 65 6c 61 his._config.dela 000223b0: 79 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 6f 6e y)\n }\n\n _on 000223c0: 49 6e 74 65 72 61 63 74 69 6f 6e 28 65 76 65 6e Interaction(even 000223d0: 74 2c 20 69 73 49 6e 74 65 72 61 63 74 69 6e 67 t, isInteracting 000223e0: 29 20 7b 5c 6e 20 20 20 20 73 77 69 74 63 68 20 ) {\n switch 000223f0: 28 65 76 65 6e 74 2e 74 79 70 65 29 20 7b 5c 6e (event.type) {\n 00022400: 20 20 20 20 20 20 63 61 73 65 20 27 6d 6f 75 73 case 'mous 00022410: 65 6f 76 65 72 27 3a 5c 6e 20 20 20 20 20 20 63 eover':\n c 00022420: 61 73 65 20 27 6d 6f 75 73 65 6f 75 74 27 3a 20 ase 'mouseout': 00022430: 7b 5c 6e 20 20 20 20 20 20 20 20 74 68 69 73 2e {\n this. 00022440: 5f 68 61 73 4d 6f 75 73 65 49 6e 74 65 72 61 63 _hasMouseInterac 00022450: 74 69 6f 6e 20 3d 20 69 73 49 6e 74 65 72 61 63 tion = isInterac 00022460: 74 69 6e 67 5c 6e 20 20 20 20 20 20 20 20 62 72 ting\n br 00022470: 65 61 6b 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e eak\n }\n\n 00022480: 20 20 20 20 20 20 63 61 73 65 20 27 66 6f 63 75 case 'focu 00022490: 73 69 6e 27 3a 5c 6e 20 20 20 20 20 20 63 61 73 sin':\n cas 000224a0: 65 20 27 66 6f 63 75 73 6f 75 74 27 3a 20 7b 5c e 'focusout': {\ 000224b0: 6e 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 68 n this._h 000224c0: 61 73 4b 65 79 62 6f 61 72 64 49 6e 74 65 72 61 asKeyboardIntera 000224d0: 63 74 69 6f 6e 20 3d 20 69 73 49 6e 74 65 72 61 ction = isIntera 000224e0: 63 74 69 6e 67 5c 6e 20 20 20 20 20 20 20 20 62 cting\n b 000224f0: 72 65 61 6b 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c reak\n }\n\ 00022500: 6e 20 20 20 20 20 20 64 65 66 61 75 6c 74 3a 20 n default: 00022510: 7b 5c 6e 20 20 20 20 20 20 20 20 62 72 65 61 6b {\n break 00022520: 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d \n }\n } 00022530: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 69 73 49 6e \n\n if (isIn 00022540: 74 65 72 61 63 74 69 6e 67 29 20 7b 5c 6e 20 20 teracting) {\n 00022550: 20 20 20 20 74 68 69 73 2e 5f 63 6c 65 61 72 54 this._clearT 00022560: 69 6d 65 6f 75 74 28 29 5c 6e 20 20 20 20 20 20 imeout()\n 00022570: 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c return\n }\n\ 00022580: 6e 20 20 20 20 63 6f 6e 73 74 20 6e 65 78 74 45 n const nextE 00022590: 6c 65 6d 65 6e 74 20 3d 20 65 76 65 6e 74 2e 72 lement = event.r 000225a0: 65 6c 61 74 65 64 54 61 72 67 65 74 5c 6e 20 20 elatedTarget\n 000225b0: 20 20 69 66 20 28 74 68 69 73 2e 5f 65 6c 65 6d if (this._elem 000225c0: 65 6e 74 20 3d 3d 3d 20 6e 65 78 74 45 6c 65 6d ent === nextElem 000225d0: 65 6e 74 20 7c 7c 20 74 68 69 73 2e 5f 65 6c 65 ent || this._ele 000225e0: 6d 65 6e 74 2e 63 6f 6e 74 61 69 6e 73 28 6e 65 ment.contains(ne 000225f0: 78 74 45 6c 65 6d 65 6e 74 29 29 20 7b 5c 6e 20 xtElement)) {\n 00022600: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 00022610: 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f }\n\n this._ 00022620: 6d 61 79 62 65 53 63 68 65 64 75 6c 65 48 69 64 maybeScheduleHid 00022630: 65 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 73 e()\n }\n\n _s 00022640: 65 74 4c 69 73 74 65 6e 65 72 73 28 29 20 7b 5c etListeners() {\ 00022650: 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 n EventHandle 00022660: 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d 65 r.on(this._eleme 00022670: 6e 74 2c 20 45 56 45 4e 54 5f 4d 4f 55 53 45 4f nt, EVENT_MOUSEO 00022680: 56 45 52 2c 20 65 76 65 6e 74 20 3d 3e 20 74 68 VER, event => th 00022690: 69 73 2e 5f 6f 6e 49 6e 74 65 72 61 63 74 69 6f is._onInteractio 000226a0: 6e 28 65 76 65 6e 74 2c 20 74 72 75 65 29 29 5c n(event, true))\ 000226b0: 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 n EventHandle 000226c0: 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d 65 r.on(this._eleme 000226d0: 6e 74 2c 20 45 56 45 4e 54 5f 4d 4f 55 53 45 4f nt, EVENT_MOUSEO 000226e0: 55 54 2c 20 65 76 65 6e 74 20 3d 3e 20 74 68 69 UT, event => thi 000226f0: 73 2e 5f 6f 6e 49 6e 74 65 72 61 63 74 69 6f 6e s._onInteraction 00022700: 28 65 76 65 6e 74 2c 20 66 61 6c 73 65 29 29 5c (event, false))\ 00022710: 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 n EventHandle 00022720: 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d 65 r.on(this._eleme 00022730: 6e 74 2c 20 45 56 45 4e 54 5f 46 4f 43 55 53 49 nt, EVENT_FOCUSI 00022740: 4e 2c 20 65 76 65 6e 74 20 3d 3e 20 74 68 69 73 N, event => this 00022750: 2e 5f 6f 6e 49 6e 74 65 72 61 63 74 69 6f 6e 28 ._onInteraction( 00022760: 65 76 65 6e 74 2c 20 74 72 75 65 29 29 5c 6e 20 event, true))\n 00022770: 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e EventHandler. 00022780: 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 on(this._element 00022790: 2c 20 45 56 45 4e 54 5f 46 4f 43 55 53 4f 55 54 , EVENT_FOCUSOUT 000227a0: 2c 20 65 76 65 6e 74 20 3d 3e 20 74 68 69 73 2e , event => this. 000227b0: 5f 6f 6e 49 6e 74 65 72 61 63 74 69 6f 6e 28 65 _onInteraction(e 000227c0: 76 65 6e 74 2c 20 66 61 6c 73 65 29 29 5c 6e 20 vent, false))\n 000227d0: 20 7d 5c 6e 5c 6e 20 20 5f 63 6c 65 61 72 54 69 }\n\n _clearTi 000227e0: 6d 65 6f 75 74 28 29 20 7b 5c 6e 20 20 20 20 63 meout() {\n c 000227f0: 6c 65 61 72 54 69 6d 65 6f 75 74 28 74 68 69 73 learTimeout(this 00022800: 2e 5f 74 69 6d 65 6f 75 74 29 5c 6e 20 20 20 20 ._timeout)\n 00022810: 74 68 69 73 2e 5f 74 69 6d 65 6f 75 74 20 3d 20 this._timeout = 00022820: 6e 75 6c 6c 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f null\n }\n\n / 00022830: 2f 20 53 74 61 74 69 63 5c 6e 20 20 73 74 61 74 / Static\n stat 00022840: 69 63 20 6a 51 75 65 72 79 49 6e 74 65 72 66 61 ic jQueryInterfa 00022850: 63 65 28 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 ce(config) {\n 00022860: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 65 61 return this.ea 00022870: 63 68 28 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b ch(function () { 00022880: 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 64 61 \n const da 00022890: 74 61 20 3d 20 54 6f 61 73 74 2e 67 65 74 4f 72 ta = Toast.getOr 000228a0: 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 74 CreateInstance(t 000228b0: 68 69 73 2c 20 63 6f 6e 66 69 67 29 5c 6e 5c 6e his, config)\n\n 000228c0: 20 20 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 if (typeof 000228d0: 20 63 6f 6e 66 69 67 20 3d 3d 3d 20 27 73 74 72 config === 'str 000228e0: 69 6e 67 27 29 20 7b 5c 6e 20 20 20 20 20 20 20 ing') {\n 000228f0: 20 69 66 20 28 74 79 70 65 6f 66 20 64 61 74 61 if (typeof data 00022900: 5b 63 6f 6e 66 69 67 5d 20 3d 3d 3d 20 27 75 6e [config] === 'un 00022910: 64 65 66 69 6e 65 64 27 29 20 7b 5c 6e 20 20 20 defined') {\n 00022920: 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 throw new 00022930: 20 54 79 70 65 45 72 72 6f 72 28 60 4e 6f 20 6d TypeError(`No m 00022940: 65 74 68 6f 64 20 6e 61 6d 65 64 20 5c 22 24 7b ethod named \"${ 00022950: 63 6f 6e 66 69 67 7d 5c 22 60 29 5c 6e 20 20 20 config}\"`)\n 00022960: 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 }\n\n 00022970: 20 20 64 61 74 61 5b 63 6f 6e 66 69 67 5d 28 74 data[config](t 00022980: 68 69 73 29 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 his)\n }\n 00022990: 20 20 20 7d 29 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c })\n }\n}\n\ 000229a0: 6e 2f 2a 2a 5c 6e 20 2a 20 44 61 74 61 20 41 50 n/**\n * Data AP 000229b0: 49 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e I implementation 000229c0: 5c 6e 20 2a 2f 5c 6e 5c 6e 65 6e 61 62 6c 65 44 \n */\n\nenableD 000229d0: 69 73 6d 69 73 73 54 72 69 67 67 65 72 28 54 6f ismissTrigger(To 000229e0: 61 73 74 29 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 ast)\n\n/**\n * 000229f0: 6a 51 75 65 72 79 5c 6e 20 2a 2f 5c 6e 5c 6e 64 jQuery\n */\n\nd 00022a00: 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 efineJQueryPlugi 00022a10: 6e 28 54 6f 61 73 74 29 5c 6e 5c 6e 65 78 70 6f n(Toast)\n\nexpo 00022a20: 72 74 20 64 65 66 61 75 6c 74 20 54 6f 61 73 74 rt default Toast 00022a30: 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d 2d 2d \n","/**\n * --- 00022a40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022a50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022a60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022a70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022a80: 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f 6f 74 -------\n * Boot 00022a90: 73 74 72 61 70 20 69 6e 64 65 78 2e 75 6d 64 2e strap index.umd. 00022aa0: 6a 73 5c 6e 20 2a 20 4c 69 63 65 6e 73 65 64 20 js\n * Licensed 00022ab0: 75 6e 64 65 72 20 4d 49 54 20 28 68 74 74 70 73 under MIT (https 00022ac0: 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 77 ://github.com/tw 00022ad0: 62 73 2f 62 6f 6f 74 73 74 72 61 70 2f 62 6c 6f bs/bootstrap/blo 00022ae0: 62 2f 6d 61 69 6e 2f 4c 49 43 45 4e 53 45 29 5c b/main/LICENSE)\ 00022af0: 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d n * ------------ 00022b00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022b10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022b20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022b30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e --------------\n 00022b40: 20 2a 2f 5c 6e 5c 6e 69 6d 70 6f 72 74 20 41 6c */\n\nimport Al 00022b50: 65 72 74 20 66 72 6f 6d 20 27 2e 2f 73 72 63 2f ert from './src/ 00022b60: 61 6c 65 72 74 2e 6a 73 27 5c 6e 69 6d 70 6f 72 alert.js'\nimpor 00022b70: 74 20 42 75 74 74 6f 6e 20 66 72 6f 6d 20 27 2e t Button from '. 00022b80: 2f 73 72 63 2f 62 75 74 74 6f 6e 2e 6a 73 27 5c /src/button.js'\ 00022b90: 6e 69 6d 70 6f 72 74 20 43 61 72 6f 75 73 65 6c nimport Carousel 00022ba0: 20 66 72 6f 6d 20 27 2e 2f 73 72 63 2f 63 61 72 from './src/car 00022bb0: 6f 75 73 65 6c 2e 6a 73 27 5c 6e 69 6d 70 6f 72 ousel.js'\nimpor 00022bc0: 74 20 43 6f 6c 6c 61 70 73 65 20 66 72 6f 6d 20 t Collapse from 00022bd0: 27 2e 2f 73 72 63 2f 63 6f 6c 6c 61 70 73 65 2e './src/collapse. 00022be0: 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 44 72 6f 70 js'\nimport Drop 00022bf0: 64 6f 77 6e 20 66 72 6f 6d 20 27 2e 2f 73 72 63 down from './src 00022c00: 2f 64 72 6f 70 64 6f 77 6e 2e 6a 73 27 5c 6e 69 /dropdown.js'\ni 00022c10: 6d 70 6f 72 74 20 4d 6f 64 61 6c 20 66 72 6f 6d mport Modal from 00022c20: 20 27 2e 2f 73 72 63 2f 6d 6f 64 61 6c 2e 6a 73 './src/modal.js 00022c30: 27 5c 6e 69 6d 70 6f 72 74 20 4f 66 66 63 61 6e '\nimport Offcan 00022c40: 76 61 73 20 66 72 6f 6d 20 27 2e 2f 73 72 63 2f vas from './src/ 00022c50: 6f 66 66 63 61 6e 76 61 73 2e 6a 73 27 5c 6e 69 offcanvas.js'\ni 00022c60: 6d 70 6f 72 74 20 50 6f 70 6f 76 65 72 20 66 72 mport Popover fr 00022c70: 6f 6d 20 27 2e 2f 73 72 63 2f 70 6f 70 6f 76 65 om './src/popove 00022c80: 72 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 53 63 r.js'\nimport Sc 00022c90: 72 6f 6c 6c 53 70 79 20 66 72 6f 6d 20 27 2e 2f rollSpy from './ 00022ca0: 73 72 63 2f 73 63 72 6f 6c 6c 73 70 79 2e 6a 73 src/scrollspy.js 00022cb0: 27 5c 6e 69 6d 70 6f 72 74 20 54 61 62 20 66 72 '\nimport Tab fr 00022cc0: 6f 6d 20 27 2e 2f 73 72 63 2f 74 61 62 2e 6a 73 om './src/tab.js 00022cd0: 27 5c 6e 69 6d 70 6f 72 74 20 54 6f 61 73 74 20 '\nimport Toast 00022ce0: 66 72 6f 6d 20 27 2e 2f 73 72 63 2f 74 6f 61 73 from './src/toas 00022cf0: 74 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 54 6f t.js'\nimport To 00022d00: 6f 6c 74 69 70 20 66 72 6f 6d 20 27 2e 2f 73 72 oltip from './sr 00022d10: 63 2f 74 6f 6f 6c 74 69 70 2e 6a 73 27 5c 6e 5c c/tooltip.js'\n\ 00022d20: 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 nexport default 00022d30: 7b 5c 6e 20 20 41 6c 65 72 74 2c 5c 6e 20 20 42 {\n Alert,\n B 00022d40: 75 74 74 6f 6e 2c 5c 6e 20 20 43 61 72 6f 75 73 utton,\n Carous 00022d50: 65 6c 2c 5c 6e 20 20 43 6f 6c 6c 61 70 73 65 2c el,\n Collapse, 00022d60: 5c 6e 20 20 44 72 6f 70 64 6f 77 6e 2c 5c 6e 20 \n Dropdown,\n 00022d70: 20 4d 6f 64 61 6c 2c 5c 6e 20 20 4f 66 66 63 61 Modal,\n Offca 00022d80: 6e 76 61 73 2c 5c 6e 20 20 50 6f 70 6f 76 65 72 nvas,\n Popover 00022d90: 2c 5c 6e 20 20 53 63 72 6f 6c 6c 53 70 79 2c 5c ,\n ScrollSpy,\ 00022da0: 6e 20 20 54 61 62 2c 5c 6e 20 20 54 6f 61 73 74 n Tab,\n Toast 00022db0: 2c 5c 6e 20 20 54 6f 6f 6c 74 69 70 5c 6e 7d 5c ,\n Tooltip\n}\ 00022dc0: 6e 22 2c 22 27 75 73 65 20 73 74 72 69 63 74 27 n","'use strict' 00022dd0: 5c 6e 5c 6e 65 78 70 6f 72 74 73 2e 62 79 74 65 \n\nexports.byte 00022de0: 4c 65 6e 67 74 68 20 3d 20 62 79 74 65 4c 65 6e Length = byteLen 00022df0: 67 74 68 5c 6e 65 78 70 6f 72 74 73 2e 74 6f 42 gth\nexports.toB 00022e00: 79 74 65 41 72 72 61 79 20 3d 20 74 6f 42 79 74 yteArray = toByt 00022e10: 65 41 72 72 61 79 5c 6e 65 78 70 6f 72 74 73 2e eArray\nexports. 00022e20: 66 72 6f 6d 42 79 74 65 41 72 72 61 79 20 3d 20 fromByteArray = 00022e30: 66 72 6f 6d 42 79 74 65 41 72 72 61 79 5c 6e 5c fromByteArray\n\ 00022e40: 6e 76 61 72 20 6c 6f 6f 6b 75 70 20 3d 20 5b 5d nvar lookup = [] 00022e50: 5c 6e 76 61 72 20 72 65 76 4c 6f 6f 6b 75 70 20 \nvar revLookup 00022e60: 3d 20 5b 5d 5c 6e 76 61 72 20 41 72 72 20 3d 20 = []\nvar Arr = 00022e70: 74 79 70 65 6f 66 20 55 69 6e 74 38 41 72 72 61 typeof Uint8Arra 00022e80: 79 20 21 3d 3d 20 27 75 6e 64 65 66 69 6e 65 64 y !== 'undefined 00022e90: 27 20 3f 20 55 69 6e 74 38 41 72 72 61 79 20 3a ' ? Uint8Array : 00022ea0: 20 41 72 72 61 79 5c 6e 5c 6e 76 61 72 20 63 6f Array\n\nvar co 00022eb0: 64 65 20 3d 20 27 41 42 43 44 45 46 47 48 49 4a de = 'ABCDEFGHIJ 00022ec0: 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a KLMNOPQRSTUVWXYZ 00022ed0: 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 abcdefghijklmnop 00022ee0: 71 72 73 74 75 76 77 78 79 7a 30 31 32 33 34 35 qrstuvwxyz012345 00022ef0: 36 37 38 39 2b 2f 27 5c 6e 66 6f 72 20 28 76 61 6789+/'\nfor (va 00022f00: 72 20 69 20 3d 20 30 2c 20 6c 65 6e 20 3d 20 63 r i = 0, len = c 00022f10: 6f 64 65 2e 6c 65 6e 67 74 68 3b 20 69 20 3c 20 ode.length; i < 00022f20: 6c 65 6e 3b 20 2b 2b 69 29 20 7b 5c 6e 20 20 6c len; ++i) {\n l 00022f30: 6f 6f 6b 75 70 5b 69 5d 20 3d 20 63 6f 64 65 5b ookup[i] = code[ 00022f40: 69 5d 5c 6e 20 20 72 65 76 4c 6f 6f 6b 75 70 5b i]\n revLookup[ 00022f50: 63 6f 64 65 2e 63 68 61 72 43 6f 64 65 41 74 28 code.charCodeAt( 00022f60: 69 29 5d 20 3d 20 69 5c 6e 7d 5c 6e 5c 6e 2f 2f i)] = i\n}\n\n// 00022f70: 20 53 75 70 70 6f 72 74 20 64 65 63 6f 64 69 6e Support decodin 00022f80: 67 20 55 52 4c 2d 73 61 66 65 20 62 61 73 65 36 g URL-safe base6 00022f90: 34 20 73 74 72 69 6e 67 73 2c 20 61 73 20 4e 6f 4 strings, as No 00022fa0: 64 65 2e 6a 73 20 64 6f 65 73 2e 5c 6e 2f 2f 20 de.js does.\n// 00022fb0: 53 65 65 3a 20 68 74 74 70 73 3a 2f 2f 65 6e 2e See: https://en. 00022fc0: 77 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 wikipedia.org/wi 00022fd0: 6b 69 2f 42 61 73 65 36 34 23 55 52 4c 5f 61 70 ki/Base64#URL_ap 00022fe0: 70 6c 69 63 61 74 69 6f 6e 73 5c 6e 72 65 76 4c plications\nrevL 00022ff0: 6f 6f 6b 75 70 5b 27 2d 27 2e 63 68 61 72 43 6f ookup['-'.charCo 00023000: 64 65 41 74 28 30 29 5d 20 3d 20 36 32 5c 6e 72 deAt(0)] = 62\nr 00023010: 65 76 4c 6f 6f 6b 75 70 5b 27 5f 27 2e 63 68 61 evLookup['_'.cha 00023020: 72 43 6f 64 65 41 74 28 30 29 5d 20 3d 20 36 33 rCodeAt(0)] = 63 00023030: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 67 65 74 \n\nfunction get 00023040: 4c 65 6e 73 20 28 62 36 34 29 20 7b 5c 6e 20 20 Lens (b64) {\n 00023050: 76 61 72 20 6c 65 6e 20 3d 20 62 36 34 2e 6c 65 var len = b64.le 00023060: 6e 67 74 68 5c 6e 5c 6e 20 20 69 66 20 28 6c 65 ngth\n\n if (le 00023070: 6e 20 25 20 34 20 3e 20 30 29 20 7b 5c 6e 20 20 n % 4 > 0) {\n 00023080: 20 20 74 68 72 6f 77 20 6e 65 77 20 45 72 72 6f throw new Erro 00023090: 72 28 27 49 6e 76 61 6c 69 64 20 73 74 72 69 6e r('Invalid strin 000230a0: 67 2e 20 4c 65 6e 67 74 68 20 6d 75 73 74 20 62 g. Length must b 000230b0: 65 20 61 20 6d 75 6c 74 69 70 6c 65 20 6f 66 20 e a multiple of 000230c0: 34 27 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 4')\n }\n\n // 000230d0: 20 54 72 69 6d 20 6f 66 66 20 65 78 74 72 61 20 Trim off extra 000230e0: 62 79 74 65 73 20 61 66 74 65 72 20 70 6c 61 63 bytes after plac 000230f0: 65 68 6f 6c 64 65 72 20 62 79 74 65 73 20 61 72 eholder bytes ar 00023100: 65 20 66 6f 75 6e 64 5c 6e 20 20 2f 2f 20 53 65 e found\n // Se 00023110: 65 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 e: https://githu 00023120: 62 2e 63 6f 6d 2f 62 65 61 74 67 61 6d 6d 69 74 b.com/beatgammit 00023130: 2f 62 61 73 65 36 34 2d 6a 73 2f 69 73 73 75 65 /base64-js/issue 00023140: 73 2f 34 32 5c 6e 20 20 76 61 72 20 76 61 6c 69 s/42\n var vali 00023150: 64 4c 65 6e 20 3d 20 62 36 34 2e 69 6e 64 65 78 dLen = b64.index 00023160: 4f 66 28 27 3d 27 29 5c 6e 20 20 69 66 20 28 76 Of('=')\n if (v 00023170: 61 6c 69 64 4c 65 6e 20 3d 3d 3d 20 2d 31 29 20 alidLen === -1) 00023180: 76 61 6c 69 64 4c 65 6e 20 3d 20 6c 65 6e 5c 6e validLen = len\n 00023190: 5c 6e 20 20 76 61 72 20 70 6c 61 63 65 48 6f 6c \n var placeHol 000231a0: 64 65 72 73 4c 65 6e 20 3d 20 76 61 6c 69 64 4c dersLen = validL 000231b0: 65 6e 20 3d 3d 3d 20 6c 65 6e 5c 6e 20 20 20 20 en === len\n 000231c0: 3f 20 30 5c 6e 20 20 20 20 3a 20 34 20 2d 20 28 ? 0\n : 4 - ( 000231d0: 76 61 6c 69 64 4c 65 6e 20 25 20 34 29 5c 6e 5c validLen % 4)\n\ 000231e0: 6e 20 20 72 65 74 75 72 6e 20 5b 76 61 6c 69 64 n return [valid 000231f0: 4c 65 6e 2c 20 70 6c 61 63 65 48 6f 6c 64 65 72 Len, placeHolder 00023200: 73 4c 65 6e 5d 5c 6e 7d 5c 6e 5c 6e 2f 2f 20 62 sLen]\n}\n\n// b 00023210: 61 73 65 36 34 20 69 73 20 34 2f 33 20 2b 20 75 ase64 is 4/3 + u 00023220: 70 20 74 6f 20 74 77 6f 20 63 68 61 72 61 63 74 p to two charact 00023230: 65 72 73 20 6f 66 20 74 68 65 20 6f 72 69 67 69 ers of the origi 00023240: 6e 61 6c 20 64 61 74 61 5c 6e 66 75 6e 63 74 69 nal data\nfuncti 00023250: 6f 6e 20 62 79 74 65 4c 65 6e 67 74 68 20 28 62 on byteLength (b 00023260: 36 34 29 20 7b 5c 6e 20 20 76 61 72 20 6c 65 6e 64) {\n var len 00023270: 73 20 3d 20 67 65 74 4c 65 6e 73 28 62 36 34 29 s = getLens(b64) 00023280: 5c 6e 20 20 76 61 72 20 76 61 6c 69 64 4c 65 6e \n var validLen 00023290: 20 3d 20 6c 65 6e 73 5b 30 5d 5c 6e 20 20 76 61 = lens[0]\n va 000232a0: 72 20 70 6c 61 63 65 48 6f 6c 64 65 72 73 4c 65 r placeHoldersLe 000232b0: 6e 20 3d 20 6c 65 6e 73 5b 31 5d 5c 6e 20 20 72 n = lens[1]\n r 000232c0: 65 74 75 72 6e 20 28 28 76 61 6c 69 64 4c 65 6e eturn ((validLen 000232d0: 20 2b 20 70 6c 61 63 65 48 6f 6c 64 65 72 73 4c + placeHoldersL 000232e0: 65 6e 29 20 2a 20 33 20 2f 20 34 29 20 2d 20 70 en) * 3 / 4) - p 000232f0: 6c 61 63 65 48 6f 6c 64 65 72 73 4c 65 6e 5c 6e laceHoldersLen\n 00023300: 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 5f 62 }\n\nfunction _b 00023310: 79 74 65 4c 65 6e 67 74 68 20 28 62 36 34 2c 20 yteLength (b64, 00023320: 76 61 6c 69 64 4c 65 6e 2c 20 70 6c 61 63 65 48 validLen, placeH 00023330: 6f 6c 64 65 72 73 4c 65 6e 29 20 7b 5c 6e 20 20 oldersLen) {\n 00023340: 72 65 74 75 72 6e 20 28 28 76 61 6c 69 64 4c 65 return ((validLe 00023350: 6e 20 2b 20 70 6c 61 63 65 48 6f 6c 64 65 72 73 n + placeHolders 00023360: 4c 65 6e 29 20 2a 20 33 20 2f 20 34 29 20 2d 20 Len) * 3 / 4) - 00023370: 70 6c 61 63 65 48 6f 6c 64 65 72 73 4c 65 6e 5c placeHoldersLen\ 00023380: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 74 n}\n\nfunction t 00023390: 6f 42 79 74 65 41 72 72 61 79 20 28 62 36 34 29 oByteArray (b64) 000233a0: 20 7b 5c 6e 20 20 76 61 72 20 74 6d 70 5c 6e 20 {\n var tmp\n 000233b0: 20 76 61 72 20 6c 65 6e 73 20 3d 20 67 65 74 4c var lens = getL 000233c0: 65 6e 73 28 62 36 34 29 5c 6e 20 20 76 61 72 20 ens(b64)\n var 000233d0: 76 61 6c 69 64 4c 65 6e 20 3d 20 6c 65 6e 73 5b validLen = lens[ 000233e0: 30 5d 5c 6e 20 20 76 61 72 20 70 6c 61 63 65 48 0]\n var placeH 000233f0: 6f 6c 64 65 72 73 4c 65 6e 20 3d 20 6c 65 6e 73 oldersLen = lens 00023400: 5b 31 5d 5c 6e 5c 6e 20 20 76 61 72 20 61 72 72 [1]\n\n var arr 00023410: 20 3d 20 6e 65 77 20 41 72 72 28 5f 62 79 74 65 = new Arr(_byte 00023420: 4c 65 6e 67 74 68 28 62 36 34 2c 20 76 61 6c 69 Length(b64, vali 00023430: 64 4c 65 6e 2c 20 70 6c 61 63 65 48 6f 6c 64 65 dLen, placeHolde 00023440: 72 73 4c 65 6e 29 29 5c 6e 5c 6e 20 20 76 61 72 rsLen))\n\n var 00023450: 20 63 75 72 42 79 74 65 20 3d 20 30 5c 6e 5c 6e curByte = 0\n\n 00023460: 20 20 2f 2f 20 69 66 20 74 68 65 72 65 20 61 72 // if there ar 00023470: 65 20 70 6c 61 63 65 68 6f 6c 64 65 72 73 2c 20 e placeholders, 00023480: 6f 6e 6c 79 20 67 65 74 20 75 70 20 74 6f 20 74 only get up to t 00023490: 68 65 20 6c 61 73 74 20 63 6f 6d 70 6c 65 74 65 he last complete 000234a0: 20 34 20 63 68 61 72 73 5c 6e 20 20 76 61 72 20 4 chars\n var 000234b0: 6c 65 6e 20 3d 20 70 6c 61 63 65 48 6f 6c 64 65 len = placeHolde 000234c0: 72 73 4c 65 6e 20 3e 20 30 5c 6e 20 20 20 20 3f rsLen > 0\n ? 000234d0: 20 76 61 6c 69 64 4c 65 6e 20 2d 20 34 5c 6e 20 validLen - 4\n 000234e0: 20 20 20 3a 20 76 61 6c 69 64 4c 65 6e 5c 6e 5c : validLen\n\ 000234f0: 6e 20 20 76 61 72 20 69 5c 6e 20 20 66 6f 72 20 n var i\n for 00023500: 28 69 20 3d 20 30 3b 20 69 20 3c 20 6c 65 6e 3b (i = 0; i < len; 00023510: 20 69 20 2b 3d 20 34 29 20 7b 5c 6e 20 20 20 20 i += 4) {\n 00023520: 74 6d 70 20 3d 5c 6e 20 20 20 20 20 20 28 72 65 tmp =\n (re 00023530: 76 4c 6f 6f 6b 75 70 5b 62 36 34 2e 63 68 61 72 vLookup[b64.char 00023540: 43 6f 64 65 41 74 28 69 29 5d 20 3c 3c 20 31 38 CodeAt(i)] << 18 00023550: 29 20 7c 5c 6e 20 20 20 20 20 20 28 72 65 76 4c ) |\n (revL 00023560: 6f 6f 6b 75 70 5b 62 36 34 2e 63 68 61 72 43 6f ookup[b64.charCo 00023570: 64 65 41 74 28 69 20 2b 20 31 29 5d 20 3c 3c 20 deAt(i + 1)] << 00023580: 31 32 29 20 7c 5c 6e 20 20 20 20 20 20 28 72 65 12) |\n (re 00023590: 76 4c 6f 6f 6b 75 70 5b 62 36 34 2e 63 68 61 72 vLookup[b64.char 000235a0: 43 6f 64 65 41 74 28 69 20 2b 20 32 29 5d 20 3c CodeAt(i + 2)] < 000235b0: 3c 20 36 29 20 7c 5c 6e 20 20 20 20 20 20 72 65 < 6) |\n re 000235c0: 76 4c 6f 6f 6b 75 70 5b 62 36 34 2e 63 68 61 72 vLookup[b64.char 000235d0: 43 6f 64 65 41 74 28 69 20 2b 20 33 29 5d 5c 6e CodeAt(i + 3)]\n 000235e0: 20 20 20 20 61 72 72 5b 63 75 72 42 79 74 65 2b arr[curByte+ 000235f0: 2b 5d 20 3d 20 28 74 6d 70 20 3e 3e 20 31 36 29 +] = (tmp >> 16) 00023600: 20 26 20 30 78 46 46 5c 6e 20 20 20 20 61 72 72 & 0xFF\n arr 00023610: 5b 63 75 72 42 79 74 65 2b 2b 5d 20 3d 20 28 74 [curByte++] = (t 00023620: 6d 70 20 3e 3e 20 38 29 20 26 20 30 78 46 46 5c mp >> 8) & 0xFF\ 00023630: 6e 20 20 20 20 61 72 72 5b 63 75 72 42 79 74 65 n arr[curByte 00023640: 2b 2b 5d 20 3d 20 74 6d 70 20 26 20 30 78 46 46 ++] = tmp & 0xFF 00023650: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 70 \n }\n\n if (p 00023660: 6c 61 63 65 48 6f 6c 64 65 72 73 4c 65 6e 20 3d laceHoldersLen = 00023670: 3d 3d 20 32 29 20 7b 5c 6e 20 20 20 20 74 6d 70 == 2) {\n tmp 00023680: 20 3d 5c 6e 20 20 20 20 20 20 28 72 65 76 4c 6f =\n (revLo 00023690: 6f 6b 75 70 5b 62 36 34 2e 63 68 61 72 43 6f 64 okup[b64.charCod 000236a0: 65 41 74 28 69 29 5d 20 3c 3c 20 32 29 20 7c 5c eAt(i)] << 2) |\ 000236b0: 6e 20 20 20 20 20 20 28 72 65 76 4c 6f 6f 6b 75 n (revLooku 000236c0: 70 5b 62 36 34 2e 63 68 61 72 43 6f 64 65 41 74 p[b64.charCodeAt 000236d0: 28 69 20 2b 20 31 29 5d 20 3e 3e 20 34 29 5c 6e (i + 1)] >> 4)\n 000236e0: 20 20 20 20 61 72 72 5b 63 75 72 42 79 74 65 2b arr[curByte+ 000236f0: 2b 5d 20 3d 20 74 6d 70 20 26 20 30 78 46 46 5c +] = tmp & 0xFF\ 00023700: 6e 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 70 6c n }\n\n if (pl 00023710: 61 63 65 48 6f 6c 64 65 72 73 4c 65 6e 20 3d 3d aceHoldersLen == 00023720: 3d 20 31 29 20 7b 5c 6e 20 20 20 20 74 6d 70 20 = 1) {\n tmp 00023730: 3d 5c 6e 20 20 20 20 20 20 28 72 65 76 4c 6f 6f =\n (revLoo 00023740: 6b 75 70 5b 62 36 34 2e 63 68 61 72 43 6f 64 65 kup[b64.charCode 00023750: 41 74 28 69 29 5d 20 3c 3c 20 31 30 29 20 7c 5c At(i)] << 10) |\ 00023760: 6e 20 20 20 20 20 20 28 72 65 76 4c 6f 6f 6b 75 n (revLooku 00023770: 70 5b 62 36 34 2e 63 68 61 72 43 6f 64 65 41 74 p[b64.charCodeAt 00023780: 28 69 20 2b 20 31 29 5d 20 3c 3c 20 34 29 20 7c (i + 1)] << 4) | 00023790: 5c 6e 20 20 20 20 20 20 28 72 65 76 4c 6f 6f 6b \n (revLook 000237a0: 75 70 5b 62 36 34 2e 63 68 61 72 43 6f 64 65 41 up[b64.charCodeA 000237b0: 74 28 69 20 2b 20 32 29 5d 20 3e 3e 20 32 29 5c t(i + 2)] >> 2)\ 000237c0: 6e 20 20 20 20 61 72 72 5b 63 75 72 42 79 74 65 n arr[curByte 000237d0: 2b 2b 5d 20 3d 20 28 74 6d 70 20 3e 3e 20 38 29 ++] = (tmp >> 8) 000237e0: 20 26 20 30 78 46 46 5c 6e 20 20 20 20 61 72 72 & 0xFF\n arr 000237f0: 5b 63 75 72 42 79 74 65 2b 2b 5d 20 3d 20 74 6d [curByte++] = tm 00023800: 70 20 26 20 30 78 46 46 5c 6e 20 20 7d 5c 6e 5c p & 0xFF\n }\n\ 00023810: 6e 20 20 72 65 74 75 72 6e 20 61 72 72 5c 6e 7d n return arr\n} 00023820: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 74 72 69 \n\nfunction tri 00023830: 70 6c 65 74 54 6f 42 61 73 65 36 34 20 28 6e 75 pletToBase64 (nu 00023840: 6d 29 20 7b 5c 6e 20 20 72 65 74 75 72 6e 20 6c m) {\n return l 00023850: 6f 6f 6b 75 70 5b 6e 75 6d 20 3e 3e 20 31 38 20 ookup[num >> 18 00023860: 26 20 30 78 33 46 5d 20 2b 5c 6e 20 20 20 20 6c & 0x3F] +\n l 00023870: 6f 6f 6b 75 70 5b 6e 75 6d 20 3e 3e 20 31 32 20 ookup[num >> 12 00023880: 26 20 30 78 33 46 5d 20 2b 5c 6e 20 20 20 20 6c & 0x3F] +\n l 00023890: 6f 6f 6b 75 70 5b 6e 75 6d 20 3e 3e 20 36 20 26 ookup[num >> 6 & 000238a0: 20 30 78 33 46 5d 20 2b 5c 6e 20 20 20 20 6c 6f 0x3F] +\n lo 000238b0: 6f 6b 75 70 5b 6e 75 6d 20 26 20 30 78 33 46 5d okup[num & 0x3F] 000238c0: 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 \n}\n\nfunction 000238d0: 65 6e 63 6f 64 65 43 68 75 6e 6b 20 28 75 69 6e encodeChunk (uin 000238e0: 74 38 2c 20 73 74 61 72 74 2c 20 65 6e 64 29 20 t8, start, end) 000238f0: 7b 5c 6e 20 20 76 61 72 20 74 6d 70 5c 6e 20 20 {\n var tmp\n 00023900: 76 61 72 20 6f 75 74 70 75 74 20 3d 20 5b 5d 5c var output = []\ 00023910: 6e 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 n for (var i = 00023920: 73 74 61 72 74 3b 20 69 20 3c 20 65 6e 64 3b 20 start; i < end; 00023930: 69 20 2b 3d 20 33 29 20 7b 5c 6e 20 20 20 20 74 i += 3) {\n t 00023940: 6d 70 20 3d 5c 6e 20 20 20 20 20 20 28 28 75 69 mp =\n ((ui 00023950: 6e 74 38 5b 69 5d 20 3c 3c 20 31 36 29 20 26 20 nt8[i] << 16) & 00023960: 30 78 46 46 30 30 30 30 29 20 2b 5c 6e 20 20 20 0xFF0000) +\n 00023970: 20 20 20 28 28 75 69 6e 74 38 5b 69 20 2b 20 31 ((uint8[i + 1 00023980: 5d 20 3c 3c 20 38 29 20 26 20 30 78 46 46 30 30 ] << 8) & 0xFF00 00023990: 29 20 2b 5c 6e 20 20 20 20 20 20 28 75 69 6e 74 ) +\n (uint 000239a0: 38 5b 69 20 2b 20 32 5d 20 26 20 30 78 46 46 29 8[i + 2] & 0xFF) 000239b0: 5c 6e 20 20 20 20 6f 75 74 70 75 74 2e 70 75 73 \n output.pus 000239c0: 68 28 74 72 69 70 6c 65 74 54 6f 42 61 73 65 36 h(tripletToBase6 000239d0: 34 28 74 6d 70 29 29 5c 6e 20 20 7d 5c 6e 20 20 4(tmp))\n }\n 000239e0: 72 65 74 75 72 6e 20 6f 75 74 70 75 74 2e 6a 6f return output.jo 000239f0: 69 6e 28 27 27 29 5c 6e 7d 5c 6e 5c 6e 66 75 6e in('')\n}\n\nfun 00023a00: 63 74 69 6f 6e 20 66 72 6f 6d 42 79 74 65 41 72 ction fromByteAr 00023a10: 72 61 79 20 28 75 69 6e 74 38 29 20 7b 5c 6e 20 ray (uint8) {\n 00023a20: 20 76 61 72 20 74 6d 70 5c 6e 20 20 76 61 72 20 var tmp\n var 00023a30: 6c 65 6e 20 3d 20 75 69 6e 74 38 2e 6c 65 6e 67 len = uint8.leng 00023a40: 74 68 5c 6e 20 20 76 61 72 20 65 78 74 72 61 42 th\n var extraB 00023a50: 79 74 65 73 20 3d 20 6c 65 6e 20 25 20 33 20 2f ytes = len % 3 / 00023a60: 2f 20 69 66 20 77 65 20 68 61 76 65 20 31 20 62 / if we have 1 b 00023a70: 79 74 65 20 6c 65 66 74 2c 20 70 61 64 20 32 20 yte left, pad 2 00023a80: 62 79 74 65 73 5c 6e 20 20 76 61 72 20 70 61 72 bytes\n var par 00023a90: 74 73 20 3d 20 5b 5d 5c 6e 20 20 76 61 72 20 6d ts = []\n var m 00023aa0: 61 78 43 68 75 6e 6b 4c 65 6e 67 74 68 20 3d 20 axChunkLength = 00023ab0: 31 36 33 38 33 20 2f 2f 20 6d 75 73 74 20 62 65 16383 // must be 00023ac0: 20 6d 75 6c 74 69 70 6c 65 20 6f 66 20 33 5c 6e multiple of 3\n 00023ad0: 5c 6e 20 20 2f 2f 20 67 6f 20 74 68 72 6f 75 67 \n // go throug 00023ae0: 68 20 74 68 65 20 61 72 72 61 79 20 65 76 65 72 h the array ever 00023af0: 79 20 74 68 72 65 65 20 62 79 74 65 73 2c 20 77 y three bytes, w 00023b00: 65 27 6c 6c 20 64 65 61 6c 20 77 69 74 68 20 74 e'll deal with t 00023b10: 72 61 69 6c 69 6e 67 20 73 74 75 66 66 20 6c 61 railing stuff la 00023b20: 74 65 72 5c 6e 20 20 66 6f 72 20 28 76 61 72 20 ter\n for (var 00023b30: 69 20 3d 20 30 2c 20 6c 65 6e 32 20 3d 20 6c 65 i = 0, len2 = le 00023b40: 6e 20 2d 20 65 78 74 72 61 42 79 74 65 73 3b 20 n - extraBytes; 00023b50: 69 20 3c 20 6c 65 6e 32 3b 20 69 20 2b 3d 20 6d i < len2; i += m 00023b60: 61 78 43 68 75 6e 6b 4c 65 6e 67 74 68 29 20 7b axChunkLength) { 00023b70: 5c 6e 20 20 20 20 70 61 72 74 73 2e 70 75 73 68 \n parts.push 00023b80: 28 65 6e 63 6f 64 65 43 68 75 6e 6b 28 75 69 6e (encodeChunk(uin 00023b90: 74 38 2c 20 69 2c 20 28 69 20 2b 20 6d 61 78 43 t8, i, (i + maxC 00023ba0: 68 75 6e 6b 4c 65 6e 67 74 68 29 20 3e 20 6c 65 hunkLength) > le 00023bb0: 6e 32 20 3f 20 6c 65 6e 32 20 3a 20 28 69 20 2b n2 ? len2 : (i + 00023bc0: 20 6d 61 78 43 68 75 6e 6b 4c 65 6e 67 74 68 29 maxChunkLength) 00023bd0: 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 ))\n }\n\n // 00023be0: 70 61 64 20 74 68 65 20 65 6e 64 20 77 69 74 68 pad the end with 00023bf0: 20 7a 65 72 6f 73 2c 20 62 75 74 20 6d 61 6b 65 zeros, but make 00023c00: 20 73 75 72 65 20 74 6f 20 6e 6f 74 20 66 6f 72 sure to not for 00023c10: 67 65 74 20 74 68 65 20 65 78 74 72 61 20 62 79 get the extra by 00023c20: 74 65 73 5c 6e 20 20 69 66 20 28 65 78 74 72 61 tes\n if (extra 00023c30: 42 79 74 65 73 20 3d 3d 3d 20 31 29 20 7b 5c 6e Bytes === 1) {\n 00023c40: 20 20 20 20 74 6d 70 20 3d 20 75 69 6e 74 38 5b tmp = uint8[ 00023c50: 6c 65 6e 20 2d 20 31 5d 5c 6e 20 20 20 20 70 61 len - 1]\n pa 00023c60: 72 74 73 2e 70 75 73 68 28 5c 6e 20 20 20 20 20 rts.push(\n 00023c70: 20 6c 6f 6f 6b 75 70 5b 74 6d 70 20 3e 3e 20 32 lookup[tmp >> 2 00023c80: 5d 20 2b 5c 6e 20 20 20 20 20 20 6c 6f 6f 6b 75 ] +\n looku 00023c90: 70 5b 28 74 6d 70 20 3c 3c 20 34 29 20 26 20 30 p[(tmp << 4) & 0 00023ca0: 78 33 46 5d 20 2b 5c 6e 20 20 20 20 20 20 27 3d x3F] +\n '= 00023cb0: 3d 27 5c 6e 20 20 20 20 29 5c 6e 20 20 7d 20 65 ='\n )\n } e 00023cc0: 6c 73 65 20 69 66 20 28 65 78 74 72 61 42 79 74 lse if (extraByt 00023cd0: 65 73 20 3d 3d 3d 20 32 29 20 7b 5c 6e 20 20 20 es === 2) {\n 00023ce0: 20 74 6d 70 20 3d 20 28 75 69 6e 74 38 5b 6c 65 tmp = (uint8[le 00023cf0: 6e 20 2d 20 32 5d 20 3c 3c 20 38 29 20 2b 20 75 n - 2] << 8) + u 00023d00: 69 6e 74 38 5b 6c 65 6e 20 2d 20 31 5d 5c 6e 20 int8[len - 1]\n 00023d10: 20 20 20 70 61 72 74 73 2e 70 75 73 68 28 5c 6e parts.push(\n 00023d20: 20 20 20 20 20 20 6c 6f 6f 6b 75 70 5b 74 6d 70 lookup[tmp 00023d30: 20 3e 3e 20 31 30 5d 20 2b 5c 6e 20 20 20 20 20 >> 10] +\n 00023d40: 20 6c 6f 6f 6b 75 70 5b 28 74 6d 70 20 3e 3e 20 lookup[(tmp >> 00023d50: 34 29 20 26 20 30 78 33 46 5d 20 2b 5c 6e 20 20 4) & 0x3F] +\n 00023d60: 20 20 20 20 6c 6f 6f 6b 75 70 5b 28 74 6d 70 20 lookup[(tmp 00023d70: 3c 3c 20 32 29 20 26 20 30 78 33 46 5d 20 2b 5c << 2) & 0x3F] +\ 00023d80: 6e 20 20 20 20 20 20 27 3d 27 5c 6e 20 20 20 20 n '='\n 00023d90: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 )\n }\n\n retu 00023da0: 72 6e 20 70 61 72 74 73 2e 6a 6f 69 6e 28 27 27 rn parts.join('' 00023db0: 29 5c 6e 7d 5c 6e 22 2c 22 2f 2a 21 20 69 65 65 )\n}\n","/*! iee 00023dc0: 65 37 35 34 2e 20 42 53 44 2d 33 2d 43 6c 61 75 e754. BSD-3-Clau 00023dd0: 73 65 20 4c 69 63 65 6e 73 65 2e 20 46 65 72 6f se License. Fero 00023de0: 73 73 20 41 62 6f 75 6b 68 61 64 69 6a 65 68 20 ss Aboukhadijeh 00023df0: 3c 68 74 74 70 73 3a 2f 2f 66 65 72 6f 73 73 2e <https://feross. 00023e00: 6f 72 67 2f 6f 70 65 6e 73 6f 75 72 63 65 3e 20 org/opensource> 00023e10: 2a 2f 5c 6e 65 78 70 6f 72 74 73 2e 72 65 61 64 */\nexports.read 00023e20: 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 62 75 66 = function (buf 00023e30: 66 65 72 2c 20 6f 66 66 73 65 74 2c 20 69 73 4c fer, offset, isL 00023e40: 45 2c 20 6d 4c 65 6e 2c 20 6e 42 79 74 65 73 29 E, mLen, nBytes) 00023e50: 20 7b 5c 6e 20 20 76 61 72 20 65 2c 20 6d 5c 6e {\n var e, m\n 00023e60: 20 20 76 61 72 20 65 4c 65 6e 20 3d 20 28 6e 42 var eLen = (nB 00023e70: 79 74 65 73 20 2a 20 38 29 20 2d 20 6d 4c 65 6e ytes * 8) - mLen 00023e80: 20 2d 20 31 5c 6e 20 20 76 61 72 20 65 4d 61 78 - 1\n var eMax 00023e90: 20 3d 20 28 31 20 3c 3c 20 65 4c 65 6e 29 20 2d = (1 << eLen) - 00023ea0: 20 31 5c 6e 20 20 76 61 72 20 65 42 69 61 73 20 1\n var eBias 00023eb0: 3d 20 65 4d 61 78 20 3e 3e 20 31 5c 6e 20 20 76 = eMax >> 1\n v 00023ec0: 61 72 20 6e 42 69 74 73 20 3d 20 2d 37 5c 6e 20 ar nBits = -7\n 00023ed0: 20 76 61 72 20 69 20 3d 20 69 73 4c 45 20 3f 20 var i = isLE ? 00023ee0: 28 6e 42 79 74 65 73 20 2d 20 31 29 20 3a 20 30 (nBytes - 1) : 0 00023ef0: 5c 6e 20 20 76 61 72 20 64 20 3d 20 69 73 4c 45 \n var d = isLE 00023f00: 20 3f 20 2d 31 20 3a 20 31 5c 6e 20 20 76 61 72 ? -1 : 1\n var 00023f10: 20 73 20 3d 20 62 75 66 66 65 72 5b 6f 66 66 73 s = buffer[offs 00023f20: 65 74 20 2b 20 69 5d 5c 6e 5c 6e 20 20 69 20 2b et + i]\n\n i + 00023f30: 3d 20 64 5c 6e 5c 6e 20 20 65 20 3d 20 73 20 26 = d\n\n e = s & 00023f40: 20 28 28 31 20 3c 3c 20 28 2d 6e 42 69 74 73 29 ((1 << (-nBits) 00023f50: 29 20 2d 20 31 29 5c 6e 20 20 73 20 3e 3e 3d 20 ) - 1)\n s >>= 00023f60: 28 2d 6e 42 69 74 73 29 5c 6e 20 20 6e 42 69 74 (-nBits)\n nBit 00023f70: 73 20 2b 3d 20 65 4c 65 6e 5c 6e 20 20 66 6f 72 s += eLen\n for 00023f80: 20 28 3b 20 6e 42 69 74 73 20 3e 20 30 3b 20 65 (; nBits > 0; e 00023f90: 20 3d 20 28 65 20 2a 20 32 35 36 29 20 2b 20 62 = (e * 256) + b 00023fa0: 75 66 66 65 72 5b 6f 66 66 73 65 74 20 2b 20 69 uffer[offset + i 00023fb0: 5d 2c 20 69 20 2b 3d 20 64 2c 20 6e 42 69 74 73 ], i += d, nBits 00023fc0: 20 2d 3d 20 38 29 20 7b 7d 5c 6e 5c 6e 20 20 6d -= 8) {}\n\n m 00023fd0: 20 3d 20 65 20 26 20 28 28 31 20 3c 3c 20 28 2d = e & ((1 << (- 00023fe0: 6e 42 69 74 73 29 29 20 2d 20 31 29 5c 6e 20 20 nBits)) - 1)\n 00023ff0: 65 20 3e 3e 3d 20 28 2d 6e 42 69 74 73 29 5c 6e e >>= (-nBits)\n 00024000: 20 20 6e 42 69 74 73 20 2b 3d 20 6d 4c 65 6e 5c nBits += mLen\ 00024010: 6e 20 20 66 6f 72 20 28 3b 20 6e 42 69 74 73 20 n for (; nBits 00024020: 3e 20 30 3b 20 6d 20 3d 20 28 6d 20 2a 20 32 35 > 0; m = (m * 25 00024030: 36 29 20 2b 20 62 75 66 66 65 72 5b 6f 66 66 73 6) + buffer[offs 00024040: 65 74 20 2b 20 69 5d 2c 20 69 20 2b 3d 20 64 2c et + i], i += d, 00024050: 20 6e 42 69 74 73 20 2d 3d 20 38 29 20 7b 7d 5c nBits -= 8) {}\ 00024060: 6e 5c 6e 20 20 69 66 20 28 65 20 3d 3d 3d 20 30 n\n if (e === 0 00024070: 29 20 7b 5c 6e 20 20 20 20 65 20 3d 20 31 20 2d ) {\n e = 1 - 00024080: 20 65 42 69 61 73 5c 6e 20 20 7d 20 65 6c 73 65 eBias\n } else 00024090: 20 69 66 20 28 65 20 3d 3d 3d 20 65 4d 61 78 29 if (e === eMax) 000240a0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6d {\n return m 000240b0: 20 3f 20 4e 61 4e 20 3a 20 28 28 73 20 3f 20 2d ? NaN : ((s ? - 000240c0: 31 20 3a 20 31 29 20 2a 20 49 6e 66 69 6e 69 74 1 : 1) * Infinit 000240d0: 79 29 5c 6e 20 20 7d 20 65 6c 73 65 20 7b 5c 6e y)\n } else {\n 000240e0: 20 20 20 20 6d 20 3d 20 6d 20 2b 20 4d 61 74 68 m = m + Math 000240f0: 2e 70 6f 77 28 32 2c 20 6d 4c 65 6e 29 5c 6e 20 .pow(2, mLen)\n 00024100: 20 20 20 65 20 3d 20 65 20 2d 20 65 42 69 61 73 e = e - eBias 00024110: 5c 6e 20 20 7d 5c 6e 20 20 72 65 74 75 72 6e 20 \n }\n return 00024120: 28 73 20 3f 20 2d 31 20 3a 20 31 29 20 2a 20 6d (s ? -1 : 1) * m 00024130: 20 2a 20 4d 61 74 68 2e 70 6f 77 28 32 2c 20 65 * Math.pow(2, e 00024140: 20 2d 20 6d 4c 65 6e 29 5c 6e 7d 5c 6e 5c 6e 65 - mLen)\n}\n\ne 00024150: 78 70 6f 72 74 73 2e 77 72 69 74 65 20 3d 20 66 xports.write = f 00024160: 75 6e 63 74 69 6f 6e 20 28 62 75 66 66 65 72 2c unction (buffer, 00024170: 20 76 61 6c 75 65 2c 20 6f 66 66 73 65 74 2c 20 value, offset, 00024180: 69 73 4c 45 2c 20 6d 4c 65 6e 2c 20 6e 42 79 74 isLE, mLen, nByt 00024190: 65 73 29 20 7b 5c 6e 20 20 76 61 72 20 65 2c 20 es) {\n var e, 000241a0: 6d 2c 20 63 5c 6e 20 20 76 61 72 20 65 4c 65 6e m, c\n var eLen 000241b0: 20 3d 20 28 6e 42 79 74 65 73 20 2a 20 38 29 20 = (nBytes * 8) 000241c0: 2d 20 6d 4c 65 6e 20 2d 20 31 5c 6e 20 20 76 61 - mLen - 1\n va 000241d0: 72 20 65 4d 61 78 20 3d 20 28 31 20 3c 3c 20 65 r eMax = (1 << e 000241e0: 4c 65 6e 29 20 2d 20 31 5c 6e 20 20 76 61 72 20 Len) - 1\n var 000241f0: 65 42 69 61 73 20 3d 20 65 4d 61 78 20 3e 3e 20 eBias = eMax >> 00024200: 31 5c 6e 20 20 76 61 72 20 72 74 20 3d 20 28 6d 1\n var rt = (m 00024210: 4c 65 6e 20 3d 3d 3d 20 32 33 20 3f 20 4d 61 74 Len === 23 ? Mat 00024220: 68 2e 70 6f 77 28 32 2c 20 2d 32 34 29 20 2d 20 h.pow(2, -24) - 00024230: 4d 61 74 68 2e 70 6f 77 28 32 2c 20 2d 37 37 29 Math.pow(2, -77) 00024240: 20 3a 20 30 29 5c 6e 20 20 76 61 72 20 69 20 3d : 0)\n var i = 00024250: 20 69 73 4c 45 20 3f 20 30 20 3a 20 28 6e 42 79 isLE ? 0 : (nBy 00024260: 74 65 73 20 2d 20 31 29 5c 6e 20 20 76 61 72 20 tes - 1)\n var 00024270: 64 20 3d 20 69 73 4c 45 20 3f 20 31 20 3a 20 2d d = isLE ? 1 : - 00024280: 31 5c 6e 20 20 76 61 72 20 73 20 3d 20 76 61 6c 1\n var s = val 00024290: 75 65 20 3c 20 30 20 7c 7c 20 28 76 61 6c 75 65 ue < 0 || (value 000242a0: 20 3d 3d 3d 20 30 20 26 26 20 31 20 2f 20 76 61 === 0 && 1 / va 000242b0: 6c 75 65 20 3c 20 30 29 20 3f 20 31 20 3a 20 30 lue < 0) ? 1 : 0 000242c0: 5c 6e 5c 6e 20 20 76 61 6c 75 65 20 3d 20 4d 61 \n\n value = Ma 000242d0: 74 68 2e 61 62 73 28 76 61 6c 75 65 29 5c 6e 5c th.abs(value)\n\ 000242e0: 6e 20 20 69 66 20 28 69 73 4e 61 4e 28 76 61 6c n if (isNaN(val 000242f0: 75 65 29 20 7c 7c 20 76 61 6c 75 65 20 3d 3d 3d ue) || value === 00024300: 20 49 6e 66 69 6e 69 74 79 29 20 7b 5c 6e 20 20 Infinity) {\n 00024310: 20 20 6d 20 3d 20 69 73 4e 61 4e 28 76 61 6c 75 m = isNaN(valu 00024320: 65 29 20 3f 20 31 20 3a 20 30 5c 6e 20 20 20 20 e) ? 1 : 0\n 00024330: 65 20 3d 20 65 4d 61 78 5c 6e 20 20 7d 20 65 6c e = eMax\n } el 00024340: 73 65 20 7b 5c 6e 20 20 20 20 65 20 3d 20 4d 61 se {\n e = Ma 00024350: 74 68 2e 66 6c 6f 6f 72 28 4d 61 74 68 2e 6c 6f th.floor(Math.lo 00024360: 67 28 76 61 6c 75 65 29 20 2f 20 4d 61 74 68 2e g(value) / Math. 00024370: 4c 4e 32 29 5c 6e 20 20 20 20 69 66 20 28 76 61 LN2)\n if (va 00024380: 6c 75 65 20 2a 20 28 63 20 3d 20 4d 61 74 68 2e lue * (c = Math. 00024390: 70 6f 77 28 32 2c 20 2d 65 29 29 20 3c 20 31 29 pow(2, -e)) < 1) 000243a0: 20 7b 5c 6e 20 20 20 20 20 20 65 2d 2d 5c 6e 20 {\n e--\n 000243b0: 20 20 20 20 20 63 20 2a 3d 20 32 5c 6e 20 20 20 c *= 2\n 000243c0: 20 7d 5c 6e 20 20 20 20 69 66 20 28 65 20 2b 20 }\n if (e + 000243d0: 65 42 69 61 73 20 3e 3d 20 31 29 20 7b 5c 6e 20 eBias >= 1) {\n 000243e0: 20 20 20 20 20 76 61 6c 75 65 20 2b 3d 20 72 74 value += rt 000243f0: 20 2f 20 63 5c 6e 20 20 20 20 7d 20 65 6c 73 65 / c\n } else 00024400: 20 7b 5c 6e 20 20 20 20 20 20 76 61 6c 75 65 20 {\n value 00024410: 2b 3d 20 72 74 20 2a 20 4d 61 74 68 2e 70 6f 77 += rt * Math.pow 00024420: 28 32 2c 20 31 20 2d 20 65 42 69 61 73 29 5c 6e (2, 1 - eBias)\n 00024430: 20 20 20 20 7d 5c 6e 20 20 20 20 69 66 20 28 76 }\n if (v 00024440: 61 6c 75 65 20 2a 20 63 20 3e 3d 20 32 29 20 7b alue * c >= 2) { 00024450: 5c 6e 20 20 20 20 20 20 65 2b 2b 5c 6e 20 20 20 \n e++\n 00024460: 20 20 20 63 20 2f 3d 20 32 5c 6e 20 20 20 20 7d c /= 2\n } 00024470: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 65 20 2b 20 \n\n if (e + 00024480: 65 42 69 61 73 20 3e 3d 20 65 4d 61 78 29 20 7b eBias >= eMax) { 00024490: 5c 6e 20 20 20 20 20 20 6d 20 3d 20 30 5c 6e 20 \n m = 0\n 000244a0: 20 20 20 20 20 65 20 3d 20 65 4d 61 78 5c 6e 20 e = eMax\n 000244b0: 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 65 20 } else if (e 000244c0: 2b 20 65 42 69 61 73 20 3e 3d 20 31 29 20 7b 5c + eBias >= 1) {\ 000244d0: 6e 20 20 20 20 20 20 6d 20 3d 20 28 28 76 61 6c n m = ((val 000244e0: 75 65 20 2a 20 63 29 20 2d 20 31 29 20 2a 20 4d ue * c) - 1) * M 000244f0: 61 74 68 2e 70 6f 77 28 32 2c 20 6d 4c 65 6e 29 ath.pow(2, mLen) 00024500: 5c 6e 20 20 20 20 20 20 65 20 3d 20 65 20 2b 20 \n e = e + 00024510: 65 42 69 61 73 5c 6e 20 20 20 20 7d 20 65 6c 73 eBias\n } els 00024520: 65 20 7b 5c 6e 20 20 20 20 20 20 6d 20 3d 20 76 e {\n m = v 00024530: 61 6c 75 65 20 2a 20 4d 61 74 68 2e 70 6f 77 28 alue * Math.pow( 00024540: 32 2c 20 65 42 69 61 73 20 2d 20 31 29 20 2a 20 2, eBias - 1) * 00024550: 4d 61 74 68 2e 70 6f 77 28 32 2c 20 6d 4c 65 6e Math.pow(2, mLen 00024560: 29 5c 6e 20 20 20 20 20 20 65 20 3d 20 30 5c 6e )\n e = 0\n 00024570: 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 }\n }\n\n 00024580: 66 6f 72 20 28 3b 20 6d 4c 65 6e 20 3e 3d 20 38 for (; mLen >= 8 00024590: 3b 20 62 75 66 66 65 72 5b 6f 66 66 73 65 74 20 ; buffer[offset 000245a0: 2b 20 69 5d 20 3d 20 6d 20 26 20 30 78 66 66 2c + i] = m & 0xff, 000245b0: 20 69 20 2b 3d 20 64 2c 20 6d 20 2f 3d 20 32 35 i += d, m /= 25 000245c0: 36 2c 20 6d 4c 65 6e 20 2d 3d 20 38 29 20 7b 7d 6, mLen -= 8) {} 000245d0: 5c 6e 5c 6e 20 20 65 20 3d 20 28 65 20 3c 3c 20 \n\n e = (e << 000245e0: 6d 4c 65 6e 29 20 7c 20 6d 5c 6e 20 20 65 4c 65 mLen) | m\n eLe 000245f0: 6e 20 2b 3d 20 6d 4c 65 6e 5c 6e 20 20 66 6f 72 n += mLen\n for 00024600: 20 28 3b 20 65 4c 65 6e 20 3e 20 30 3b 20 62 75 (; eLen > 0; bu 00024610: 66 66 65 72 5b 6f 66 66 73 65 74 20 2b 20 69 5d ffer[offset + i] 00024620: 20 3d 20 65 20 26 20 30 78 66 66 2c 20 69 20 2b = e & 0xff, i + 00024630: 3d 20 64 2c 20 65 20 2f 3d 20 32 35 36 2c 20 65 = d, e /= 256, e 00024640: 4c 65 6e 20 2d 3d 20 38 29 20 7b 7d 5c 6e 5c 6e Len -= 8) {}\n\n 00024650: 20 20 62 75 66 66 65 72 5b 6f 66 66 73 65 74 20 buffer[offset 00024660: 2b 20 69 20 2d 20 64 5d 20 7c 3d 20 73 20 2a 20 + i - d] |= s * 00024670: 31 32 38 5c 6e 7d 5c 6e 22 2c 22 76 61 72 20 74 128\n}\n","var t 00024680: 6f 53 74 72 69 6e 67 20 3d 20 7b 7d 2e 74 6f 53 oString = {}.toS 00024690: 74 72 69 6e 67 3b 5c 6e 5c 6e 6d 6f 64 75 6c 65 tring;\n\nmodule 000246a0: 2e 65 78 70 6f 72 74 73 20 3d 20 41 72 72 61 79 .exports = Array 000246b0: 2e 69 73 41 72 72 61 79 20 7c 7c 20 66 75 6e 63 .isArray || func 000246c0: 74 69 6f 6e 20 28 61 72 72 29 20 7b 5c 6e 20 20 tion (arr) {\n 000246d0: 72 65 74 75 72 6e 20 74 6f 53 74 72 69 6e 67 2e return toString. 000246e0: 63 61 6c 6c 28 61 72 72 29 20 3d 3d 20 27 5b 6f call(arr) == '[o 000246f0: 62 6a 65 63 74 20 41 72 72 61 79 5d 27 3b 5c 6e bject Array]';\n 00024700: 7d 3b 5c 6e 22 2c 22 5c 22 75 73 65 20 73 74 72 };\n","\"use str 00024710: 69 63 74 5c 22 3b 5c 6e 4f 62 6a 65 63 74 2e 64 ict\";\nObject.d 00024720: 65 66 69 6e 65 50 72 6f 70 65 72 74 79 28 65 78 efineProperty(ex 00024730: 70 6f 72 74 73 2c 20 5c 22 5f 5f 65 73 4d 6f 64 ports, \"__esMod 00024740: 75 6c 65 5c 22 2c 20 7b 20 76 61 6c 75 65 3a 20 ule\", { value: 00024750: 74 72 75 65 20 7d 29 3b 5c 6e 65 78 70 6f 72 74 true });\nexport 00024760: 73 2e 4d 65 72 67 65 4b 65 79 53 74 6f 72 65 20 s.MergeKeyStore 00024770: 3d 20 65 78 70 6f 72 74 73 2e 42 72 6f 77 73 65 = exports.Browse 00024780: 72 4c 6f 63 61 6c 53 74 6f 72 61 67 65 4b 65 79 rLocalStorageKey 00024790: 53 74 6f 72 65 20 3d 20 65 78 70 6f 72 74 73 2e Store = exports. 000247a0: 49 6e 4d 65 6d 6f 72 79 4b 65 79 53 74 6f 72 65 InMemoryKeyStore 000247b0: 20 3d 20 65 78 70 6f 72 74 73 2e 4b 65 79 53 74 = exports.KeySt 000247c0: 6f 72 65 20 3d 20 76 6f 69 64 20 30 3b 5c 6e 2f ore = void 0;\n/ 000247d0: 2a 2a 20 40 68 69 64 64 65 6e 20 40 6d 6f 64 75 ** @hidden @modu 000247e0: 6c 65 20 2a 2f 5c 6e 63 6f 6e 73 74 20 6b 65 79 le */\nconst key 000247f0: 73 74 6f 72 65 5f 31 20 3d 20 72 65 71 75 69 72 store_1 = requir 00024800: 65 28 5c 22 2e 2f 6b 65 79 73 74 6f 72 65 5c 22 e(\"./keystore\" 00024810: 29 3b 5c 6e 4f 62 6a 65 63 74 2e 64 65 66 69 6e );\nObject.defin 00024820: 65 50 72 6f 70 65 72 74 79 28 65 78 70 6f 72 74 eProperty(export 00024830: 73 2c 20 5c 22 4b 65 79 53 74 6f 72 65 5c 22 2c s, \"KeyStore\", 00024840: 20 7b 20 65 6e 75 6d 65 72 61 62 6c 65 3a 20 74 { enumerable: t 00024850: 72 75 65 2c 20 67 65 74 3a 20 66 75 6e 63 74 69 rue, get: functi 00024860: 6f 6e 20 28 29 20 7b 20 72 65 74 75 72 6e 20 6b on () { return k 00024870: 65 79 73 74 6f 72 65 5f 31 2e 4b 65 79 53 74 6f eystore_1.KeySto 00024880: 72 65 3b 20 7d 20 7d 29 3b 5c 6e 63 6f 6e 73 74 re; } });\nconst 00024890: 20 69 6e 5f 6d 65 6d 6f 72 79 5f 6b 65 79 5f 73 in_memory_key_s 000248a0: 74 6f 72 65 5f 31 20 3d 20 72 65 71 75 69 72 65 tore_1 = require 000248b0: 28 5c 22 2e 2f 69 6e 5f 6d 65 6d 6f 72 79 5f 6b (\"./in_memory_k 000248c0: 65 79 5f 73 74 6f 72 65 5c 22 29 3b 5c 6e 4f 62 ey_store\");\nOb 000248d0: 6a 65 63 74 2e 64 65 66 69 6e 65 50 72 6f 70 65 ject.definePrope 000248e0: 72 74 79 28 65 78 70 6f 72 74 73 2c 20 5c 22 49 rty(exports, \"I 000248f0: 6e 4d 65 6d 6f 72 79 4b 65 79 53 74 6f 72 65 5c nMemoryKeyStore\ 00024900: 22 2c 20 7b 20 65 6e 75 6d 65 72 61 62 6c 65 3a ", { enumerable: 00024910: 20 74 72 75 65 2c 20 67 65 74 3a 20 66 75 6e 63 true, get: func 00024920: 74 69 6f 6e 20 28 29 20 7b 20 72 65 74 75 72 6e tion () { return 00024930: 20 69 6e 5f 6d 65 6d 6f 72 79 5f 6b 65 79 5f 73 in_memory_key_s 00024940: 74 6f 72 65 5f 31 2e 49 6e 4d 65 6d 6f 72 79 4b tore_1.InMemoryK 00024950: 65 79 53 74 6f 72 65 3b 20 7d 20 7d 29 3b 5c 6e eyStore; } });\n 00024960: 63 6f 6e 73 74 20 62 72 6f 77 73 65 72 5f 6c 6f const browser_lo 00024970: 63 61 6c 5f 73 74 6f 72 61 67 65 5f 6b 65 79 5f cal_storage_key_ 00024980: 73 74 6f 72 65 5f 31 20 3d 20 72 65 71 75 69 72 store_1 = requir 00024990: 65 28 5c 22 2e 2f 62 72 6f 77 73 65 72 5f 6c 6f e(\"./browser_lo 000249a0: 63 61 6c 5f 73 74 6f 72 61 67 65 5f 6b 65 79 5f cal_storage_key_ 000249b0: 73 74 6f 72 65 5c 22 29 3b 5c 6e 4f 62 6a 65 63 store\");\nObjec 000249c0: 74 2e 64 65 66 69 6e 65 50 72 6f 70 65 72 74 79 t.defineProperty 000249d0: 28 65 78 70 6f 72 74 73 2c 20 5c 22 42 72 6f 77 (exports, \"Brow 000249e0: 73 65 72 4c 6f 63 61 6c 53 74 6f 72 61 67 65 4b serLocalStorageK 000249f0: 65 79 53 74 6f 72 65 5c 22 2c 20 7b 20 65 6e 75 eyStore\", { enu 00024a00: 6d 65 72 61 62 6c 65 3a 20 74 72 75 65 2c 20 67 merable: true, g 00024a10: 65 74 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 et: function () 00024a20: 7b 20 72 65 74 75 72 6e 20 62 72 6f 77 73 65 72 { return browser 00024a30: 5f 6c 6f 63 61 6c 5f 73 74 6f 72 61 67 65 5f 6b _local_storage_k 00024a40: 65 79 5f 73 74 6f 72 65 5f 31 2e 42 72 6f 77 73 ey_store_1.Brows 00024a50: 65 72 4c 6f 63 61 6c 53 74 6f 72 61 67 65 4b 65 erLocalStorageKe 00024a60: 79 53 74 6f 72 65 3b 20 7d 20 7d 29 3b 5c 6e 63 yStore; } });\nc 00024a70: 6f 6e 73 74 20 6d 65 72 67 65 5f 6b 65 79 5f 73 onst merge_key_s 00024a80: 74 6f 72 65 5f 31 20 3d 20 72 65 71 75 69 72 65 tore_1 = require 00024a90: 28 5c 22 2e 2f 6d 65 72 67 65 5f 6b 65 79 5f 73 (\"./merge_key_s 00024aa0: 74 6f 72 65 5c 22 29 3b 5c 6e 4f 62 6a 65 63 74 tore\");\nObject 00024ab0: 2e 64 65 66 69 6e 65 50 72 6f 70 65 72 74 79 28 .defineProperty( 00024ac0: 65 78 70 6f 72 74 73 2c 20 5c 22 4d 65 72 67 65 exports, \"Merge 00024ad0: 4b 65 79 53 74 6f 72 65 5c 22 2c 20 7b 20 65 6e KeyStore\", { en 00024ae0: 75 6d 65 72 61 62 6c 65 3a 20 74 72 75 65 2c 20 umerable: true, 00024af0: 67 65 74 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 get: function () 00024b00: 20 7b 20 72 65 74 75 72 6e 20 6d 65 72 67 65 5f { return merge_ 00024b10: 6b 65 79 5f 73 74 6f 72 65 5f 31 2e 4d 65 72 67 key_store_1.Merg 00024b20: 65 4b 65 79 53 74 6f 72 65 3b 20 7d 20 7d 29 3b eKeyStore; } }); 00024b30: 5c 6e 22 2c 22 28 66 75 6e 63 74 69 6f 6e 28 6e \n","(function(n 00024b40: 61 63 6c 29 20 7b 5c 6e 27 75 73 65 20 73 74 72 acl) {\n'use str 00024b50: 69 63 74 27 3b 5c 6e 5c 6e 2f 2f 20 50 6f 72 74 ict';\n\n// Port 00024b60: 65 64 20 69 6e 20 32 30 31 34 20 62 79 20 44 6d ed in 2014 by Dm 00024b70: 69 74 72 79 20 43 68 65 73 74 6e 79 6b 68 20 61 itry Chestnykh a 00024b80: 6e 64 20 44 65 76 69 20 4d 61 6e 64 69 72 69 2e nd Devi Mandiri. 00024b90: 5c 6e 2f 2f 20 50 75 62 6c 69 63 20 64 6f 6d 61 \n// Public doma 00024ba0: 69 6e 2e 5c 6e 2f 2f 5c 6e 2f 2f 20 49 6d 70 6c in.\n//\n// Impl 00024bb0: 65 6d 65 6e 74 61 74 69 6f 6e 20 64 65 72 69 76 ementation deriv 00024bc0: 65 64 20 66 72 6f 6d 20 54 77 65 65 74 4e 61 43 ed from TweetNaC 00024bd0: 6c 20 76 65 72 73 69 6f 6e 20 32 30 31 34 30 34 l version 201404 00024be0: 32 37 2e 5c 6e 2f 2f 20 53 65 65 20 66 6f 72 20 27.\n// See for 00024bf0: 64 65 74 61 69 6c 73 3a 20 68 74 74 70 3a 2f 2f details: http:// 00024c00: 74 77 65 65 74 6e 61 63 6c 2e 63 72 2e 79 70 2e tweetnacl.cr.yp. 00024c10: 74 6f 2f 5c 6e 5c 6e 76 61 72 20 67 66 20 3d 20 to/\n\nvar gf = 00024c20: 66 75 6e 63 74 69 6f 6e 28 69 6e 69 74 29 20 7b function(init) { 00024c30: 5c 6e 20 20 76 61 72 20 69 2c 20 72 20 3d 20 6e \n var i, r = n 00024c40: 65 77 20 46 6c 6f 61 74 36 34 41 72 72 61 79 28 ew Float64Array( 00024c50: 31 36 29 3b 5c 6e 20 20 69 66 20 28 69 6e 69 74 16);\n if (init 00024c60: 29 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 ) for (i = 0; i 00024c70: 3c 20 69 6e 69 74 2e 6c 65 6e 67 74 68 3b 20 69 < init.length; i 00024c80: 2b 2b 29 20 72 5b 69 5d 20 3d 20 69 6e 69 74 5b ++) r[i] = init[ 00024c90: 69 5d 3b 5c 6e 20 20 72 65 74 75 72 6e 20 72 3b i];\n return r; 00024ca0: 5c 6e 7d 3b 5c 6e 5c 6e 2f 2f 20 20 50 6c 75 67 \n};\n\n// Plug 00024cb0: 67 61 62 6c 65 2c 20 69 6e 69 74 69 61 6c 69 7a gable, initializ 00024cc0: 65 64 20 69 6e 20 68 69 67 68 2d 6c 65 76 65 6c ed in high-level 00024cd0: 20 41 50 49 20 62 65 6c 6f 77 2e 5c 6e 76 61 72 API below.\nvar 00024ce0: 20 72 61 6e 64 6f 6d 62 79 74 65 73 20 3d 20 66 randombytes = f 00024cf0: 75 6e 63 74 69 6f 6e 28 2f 2a 20 78 2c 20 6e 20 unction(/* x, n 00024d00: 2a 2f 29 20 7b 20 74 68 72 6f 77 20 6e 65 77 20 */) { throw new 00024d10: 45 72 72 6f 72 28 27 6e 6f 20 50 52 4e 47 27 29 Error('no PRNG') 00024d20: 3b 20 7d 3b 5c 6e 5c 6e 76 61 72 20 5f 30 20 3d ; };\n\nvar _0 = 00024d30: 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 new Uint8Array( 00024d40: 31 36 29 3b 5c 6e 76 61 72 20 5f 39 20 3d 20 6e 16);\nvar _9 = n 00024d50: 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 33 32 ew Uint8Array(32 00024d60: 29 3b 20 5f 39 5b 30 5d 20 3d 20 39 3b 5c 6e 5c ); _9[0] = 9;\n\ 00024d70: 6e 76 61 72 20 67 66 30 20 3d 20 67 66 28 29 2c nvar gf0 = gf(), 00024d80: 5c 6e 20 20 20 20 67 66 31 20 3d 20 67 66 28 5b \n gf1 = gf([ 00024d90: 31 5d 29 2c 5c 6e 20 20 20 20 5f 31 32 31 36 36 1]),\n _12166 00024da0: 35 20 3d 20 67 66 28 5b 30 78 64 62 34 31 2c 20 5 = gf([0xdb41, 00024db0: 31 5d 29 2c 5c 6e 20 20 20 20 44 20 3d 20 67 66 1]),\n D = gf 00024dc0: 28 5b 30 78 37 38 61 33 2c 20 30 78 31 33 35 39 ([0x78a3, 0x1359 00024dd0: 2c 20 30 78 34 64 63 61 2c 20 30 78 37 35 65 62 , 0x4dca, 0x75eb 00024de0: 2c 20 30 78 64 38 61 62 2c 20 30 78 34 31 34 31 , 0xd8ab, 0x4141 00024df0: 2c 20 30 78 30 61 34 64 2c 20 30 78 30 30 37 30 , 0x0a4d, 0x0070 00024e00: 2c 20 30 78 65 38 39 38 2c 20 30 78 37 37 37 39 , 0xe898, 0x7779 00024e10: 2c 20 30 78 34 30 37 39 2c 20 30 78 38 63 63 37 , 0x4079, 0x8cc7 00024e20: 2c 20 30 78 66 65 37 33 2c 20 30 78 32 62 36 66 , 0xfe73, 0x2b6f 00024e30: 2c 20 30 78 36 63 65 65 2c 20 30 78 35 32 30 33 , 0x6cee, 0x5203 00024e40: 5d 29 2c 5c 6e 20 20 20 20 44 32 20 3d 20 67 66 ]),\n D2 = gf 00024e50: 28 5b 30 78 66 31 35 39 2c 20 30 78 32 36 62 32 ([0xf159, 0x26b2 00024e60: 2c 20 30 78 39 62 39 34 2c 20 30 78 65 62 64 36 , 0x9b94, 0xebd6 00024e70: 2c 20 30 78 62 31 35 36 2c 20 30 78 38 32 38 33 , 0xb156, 0x8283 00024e80: 2c 20 30 78 31 34 39 61 2c 20 30 78 30 30 65 30 , 0x149a, 0x00e0 00024e90: 2c 20 30 78 64 31 33 30 2c 20 30 78 65 65 66 33 , 0xd130, 0xeef3 00024ea0: 2c 20 30 78 38 30 66 32 2c 20 30 78 31 39 38 65 , 0x80f2, 0x198e 00024eb0: 2c 20 30 78 66 63 65 37 2c 20 30 78 35 36 64 66 , 0xfce7, 0x56df 00024ec0: 2c 20 30 78 64 39 64 63 2c 20 30 78 32 34 30 36 , 0xd9dc, 0x2406 00024ed0: 5d 29 2c 5c 6e 20 20 20 20 58 20 3d 20 67 66 28 ]),\n X = gf( 00024ee0: 5b 30 78 64 35 31 61 2c 20 30 78 38 66 32 35 2c [0xd51a, 0x8f25, 00024ef0: 20 30 78 32 64 36 30 2c 20 30 78 63 39 35 36 2c 0x2d60, 0xc956, 00024f00: 20 30 78 61 37 62 32 2c 20 30 78 39 35 32 35 2c 0xa7b2, 0x9525, 00024f10: 20 30 78 63 37 36 30 2c 20 30 78 36 39 32 63 2c 0xc760, 0x692c, 00024f20: 20 30 78 64 63 35 63 2c 20 30 78 66 64 64 36 2c 0xdc5c, 0xfdd6, 00024f30: 20 30 78 65 32 33 31 2c 20 30 78 63 30 61 34 2c 0xe231, 0xc0a4, 00024f40: 20 30 78 35 33 66 65 2c 20 30 78 63 64 36 65 2c 0x53fe, 0xcd6e, 00024f50: 20 30 78 33 36 64 33 2c 20 30 78 32 31 36 39 5d 0x36d3, 0x2169] 00024f60: 29 2c 5c 6e 20 20 20 20 59 20 3d 20 67 66 28 5b ),\n Y = gf([ 00024f70: 30 78 36 36 35 38 2c 20 30 78 36 36 36 36 2c 20 0x6658, 0x6666, 00024f80: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024f90: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024fa0: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024fb0: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024fc0: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024fd0: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024fe0: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 5d 29 0x6666, 0x6666]) 00024ff0: 2c 5c 6e 20 20 20 20 49 20 3d 20 67 66 28 5b 30 ,\n I = gf([0 00025000: 78 61 30 62 30 2c 20 30 78 34 61 30 65 2c 20 30 xa0b0, 0x4a0e, 0 00025010: 78 31 62 32 37 2c 20 30 78 63 34 65 65 2c 20 30 x1b27, 0xc4ee, 0 00025020: 78 65 34 37 38 2c 20 30 78 61 64 32 66 2c 20 30 xe478, 0xad2f, 0 00025030: 78 31 38 30 36 2c 20 30 78 32 66 34 33 2c 20 30 x1806, 0x2f43, 0 00025040: 78 64 37 61 37 2c 20 30 78 33 64 66 62 2c 20 30 xd7a7, 0x3dfb, 0 00025050: 78 30 30 39 39 2c 20 30 78 32 62 34 64 2c 20 30 x0099, 0x2b4d, 0 00025060: 78 64 66 30 62 2c 20 30 78 34 66 63 31 2c 20 30 xdf0b, 0x4fc1, 0 00025070: 78 32 34 38 30 2c 20 30 78 32 62 38 33 5d 29 3b x2480, 0x2b83]); 00025080: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 74 73 36 \n\nfunction ts6 00025090: 34 28 78 2c 20 69 2c 20 68 2c 20 6c 29 20 7b 5c 4(x, i, h, l) {\ 000250a0: 6e 20 20 78 5b 69 5d 20 20 20 3d 20 28 68 20 3e n x[i] = (h > 000250b0: 3e 20 32 34 29 20 26 20 30 78 66 66 3b 5c 6e 20 > 24) & 0xff;\n 000250c0: 20 78 5b 69 2b 31 5d 20 3d 20 28 68 20 3e 3e 20 x[i+1] = (h >> 000250d0: 31 36 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 78 16) & 0xff;\n x 000250e0: 5b 69 2b 32 5d 20 3d 20 28 68 20 3e 3e 20 20 38 [i+2] = (h >> 8 000250f0: 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 78 5b 69 ) & 0xff;\n x[i 00025100: 2b 33 5d 20 3d 20 68 20 26 20 30 78 66 66 3b 5c +3] = h & 0xff;\ 00025110: 6e 20 20 78 5b 69 2b 34 5d 20 3d 20 28 6c 20 3e n x[i+4] = (l > 00025120: 3e 20 32 34 29 20 20 26 20 30 78 66 66 3b 5c 6e > 24) & 0xff;\n 00025130: 20 20 78 5b 69 2b 35 5d 20 3d 20 28 6c 20 3e 3e x[i+5] = (l >> 00025140: 20 31 36 29 20 20 26 20 30 78 66 66 3b 5c 6e 20 16) & 0xff;\n 00025150: 20 78 5b 69 2b 36 5d 20 3d 20 28 6c 20 3e 3e 20 x[i+6] = (l >> 00025160: 20 38 29 20 20 26 20 30 78 66 66 3b 5c 6e 20 20 8) & 0xff;\n 00025170: 78 5b 69 2b 37 5d 20 3d 20 6c 20 26 20 30 78 66 x[i+7] = l & 0xf 00025180: 66 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f f;\n}\n\nfunctio 00025190: 6e 20 76 6e 28 78 2c 20 78 69 2c 20 79 2c 20 79 n vn(x, xi, y, y 000251a0: 69 2c 20 6e 29 20 7b 5c 6e 20 20 76 61 72 20 69 i, n) {\n var i 000251b0: 2c 64 20 3d 20 30 3b 5c 6e 20 20 66 6f 72 20 28 ,d = 0;\n for ( 000251c0: 69 20 3d 20 30 3b 20 69 20 3c 20 6e 3b 20 69 2b i = 0; i < n; i+ 000251d0: 2b 29 20 64 20 7c 3d 20 78 5b 78 69 2b 69 5d 5e +) d |= x[xi+i]^ 000251e0: 79 5b 79 69 2b 69 5d 3b 5c 6e 20 20 72 65 74 75 y[yi+i];\n retu 000251f0: 72 6e 20 28 31 20 26 20 28 28 64 20 2d 20 31 29 rn (1 & ((d - 1) 00025200: 20 3e 3e 3e 20 38 29 29 20 2d 20 31 3b 5c 6e 7d >>> 8)) - 1;\n} 00025210: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 \n\nfunction cry 00025220: 70 74 6f 5f 76 65 72 69 66 79 5f 31 36 28 78 2c pto_verify_16(x, 00025230: 20 78 69 2c 20 79 2c 20 79 69 29 20 7b 5c 6e 20 xi, y, yi) {\n 00025240: 20 72 65 74 75 72 6e 20 76 6e 28 78 2c 78 69 2c return vn(x,xi, 00025250: 79 2c 79 69 2c 31 36 29 3b 5c 6e 7d 5c 6e 5c 6e y,yi,16);\n}\n\n 00025260: 66 75 6e 63 74 69 6f 6e 20 63 72 79 70 74 6f 5f function crypto_ 00025270: 76 65 72 69 66 79 5f 33 32 28 78 2c 20 78 69 2c verify_32(x, xi, 00025280: 20 79 2c 20 79 69 29 20 7b 5c 6e 20 20 72 65 74 y, yi) {\n ret 00025290: 75 72 6e 20 76 6e 28 78 2c 78 69 2c 79 2c 79 69 urn vn(x,xi,y,yi 000252a0: 2c 33 32 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 ,32);\n}\n\nfunc 000252b0: 74 69 6f 6e 20 63 6f 72 65 5f 73 61 6c 73 61 32 tion core_salsa2 000252c0: 30 28 6f 2c 20 70 2c 20 6b 2c 20 63 29 20 7b 5c 0(o, p, k, c) {\ 000252d0: 6e 20 20 76 61 72 20 6a 30 20 20 3d 20 63 5b 20 n var j0 = c[ 000252e0: 30 5d 20 26 20 30 78 66 66 20 7c 20 28 63 5b 20 0] & 0xff | (c[ 000252f0: 31 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 1] & 0xff)<<8 | 00025300: 28 63 5b 20 32 5d 20 26 20 30 78 66 66 29 3c 3c (c[ 2] & 0xff)<< 00025310: 31 36 20 7c 20 28 63 5b 20 33 5d 20 26 20 30 78 16 | (c[ 3] & 0x 00025320: 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 ff)<<24,\n 00025330: 6a 31 20 20 3d 20 6b 5b 20 30 5d 20 26 20 30 78 j1 = k[ 0] & 0x 00025340: 66 66 20 7c 20 28 6b 5b 20 31 5d 20 26 20 30 78 ff | (k[ 1] & 0x 00025350: 66 66 29 3c 3c 38 20 7c 20 28 6b 5b 20 32 5d 20 ff)<<8 | (k[ 2] 00025360: 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 6b & 0xff)<<16 | (k 00025370: 5b 20 33 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 [ 3] & 0xff)<<24 00025380: 2c 5c 6e 20 20 20 20 20 20 6a 32 20 20 3d 20 6b ,\n j2 = k 00025390: 5b 20 34 5d 20 26 20 30 78 66 66 20 7c 20 28 6b [ 4] & 0xff | (k 000253a0: 5b 20 35 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 [ 5] & 0xff)<<8 000253b0: 7c 20 28 6b 5b 20 36 5d 20 26 20 30 78 66 66 29 | (k[ 6] & 0xff) 000253c0: 3c 3c 31 36 20 7c 20 28 6b 5b 20 37 5d 20 26 20 <<16 | (k[ 7] & 000253d0: 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 0xff)<<24,\n 000253e0: 20 20 6a 33 20 20 3d 20 6b 5b 20 38 5d 20 26 20 j3 = k[ 8] & 000253f0: 30 78 66 66 20 7c 20 28 6b 5b 20 39 5d 20 26 20 0xff | (k[ 9] & 00025400: 30 78 66 66 29 3c 3c 38 20 7c 20 28 6b 5b 31 30 0xff)<<8 | (k[10 00025410: 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 ] & 0xff)<<16 | 00025420: 28 6b 5b 31 31 5d 20 26 20 30 78 66 66 29 3c 3c (k[11] & 0xff)<< 00025430: 32 34 2c 5c 6e 20 20 20 20 20 20 6a 34 20 20 3d 24,\n j4 = 00025440: 20 6b 5b 31 32 5d 20 26 20 30 78 66 66 20 7c 20 k[12] & 0xff | 00025450: 28 6b 5b 31 33 5d 20 26 20 30 78 66 66 29 3c 3c (k[13] & 0xff)<< 00025460: 38 20 7c 20 28 6b 5b 31 34 5d 20 26 20 30 78 66 8 | (k[14] & 0xf 00025470: 66 29 3c 3c 31 36 20 7c 20 28 6b 5b 31 35 5d 20 f)<<16 | (k[15] 00025480: 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 & 0xff)<<24,\n 00025490: 20 20 20 20 6a 35 20 20 3d 20 63 5b 20 34 5d 20 j5 = c[ 4] 000254a0: 26 20 30 78 66 66 20 7c 20 28 63 5b 20 35 5d 20 & 0xff | (c[ 5] 000254b0: 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 63 5b & 0xff)<<8 | (c[ 000254c0: 20 36 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 6] & 0xff)<<16 000254d0: 7c 20 28 63 5b 20 37 5d 20 26 20 30 78 66 66 29 | (c[ 7] & 0xff) 000254e0: 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 36 20 <<24,\n j6 000254f0: 20 3d 20 70 5b 20 30 5d 20 26 20 30 78 66 66 20 = p[ 0] & 0xff 00025500: 7c 20 28 70 5b 20 31 5d 20 26 20 30 78 66 66 29 | (p[ 1] & 0xff) 00025510: 3c 3c 38 20 7c 20 28 70 5b 20 32 5d 20 26 20 30 <<8 | (p[ 2] & 0 00025520: 78 66 66 29 3c 3c 31 36 20 7c 20 28 70 5b 20 33 xff)<<16 | (p[ 3 00025530: 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e ] & 0xff)<<24,\n 00025540: 20 20 20 20 20 20 6a 37 20 20 3d 20 70 5b 20 34 j7 = p[ 4 00025550: 5d 20 26 20 30 78 66 66 20 7c 20 28 70 5b 20 35 ] & 0xff | (p[ 5 00025560: 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 ] & 0xff)<<8 | ( 00025570: 70 5b 20 36 5d 20 26 20 30 78 66 66 29 3c 3c 31 p[ 6] & 0xff)<<1 00025580: 36 20 7c 20 28 70 5b 20 37 5d 20 26 20 30 78 66 6 | (p[ 7] & 0xf 00025590: 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a f)<<24,\n j 000255a0: 38 20 20 3d 20 70 5b 20 38 5d 20 26 20 30 78 66 8 = p[ 8] & 0xf 000255b0: 66 20 7c 20 28 70 5b 20 39 5d 20 26 20 30 78 66 f | (p[ 9] & 0xf 000255c0: 66 29 3c 3c 38 20 7c 20 28 70 5b 31 30 5d 20 26 f)<<8 | (p[10] & 000255d0: 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 70 5b 0xff)<<16 | (p[ 000255e0: 31 31 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 11] & 0xff)<<24, 000255f0: 5c 6e 20 20 20 20 20 20 6a 39 20 20 3d 20 70 5b \n j9 = p[ 00025600: 31 32 5d 20 26 20 30 78 66 66 20 7c 20 28 70 5b 12] & 0xff | (p[ 00025610: 31 33 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 13] & 0xff)<<8 | 00025620: 20 28 70 5b 31 34 5d 20 26 20 30 78 66 66 29 3c (p[14] & 0xff)< 00025630: 3c 31 36 20 7c 20 28 70 5b 31 35 5d 20 26 20 30 <16 | (p[15] & 0 00025640: 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 xff)<<24,\n 00025650: 20 6a 31 30 20 3d 20 63 5b 20 38 5d 20 26 20 30 j10 = c[ 8] & 0 00025660: 78 66 66 20 7c 20 28 63 5b 20 39 5d 20 26 20 30 xff | (c[ 9] & 0 00025670: 78 66 66 29 3c 3c 38 20 7c 20 28 63 5b 31 30 5d xff)<<8 | (c[10] 00025680: 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 & 0xff)<<16 | ( 00025690: 63 5b 31 31 5d 20 26 20 30 78 66 66 29 3c 3c 32 c[11] & 0xff)<<2 000256a0: 34 2c 5c 6e 20 20 20 20 20 20 6a 31 31 20 3d 20 4,\n j11 = 000256b0: 6b 5b 31 36 5d 20 26 20 30 78 66 66 20 7c 20 28 k[16] & 0xff | ( 000256c0: 6b 5b 31 37 5d 20 26 20 30 78 66 66 29 3c 3c 38 k[17] & 0xff)<<8 000256d0: 20 7c 20 28 6b 5b 31 38 5d 20 26 20 30 78 66 66 | (k[18] & 0xff 000256e0: 29 3c 3c 31 36 20 7c 20 28 6b 5b 31 39 5d 20 26 )<<16 | (k[19] & 000256f0: 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 0xff)<<24,\n 00025700: 20 20 20 6a 31 32 20 3d 20 6b 5b 32 30 5d 20 26 j12 = k[20] & 00025710: 20 30 78 66 66 20 7c 20 28 6b 5b 32 31 5d 20 26 0xff | (k[21] & 00025720: 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 6b 5b 32 0xff)<<8 | (k[2 00025730: 32 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 2] & 0xff)<<16 | 00025740: 20 28 6b 5b 32 33 5d 20 26 20 30 78 66 66 29 3c (k[23] & 0xff)< 00025750: 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 31 33 20 <24,\n j13 00025760: 3d 20 6b 5b 32 34 5d 20 26 20 30 78 66 66 20 7c = k[24] & 0xff | 00025770: 20 28 6b 5b 32 35 5d 20 26 20 30 78 66 66 29 3c (k[25] & 0xff)< 00025780: 3c 38 20 7c 20 28 6b 5b 32 36 5d 20 26 20 30 78 <8 | (k[26] & 0x 00025790: 66 66 29 3c 3c 31 36 20 7c 20 28 6b 5b 32 37 5d ff)<<16 | (k[27] 000257a0: 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 & 0xff)<<24,\n 000257b0: 20 20 20 20 20 6a 31 34 20 3d 20 6b 5b 32 38 5d j14 = k[28] 000257c0: 20 26 20 30 78 66 66 20 7c 20 28 6b 5b 32 39 5d & 0xff | (k[29] 000257d0: 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 6b & 0xff)<<8 | (k 000257e0: 5b 33 30 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 [30] & 0xff)<<16 000257f0: 20 7c 20 28 6b 5b 33 31 5d 20 26 20 30 78 66 66 | (k[31] & 0xff 00025800: 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 31 )<<24,\n j1 00025810: 35 20 3d 20 63 5b 31 32 5d 20 26 20 30 78 66 66 5 = c[12] & 0xff 00025820: 20 7c 20 28 63 5b 31 33 5d 20 26 20 30 78 66 66 | (c[13] & 0xff 00025830: 29 3c 3c 38 20 7c 20 28 63 5b 31 34 5d 20 26 20 )<<8 | (c[14] & 00025840: 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 63 5b 31 0xff)<<16 | (c[1 00025850: 35 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 3b 5c 5] & 0xff)<<24;\ 00025860: 6e 5c 6e 20 20 76 61 72 20 78 30 20 3d 20 6a 30 n\n var x0 = j0 00025870: 2c 20 78 31 20 3d 20 6a 31 2c 20 78 32 20 3d 20 , x1 = j1, x2 = 00025880: 6a 32 2c 20 78 33 20 3d 20 6a 33 2c 20 78 34 20 j2, x3 = j3, x4 00025890: 3d 20 6a 34 2c 20 78 35 20 3d 20 6a 35 2c 20 78 = j4, x5 = j5, x 000258a0: 36 20 3d 20 6a 36 2c 20 78 37 20 3d 20 6a 37 2c 6 = j6, x7 = j7, 000258b0: 5c 6e 20 20 20 20 20 20 78 38 20 3d 20 6a 38 2c \n x8 = j8, 000258c0: 20 78 39 20 3d 20 6a 39 2c 20 78 31 30 20 3d 20 x9 = j9, x10 = 000258d0: 6a 31 30 2c 20 78 31 31 20 3d 20 6a 31 31 2c 20 j10, x11 = j11, 000258e0: 78 31 32 20 3d 20 6a 31 32 2c 20 78 31 33 20 3d x12 = j12, x13 = 000258f0: 20 6a 31 33 2c 20 78 31 34 20 3d 20 6a 31 34 2c j13, x14 = j14, 00025900: 5c 6e 20 20 20 20 20 20 78 31 35 20 3d 20 6a 31 \n x15 = j1 00025910: 35 2c 20 75 3b 5c 6e 5c 6e 20 20 66 6f 72 20 28 5, u;\n\n for ( 00025920: 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 32 var i = 0; i < 2 00025930: 30 3b 20 69 20 2b 3d 20 32 29 20 7b 5c 6e 20 20 0; i += 2) {\n 00025940: 20 20 75 20 3d 20 78 30 20 2b 20 78 31 32 20 7c u = x0 + x12 | 00025950: 20 30 3b 5c 6e 20 20 20 20 78 34 20 5e 3d 20 75 0;\n x4 ^= u 00025960: 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 2d 37 29 <<7 | u>>>(32-7) 00025970: 3b 5c 6e 20 20 20 20 75 20 3d 20 78 34 20 2b 20 ;\n u = x4 + 00025980: 78 30 20 7c 20 30 3b 5c 6e 20 20 20 20 78 38 20 x0 | 0;\n x8 00025990: 5e 3d 20 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 ^= u<<9 | u>>>(3 000259a0: 32 2d 39 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 2-9);\n u = x 000259b0: 38 20 2b 20 78 34 20 7c 20 30 3b 5c 6e 20 20 20 8 + x4 | 0;\n 000259c0: 20 78 31 32 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 x12 ^= u<<13 | 000259d0: 75 3e 3e 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 u>>>(32-13);\n 000259e0: 20 20 75 20 3d 20 78 31 32 20 2b 20 78 38 20 7c u = x12 + x8 | 000259f0: 20 30 3b 5c 6e 20 20 20 20 78 30 20 5e 3d 20 75 0;\n x0 ^= u 00025a00: 3c 3c 31 38 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 <<18 | u>>>(32-1 00025a10: 38 29 3b 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 78 8);\n\n u = x 00025a20: 35 20 2b 20 78 31 20 7c 20 30 3b 5c 6e 20 20 20 5 + x1 | 0;\n 00025a30: 20 78 39 20 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e x9 ^= u<<7 | u> 00025a40: 3e 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 20 20 75 >>(32-7);\n u 00025a50: 20 3d 20 78 39 20 2b 20 78 35 20 7c 20 30 3b 5c = x9 + x5 | 0;\ 00025a60: 6e 20 20 20 20 78 31 33 20 5e 3d 20 75 3c 3c 39 n x13 ^= u<<9 00025a70: 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e | u>>>(32-9);\n 00025a80: 20 20 20 20 75 20 3d 20 78 31 33 20 2b 20 78 39 u = x13 + x9 00025a90: 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 20 5e 3d | 0;\n x1 ^= 00025aa0: 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e 28 33 32 u<<13 | u>>>(32 00025ab0: 2d 31 33 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 -13);\n u = x 00025ac0: 31 20 2b 20 78 31 33 20 7c 20 30 3b 5c 6e 20 20 1 + x13 | 0;\n 00025ad0: 20 20 78 35 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 x5 ^= u<<18 | 00025ae0: 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e u>>>(32-18);\n\n 00025af0: 20 20 20 20 75 20 3d 20 78 31 30 20 2b 20 78 36 u = x10 + x6 00025b00: 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 34 20 5e | 0;\n x14 ^ 00025b10: 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 = u<<7 | u>>>(32 00025b20: 2d 37 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 31 -7);\n u = x1 00025b30: 34 20 2b 20 78 31 30 20 7c 20 30 3b 5c 6e 20 20 4 + x10 | 0;\n 00025b40: 20 20 78 32 20 5e 3d 20 75 3c 3c 39 20 7c 20 75 x2 ^= u<<9 | u 00025b50: 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e 20 20 20 20 >>>(32-9);\n 00025b60: 75 20 3d 20 78 32 20 2b 20 78 31 34 20 7c 20 30 u = x2 + x14 | 0 00025b70: 3b 5c 6e 20 20 20 20 78 36 20 5e 3d 20 75 3c 3c ;\n x6 ^= u<< 00025b80: 31 33 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 33 29 13 | u>>>(32-13) 00025b90: 3b 5c 6e 20 20 20 20 75 20 3d 20 78 36 20 2b 20 ;\n u = x6 + 00025ba0: 78 32 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 30 x2 | 0;\n x10 00025bb0: 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 75 3e 3e 3e ^= u<<18 | u>>> 00025bc0: 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e 20 20 20 20 (32-18);\n\n 00025bd0: 75 20 3d 20 78 31 35 20 2b 20 78 31 31 20 7c 20 u = x15 + x11 | 00025be0: 30 3b 5c 6e 20 20 20 20 78 33 20 5e 3d 20 75 3c 0;\n x3 ^= u< 00025bf0: 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 2d 37 29 3b <7 | u>>>(32-7); 00025c00: 5c 6e 20 20 20 20 75 20 3d 20 78 33 20 2b 20 78 \n u = x3 + x 00025c10: 31 35 20 7c 20 30 3b 5c 6e 20 20 20 20 78 37 20 15 | 0;\n x7 00025c20: 5e 3d 20 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 ^= u<<9 | u>>>(3 00025c30: 32 2d 39 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 2-9);\n u = x 00025c40: 37 20 2b 20 78 33 20 7c 20 30 3b 5c 6e 20 20 20 7 + x3 | 0;\n 00025c50: 20 78 31 31 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 x11 ^= u<<13 | 00025c60: 75 3e 3e 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 u>>>(32-13);\n 00025c70: 20 20 75 20 3d 20 78 31 31 20 2b 20 78 37 20 7c u = x11 + x7 | 00025c80: 20 30 3b 5c 6e 20 20 20 20 78 31 35 20 5e 3d 20 0;\n x15 ^= 00025c90: 75 3c 3c 31 38 20 7c 20 75 3e 3e 3e 28 33 32 2d u<<18 | u>>>(32- 00025ca0: 31 38 29 3b 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 18);\n\n u = 00025cb0: 78 30 20 2b 20 78 33 20 7c 20 30 3b 5c 6e 20 20 x0 + x3 | 0;\n 00025cc0: 20 20 78 31 20 5e 3d 20 75 3c 3c 37 20 7c 20 75 x1 ^= u<<7 | u 00025cd0: 3e 3e 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 20 20 >>>(32-7);\n 00025ce0: 75 20 3d 20 78 31 20 2b 20 78 30 20 7c 20 30 3b u = x1 + x0 | 0; 00025cf0: 5c 6e 20 20 20 20 78 32 20 5e 3d 20 75 3c 3c 39 \n x2 ^= u<<9 00025d00: 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e | u>>>(32-9);\n 00025d10: 20 20 20 20 75 20 3d 20 78 32 20 2b 20 78 31 20 u = x2 + x1 00025d20: 7c 20 30 3b 5c 6e 20 20 20 20 78 33 20 5e 3d 20 | 0;\n x3 ^= 00025d30: 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e 28 33 32 2d u<<13 | u>>>(32- 00025d40: 31 33 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 33 13);\n u = x3 00025d50: 20 2b 20 78 32 20 7c 20 30 3b 5c 6e 20 20 20 20 + x2 | 0;\n 00025d60: 78 30 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 75 3e x0 ^= u<<18 | u> 00025d70: 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e 20 20 >>(32-18);\n\n 00025d80: 20 20 75 20 3d 20 78 35 20 2b 20 78 34 20 7c 20 u = x5 + x4 | 00025d90: 30 3b 5c 6e 20 20 20 20 78 36 20 5e 3d 20 75 3c 0;\n x6 ^= u< 00025da0: 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 2d 37 29 3b <7 | u>>>(32-7); 00025db0: 5c 6e 20 20 20 20 75 20 3d 20 78 36 20 2b 20 78 \n u = x6 + x 00025dc0: 35 20 7c 20 30 3b 5c 6e 20 20 20 20 78 37 20 5e 5 | 0;\n x7 ^ 00025dd0: 3d 20 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 32 = u<<9 | u>>>(32 00025de0: 2d 39 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 37 -9);\n u = x7 00025df0: 20 2b 20 78 36 20 7c 20 30 3b 5c 6e 20 20 20 20 + x6 | 0;\n 00025e00: 78 34 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 75 3e x4 ^= u<<13 | u> 00025e10: 3e 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 20 20 >>(32-13);\n 00025e20: 75 20 3d 20 78 34 20 2b 20 78 37 20 7c 20 30 3b u = x4 + x7 | 0; 00025e30: 5c 6e 20 20 20 20 78 35 20 5e 3d 20 75 3c 3c 31 \n x5 ^= u<<1 00025e40: 38 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 8 | u>>>(32-18); 00025e50: 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 78 31 30 20 \n\n u = x10 00025e60: 2b 20 78 39 20 7c 20 30 3b 5c 6e 20 20 20 20 78 + x9 | 0;\n x 00025e70: 31 31 20 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 11 ^= u<<7 | u>> 00025e80: 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 20 20 75 20 >(32-7);\n u 00025e90: 3d 20 78 31 31 20 2b 20 78 31 30 20 7c 20 30 3b = x11 + x10 | 0; 00025ea0: 5c 6e 20 20 20 20 78 38 20 5e 3d 20 75 3c 3c 39 \n x8 ^= u<<9 00025eb0: 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e | u>>>(32-9);\n 00025ec0: 20 20 20 20 75 20 3d 20 78 38 20 2b 20 78 31 31 u = x8 + x11 00025ed0: 20 7c 20 30 3b 5c 6e 20 20 20 20 78 39 20 5e 3d | 0;\n x9 ^= 00025ee0: 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e 28 33 32 u<<13 | u>>>(32 00025ef0: 2d 31 33 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 -13);\n u = x 00025f00: 39 20 2b 20 78 38 20 7c 20 30 3b 5c 6e 20 20 20 9 + x8 | 0;\n 00025f10: 20 78 31 30 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 x10 ^= u<<18 | 00025f20: 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e u>>>(32-18);\n\n 00025f30: 20 20 20 20 75 20 3d 20 78 31 35 20 2b 20 78 31 u = x15 + x1 00025f40: 34 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 32 20 4 | 0;\n x12 00025f50: 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 ^= u<<7 | u>>>(3 00025f60: 32 2d 37 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 2-7);\n u = x 00025f70: 31 32 20 2b 20 78 31 35 20 7c 20 30 3b 5c 6e 20 12 + x15 | 0;\n 00025f80: 20 20 20 78 31 33 20 5e 3d 20 75 3c 3c 39 20 7c x13 ^= u<<9 | 00025f90: 20 75 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e 20 20 u>>>(32-9);\n 00025fa0: 20 20 75 20 3d 20 78 31 33 20 2b 20 78 31 32 20 u = x13 + x12 00025fb0: 7c 20 30 3b 5c 6e 20 20 20 20 78 31 34 20 5e 3d | 0;\n x14 ^= 00025fc0: 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e 28 33 32 u<<13 | u>>>(32 00025fd0: 2d 31 33 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 -13);\n u = x 00025fe0: 31 34 20 2b 20 78 31 33 20 7c 20 30 3b 5c 6e 20 14 + x13 | 0;\n 00025ff0: 20 20 20 78 31 35 20 5e 3d 20 75 3c 3c 31 38 20 x15 ^= u<<18 00026000: 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e | u>>>(32-18);\n 00026010: 20 20 7d 5c 6e 20 20 20 78 30 20 3d 20 20 78 30 }\n x0 = x0 00026020: 20 2b 20 20 6a 30 20 7c 20 30 3b 5c 6e 20 20 20 + j0 | 0;\n 00026030: 78 31 20 3d 20 20 78 31 20 2b 20 20 6a 31 20 7c x1 = x1 + j1 | 00026040: 20 30 3b 5c 6e 20 20 20 78 32 20 3d 20 20 78 32 0;\n x2 = x2 00026050: 20 2b 20 20 6a 32 20 7c 20 30 3b 5c 6e 20 20 20 + j2 | 0;\n 00026060: 78 33 20 3d 20 20 78 33 20 2b 20 20 6a 33 20 7c x3 = x3 + j3 | 00026070: 20 30 3b 5c 6e 20 20 20 78 34 20 3d 20 20 78 34 0;\n x4 = x4 00026080: 20 2b 20 20 6a 34 20 7c 20 30 3b 5c 6e 20 20 20 + j4 | 0;\n 00026090: 78 35 20 3d 20 20 78 35 20 2b 20 20 6a 35 20 7c x5 = x5 + j5 | 000260a0: 20 30 3b 5c 6e 20 20 20 78 36 20 3d 20 20 78 36 0;\n x6 = x6 000260b0: 20 2b 20 20 6a 36 20 7c 20 30 3b 5c 6e 20 20 20 + j6 | 0;\n 000260c0: 78 37 20 3d 20 20 78 37 20 2b 20 20 6a 37 20 7c x7 = x7 + j7 | 000260d0: 20 30 3b 5c 6e 20 20 20 78 38 20 3d 20 20 78 38 0;\n x8 = x8 000260e0: 20 2b 20 20 6a 38 20 7c 20 30 3b 5c 6e 20 20 20 + j8 | 0;\n 000260f0: 78 39 20 3d 20 20 78 39 20 2b 20 20 6a 39 20 7c x9 = x9 + j9 | 00026100: 20 30 3b 5c 6e 20 20 78 31 30 20 3d 20 78 31 30 0;\n x10 = x10 00026110: 20 2b 20 6a 31 30 20 7c 20 30 3b 5c 6e 20 20 78 + j10 | 0;\n x 00026120: 31 31 20 3d 20 78 31 31 20 2b 20 6a 31 31 20 7c 11 = x11 + j11 | 00026130: 20 30 3b 5c 6e 20 20 78 31 32 20 3d 20 78 31 32 0;\n x12 = x12 00026140: 20 2b 20 6a 31 32 20 7c 20 30 3b 5c 6e 20 20 78 + j12 | 0;\n x 00026150: 31 33 20 3d 20 78 31 33 20 2b 20 6a 31 33 20 7c 13 = x13 + j13 | 00026160: 20 30 3b 5c 6e 20 20 78 31 34 20 3d 20 78 31 34 0;\n x14 = x14 00026170: 20 2b 20 6a 31 34 20 7c 20 30 3b 5c 6e 20 20 78 + j14 | 0;\n x 00026180: 31 35 20 3d 20 78 31 35 20 2b 20 6a 31 35 20 7c 15 = x15 + j15 | 00026190: 20 30 3b 5c 6e 5c 6e 20 20 6f 5b 20 30 5d 20 3d 0;\n\n o[ 0] = 000261a0: 20 78 30 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 x0 >>> 0 & 0xf 000261b0: 66 3b 5c 6e 20 20 6f 5b 20 31 5d 20 3d 20 78 30 f;\n o[ 1] = x0 000261c0: 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c >>> 8 & 0xff;\ 000261d0: 6e 20 20 6f 5b 20 32 5d 20 3d 20 78 30 20 3e 3e n o[ 2] = x0 >> 000261e0: 3e 20 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 16 & 0xff;\n 000261f0: 6f 5b 20 33 5d 20 3d 20 78 30 20 3e 3e 3e 20 32 o[ 3] = x0 >>> 2 00026200: 34 20 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 4 & 0xff;\n\n o 00026210: 5b 20 34 5d 20 3d 20 78 31 20 3e 3e 3e 20 20 30 [ 4] = x1 >>> 0 00026220: 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 20 35 & 0xff;\n o[ 5 00026230: 5d 20 3d 20 78 31 20 3e 3e 3e 20 20 38 20 26 20 ] = x1 >>> 8 & 00026240: 30 78 66 66 3b 5c 6e 20 20 6f 5b 20 36 5d 20 3d 0xff;\n o[ 6] = 00026250: 20 78 31 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 x1 >>> 16 & 0xf 00026260: 66 3b 5c 6e 20 20 6f 5b 20 37 5d 20 3d 20 78 31 f;\n o[ 7] = x1 00026270: 20 3e 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c >>> 24 & 0xff;\ 00026280: 6e 5c 6e 20 20 6f 5b 20 38 5d 20 3d 20 78 32 20 n\n o[ 8] = x2 00026290: 3e 3e 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e >>> 0 & 0xff;\n 000262a0: 20 20 6f 5b 20 39 5d 20 3d 20 78 32 20 3e 3e 3e o[ 9] = x2 >>> 000262b0: 20 20 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 8 & 0xff;\n o 000262c0: 5b 31 30 5d 20 3d 20 78 32 20 3e 3e 3e 20 31 36 [10] = x2 >>> 16 000262d0: 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 31 31 & 0xff;\n o[11 000262e0: 5d 20 3d 20 78 32 20 3e 3e 3e 20 32 34 20 26 20 ] = x2 >>> 24 & 000262f0: 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 31 32 5d 0xff;\n\n o[12] 00026300: 20 3d 20 78 33 20 3e 3e 3e 20 20 30 20 26 20 30 = x3 >>> 0 & 0 00026310: 78 66 66 3b 5c 6e 20 20 6f 5b 31 33 5d 20 3d 20 xff;\n o[13] = 00026320: 78 33 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 x3 >>> 8 & 0xff 00026330: 3b 5c 6e 20 20 6f 5b 31 34 5d 20 3d 20 78 33 20 ;\n o[14] = x3 00026340: 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 5c 6e >>> 16 & 0xff;\n 00026350: 20 20 6f 5b 31 35 5d 20 3d 20 78 33 20 3e 3e 3e o[15] = x3 >>> 00026360: 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 24 & 0xff;\n\n 00026370: 20 6f 5b 31 36 5d 20 3d 20 78 34 20 3e 3e 3e 20 o[16] = x4 >>> 00026380: 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 0 & 0xff;\n o[ 00026390: 31 37 5d 20 3d 20 78 34 20 3e 3e 3e 20 20 38 20 17] = x4 >>> 8 000263a0: 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 31 38 5d & 0xff;\n o[18] 000263b0: 20 3d 20 78 34 20 3e 3e 3e 20 31 36 20 26 20 30 = x4 >>> 16 & 0 000263c0: 78 66 66 3b 5c 6e 20 20 6f 5b 31 39 5d 20 3d 20 xff;\n o[19] = 000263d0: 78 34 20 3e 3e 3e 20 32 34 20 26 20 30 78 66 66 x4 >>> 24 & 0xff 000263e0: 3b 5c 6e 5c 6e 20 20 6f 5b 32 30 5d 20 3d 20 78 ;\n\n o[20] = x 000263f0: 35 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 66 3b 5 >>> 0 & 0xff; 00026400: 5c 6e 20 20 6f 5b 32 31 5d 20 3d 20 78 35 20 3e \n o[21] = x5 > 00026410: 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c 6e 20 >> 8 & 0xff;\n 00026420: 20 6f 5b 32 32 5d 20 3d 20 78 35 20 3e 3e 3e 20 o[22] = x5 >>> 00026430: 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 16 & 0xff;\n o[ 00026440: 32 33 5d 20 3d 20 78 35 20 3e 3e 3e 20 32 34 20 23] = x5 >>> 24 00026450: 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 32 & 0xff;\n\n o[2 00026460: 34 5d 20 3d 20 78 36 20 3e 3e 3e 20 20 30 20 26 4] = x6 >>> 0 & 00026470: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 32 35 5d 20 0xff;\n o[25] 00026480: 3d 20 78 36 20 3e 3e 3e 20 20 38 20 26 20 30 78 = x6 >>> 8 & 0x 00026490: 66 66 3b 5c 6e 20 20 6f 5b 32 36 5d 20 3d 20 78 ff;\n o[26] = x 000264a0: 36 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 6 >>> 16 & 0xff; 000264b0: 5c 6e 20 20 6f 5b 32 37 5d 20 3d 20 78 36 20 3e \n o[27] = x6 > 000264c0: 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c >> 24 & 0xff;\n\ 000264d0: 6e 20 20 6f 5b 32 38 5d 20 3d 20 78 37 20 3e 3e n o[28] = x7 >> 000264e0: 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 0 & 0xff;\n 000264f0: 6f 5b 32 39 5d 20 3d 20 78 37 20 3e 3e 3e 20 20 o[29] = x7 >>> 00026500: 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 33 8 & 0xff;\n o[3 00026510: 30 5d 20 3d 20 78 37 20 3e 3e 3e 20 31 36 20 26 0] = x7 >>> 16 & 00026520: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 33 31 5d 20 0xff;\n o[31] 00026530: 3d 20 78 37 20 3e 3e 3e 20 32 34 20 26 20 30 78 = x7 >>> 24 & 0x 00026540: 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 33 32 5d 20 3d ff;\n\n o[32] = 00026550: 20 78 38 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 x8 >>> 0 & 0xf 00026560: 66 3b 5c 6e 20 20 6f 5b 33 33 5d 20 3d 20 78 38 f;\n o[33] = x8 00026570: 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c >>> 8 & 0xff;\ 00026580: 6e 20 20 6f 5b 33 34 5d 20 3d 20 78 38 20 3e 3e n o[34] = x8 >> 00026590: 3e 20 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 16 & 0xff;\n 000265a0: 6f 5b 33 35 5d 20 3d 20 78 38 20 3e 3e 3e 20 32 o[35] = x8 >>> 2 000265b0: 34 20 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 4 & 0xff;\n\n o 000265c0: 5b 33 36 5d 20 3d 20 78 39 20 3e 3e 3e 20 20 30 [36] = x9 >>> 0 000265d0: 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 33 37 & 0xff;\n o[37 000265e0: 5d 20 3d 20 78 39 20 3e 3e 3e 20 20 38 20 26 20 ] = x9 >>> 8 & 000265f0: 30 78 66 66 3b 5c 6e 20 20 6f 5b 33 38 5d 20 3d 0xff;\n o[38] = 00026600: 20 78 39 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 x9 >>> 16 & 0xf 00026610: 66 3b 5c 6e 20 20 6f 5b 33 39 5d 20 3d 20 78 39 f;\n o[39] = x9 00026620: 20 3e 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c >>> 24 & 0xff;\ 00026630: 6e 5c 6e 20 20 6f 5b 34 30 5d 20 3d 20 78 31 30 n\n o[40] = x10 00026640: 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 66 3b 5c >>> 0 & 0xff;\ 00026650: 6e 20 20 6f 5b 34 31 5d 20 3d 20 78 31 30 20 3e n o[41] = x10 > 00026660: 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c 6e 20 >> 8 & 0xff;\n 00026670: 20 6f 5b 34 32 5d 20 3d 20 78 31 30 20 3e 3e 3e o[42] = x10 >>> 00026680: 20 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 16 & 0xff;\n o 00026690: 5b 34 33 5d 20 3d 20 78 31 30 20 3e 3e 3e 20 32 [43] = x10 >>> 2 000266a0: 34 20 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 4 & 0xff;\n\n o 000266b0: 5b 34 34 5d 20 3d 20 78 31 31 20 3e 3e 3e 20 20 [44] = x11 >>> 000266c0: 30 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 34 0 & 0xff;\n o[4 000266d0: 35 5d 20 3d 20 78 31 31 20 3e 3e 3e 20 20 38 20 5] = x11 >>> 8 000266e0: 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 34 36 5d & 0xff;\n o[46] 000266f0: 20 3d 20 78 31 31 20 3e 3e 3e 20 31 36 20 26 20 = x11 >>> 16 & 00026700: 30 78 66 66 3b 5c 6e 20 20 6f 5b 34 37 5d 20 3d 0xff;\n o[47] = 00026710: 20 78 31 31 20 3e 3e 3e 20 32 34 20 26 20 30 78 x11 >>> 24 & 0x 00026720: 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 34 38 5d 20 3d ff;\n\n o[48] = 00026730: 20 78 31 32 20 3e 3e 3e 20 20 30 20 26 20 30 78 x12 >>> 0 & 0x 00026740: 66 66 3b 5c 6e 20 20 6f 5b 34 39 5d 20 3d 20 78 ff;\n o[49] = x 00026750: 31 32 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 12 >>> 8 & 0xff 00026760: 3b 5c 6e 20 20 6f 5b 35 30 5d 20 3d 20 78 31 32 ;\n o[50] = x12 00026770: 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 5c >>> 16 & 0xff;\ 00026780: 6e 20 20 6f 5b 35 31 5d 20 3d 20 78 31 32 20 3e n o[51] = x12 > 00026790: 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c >> 24 & 0xff;\n\ 000267a0: 6e 20 20 6f 5b 35 32 5d 20 3d 20 78 31 33 20 3e n o[52] = x13 > 000267b0: 3e 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 >> 0 & 0xff;\n 000267c0: 20 6f 5b 35 33 5d 20 3d 20 78 31 33 20 3e 3e 3e o[53] = x13 >>> 000267d0: 20 20 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 8 & 0xff;\n o 000267e0: 5b 35 34 5d 20 3d 20 78 31 33 20 3e 3e 3e 20 31 [54] = x13 >>> 1 000267f0: 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 35 6 & 0xff;\n o[5 00026800: 35 5d 20 3d 20 78 31 33 20 3e 3e 3e 20 32 34 20 5] = x13 >>> 24 00026810: 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 35 & 0xff;\n\n o[5 00026820: 36 5d 20 3d 20 78 31 34 20 3e 3e 3e 20 20 30 20 6] = x14 >>> 0 00026830: 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 35 37 5d & 0xff;\n o[57] 00026840: 20 3d 20 78 31 34 20 3e 3e 3e 20 20 38 20 26 20 = x14 >>> 8 & 00026850: 30 78 66 66 3b 5c 6e 20 20 6f 5b 35 38 5d 20 3d 0xff;\n o[58] = 00026860: 20 78 31 34 20 3e 3e 3e 20 31 36 20 26 20 30 78 x14 >>> 16 & 0x 00026870: 66 66 3b 5c 6e 20 20 6f 5b 35 39 5d 20 3d 20 78 ff;\n o[59] = x 00026880: 31 34 20 3e 3e 3e 20 32 34 20 26 20 30 78 66 66 14 >>> 24 & 0xff 00026890: 3b 5c 6e 5c 6e 20 20 6f 5b 36 30 5d 20 3d 20 78 ;\n\n o[60] = x 000268a0: 31 35 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 66 15 >>> 0 & 0xff 000268b0: 3b 5c 6e 20 20 6f 5b 36 31 5d 20 3d 20 78 31 35 ;\n o[61] = x15 000268c0: 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c >>> 8 & 0xff;\ 000268d0: 6e 20 20 6f 5b 36 32 5d 20 3d 20 78 31 35 20 3e n o[62] = x15 > 000268e0: 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 >> 16 & 0xff;\n 000268f0: 20 6f 5b 36 33 5d 20 3d 20 78 31 35 20 3e 3e 3e o[63] = x15 >>> 00026900: 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 7d 5c 6e 24 & 0xff;\n}\n 00026910: 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 6f 72 65 5f \nfunction core_ 00026920: 68 73 61 6c 73 61 32 30 28 6f 2c 70 2c 6b 2c 63 hsalsa20(o,p,k,c 00026930: 29 20 7b 5c 6e 20 20 76 61 72 20 6a 30 20 20 3d ) {\n var j0 = 00026940: 20 63 5b 20 30 5d 20 26 20 30 78 66 66 20 7c 20 c[ 0] & 0xff | 00026950: 28 63 5b 20 31 5d 20 26 20 30 78 66 66 29 3c 3c (c[ 1] & 0xff)<< 00026960: 38 20 7c 20 28 63 5b 20 32 5d 20 26 20 30 78 66 8 | (c[ 2] & 0xf 00026970: 66 29 3c 3c 31 36 20 7c 20 28 63 5b 20 33 5d 20 f)<<16 | (c[ 3] 00026980: 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 & 0xff)<<24,\n 00026990: 20 20 20 20 6a 31 20 20 3d 20 6b 5b 20 30 5d 20 j1 = k[ 0] 000269a0: 26 20 30 78 66 66 20 7c 20 28 6b 5b 20 31 5d 20 & 0xff | (k[ 1] 000269b0: 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 6b 5b & 0xff)<<8 | (k[ 000269c0: 20 32 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 2] & 0xff)<<16 000269d0: 7c 20 28 6b 5b 20 33 5d 20 26 20 30 78 66 66 29 | (k[ 3] & 0xff) 000269e0: 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 32 20 <<24,\n j2 000269f0: 20 3d 20 6b 5b 20 34 5d 20 26 20 30 78 66 66 20 = k[ 4] & 0xff 00026a00: 7c 20 28 6b 5b 20 35 5d 20 26 20 30 78 66 66 29 | (k[ 5] & 0xff) 00026a10: 3c 3c 38 20 7c 20 28 6b 5b 20 36 5d 20 26 20 30 <<8 | (k[ 6] & 0 00026a20: 78 66 66 29 3c 3c 31 36 20 7c 20 28 6b 5b 20 37 xff)<<16 | (k[ 7 00026a30: 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e ] & 0xff)<<24,\n 00026a40: 20 20 20 20 20 20 6a 33 20 20 3d 20 6b 5b 20 38 j3 = k[ 8 00026a50: 5d 20 26 20 30 78 66 66 20 7c 20 28 6b 5b 20 39 ] & 0xff | (k[ 9 00026a60: 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 ] & 0xff)<<8 | ( 00026a70: 6b 5b 31 30 5d 20 26 20 30 78 66 66 29 3c 3c 31 k[10] & 0xff)<<1 00026a80: 36 20 7c 20 28 6b 5b 31 31 5d 20 26 20 30 78 66 6 | (k[11] & 0xf 00026a90: 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a f)<<24,\n j 00026aa0: 34 20 20 3d 20 6b 5b 31 32 5d 20 26 20 30 78 66 4 = k[12] & 0xf 00026ab0: 66 20 7c 20 28 6b 5b 31 33 5d 20 26 20 30 78 66 f | (k[13] & 0xf 00026ac0: 66 29 3c 3c 38 20 7c 20 28 6b 5b 31 34 5d 20 26 f)<<8 | (k[14] & 00026ad0: 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 6b 5b 0xff)<<16 | (k[ 00026ae0: 31 35 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 15] & 0xff)<<24, 00026af0: 5c 6e 20 20 20 20 20 20 6a 35 20 20 3d 20 63 5b \n j5 = c[ 00026b00: 20 34 5d 20 26 20 30 78 66 66 20 7c 20 28 63 5b 4] & 0xff | (c[ 00026b10: 20 35 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 5] & 0xff)<<8 | 00026b20: 20 28 63 5b 20 36 5d 20 26 20 30 78 66 66 29 3c (c[ 6] & 0xff)< 00026b30: 3c 31 36 20 7c 20 28 63 5b 20 37 5d 20 26 20 30 <16 | (c[ 7] & 0 00026b40: 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 xff)<<24,\n 00026b50: 20 6a 36 20 20 3d 20 70 5b 20 30 5d 20 26 20 30 j6 = p[ 0] & 0 00026b60: 78 66 66 20 7c 20 28 70 5b 20 31 5d 20 26 20 30 xff | (p[ 1] & 0 00026b70: 78 66 66 29 3c 3c 38 20 7c 20 28 70 5b 20 32 5d xff)<<8 | (p[ 2] 00026b80: 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 & 0xff)<<16 | ( 00026b90: 70 5b 20 33 5d 20 26 20 30 78 66 66 29 3c 3c 32 p[ 3] & 0xff)<<2 00026ba0: 34 2c 5c 6e 20 20 20 20 20 20 6a 37 20 20 3d 20 4,\n j7 = 00026bb0: 70 5b 20 34 5d 20 26 20 30 78 66 66 20 7c 20 28 p[ 4] & 0xff | ( 00026bc0: 70 5b 20 35 5d 20 26 20 30 78 66 66 29 3c 3c 38 p[ 5] & 0xff)<<8 00026bd0: 20 7c 20 28 70 5b 20 36 5d 20 26 20 30 78 66 66 | (p[ 6] & 0xff 00026be0: 29 3c 3c 31 36 20 7c 20 28 70 5b 20 37 5d 20 26 )<<16 | (p[ 7] & 00026bf0: 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 0xff)<<24,\n 00026c00: 20 20 20 6a 38 20 20 3d 20 70 5b 20 38 5d 20 26 j8 = p[ 8] & 00026c10: 20 30 78 66 66 20 7c 20 28 70 5b 20 39 5d 20 26 0xff | (p[ 9] & 00026c20: 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 70 5b 31 0xff)<<8 | (p[1 00026c30: 30 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 0] & 0xff)<<16 | 00026c40: 20 28 70 5b 31 31 5d 20 26 20 30 78 66 66 29 3c (p[11] & 0xff)< 00026c50: 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 39 20 20 <24,\n j9 00026c60: 3d 20 70 5b 31 32 5d 20 26 20 30 78 66 66 20 7c = p[12] & 0xff | 00026c70: 20 28 70 5b 31 33 5d 20 26 20 30 78 66 66 29 3c (p[13] & 0xff)< 00026c80: 3c 38 20 7c 20 28 70 5b 31 34 5d 20 26 20 30 78 <8 | (p[14] & 0x 00026c90: 66 66 29 3c 3c 31 36 20 7c 20 28 70 5b 31 35 5d ff)<<16 | (p[15] 00026ca0: 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 & 0xff)<<24,\n 00026cb0: 20 20 20 20 20 6a 31 30 20 3d 20 63 5b 20 38 5d j10 = c[ 8] 00026cc0: 20 26 20 30 78 66 66 20 7c 20 28 63 5b 20 39 5d & 0xff | (c[ 9] 00026cd0: 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 63 & 0xff)<<8 | (c 00026ce0: 5b 31 30 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 [10] & 0xff)<<16 00026cf0: 20 7c 20 28 63 5b 31 31 5d 20 26 20 30 78 66 66 | (c[11] & 0xff 00026d00: 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 31 )<<24,\n j1 00026d10: 31 20 3d 20 6b 5b 31 36 5d 20 26 20 30 78 66 66 1 = k[16] & 0xff 00026d20: 20 7c 20 28 6b 5b 31 37 5d 20 26 20 30 78 66 66 | (k[17] & 0xff 00026d30: 29 3c 3c 38 20 7c 20 28 6b 5b 31 38 5d 20 26 20 )<<8 | (k[18] & 00026d40: 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 6b 5b 31 0xff)<<16 | (k[1 00026d50: 39 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 9] & 0xff)<<24,\ 00026d60: 6e 20 20 20 20 20 20 6a 31 32 20 3d 20 6b 5b 32 n j12 = k[2 00026d70: 30 5d 20 26 20 30 78 66 66 20 7c 20 28 6b 5b 32 0] & 0xff | (k[2 00026d80: 31 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 1] & 0xff)<<8 | 00026d90: 28 6b 5b 32 32 5d 20 26 20 30 78 66 66 29 3c 3c (k[22] & 0xff)<< 00026da0: 31 36 20 7c 20 28 6b 5b 32 33 5d 20 26 20 30 78 16 | (k[23] & 0x 00026db0: 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 ff)<<24,\n 00026dc0: 6a 31 33 20 3d 20 6b 5b 32 34 5d 20 26 20 30 78 j13 = k[24] & 0x 00026dd0: 66 66 20 7c 20 28 6b 5b 32 35 5d 20 26 20 30 78 ff | (k[25] & 0x 00026de0: 66 66 29 3c 3c 38 20 7c 20 28 6b 5b 32 36 5d 20 ff)<<8 | (k[26] 00026df0: 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 6b & 0xff)<<16 | (k 00026e00: 5b 32 37 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 [27] & 0xff)<<24 00026e10: 2c 5c 6e 20 20 20 20 20 20 6a 31 34 20 3d 20 6b ,\n j14 = k 00026e20: 5b 32 38 5d 20 26 20 30 78 66 66 20 7c 20 28 6b [28] & 0xff | (k 00026e30: 5b 32 39 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 [29] & 0xff)<<8 00026e40: 7c 20 28 6b 5b 33 30 5d 20 26 20 30 78 66 66 29 | (k[30] & 0xff) 00026e50: 3c 3c 31 36 20 7c 20 28 6b 5b 33 31 5d 20 26 20 <<16 | (k[31] & 00026e60: 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 0xff)<<24,\n 00026e70: 20 20 6a 31 35 20 3d 20 63 5b 31 32 5d 20 26 20 j15 = c[12] & 00026e80: 30 78 66 66 20 7c 20 28 63 5b 31 33 5d 20 26 20 0xff | (c[13] & 00026e90: 30 78 66 66 29 3c 3c 38 20 7c 20 28 63 5b 31 34 0xff)<<8 | (c[14 00026ea0: 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 ] & 0xff)<<16 | 00026eb0: 28 63 5b 31 35 5d 20 26 20 30 78 66 66 29 3c 3c (c[15] & 0xff)<< 00026ec0: 32 34 3b 5c 6e 5c 6e 20 20 76 61 72 20 78 30 20 24;\n\n var x0 00026ed0: 3d 20 6a 30 2c 20 78 31 20 3d 20 6a 31 2c 20 78 = j0, x1 = j1, x 00026ee0: 32 20 3d 20 6a 32 2c 20 78 33 20 3d 20 6a 33 2c 2 = j2, x3 = j3, 00026ef0: 20 78 34 20 3d 20 6a 34 2c 20 78 35 20 3d 20 6a x4 = j4, x5 = j 00026f00: 35 2c 20 78 36 20 3d 20 6a 36 2c 20 78 37 20 3d 5, x6 = j6, x7 = 00026f10: 20 6a 37 2c 5c 6e 20 20 20 20 20 20 78 38 20 3d j7,\n x8 = 00026f20: 20 6a 38 2c 20 78 39 20 3d 20 6a 39 2c 20 78 31 j8, x9 = j9, x1 00026f30: 30 20 3d 20 6a 31 30 2c 20 78 31 31 20 3d 20 6a 0 = j10, x11 = j 00026f40: 31 31 2c 20 78 31 32 20 3d 20 6a 31 32 2c 20 78 11, x12 = j12, x 00026f50: 31 33 20 3d 20 6a 31 33 2c 20 78 31 34 20 3d 20 13 = j13, x14 = 00026f60: 6a 31 34 2c 5c 6e 20 20 20 20 20 20 78 31 35 20 j14,\n x15 00026f70: 3d 20 6a 31 35 2c 20 75 3b 5c 6e 5c 6e 20 20 66 = j15, u;\n\n f 00026f80: 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 or (var i = 0; i 00026f90: 20 3c 20 32 30 3b 20 69 20 2b 3d 20 32 29 20 7b < 20; i += 2) { 00026fa0: 5c 6e 20 20 20 20 75 20 3d 20 78 30 20 2b 20 78 \n u = x0 + x 00026fb0: 31 32 20 7c 20 30 3b 5c 6e 20 20 20 20 78 34 20 12 | 0;\n x4 00026fc0: 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 ^= u<<7 | u>>>(3 00026fd0: 32 2d 37 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 2-7);\n u = x 00026fe0: 34 20 2b 20 78 30 20 7c 20 30 3b 5c 6e 20 20 20 4 + x0 | 0;\n 00026ff0: 20 78 38 20 5e 3d 20 75 3c 3c 39 20 7c 20 75 3e x8 ^= u<<9 | u> 00027000: 3e 3e 28 33 32 2d 39 29 3b 5c 6e 20 20 20 20 75 >>(32-9);\n u 00027010: 20 3d 20 78 38 20 2b 20 78 34 20 7c 20 30 3b 5c = x8 + x4 | 0;\ 00027020: 6e 20 20 20 20 78 31 32 20 5e 3d 20 75 3c 3c 31 n x12 ^= u<<1 00027030: 33 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 33 29 3b 3 | u>>>(32-13); 00027040: 5c 6e 20 20 20 20 75 20 3d 20 78 31 32 20 2b 20 \n u = x12 + 00027050: 78 38 20 7c 20 30 3b 5c 6e 20 20 20 20 78 30 20 x8 | 0;\n x0 00027060: 5e 3d 20 75 3c 3c 31 38 20 7c 20 75 3e 3e 3e 28 ^= u<<18 | u>>>( 00027070: 33 32 2d 31 38 29 3b 5c 6e 5c 6e 20 20 20 20 75 32-18);\n\n u 00027080: 20 3d 20 78 35 20 2b 20 78 31 20 7c 20 30 3b 5c = x5 + x1 | 0;\ 00027090: 6e 20 20 20 20 78 39 20 5e 3d 20 75 3c 3c 37 20 n x9 ^= u<<7 000270a0: 7c 20 75 3e 3e 3e 28 33 32 2d 37 29 3b 5c 6e 20 | u>>>(32-7);\n 000270b0: 20 20 20 75 20 3d 20 78 39 20 2b 20 78 35 20 7c u = x9 + x5 | 000270c0: 20 30 3b 5c 6e 20 20 20 20 78 31 33 20 5e 3d 20 0;\n x13 ^= 000270d0: 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 u<<9 | u>>>(32-9 000270e0: 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 31 33 20 );\n u = x13 000270f0: 2b 20 78 39 20 7c 20 30 3b 5c 6e 20 20 20 20 78 + x9 | 0;\n x 00027100: 31 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 1 ^= u<<13 | u>> 00027110: 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 20 20 75 >(32-13);\n u 00027120: 20 3d 20 78 31 20 2b 20 78 31 33 20 7c 20 30 3b = x1 + x13 | 0; 00027130: 5c 6e 20 20 20 20 78 35 20 5e 3d 20 75 3c 3c 31 \n x5 ^= u<<1 00027140: 38 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 8 | u>>>(32-18); 00027150: 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 78 31 30 20 \n\n u = x10 00027160: 2b 20 78 36 20 7c 20 30 3b 5c 6e 20 20 20 20 78 + x6 | 0;\n x 00027170: 31 34 20 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 14 ^= u<<7 | u>> 00027180: 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 20 20 75 20 >(32-7);\n u 00027190: 3d 20 78 31 34 20 2b 20 78 31 30 20 7c 20 30 3b = x14 + x10 | 0; 000271a0: 5c 6e 20 20 20 20 78 32 20 5e 3d 20 75 3c 3c 39 \n x2 ^= u<<9 000271b0: 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e | u>>>(32-9);\n 000271c0: 20 20 20 20 75 20 3d 20 78 32 20 2b 20 78 31 34 u = x2 + x14 000271d0: 20 7c 20 30 3b 5c 6e 20 20 20 20 78 36 20 5e 3d | 0;\n x6 ^= 000271e0: 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e 28 33 32 u<<13 | u>>>(32 000271f0: 2d 31 33 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 -13);\n u = x 00027200: 36 20 2b 20 78 32 20 7c 20 30 3b 5c 6e 20 20 20 6 + x2 | 0;\n 00027210: 20 78 31 30 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 x10 ^= u<<18 | 00027220: 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e u>>>(32-18);\n\n 00027230: 20 20 20 20 75 20 3d 20 78 31 35 20 2b 20 78 31 u = x15 + x1 00027240: 31 20 7c 20 30 3b 5c 6e 20 20 20 20 78 33 20 5e 1 | 0;\n x3 ^ 00027250: 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 = u<<7 | u>>>(32 00027260: 2d 37 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 33 -7);\n u = x3 00027270: 20 2b 20 78 31 35 20 7c 20 30 3b 5c 6e 20 20 20 + x15 | 0;\n 00027280: 20 78 37 20 5e 3d 20 75 3c 3c 39 20 7c 20 75 3e x7 ^= u<<9 | u> 00027290: 3e 3e 28 33 32 2d 39 29 3b 5c 6e 20 20 20 20 75 >>(32-9);\n u 000272a0: 20 3d 20 78 37 20 2b 20 78 33 20 7c 20 30 3b 5c = x7 + x3 | 0;\ 000272b0: 6e 20 20 20 20 78 31 31 20 5e 3d 20 75 3c 3c 31 n x11 ^= u<<1 000272c0: 33 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 33 29 3b 3 | u>>>(32-13); 000272d0: 5c 6e 20 20 20 20 75 20 3d 20 78 31 31 20 2b 20 \n u = x11 + 000272e0: 78 37 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 35 x7 | 0;\n x15 000272f0: 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 75 3e 3e 3e ^= u<<18 | u>>> 00027300: 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e 20 20 20 20 (32-18);\n\n 00027310: 75 20 3d 20 78 30 20 2b 20 78 33 20 7c 20 30 3b u = x0 + x3 | 0; 00027320: 5c 6e 20 20 20 20 78 31 20 5e 3d 20 75 3c 3c 37 \n x1 ^= u<<7 00027330: 20 7c 20 75 3e 3e 3e 28 33 32 2d 37 29 3b 5c 6e | u>>>(32-7);\n 00027340: 20 20 20 20 75 20 3d 20 78 31 20 2b 20 78 30 20 u = x1 + x0 00027350: 7c 20 30 3b 5c 6e 20 20 20 20 78 32 20 5e 3d 20 | 0;\n x2 ^= 00027360: 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 u<<9 | u>>>(32-9 00027370: 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 32 20 2b );\n u = x2 + 00027380: 20 78 31 20 7c 20 30 3b 5c 6e 20 20 20 20 78 33 x1 | 0;\n x3 00027390: 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e ^= u<<13 | u>>> 000273a0: 28 33 32 2d 31 33 29 3b 5c 6e 20 20 20 20 75 20 (32-13);\n u 000273b0: 3d 20 78 33 20 2b 20 78 32 20 7c 20 30 3b 5c 6e = x3 + x2 | 0;\n 000273c0: 20 20 20 20 78 30 20 5e 3d 20 75 3c 3c 31 38 20 x0 ^= u<<18 000273d0: 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e | u>>>(32-18);\n 000273e0: 5c 6e 20 20 20 20 75 20 3d 20 78 35 20 2b 20 78 \n u = x5 + x 000273f0: 34 20 7c 20 30 3b 5c 6e 20 20 20 20 78 36 20 5e 4 | 0;\n x6 ^ 00027400: 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 = u<<7 | u>>>(32 00027410: 2d 37 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 36 -7);\n u = x6 00027420: 20 2b 20 78 35 20 7c 20 30 3b 5c 6e 20 20 20 20 + x5 | 0;\n 00027430: 78 37 20 5e 3d 20 75 3c 3c 39 20 7c 20 75 3e 3e x7 ^= u<<9 | u>> 00027440: 3e 28 33 32 2d 39 29 3b 5c 6e 20 20 20 20 75 20 >(32-9);\n u 00027450: 3d 20 78 37 20 2b 20 78 36 20 7c 20 30 3b 5c 6e = x7 + x6 | 0;\n 00027460: 20 20 20 20 78 34 20 5e 3d 20 75 3c 3c 31 33 20 x4 ^= u<<13 00027470: 7c 20 75 3e 3e 3e 28 33 32 2d 31 33 29 3b 5c 6e | u>>>(32-13);\n 00027480: 20 20 20 20 75 20 3d 20 78 34 20 2b 20 78 37 20 u = x4 + x7 00027490: 7c 20 30 3b 5c 6e 20 20 20 20 78 35 20 5e 3d 20 | 0;\n x5 ^= 000274a0: 75 3c 3c 31 38 20 7c 20 75 3e 3e 3e 28 33 32 2d u<<18 | u>>>(32- 000274b0: 31 38 29 3b 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 18);\n\n u = 000274c0: 78 31 30 20 2b 20 78 39 20 7c 20 30 3b 5c 6e 20 x10 + x9 | 0;\n 000274d0: 20 20 20 78 31 31 20 5e 3d 20 75 3c 3c 37 20 7c x11 ^= u<<7 | 000274e0: 20 75 3e 3e 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 u>>>(32-7);\n 000274f0: 20 20 75 20 3d 20 78 31 31 20 2b 20 78 31 30 20 u = x11 + x10 00027500: 7c 20 30 3b 5c 6e 20 20 20 20 78 38 20 5e 3d 20 | 0;\n x8 ^= 00027510: 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 u<<9 | u>>>(32-9 00027520: 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 38 20 2b );\n u = x8 + 00027530: 20 78 31 31 20 7c 20 30 3b 5c 6e 20 20 20 20 78 x11 | 0;\n x 00027540: 39 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 9 ^= u<<13 | u>> 00027550: 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 20 20 75 >(32-13);\n u 00027560: 20 3d 20 78 39 20 2b 20 78 38 20 7c 20 30 3b 5c = x9 + x8 | 0;\ 00027570: 6e 20 20 20 20 78 31 30 20 5e 3d 20 75 3c 3c 31 n x10 ^= u<<1 00027580: 38 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 8 | u>>>(32-18); 00027590: 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 78 31 35 20 \n\n u = x15 000275a0: 2b 20 78 31 34 20 7c 20 30 3b 5c 6e 20 20 20 20 + x14 | 0;\n 000275b0: 78 31 32 20 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e x12 ^= u<<7 | u> 000275c0: 3e 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 20 20 75 >>(32-7);\n u 000275d0: 20 3d 20 78 31 32 20 2b 20 78 31 35 20 7c 20 30 = x12 + x15 | 0 000275e0: 3b 5c 6e 20 20 20 20 78 31 33 20 5e 3d 20 75 3c ;\n x13 ^= u< 000275f0: 3c 39 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 29 3b <9 | u>>>(32-9); 00027600: 5c 6e 20 20 20 20 75 20 3d 20 78 31 33 20 2b 20 \n u = x13 + 00027610: 78 31 32 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 x12 | 0;\n x1 00027620: 34 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 4 ^= u<<13 | u>> 00027630: 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 20 20 75 >(32-13);\n u 00027640: 20 3d 20 78 31 34 20 2b 20 78 31 33 20 7c 20 30 = x14 + x13 | 0 00027650: 3b 5c 6e 20 20 20 20 78 31 35 20 5e 3d 20 75 3c ;\n x15 ^= u< 00027660: 3c 31 38 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 <18 | u>>>(32-18 00027670: 29 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 6f 5b 20 );\n }\n\n o[ 00027680: 30 5d 20 3d 20 78 30 20 3e 3e 3e 20 20 30 20 26 0] = x0 >>> 0 & 00027690: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 20 31 5d 20 0xff;\n o[ 1] 000276a0: 3d 20 78 30 20 3e 3e 3e 20 20 38 20 26 20 30 78 = x0 >>> 8 & 0x 000276b0: 66 66 3b 5c 6e 20 20 6f 5b 20 32 5d 20 3d 20 78 ff;\n o[ 2] = x 000276c0: 30 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 0 >>> 16 & 0xff; 000276d0: 5c 6e 20 20 6f 5b 20 33 5d 20 3d 20 78 30 20 3e \n o[ 3] = x0 > 000276e0: 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c >> 24 & 0xff;\n\ 000276f0: 6e 20 20 6f 5b 20 34 5d 20 3d 20 78 35 20 3e 3e n o[ 4] = x5 >> 00027700: 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 0 & 0xff;\n 00027710: 6f 5b 20 35 5d 20 3d 20 78 35 20 3e 3e 3e 20 20 o[ 5] = x5 >>> 00027720: 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 20 8 & 0xff;\n o[ 00027730: 36 5d 20 3d 20 78 35 20 3e 3e 3e 20 31 36 20 26 6] = x5 >>> 16 & 00027740: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 20 37 5d 20 0xff;\n o[ 7] 00027750: 3d 20 78 35 20 3e 3e 3e 20 32 34 20 26 20 30 78 = x5 >>> 24 & 0x 00027760: 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 20 38 5d 20 3d ff;\n\n o[ 8] = 00027770: 20 78 31 30 20 3e 3e 3e 20 20 30 20 26 20 30 78 x10 >>> 0 & 0x 00027780: 66 66 3b 5c 6e 20 20 6f 5b 20 39 5d 20 3d 20 78 ff;\n o[ 9] = x 00027790: 31 30 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 10 >>> 8 & 0xff 000277a0: 3b 5c 6e 20 20 6f 5b 31 30 5d 20 3d 20 78 31 30 ;\n o[10] = x10 000277b0: 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 5c >>> 16 & 0xff;\ 000277c0: 6e 20 20 6f 5b 31 31 5d 20 3d 20 78 31 30 20 3e n o[11] = x10 > 000277d0: 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c >> 24 & 0xff;\n\ 000277e0: 6e 20 20 6f 5b 31 32 5d 20 3d 20 78 31 35 20 3e n o[12] = x15 > 000277f0: 3e 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 >> 0 & 0xff;\n 00027800: 20 6f 5b 31 33 5d 20 3d 20 78 31 35 20 3e 3e 3e o[13] = x15 >>> 00027810: 20 20 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 8 & 0xff;\n o 00027820: 5b 31 34 5d 20 3d 20 78 31 35 20 3e 3e 3e 20 31 [14] = x15 >>> 1 00027830: 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 31 6 & 0xff;\n o[1 00027840: 35 5d 20 3d 20 78 31 35 20 3e 3e 3e 20 32 34 20 5] = x15 >>> 24 00027850: 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 31 & 0xff;\n\n o[1 00027860: 36 5d 20 3d 20 78 36 20 3e 3e 3e 20 20 30 20 26 6] = x6 >>> 0 & 00027870: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 31 37 5d 20 0xff;\n o[17] 00027880: 3d 20 78 36 20 3e 3e 3e 20 20 38 20 26 20 30 78 = x6 >>> 8 & 0x 00027890: 66 66 3b 5c 6e 20 20 6f 5b 31 38 5d 20 3d 20 78 ff;\n o[18] = x 000278a0: 36 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 6 >>> 16 & 0xff; 000278b0: 5c 6e 20 20 6f 5b 31 39 5d 20 3d 20 78 36 20 3e \n o[19] = x6 > 000278c0: 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c >> 24 & 0xff;\n\ 000278d0: 6e 20 20 6f 5b 32 30 5d 20 3d 20 78 37 20 3e 3e n o[20] = x7 >> 000278e0: 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 0 & 0xff;\n 000278f0: 6f 5b 32 31 5d 20 3d 20 78 37 20 3e 3e 3e 20 20 o[21] = x7 >>> 00027900: 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 32 8 & 0xff;\n o[2 00027910: 32 5d 20 3d 20 78 37 20 3e 3e 3e 20 31 36 20 26 2] = x7 >>> 16 & 00027920: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 32 33 5d 20 0xff;\n o[23] 00027930: 3d 20 78 37 20 3e 3e 3e 20 32 34 20 26 20 30 78 = x7 >>> 24 & 0x 00027940: 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 32 34 5d 20 3d ff;\n\n o[24] = 00027950: 20 78 38 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 x8 >>> 0 & 0xf 00027960: 66 3b 5c 6e 20 20 6f 5b 32 35 5d 20 3d 20 78 38 f;\n o[25] = x8 00027970: 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c >>> 8 & 0xff;\ 00027980: 6e 20 20 6f 5b 32 36 5d 20 3d 20 78 38 20 3e 3e n o[26] = x8 >> 00027990: 3e 20 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 16 & 0xff;\n 000279a0: 6f 5b 32 37 5d 20 3d 20 78 38 20 3e 3e 3e 20 32 o[27] = x8 >>> 2 000279b0: 34 20 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 4 & 0xff;\n\n o 000279c0: 5b 32 38 5d 20 3d 20 78 39 20 3e 3e 3e 20 20 30 [28] = x9 >>> 0 000279d0: 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 32 39 & 0xff;\n o[29 000279e0: 5d 20 3d 20 78 39 20 3e 3e 3e 20 20 38 20 26 20 ] = x9 >>> 8 & 000279f0: 30 78 66 66 3b 5c 6e 20 20 6f 5b 33 30 5d 20 3d 0xff;\n o[30] = 00027a00: 20 78 39 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 x9 >>> 16 & 0xf 00027a10: 66 3b 5c 6e 20 20 6f 5b 33 31 5d 20 3d 20 78 39 f;\n o[31] = x9 00027a20: 20 3e 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c >>> 24 & 0xff;\ 00027a30: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 n}\n\nfunction c 00027a40: 72 79 70 74 6f 5f 63 6f 72 65 5f 73 61 6c 73 61 rypto_core_salsa 00027a50: 32 30 28 6f 75 74 2c 69 6e 70 2c 6b 2c 63 29 20 20(out,inp,k,c) 00027a60: 7b 5c 6e 20 20 63 6f 72 65 5f 73 61 6c 73 61 32 {\n core_salsa2 00027a70: 30 28 6f 75 74 2c 69 6e 70 2c 6b 2c 63 29 3b 5c 0(out,inp,k,c);\ 00027a80: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 n}\n\nfunction c 00027a90: 72 79 70 74 6f 5f 63 6f 72 65 5f 68 73 61 6c 73 rypto_core_hsals 00027aa0: 61 32 30 28 6f 75 74 2c 69 6e 70 2c 6b 2c 63 29 a20(out,inp,k,c) 00027ab0: 20 7b 5c 6e 20 20 63 6f 72 65 5f 68 73 61 6c 73 {\n core_hsals 00027ac0: 61 32 30 28 6f 75 74 2c 69 6e 70 2c 6b 2c 63 29 a20(out,inp,k,c) 00027ad0: 3b 5c 6e 7d 5c 6e 5c 6e 76 61 72 20 73 69 67 6d ;\n}\n\nvar sigm 00027ae0: 61 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 a = new Uint8Arr 00027af0: 61 79 28 5b 31 30 31 2c 20 31 32 30 2c 20 31 31 ay([101, 120, 11 00027b00: 32 2c 20 39 37 2c 20 31 31 30 2c 20 31 30 30 2c 2, 97, 110, 100, 00027b10: 20 33 32 2c 20 35 31 2c 20 35 30 2c 20 34 35 2c 32, 51, 50, 45, 00027b20: 20 39 38 2c 20 31 32 31 2c 20 31 31 36 2c 20 31 98, 121, 116, 1 00027b30: 30 31 2c 20 33 32 2c 20 31 30 37 5d 29 3b 5c 6e 01, 32, 107]);\n 00027b40: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 5c // \ 00027b50: 22 65 78 70 61 6e 64 20 33 32 2d 62 79 74 65 20 "expand 32-byte 00027b60: 6b 5c 22 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 k\"\n\nfunction 00027b70: 63 72 79 70 74 6f 5f 73 74 72 65 61 6d 5f 73 61 crypto_stream_sa 00027b80: 6c 73 61 32 30 5f 78 6f 72 28 63 2c 63 70 6f 73 lsa20_xor(c,cpos 00027b90: 2c 6d 2c 6d 70 6f 73 2c 62 2c 6e 2c 6b 29 20 7b ,m,mpos,b,n,k) { 00027ba0: 5c 6e 20 20 76 61 72 20 7a 20 3d 20 6e 65 77 20 \n var z = new 00027bb0: 55 69 6e 74 38 41 72 72 61 79 28 31 36 29 2c 20 Uint8Array(16), 00027bc0: 78 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 x = new Uint8Arr 00027bd0: 61 79 28 36 34 29 3b 5c 6e 20 20 76 61 72 20 75 ay(64);\n var u 00027be0: 2c 20 69 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d , i;\n for (i = 00027bf0: 20 30 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 0; i < 16; i++) 00027c00: 20 7a 5b 69 5d 20 3d 20 30 3b 5c 6e 20 20 66 6f z[i] = 0;\n fo 00027c10: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 38 3b r (i = 0; i < 8; 00027c20: 20 69 2b 2b 29 20 7a 5b 69 5d 20 3d 20 6e 5b 69 i++) z[i] = n[i 00027c30: 5d 3b 5c 6e 20 20 77 68 69 6c 65 20 28 62 20 3e ];\n while (b > 00027c40: 3d 20 36 34 29 20 7b 5c 6e 20 20 20 20 63 72 79 = 64) {\n cry 00027c50: 70 74 6f 5f 63 6f 72 65 5f 73 61 6c 73 61 32 30 pto_core_salsa20 00027c60: 28 78 2c 7a 2c 6b 2c 73 69 67 6d 61 29 3b 5c 6e (x,z,k,sigma);\n 00027c70: 20 20 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 for (i = 0; 00027c80: 69 20 3c 20 36 34 3b 20 69 2b 2b 29 20 63 5b 63 i < 64; i++) c[c 00027c90: 70 6f 73 2b 69 5d 20 3d 20 6d 5b 6d 70 6f 73 2b pos+i] = m[mpos+ 00027ca0: 69 5d 20 5e 20 78 5b 69 5d 3b 5c 6e 20 20 20 20 i] ^ x[i];\n 00027cb0: 75 20 3d 20 31 3b 5c 6e 20 20 20 20 66 6f 72 20 u = 1;\n for 00027cc0: 28 69 20 3d 20 38 3b 20 69 20 3c 20 31 36 3b 20 (i = 8; i < 16; 00027cd0: 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 75 20 i++) {\n u 00027ce0: 3d 20 75 20 2b 20 28 7a 5b 69 5d 20 26 20 30 78 = u + (z[i] & 0x 00027cf0: 66 66 29 20 7c 20 30 3b 5c 6e 20 20 20 20 20 20 ff) | 0;\n 00027d00: 7a 5b 69 5d 20 3d 20 75 20 26 20 30 78 66 66 3b z[i] = u & 0xff; 00027d10: 5c 6e 20 20 20 20 20 20 75 20 3e 3e 3e 3d 20 38 \n u >>>= 8 00027d20: 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 62 20 ;\n }\n b 00027d30: 2d 3d 20 36 34 3b 5c 6e 20 20 20 20 63 70 6f 73 -= 64;\n cpos 00027d40: 20 2b 3d 20 36 34 3b 5c 6e 20 20 20 20 6d 70 6f += 64;\n mpo 00027d50: 73 20 2b 3d 20 36 34 3b 5c 6e 20 20 7d 5c 6e 20 s += 64;\n }\n 00027d60: 20 69 66 20 28 62 20 3e 20 30 29 20 7b 5c 6e 20 if (b > 0) {\n 00027d70: 20 20 20 63 72 79 70 74 6f 5f 63 6f 72 65 5f 73 crypto_core_s 00027d80: 61 6c 73 61 32 30 28 78 2c 7a 2c 6b 2c 73 69 67 alsa20(x,z,k,sig 00027d90: 6d 61 29 3b 5c 6e 20 20 20 20 66 6f 72 20 28 69 ma);\n for (i 00027da0: 20 3d 20 30 3b 20 69 20 3c 20 62 3b 20 69 2b 2b = 0; i < b; i++ 00027db0: 29 20 63 5b 63 70 6f 73 2b 69 5d 20 3d 20 6d 5b ) c[cpos+i] = m[ 00027dc0: 6d 70 6f 73 2b 69 5d 20 5e 20 78 5b 69 5d 3b 5c mpos+i] ^ x[i];\ 00027dd0: 6e 20 20 7d 5c 6e 20 20 72 65 74 75 72 6e 20 30 n }\n return 0 00027de0: 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e ;\n}\n\nfunction 00027df0: 20 63 72 79 70 74 6f 5f 73 74 72 65 61 6d 5f 73 crypto_stream_s 00027e00: 61 6c 73 61 32 30 28 63 2c 63 70 6f 73 2c 62 2c alsa20(c,cpos,b, 00027e10: 6e 2c 6b 29 20 7b 5c 6e 20 20 76 61 72 20 7a 20 n,k) {\n var z 00027e20: 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 = new Uint8Array 00027e30: 28 31 36 29 2c 20 78 20 3d 20 6e 65 77 20 55 69 (16), x = new Ui 00027e40: 6e 74 38 41 72 72 61 79 28 36 34 29 3b 5c 6e 20 nt8Array(64);\n 00027e50: 20 76 61 72 20 75 2c 20 69 3b 5c 6e 20 20 66 6f var u, i;\n fo 00027e60: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 31 36 r (i = 0; i < 16 00027e70: 3b 20 69 2b 2b 29 20 7a 5b 69 5d 20 3d 20 30 3b ; i++) z[i] = 0; 00027e80: 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 \n for (i = 0; 00027e90: 69 20 3c 20 38 3b 20 69 2b 2b 29 20 7a 5b 69 5d i < 8; i++) z[i] 00027ea0: 20 3d 20 6e 5b 69 5d 3b 5c 6e 20 20 77 68 69 6c = n[i];\n whil 00027eb0: 65 20 28 62 20 3e 3d 20 36 34 29 20 7b 5c 6e 20 e (b >= 64) {\n 00027ec0: 20 20 20 63 72 79 70 74 6f 5f 63 6f 72 65 5f 73 crypto_core_s 00027ed0: 61 6c 73 61 32 30 28 78 2c 7a 2c 6b 2c 73 69 67 alsa20(x,z,k,sig 00027ee0: 6d 61 29 3b 5c 6e 20 20 20 20 66 6f 72 20 28 69 ma);\n for (i 00027ef0: 20 3d 20 30 3b 20 69 20 3c 20 36 34 3b 20 69 2b = 0; i < 64; i+ 00027f00: 2b 29 20 63 5b 63 70 6f 73 2b 69 5d 20 3d 20 78 +) c[cpos+i] = x 00027f10: 5b 69 5d 3b 5c 6e 20 20 20 20 75 20 3d 20 31 3b [i];\n u = 1; 00027f20: 5c 6e 20 20 20 20 66 6f 72 20 28 69 20 3d 20 38 \n for (i = 8 00027f30: 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 7b ; i < 16; i++) { 00027f40: 5c 6e 20 20 20 20 20 20 75 20 3d 20 75 20 2b 20 \n u = u + 00027f50: 28 7a 5b 69 5d 20 26 20 30 78 66 66 29 20 7c 20 (z[i] & 0xff) | 00027f60: 30 3b 5c 6e 20 20 20 20 20 20 7a 5b 69 5d 20 3d 0;\n z[i] = 00027f70: 20 75 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 u & 0xff;\n 00027f80: 20 20 75 20 3e 3e 3e 3d 20 38 3b 5c 6e 20 20 20 u >>>= 8;\n 00027f90: 20 7d 5c 6e 20 20 20 20 62 20 2d 3d 20 36 34 3b }\n b -= 64; 00027fa0: 5c 6e 20 20 20 20 63 70 6f 73 20 2b 3d 20 36 34 \n cpos += 64 00027fb0: 3b 5c 6e 20 20 7d 5c 6e 20 20 69 66 20 28 62 20 ;\n }\n if (b 00027fc0: 3e 20 30 29 20 7b 5c 6e 20 20 20 20 63 72 79 70 > 0) {\n cryp 00027fd0: 74 6f 5f 63 6f 72 65 5f 73 61 6c 73 61 32 30 28 to_core_salsa20( 00027fe0: 78 2c 7a 2c 6b 2c 73 69 67 6d 61 29 3b 5c 6e 20 x,z,k,sigma);\n 00027ff0: 20 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 for (i = 0; i 00028000: 20 3c 20 62 3b 20 69 2b 2b 29 20 63 5b 63 70 6f < b; i++) c[cpo 00028010: 73 2b 69 5d 20 3d 20 78 5b 69 5d 3b 5c 6e 20 20 s+i] = x[i];\n 00028020: 7d 5c 6e 20 20 72 65 74 75 72 6e 20 30 3b 5c 6e }\n return 0;\n 00028030: 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 }\n\nfunction cr 00028040: 79 70 74 6f 5f 73 74 72 65 61 6d 28 63 2c 63 70 ypto_stream(c,cp 00028050: 6f 73 2c 64 2c 6e 2c 6b 29 20 7b 5c 6e 20 20 76 os,d,n,k) {\n v 00028060: 61 72 20 73 20 3d 20 6e 65 77 20 55 69 6e 74 38 ar s = new Uint8 00028070: 41 72 72 61 79 28 33 32 29 3b 5c 6e 20 20 63 72 Array(32);\n cr 00028080: 79 70 74 6f 5f 63 6f 72 65 5f 68 73 61 6c 73 61 ypto_core_hsalsa 00028090: 32 30 28 73 2c 6e 2c 6b 2c 73 69 67 6d 61 29 3b 20(s,n,k,sigma); 000280a0: 5c 6e 20 20 76 61 72 20 73 6e 20 3d 20 6e 65 77 \n var sn = new 000280b0: 20 55 69 6e 74 38 41 72 72 61 79 28 38 29 3b 5c Uint8Array(8);\ 000280c0: 6e 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 n for (var i = 000280d0: 30 3b 20 69 20 3c 20 38 3b 20 69 2b 2b 29 20 73 0; i < 8; i++) s 000280e0: 6e 5b 69 5d 20 3d 20 6e 5b 69 2b 31 36 5d 3b 5c n[i] = n[i+16];\ 000280f0: 6e 20 20 72 65 74 75 72 6e 20 63 72 79 70 74 6f n return crypto 00028100: 5f 73 74 72 65 61 6d 5f 73 61 6c 73 61 32 30 28 _stream_salsa20( 00028110: 63 2c 63 70 6f 73 2c 64 2c 73 6e 2c 73 29 3b 5c c,cpos,d,sn,s);\ 00028120: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 n}\n\nfunction c 00028130: 72 79 70 74 6f 5f 73 74 72 65 61 6d 5f 78 6f 72 rypto_stream_xor 00028140: 28 63 2c 63 70 6f 73 2c 6d 2c 6d 70 6f 73 2c 64 (c,cpos,m,mpos,d 00028150: 2c 6e 2c 6b 29 20 7b 5c 6e 20 20 76 61 72 20 73 ,n,k) {\n var s 00028160: 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 = new Uint8Arra 00028170: 79 28 33 32 29 3b 5c 6e 20 20 63 72 79 70 74 6f y(32);\n crypto 00028180: 5f 63 6f 72 65 5f 68 73 61 6c 73 61 32 30 28 73 _core_hsalsa20(s 00028190: 2c 6e 2c 6b 2c 73 69 67 6d 61 29 3b 5c 6e 20 20 ,n,k,sigma);\n 000281a0: 76 61 72 20 73 6e 20 3d 20 6e 65 77 20 55 69 6e var sn = new Uin 000281b0: 74 38 41 72 72 61 79 28 38 29 3b 5c 6e 20 20 66 t8Array(8);\n f 000281c0: 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 or (var i = 0; i 000281d0: 20 3c 20 38 3b 20 69 2b 2b 29 20 73 6e 5b 69 5d < 8; i++) sn[i] 000281e0: 20 3d 20 6e 5b 69 2b 31 36 5d 3b 5c 6e 20 20 72 = n[i+16];\n r 000281f0: 65 74 75 72 6e 20 63 72 79 70 74 6f 5f 73 74 72 eturn crypto_str 00028200: 65 61 6d 5f 73 61 6c 73 61 32 30 5f 78 6f 72 28 eam_salsa20_xor( 00028210: 63 2c 63 70 6f 73 2c 6d 2c 6d 70 6f 73 2c 64 2c c,cpos,m,mpos,d, 00028220: 73 6e 2c 73 29 3b 5c 6e 7d 5c 6e 5c 6e 2f 2a 5c sn,s);\n}\n\n/*\ 00028230: 6e 2a 20 50 6f 72 74 20 6f 66 20 41 6e 64 72 65 n* Port of Andre 00028240: 77 20 4d 6f 6f 6e 27 73 20 50 6f 6c 79 31 33 30 w Moon's Poly130 00028250: 35 2d 64 6f 6e 6e 61 2d 31 36 2e 20 50 75 62 6c 5-donna-16. Publ 00028260: 69 63 20 64 6f 6d 61 69 6e 2e 5c 6e 2a 20 68 74 ic domain.\n* ht 00028270: 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d tps://github.com 00028280: 2f 66 6c 6f 6f 64 79 62 65 72 72 79 2f 70 6f 6c /floodyberry/pol 00028290: 79 31 33 30 35 2d 64 6f 6e 6e 61 5c 6e 2a 2f 5c y1305-donna\n*/\ 000282a0: 6e 5c 6e 76 61 72 20 70 6f 6c 79 31 33 30 35 20 n\nvar poly1305 000282b0: 3d 20 66 75 6e 63 74 69 6f 6e 28 6b 65 79 29 20 = function(key) 000282c0: 7b 5c 6e 20 20 74 68 69 73 2e 62 75 66 66 65 72 {\n this.buffer 000282d0: 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 = new Uint8Arra 000282e0: 79 28 31 36 29 3b 5c 6e 20 20 74 68 69 73 2e 72 y(16);\n this.r 000282f0: 20 3d 20 6e 65 77 20 55 69 6e 74 31 36 41 72 72 = new Uint16Arr 00028300: 61 79 28 31 30 29 3b 5c 6e 20 20 74 68 69 73 2e ay(10);\n this. 00028310: 68 20 3d 20 6e 65 77 20 55 69 6e 74 31 36 41 72 h = new Uint16Ar 00028320: 72 61 79 28 31 30 29 3b 5c 6e 20 20 74 68 69 73 ray(10);\n this 00028330: 2e 70 61 64 20 3d 20 6e 65 77 20 55 69 6e 74 31 .pad = new Uint1 00028340: 36 41 72 72 61 79 28 38 29 3b 5c 6e 20 20 74 68 6Array(8);\n th 00028350: 69 73 2e 6c 65 66 74 6f 76 65 72 20 3d 20 30 3b is.leftover = 0; 00028360: 5c 6e 20 20 74 68 69 73 2e 66 69 6e 20 3d 20 30 \n this.fin = 0 00028370: 3b 5c 6e 5c 6e 20 20 76 61 72 20 74 30 2c 20 74 ;\n\n var t0, t 00028380: 31 2c 20 74 32 2c 20 74 33 2c 20 74 34 2c 20 74 1, t2, t3, t4, t 00028390: 35 2c 20 74 36 2c 20 74 37 3b 5c 6e 5c 6e 20 20 5, t6, t7;\n\n 000283a0: 74 30 20 3d 20 6b 65 79 5b 20 30 5d 20 26 20 30 t0 = key[ 0] & 0 000283b0: 78 66 66 20 7c 20 28 6b 65 79 5b 20 31 5d 20 26 xff | (key[ 1] & 000283c0: 20 30 78 66 66 29 20 3c 3c 20 38 3b 20 74 68 69 0xff) << 8; thi 000283d0: 73 2e 72 5b 30 5d 20 3d 20 28 20 74 30 20 20 20 s.r[0] = ( t0 000283e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 000283f0: 20 20 29 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 ) & 0x1fff;\n 00028400: 20 74 31 20 3d 20 6b 65 79 5b 20 32 5d 20 26 20 t1 = key[ 2] & 00028410: 30 78 66 66 20 7c 20 28 6b 65 79 5b 20 33 5d 20 0xff | (key[ 3] 00028420: 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 20 74 68 & 0xff) << 8; th 00028430: 69 73 2e 72 5b 31 5d 20 3d 20 28 28 74 30 20 3e is.r[1] = ((t0 > 00028440: 3e 3e 20 31 33 29 20 7c 20 28 74 31 20 3c 3c 20 >> 13) | (t1 << 00028450: 20 33 29 29 20 26 20 30 78 31 66 66 66 3b 5c 6e 3)) & 0x1fff;\n 00028460: 20 20 74 32 20 3d 20 6b 65 79 5b 20 34 5d 20 26 t2 = key[ 4] & 00028470: 20 30 78 66 66 20 7c 20 28 6b 65 79 5b 20 35 5d 0xff | (key[ 5] 00028480: 20 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 20 74 & 0xff) << 8; t 00028490: 68 69 73 2e 72 5b 32 5d 20 3d 20 28 28 74 31 20 his.r[2] = ((t1 000284a0: 3e 3e 3e 20 31 30 29 20 7c 20 28 74 32 20 3c 3c >>> 10) | (t2 << 000284b0: 20 20 36 29 29 20 26 20 30 78 31 66 30 33 3b 5c 6)) & 0x1f03;\ 000284c0: 6e 20 20 74 33 20 3d 20 6b 65 79 5b 20 36 5d 20 n t3 = key[ 6] 000284d0: 26 20 30 78 66 66 20 7c 20 28 6b 65 79 5b 20 37 & 0xff | (key[ 7 000284e0: 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 20 ] & 0xff) << 8; 000284f0: 74 68 69 73 2e 72 5b 33 5d 20 3d 20 28 28 74 32 this.r[3] = ((t2 00028500: 20 3e 3e 3e 20 20 37 29 20 7c 20 28 74 33 20 3c >>> 7) | (t3 < 00028510: 3c 20 20 39 29 29 20 26 20 30 78 31 66 66 66 3b < 9)) & 0x1fff; 00028520: 5c 6e 20 20 74 34 20 3d 20 6b 65 79 5b 20 38 5d \n t4 = key[ 8] 00028530: 20 26 20 30 78 66 66 20 7c 20 28 6b 65 79 5b 20 & 0xff | (key[ 00028540: 39 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 9] & 0xff) << 8; 00028550: 20 74 68 69 73 2e 72 5b 34 5d 20 3d 20 28 28 74 this.r[4] = ((t 00028560: 33 20 3e 3e 3e 20 20 34 29 20 7c 20 28 74 34 20 3 >>> 4) | (t4 00028570: 3c 3c 20 31 32 29 29 20 26 20 30 78 30 30 66 66 << 12)) & 0x00ff 00028580: 3b 5c 6e 20 20 74 68 69 73 2e 72 5b 35 5d 20 3d ;\n this.r[5] = 00028590: 20 28 28 74 34 20 3e 3e 3e 20 20 31 29 29 20 26 ((t4 >>> 1)) & 000285a0: 20 30 78 31 66 66 65 3b 5c 6e 20 20 74 35 20 3d 0x1ffe;\n t5 = 000285b0: 20 6b 65 79 5b 31 30 5d 20 26 20 30 78 66 66 20 key[10] & 0xff 000285c0: 7c 20 28 6b 65 79 5b 31 31 5d 20 26 20 30 78 66 | (key[11] & 0xf 000285d0: 66 29 20 3c 3c 20 38 3b 20 74 68 69 73 2e 72 5b f) << 8; this.r[ 000285e0: 36 5d 20 3d 20 28 28 74 34 20 3e 3e 3e 20 31 34 6] = ((t4 >>> 14 000285f0: 29 20 7c 20 28 74 35 20 3c 3c 20 20 32 29 29 20 ) | (t5 << 2)) 00028600: 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 74 36 20 & 0x1fff;\n t6 00028610: 3d 20 6b 65 79 5b 31 32 5d 20 26 20 30 78 66 66 = key[12] & 0xff 00028620: 20 7c 20 28 6b 65 79 5b 31 33 5d 20 26 20 30 78 | (key[13] & 0x 00028630: 66 66 29 20 3c 3c 20 38 3b 20 74 68 69 73 2e 72 ff) << 8; this.r 00028640: 5b 37 5d 20 3d 20 28 28 74 35 20 3e 3e 3e 20 31 [7] = ((t5 >>> 1 00028650: 31 29 20 7c 20 28 74 36 20 3c 3c 20 20 35 29 29 1) | (t6 << 5)) 00028660: 20 26 20 30 78 31 66 38 31 3b 5c 6e 20 20 74 37 & 0x1f81;\n t7 00028670: 20 3d 20 6b 65 79 5b 31 34 5d 20 26 20 30 78 66 = key[14] & 0xf 00028680: 66 20 7c 20 28 6b 65 79 5b 31 35 5d 20 26 20 30 f | (key[15] & 0 00028690: 78 66 66 29 20 3c 3c 20 38 3b 20 74 68 69 73 2e xff) << 8; this. 000286a0: 72 5b 38 5d 20 3d 20 28 28 74 36 20 3e 3e 3e 20 r[8] = ((t6 >>> 000286b0: 20 38 29 20 7c 20 28 74 37 20 3c 3c 20 20 38 29 8) | (t7 << 8) 000286c0: 29 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 74 ) & 0x1fff;\n t 000286d0: 68 69 73 2e 72 5b 39 5d 20 3d 20 28 28 74 37 20 his.r[9] = ((t7 000286e0: 3e 3e 3e 20 20 35 29 29 20 26 20 30 78 30 30 37 >>> 5)) & 0x007 000286f0: 66 3b 5c 6e 5c 6e 20 20 74 68 69 73 2e 70 61 64 f;\n\n this.pad 00028700: 5b 30 5d 20 3d 20 6b 65 79 5b 31 36 5d 20 26 20 [0] = key[16] & 00028710: 30 78 66 66 20 7c 20 28 6b 65 79 5b 31 37 5d 20 0xff | (key[17] 00028720: 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 5c 6e 20 & 0xff) << 8;\n 00028730: 20 74 68 69 73 2e 70 61 64 5b 31 5d 20 3d 20 6b this.pad[1] = k 00028740: 65 79 5b 31 38 5d 20 26 20 30 78 66 66 20 7c 20 ey[18] & 0xff | 00028750: 28 6b 65 79 5b 31 39 5d 20 26 20 30 78 66 66 29 (key[19] & 0xff) 00028760: 20 3c 3c 20 38 3b 5c 6e 20 20 74 68 69 73 2e 70 << 8;\n this.p 00028770: 61 64 5b 32 5d 20 3d 20 6b 65 79 5b 32 30 5d 20 ad[2] = key[20] 00028780: 26 20 30 78 66 66 20 7c 20 28 6b 65 79 5b 32 31 & 0xff | (key[21 00028790: 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 5c ] & 0xff) << 8;\ 000287a0: 6e 20 20 74 68 69 73 2e 70 61 64 5b 33 5d 20 3d n this.pad[3] = 000287b0: 20 6b 65 79 5b 32 32 5d 20 26 20 30 78 66 66 20 key[22] & 0xff 000287c0: 7c 20 28 6b 65 79 5b 32 33 5d 20 26 20 30 78 66 | (key[23] & 0xf 000287d0: 66 29 20 3c 3c 20 38 3b 5c 6e 20 20 74 68 69 73 f) << 8;\n this 000287e0: 2e 70 61 64 5b 34 5d 20 3d 20 6b 65 79 5b 32 34 .pad[4] = key[24 000287f0: 5d 20 26 20 30 78 66 66 20 7c 20 28 6b 65 79 5b ] & 0xff | (key[ 00028800: 32 35 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 25] & 0xff) << 8 00028810: 3b 5c 6e 20 20 74 68 69 73 2e 70 61 64 5b 35 5d ;\n this.pad[5] 00028820: 20 3d 20 6b 65 79 5b 32 36 5d 20 26 20 30 78 66 = key[26] & 0xf 00028830: 66 20 7c 20 28 6b 65 79 5b 32 37 5d 20 26 20 30 f | (key[27] & 0 00028840: 78 66 66 29 20 3c 3c 20 38 3b 5c 6e 20 20 74 68 xff) << 8;\n th 00028850: 69 73 2e 70 61 64 5b 36 5d 20 3d 20 6b 65 79 5b is.pad[6] = key[ 00028860: 32 38 5d 20 26 20 30 78 66 66 20 7c 20 28 6b 65 28] & 0xff | (ke 00028870: 79 5b 32 39 5d 20 26 20 30 78 66 66 29 20 3c 3c y[29] & 0xff) << 00028880: 20 38 3b 5c 6e 20 20 74 68 69 73 2e 70 61 64 5b 8;\n this.pad[ 00028890: 37 5d 20 3d 20 6b 65 79 5b 33 30 5d 20 26 20 30 7] = key[30] & 0 000288a0: 78 66 66 20 7c 20 28 6b 65 79 5b 33 31 5d 20 26 xff | (key[31] & 000288b0: 20 30 78 66 66 29 20 3c 3c 20 38 3b 5c 6e 7d 3b 0xff) << 8;\n}; 000288c0: 5c 6e 5c 6e 70 6f 6c 79 31 33 30 35 2e 70 72 6f \n\npoly1305.pro 000288d0: 74 6f 74 79 70 65 2e 62 6c 6f 63 6b 73 20 3d 20 totype.blocks = 000288e0: 66 75 6e 63 74 69 6f 6e 28 6d 2c 20 6d 70 6f 73 function(m, mpos 000288f0: 2c 20 62 79 74 65 73 29 20 7b 5c 6e 20 20 76 61 , bytes) {\n va 00028900: 72 20 68 69 62 69 74 20 3d 20 74 68 69 73 2e 66 r hibit = this.f 00028910: 69 6e 20 3f 20 30 20 3a 20 28 31 20 3c 3c 20 31 in ? 0 : (1 << 1 00028920: 31 29 3b 5c 6e 20 20 76 61 72 20 74 30 2c 20 74 1);\n var t0, t 00028930: 31 2c 20 74 32 2c 20 74 33 2c 20 74 34 2c 20 74 1, t2, t3, t4, t 00028940: 35 2c 20 74 36 2c 20 74 37 2c 20 63 3b 5c 6e 20 5, t6, t7, c;\n 00028950: 20 76 61 72 20 64 30 2c 20 64 31 2c 20 64 32 2c var d0, d1, d2, 00028960: 20 64 33 2c 20 64 34 2c 20 64 35 2c 20 64 36 2c d3, d4, d5, d6, 00028970: 20 64 37 2c 20 64 38 2c 20 64 39 3b 5c 6e 5c 6e d7, d8, d9;\n\n 00028980: 20 20 76 61 72 20 68 30 20 3d 20 74 68 69 73 2e var h0 = this. 00028990: 68 5b 30 5d 2c 5c 6e 20 20 20 20 20 20 68 31 20 h[0],\n h1 000289a0: 3d 20 74 68 69 73 2e 68 5b 31 5d 2c 5c 6e 20 20 = this.h[1],\n 000289b0: 20 20 20 20 68 32 20 3d 20 74 68 69 73 2e 68 5b h2 = this.h[ 000289c0: 32 5d 2c 5c 6e 20 20 20 20 20 20 68 33 20 3d 20 2],\n h3 = 000289d0: 74 68 69 73 2e 68 5b 33 5d 2c 5c 6e 20 20 20 20 this.h[3],\n 000289e0: 20 20 68 34 20 3d 20 74 68 69 73 2e 68 5b 34 5d h4 = this.h[4] 000289f0: 2c 5c 6e 20 20 20 20 20 20 68 35 20 3d 20 74 68 ,\n h5 = th 00028a00: 69 73 2e 68 5b 35 5d 2c 5c 6e 20 20 20 20 20 20 is.h[5],\n 00028a10: 68 36 20 3d 20 74 68 69 73 2e 68 5b 36 5d 2c 5c h6 = this.h[6],\ 00028a20: 6e 20 20 20 20 20 20 68 37 20 3d 20 74 68 69 73 n h7 = this 00028a30: 2e 68 5b 37 5d 2c 5c 6e 20 20 20 20 20 20 68 38 .h[7],\n h8 00028a40: 20 3d 20 74 68 69 73 2e 68 5b 38 5d 2c 5c 6e 20 = this.h[8],\n 00028a50: 20 20 20 20 20 68 39 20 3d 20 74 68 69 73 2e 68 h9 = this.h 00028a60: 5b 39 5d 3b 5c 6e 5c 6e 20 20 76 61 72 20 72 30 [9];\n\n var r0 00028a70: 20 3d 20 74 68 69 73 2e 72 5b 30 5d 2c 5c 6e 20 = this.r[0],\n 00028a80: 20 20 20 20 20 72 31 20 3d 20 74 68 69 73 2e 72 r1 = this.r 00028a90: 5b 31 5d 2c 5c 6e 20 20 20 20 20 20 72 32 20 3d [1],\n r2 = 00028aa0: 20 74 68 69 73 2e 72 5b 32 5d 2c 5c 6e 20 20 20 this.r[2],\n 00028ab0: 20 20 20 72 33 20 3d 20 74 68 69 73 2e 72 5b 33 r3 = this.r[3 00028ac0: 5d 2c 5c 6e 20 20 20 20 20 20 72 34 20 3d 20 74 ],\n r4 = t 00028ad0: 68 69 73 2e 72 5b 34 5d 2c 5c 6e 20 20 20 20 20 his.r[4],\n 00028ae0: 20 72 35 20 3d 20 74 68 69 73 2e 72 5b 35 5d 2c r5 = this.r[5], 00028af0: 5c 6e 20 20 20 20 20 20 72 36 20 3d 20 74 68 69 \n r6 = thi 00028b00: 73 2e 72 5b 36 5d 2c 5c 6e 20 20 20 20 20 20 72 s.r[6],\n r 00028b10: 37 20 3d 20 74 68 69 73 2e 72 5b 37 5d 2c 5c 6e 7 = this.r[7],\n 00028b20: 20 20 20 20 20 20 72 38 20 3d 20 74 68 69 73 2e r8 = this. 00028b30: 72 5b 38 5d 2c 5c 6e 20 20 20 20 20 20 72 39 20 r[8],\n r9 00028b40: 3d 20 74 68 69 73 2e 72 5b 39 5d 3b 5c 6e 5c 6e = this.r[9];\n\n 00028b50: 20 20 77 68 69 6c 65 20 28 62 79 74 65 73 20 3e while (bytes > 00028b60: 3d 20 31 36 29 20 7b 5c 6e 20 20 20 20 74 30 20 = 16) {\n t0 00028b70: 3d 20 6d 5b 6d 70 6f 73 2b 20 30 5d 20 26 20 30 = m[mpos+ 0] & 0 00028b80: 78 66 66 20 7c 20 28 6d 5b 6d 70 6f 73 2b 20 31 xff | (m[mpos+ 1 00028b90: 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 20 ] & 0xff) << 8; 00028ba0: 68 30 20 2b 3d 20 28 20 74 30 20 20 20 20 20 20 h0 += ( t0 00028bb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 29 ) 00028bc0: 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 & 0x1fff;\n 00028bd0: 74 31 20 3d 20 6d 5b 6d 70 6f 73 2b 20 32 5d 20 t1 = m[mpos+ 2] 00028be0: 26 20 30 78 66 66 20 7c 20 28 6d 5b 6d 70 6f 73 & 0xff | (m[mpos 00028bf0: 2b 20 33 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 + 3] & 0xff) << 00028c00: 38 3b 20 68 31 20 2b 3d 20 28 28 74 30 20 3e 3e 8; h1 += ((t0 >> 00028c10: 3e 20 31 33 29 20 7c 20 28 74 31 20 3c 3c 20 20 > 13) | (t1 << 00028c20: 33 29 29 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 3)) & 0x1fff;\n 00028c30: 20 20 20 74 32 20 3d 20 6d 5b 6d 70 6f 73 2b 20 t2 = m[mpos+ 00028c40: 34 5d 20 26 20 30 78 66 66 20 7c 20 28 6d 5b 6d 4] & 0xff | (m[m 00028c50: 70 6f 73 2b 20 35 5d 20 26 20 30 78 66 66 29 20 pos+ 5] & 0xff) 00028c60: 3c 3c 20 38 3b 20 68 32 20 2b 3d 20 28 28 74 31 << 8; h2 += ((t1 00028c70: 20 3e 3e 3e 20 31 30 29 20 7c 20 28 74 32 20 3c >>> 10) | (t2 < 00028c80: 3c 20 20 36 29 29 20 26 20 30 78 31 66 66 66 3b < 6)) & 0x1fff; 00028c90: 5c 6e 20 20 20 20 74 33 20 3d 20 6d 5b 6d 70 6f \n t3 = m[mpo 00028ca0: 73 2b 20 36 5d 20 26 20 30 78 66 66 20 7c 20 28 s+ 6] & 0xff | ( 00028cb0: 6d 5b 6d 70 6f 73 2b 20 37 5d 20 26 20 30 78 66 m[mpos+ 7] & 0xf 00028cc0: 66 29 20 3c 3c 20 38 3b 20 68 33 20 2b 3d 20 28 f) << 8; h3 += ( 00028cd0: 28 74 32 20 3e 3e 3e 20 20 37 29 20 7c 20 28 74 (t2 >>> 7) | (t 00028ce0: 33 20 3c 3c 20 20 39 29 29 20 26 20 30 78 31 66 3 << 9)) & 0x1f 00028cf0: 66 66 3b 5c 6e 20 20 20 20 74 34 20 3d 20 6d 5b ff;\n t4 = m[ 00028d00: 6d 70 6f 73 2b 20 38 5d 20 26 20 30 78 66 66 20 mpos+ 8] & 0xff 00028d10: 7c 20 28 6d 5b 6d 70 6f 73 2b 20 39 5d 20 26 20 | (m[mpos+ 9] & 00028d20: 30 78 66 66 29 20 3c 3c 20 38 3b 20 68 34 20 2b 0xff) << 8; h4 + 00028d30: 3d 20 28 28 74 33 20 3e 3e 3e 20 20 34 29 20 7c = ((t3 >>> 4) | 00028d40: 20 28 74 34 20 3c 3c 20 31 32 29 29 20 26 20 30 (t4 << 12)) & 0 00028d50: 78 31 66 66 66 3b 5c 6e 20 20 20 20 68 35 20 2b x1fff;\n h5 + 00028d60: 3d 20 28 28 74 34 20 3e 3e 3e 20 20 31 29 29 20 = ((t4 >>> 1)) 00028d70: 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 74 & 0x1fff;\n t 00028d80: 35 20 3d 20 6d 5b 6d 70 6f 73 2b 31 30 5d 20 26 5 = m[mpos+10] & 00028d90: 20 30 78 66 66 20 7c 20 28 6d 5b 6d 70 6f 73 2b 0xff | (m[mpos+ 00028da0: 31 31 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 11] & 0xff) << 8 00028db0: 3b 20 68 36 20 2b 3d 20 28 28 74 34 20 3e 3e 3e ; h6 += ((t4 >>> 00028dc0: 20 31 34 29 20 7c 20 28 74 35 20 3c 3c 20 20 32 14) | (t5 << 2 00028dd0: 29 29 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 )) & 0x1fff;\n 00028de0: 20 20 74 36 20 3d 20 6d 5b 6d 70 6f 73 2b 31 32 t6 = m[mpos+12 00028df0: 5d 20 26 20 30 78 66 66 20 7c 20 28 6d 5b 6d 70 ] & 0xff | (m[mp 00028e00: 6f 73 2b 31 33 5d 20 26 20 30 78 66 66 29 20 3c os+13] & 0xff) < 00028e10: 3c 20 38 3b 20 68 37 20 2b 3d 20 28 28 74 35 20 < 8; h7 += ((t5 00028e20: 3e 3e 3e 20 31 31 29 20 7c 20 28 74 36 20 3c 3c >>> 11) | (t6 << 00028e30: 20 20 35 29 29 20 26 20 30 78 31 66 66 66 3b 5c 5)) & 0x1fff;\ 00028e40: 6e 20 20 20 20 74 37 20 3d 20 6d 5b 6d 70 6f 73 n t7 = m[mpos 00028e50: 2b 31 34 5d 20 26 20 30 78 66 66 20 7c 20 28 6d +14] & 0xff | (m 00028e60: 5b 6d 70 6f 73 2b 31 35 5d 20 26 20 30 78 66 66 [mpos+15] & 0xff 00028e70: 29 20 3c 3c 20 38 3b 20 68 38 20 2b 3d 20 28 28 ) << 8; h8 += (( 00028e80: 74 36 20 3e 3e 3e 20 20 38 29 20 7c 20 28 74 37 t6 >>> 8) | (t7 00028e90: 20 3c 3c 20 20 38 29 29 20 26 20 30 78 31 66 66 << 8)) & 0x1ff 00028ea0: 66 3b 5c 6e 20 20 20 20 68 39 20 2b 3d 20 28 28 f;\n h9 += (( 00028eb0: 74 37 20 3e 3e 3e 20 35 29 29 20 7c 20 68 69 62 t7 >>> 5)) | hib 00028ec0: 69 74 3b 5c 6e 5c 6e 20 20 20 20 63 20 3d 20 30 it;\n\n c = 0 00028ed0: 3b 5c 6e 5c 6e 20 20 20 20 64 30 20 3d 20 63 3b ;\n\n d0 = c; 00028ee0: 5c 6e 20 20 20 20 64 30 20 2b 3d 20 68 30 20 2a \n d0 += h0 * 00028ef0: 20 72 30 3b 5c 6e 20 20 20 20 64 30 20 2b 3d 20 r0;\n d0 += 00028f00: 68 31 20 2a 20 28 35 20 2a 20 72 39 29 3b 5c 6e h1 * (5 * r9);\n 00028f10: 20 20 20 20 64 30 20 2b 3d 20 68 32 20 2a 20 28 d0 += h2 * ( 00028f20: 35 20 2a 20 72 38 29 3b 5c 6e 20 20 20 20 64 30 5 * r8);\n d0 00028f30: 20 2b 3d 20 68 33 20 2a 20 28 35 20 2a 20 72 37 += h3 * (5 * r7 00028f40: 29 3b 5c 6e 20 20 20 20 64 30 20 2b 3d 20 68 34 );\n d0 += h4 00028f50: 20 2a 20 28 35 20 2a 20 72 36 29 3b 5c 6e 20 20 * (5 * r6);\n 00028f60: 20 20 63 20 3d 20 28 64 30 20 3e 3e 3e 20 31 33 c = (d0 >>> 13 00028f70: 29 3b 20 64 30 20 26 3d 20 30 78 31 66 66 66 3b ); d0 &= 0x1fff; 00028f80: 5c 6e 20 20 20 20 64 30 20 2b 3d 20 68 35 20 2a \n d0 += h5 * 00028f90: 20 28 35 20 2a 20 72 35 29 3b 5c 6e 20 20 20 20 (5 * r5);\n 00028fa0: 64 30 20 2b 3d 20 68 36 20 2a 20 28 35 20 2a 20 d0 += h6 * (5 * 00028fb0: 72 34 29 3b 5c 6e 20 20 20 20 64 30 20 2b 3d 20 r4);\n d0 += 00028fc0: 68 37 20 2a 20 28 35 20 2a 20 72 33 29 3b 5c 6e h7 * (5 * r3);\n 00028fd0: 20 20 20 20 64 30 20 2b 3d 20 68 38 20 2a 20 28 d0 += h8 * ( 00028fe0: 35 20 2a 20 72 32 29 3b 5c 6e 20 20 20 20 64 30 5 * r2);\n d0 00028ff0: 20 2b 3d 20 68 39 20 2a 20 28 35 20 2a 20 72 31 += h9 * (5 * r1 00029000: 29 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 28 64 30 );\n c += (d0 00029010: 20 3e 3e 3e 20 31 33 29 3b 20 64 30 20 26 3d 20 >>> 13); d0 &= 00029020: 30 78 31 66 66 66 3b 5c 6e 5c 6e 20 20 20 20 64 0x1fff;\n\n d 00029030: 31 20 3d 20 63 3b 5c 6e 20 20 20 20 64 31 20 2b 1 = c;\n d1 + 00029040: 3d 20 68 30 20 2a 20 72 31 3b 5c 6e 20 20 20 20 = h0 * r1;\n 00029050: 64 31 20 2b 3d 20 68 31 20 2a 20 72 30 3b 5c 6e d1 += h1 * r0;\n 00029060: 20 20 20 20 64 31 20 2b 3d 20 68 32 20 2a 20 28 d1 += h2 * ( 00029070: 35 20 2a 20 72 39 29 3b 5c 6e 20 20 20 20 64 31 5 * r9);\n d1 00029080: 20 2b 3d 20 68 33 20 2a 20 28 35 20 2a 20 72 38 += h3 * (5 * r8 00029090: 29 3b 5c 6e 20 20 20 20 64 31 20 2b 3d 20 68 34 );\n d1 += h4 000290a0: 20 2a 20 28 35 20 2a 20 72 37 29 3b 5c 6e 20 20 * (5 * r7);\n 000290b0: 20 20 63 20 3d 20 28 64 31 20 3e 3e 3e 20 31 33 c = (d1 >>> 13 000290c0: 29 3b 20 64 31 20 26 3d 20 30 78 31 66 66 66 3b ); d1 &= 0x1fff; 000290d0: 5c 6e 20 20 20 20 64 31 20 2b 3d 20 68 35 20 2a \n d1 += h5 * 000290e0: 20 28 35 20 2a 20 72 36 29 3b 5c 6e 20 20 20 20 (5 * r6);\n 000290f0: 64 31 20 2b 3d 20 68 36 20 2a 20 28 35 20 2a 20 d1 += h6 * (5 * 00029100: 72 35 29 3b 5c 6e 20 20 20 20 64 31 20 2b 3d 20 r5);\n d1 += 00029110: 68 37 20 2a 20 28 35 20 2a 20 72 34 29 3b 5c 6e h7 * (5 * r4);\n 00029120: 20 20 20 20 64 31 20 2b 3d 20 68 38 20 2a 20 28 d1 += h8 * ( 00029130: 35 20 2a 20 72 33 29 3b 5c 6e 20 20 20 20 64 31 5 * r3);\n d1 00029140: 20 2b 3d 20 68 39 20 2a 20 28 35 20 2a 20 72 32 += h9 * (5 * r2 00029150: 29 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 28 64 31 );\n c += (d1 00029160: 20 3e 3e 3e 20 31 33 29 3b 20 64 31 20 26 3d 20 >>> 13); d1 &= 00029170: 30 78 31 66 66 66 3b 5c 6e 5c 6e 20 20 20 20 64 0x1fff;\n\n d 00029180: 32 20 3d 20 63 3b 5c 6e 20 20 20 20 64 32 20 2b 2 = c;\n d2 + 00029190: 3d 20 68 30 20 2a 20 72 32 3b 5c 6e 20 20 20 20 = h0 * r2;\n 000291a0: 64 32 20 2b 3d 20 68 31 20 2a 20 72 31 3b 5c 6e d2 += h1 * r1;\n 000291b0: 20 20 20 20 64 32 20 2b 3d 20 68 32 20 2a 20 72 d2 += h2 * r 000291c0: 30 3b 5c 6e 20 20 20 20 64 32 20 2b 3d 20 68 33 0;\n d2 += h3 000291d0: 20 2a 20 28 35 20 2a 20 72 39 29 3b 5c 6e 20 20 * (5 * r9);\n 000291e0: 20 20 64 32 20 2b 3d 20 68 34 20 2a 20 28 35 20 d2 += h4 * (5 000291f0: 2a 20 72 38 29 3b 5c 6e 20 20 20 20 63 20 3d 20 * r8);\n c = 00029200: 28 64 32 20 3e 3e 3e 20 31 33 29 3b 20 64 32 20 (d2 >>> 13); d2 00029210: 26 3d 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 &= 0x1fff;\n 00029220: 64 32 20 2b 3d 20 68 35 20 2a 20 28 35 20 2a 20 d2 += h5 * (5 * 00029230: 72 37 29 3b 5c 6e 20 20 20 20 64 32 20 2b 3d 20 r7);\n d2 += 00029240: 68 36 20 2a 20 28 35 20 2a 20 72 36 29 3b 5c 6e h6 * (5 * r6);\n 00029250: 20 20 20 20 64 32 20 2b 3d 20 68 37 20 2a 20 28 d2 += h7 * ( 00029260: 35 20 2a 20 72 35 29 3b 5c 6e 20 20 20 20 64 32 5 * r5);\n d2 00029270: 20 2b 3d 20 68 38 20 2a 20 28 35 20 2a 20 72 34 += h8 * (5 * r4 00029280: 29 3b 5c 6e 20 20 20 20 64 32 20 2b 3d 20 68 39 );\n d2 += h9 00029290: 20 2a 20 28 35 20 2a 20 72 33 29 3b 5c 6e 20 20 * (5 * r3);\n 000292a0: 20 20 63 20 2b 3d 20 28 64 32 20 3e 3e 3e 20 31 c += (d2 >>> 1 000292b0: 33 29 3b 20 64 32 20 26 3d 20 30 78 31 66 66 66 3); d2 &= 0x1fff 000292c0: 3b 5c 6e 5c 6e 20 20 20 20 64 33 20 3d 20 63 3b ;\n\n d3 = c; 000292d0: 5c 6e 20 20 20 20 64 33 20 2b 3d 20 68 30 20 2a \n d3 += h0 * 000292e0: 20 72 33 3b 5c 6e 20 20 20 20 64 33 20 2b 3d 20 r3;\n d3 += 000292f0: 68 31 20 2a 20 72 32 3b 5c 6e 20 20 20 20 64 33 h1 * r2;\n d3 00029300: 20 2b 3d 20 68 32 20 2a 20 72 31 3b 5c 6e 20 20 += h2 * r1;\n 00029310: 20 20 64 33 20 2b 3d 20 68 33 20 2a 20 72 30 3b d3 += h3 * r0; 00029320: 5c 6e 20 20 20 20 64 33 20 2b 3d 20 68 34 20 2a \n d3 += h4 * 00029330: 20 28 35 20 2a 20 72 39 29 3b 5c 6e 20 20 20 20 (5 * r9);\n 00029340: 63 20 3d 20 28 64 33 20 3e 3e 3e 20 31 33 29 3b c = (d3 >>> 13); 00029350: 20 64 33 20 26 3d 20 30 78 31 66 66 66 3b 5c 6e d3 &= 0x1fff;\n 00029360: 20 20 20 20 64 33 20 2b 3d 20 68 35 20 2a 20 28 d3 += h5 * ( 00029370: 35 20 2a 20 72 38 29 3b 5c 6e 20 20 20 20 64 33 5 * r8);\n d3 00029380: 20 2b 3d 20 68 36 20 2a 20 28 35 20 2a 20 72 37 += h6 * (5 * r7 00029390: 29 3b 5c 6e 20 20 20 20 64 33 20 2b 3d 20 68 37 );\n d3 += h7 000293a0: 20 2a 20 28 35 20 2a 20 72 36 29 3b 5c 6e 20 20 * (5 * r6);\n 000293b0: 20 20 64 33 20 2b 3d 20 68 38 20 2a 20 28 35 20 d3 += h8 * (5 000293c0: 2a 20 72 35 29 3b 5c 6e 20 20 20 20 64 33 20 2b * r5);\n d3 + 000293d0: 3d 20 68 39 20 2a 20 28 35 20 2a 20 72 34 29 3b = h9 * (5 * r4); 000293e0: 5c 6e 20 20 20 20 63 20 2b 3d 20 28 64 33 20 3e \n c += (d3 > 000293f0: 3e 3e 20 31 33 29 3b 20 64 33 20 26 3d 20 30 78 >> 13); d3 &= 0x 00029400: 31 66 66 66 3b 5c 6e 5c 6e 20 20 20 20 64 34 20 1fff;\n\n d4 00029410: 3d 20 63 3b 5c 6e 20 20 20 20 64 34 20 2b 3d 20 = c;\n d4 += 00029420: 68 30 20 2a 20 72 34 3b 5c 6e 20 20 20 20 64 34 h0 * r4;\n d4 00029430: 20 2b 3d 20 68 31 20 2a 20 72 33 3b 5c 6e 20 20 += h1 * r3;\n 00029440: 20 20 64 34 20 2b 3d 20 68 32 20 2a 20 72 32 3b d4 += h2 * r2; 00029450: 5c 6e 20 20 20 20 64 34 20 2b 3d 20 68 33 20 2a \n d4 += h3 * 00029460: 20 72 31 3b 5c 6e 20 20 20 20 64 34 20 2b 3d 20 r1;\n d4 += 00029470: 68 34 20 2a 20 72 30 3b 5c 6e 20 20 20 20 63 20 h4 * r0;\n c 00029480: 3d 20 28 64 34 20 3e 3e 3e 20 31 33 29 3b 20 64 = (d4 >>> 13); d 00029490: 34 20 26 3d 20 30 78 31 66 66 66 3b 5c 6e 20 20 4 &= 0x1fff;\n 000294a0: 20 20 64 34 20 2b 3d 20 68 35 20 2a 20 28 35 20 d4 += h5 * (5 000294b0: 2a 20 72 39 29 3b 5c 6e 20 20 20 20 64 34 20 2b * r9);\n d4 + 000294c0: 3d 20 68 36 20 2a 20 28 35 20 2a 20 72 38 29 3b = h6 * (5 * r8); 000294d0: 5c 6e 20 20 20 20 64 34 20 2b 3d 20 68 37 20 2a \n d4 += h7 * 000294e0: 20 28 35 20 2a 20 72 37 29 3b 5c 6e 20 20 20 20 (5 * r7);\n 000294f0: 64 34 20 2b 3d 20 68 38 20 2a 20 28 35 20 2a 20 d4 += h8 * (5 * 00029500: 72 36 29 3b 5c 6e 20 20 20 20 64 34 20 2b 3d 20 r6);\n d4 += 00029510: 68 39 20 2a 20 28 35 20 2a 20 72 35 29 3b 5c 6e h9 * (5 * r5);\n 00029520: 20 20 20 20 63 20 2b 3d 20 28 64 34 20 3e 3e 3e c += (d4 >>> 00029530: 20 31 33 29 3b 20 64 34 20 26 3d 20 30 78 31 66 13); d4 &= 0x1f 00029540: 66 66 3b 5c 6e 5c 6e 20 20 20 20 64 35 20 3d 20 ff;\n\n d5 = 00029550: 63 3b 5c 6e 20 20 20 20 64 35 20 2b 3d 20 68 30 c;\n d5 += h0 00029560: 20 2a 20 72 35 3b 5c 6e 20 20 20 20 64 35 20 2b * r5;\n d5 + 00029570: 3d 20 68 31 20 2a 20 72 34 3b 5c 6e 20 20 20 20 = h1 * r4;\n 00029580: 64 35 20 2b 3d 20 68 32 20 2a 20 72 33 3b 5c 6e d5 += h2 * r3;\n 00029590: 20 20 20 20 64 35 20 2b 3d 20 68 33 20 2a 20 72 d5 += h3 * r 000295a0: 32 3b 5c 6e 20 20 20 20 64 35 20 2b 3d 20 68 34 2;\n d5 += h4 000295b0: 20 2a 20 72 31 3b 5c 6e 20 20 20 20 63 20 3d 20 * r1;\n c = 000295c0: 28 64 35 20 3e 3e 3e 20 31 33 29 3b 20 64 35 20 (d5 >>> 13); d5 000295d0: 26 3d 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 &= 0x1fff;\n 000295e0: 64 35 20 2b 3d 20 68 35 20 2a 20 72 30 3b 5c 6e d5 += h5 * r0;\n 000295f0: 20 20 20 20 64 35 20 2b 3d 20 68 36 20 2a 20 28 d5 += h6 * ( 00029600: 35 20 2a 20 72 39 29 3b 5c 6e 20 20 20 20 64 35 5 * r9);\n d5 00029610: 20 2b 3d 20 68 37 20 2a 20 28 35 20 2a 20 72 38 += h7 * (5 * r8 00029620: 29 3b 5c 6e 20 20 20 20 64 35 20 2b 3d 20 68 38 );\n d5 += h8 00029630: 20 2a 20 28 35 20 2a 20 72 37 29 3b 5c 6e 20 20 * (5 * r7);\n 00029640: 20 20 64 35 20 2b 3d 20 68 39 20 2a 20 28 35 20 d5 += h9 * (5 00029650: 2a 20 72 36 29 3b 5c 6e 20 20 20 20 63 20 2b 3d * r6);\n c += 00029660: 20 28 64 35 20 3e 3e 3e 20 31 33 29 3b 20 64 35 (d5 >>> 13); d5 00029670: 20 26 3d 20 30 78 31 66 66 66 3b 5c 6e 5c 6e 20 &= 0x1fff;\n\n 00029680: 20 20 20 64 36 20 3d 20 63 3b 5c 6e 20 20 20 20 d6 = c;\n 00029690: 64 36 20 2b 3d 20 68 30 20 2a 20 72 36 3b 5c 6e d6 += h0 * r6;\n 000296a0: 20 20 20 20 64 36 20 2b 3d 20 68 31 20 2a 20 72 d6 += h1 * r 000296b0: 35 3b 5c 6e 20 20 20 20 64 36 20 2b 3d 20 68 32 5;\n d6 += h2 000296c0: 20 2a 20 72 34 3b 5c 6e 20 20 20 20 64 36 20 2b * r4;\n d6 + 000296d0: 3d 20 68 33 20 2a 20 72 33 3b 5c 6e 20 20 20 20 = h3 * r3;\n 000296e0: 64 36 20 2b 3d 20 68 34 20 2a 20 72 32 3b 5c 6e d6 += h4 * r2;\n 000296f0: 20 20 20 20 63 20 3d 20 28 64 36 20 3e 3e 3e 20 c = (d6 >>> 00029700: 31 33 29 3b 20 64 36 20 26 3d 20 30 78 31 66 66 13); d6 &= 0x1ff 00029710: 66 3b 5c 6e 20 20 20 20 64 36 20 2b 3d 20 68 35 f;\n d6 += h5 00029720: 20 2a 20 72 31 3b 5c 6e 20 20 20 20 64 36 20 2b * r1;\n d6 + 00029730: 3d 20 68 36 20 2a 20 72 30 3b 5c 6e 20 20 20 20 = h6 * r0;\n 00029740: 64 36 20 2b 3d 20 68 37 20 2a 20 28 35 20 2a 20 d6 += h7 * (5 * 00029750: 72 39 29 3b 5c 6e 20 20 20 20 64 36 20 2b 3d 20 r9);\n d6 += 00029760: 68 38 20 2a 20 28 35 20 2a 20 72 38 29 3b 5c 6e h8 * (5 * r8);\n 00029770: 20 20 20 20 64 36 20 2b 3d 20 68 39 20 2a 20 28 d6 += h9 * ( 00029780: 35 20 2a 20 72 37 29 3b 5c 6e 20 20 20 20 63 20 5 * r7);\n c 00029790: 2b 3d 20 28 64 36 20 3e 3e 3e 20 31 33 29 3b 20 += (d6 >>> 13); 000297a0: 64 36 20 26 3d 20 30 78 31 66 66 66 3b 5c 6e 5c d6 &= 0x1fff;\n\ 000297b0: 6e 20 20 20 20 64 37 20 3d 20 63 3b 5c 6e 20 20 n d7 = c;\n 000297c0: 20 20 64 37 20 2b 3d 20 68 30 20 2a 20 72 37 3b d7 += h0 * r7; 000297d0: 5c 6e 20 20 20 20 64 37 20 2b 3d 20 68 31 20 2a \n d7 += h1 * 000297e0: 20 72 36 3b 5c 6e 20 20 20 20 64 37 20 2b 3d 20 r6;\n d7 += 000297f0: 68 32 20 2a 20 72 35 3b 5c 6e 20 20 20 20 64 37 h2 * r5;\n d7 00029800: 20 2b 3d 20 68 33 20 2a 20 72 34 3b 5c 6e 20 20 += h3 * r4;\n 00029810: 20 20 64 37 20 2b 3d 20 68 34 20 2a 20 72 33 3b d7 += h4 * r3; 00029820: 5c 6e 20 20 20 20 63 20 3d 20 28 64 37 20 3e 3e \n c = (d7 >> 00029830: 3e 20 31 33 29 3b 20 64 37 20 26 3d 20 30 78 31 > 13); d7 &= 0x1 00029840: 66 66 66 3b 5c 6e 20 20 20 20 64 37 20 2b 3d 20 fff;\n d7 += 00029850: 68 35 20 2a 20 72 32 3b 5c 6e 20 20 20 20 64 37 h5 * r2;\n d7 00029860: 20 2b 3d 20 68 36 20 2a 20 72 31 3b 5c 6e 20 20 += h6 * r1;\n 00029870: 20 20 64 37 20 2b 3d 20 68 37 20 2a 20 72 30 3b d7 += h7 * r0; 00029880: 5c 6e 20 20 20 20 64 37 20 2b 3d 20 68 38 20 2a \n d7 += h8 * 00029890: 20 28 35 20 2a 20 72 39 29 3b 5c 6e 20 20 20 20 (5 * r9);\n 000298a0: 64 37 20 2b 3d 20 68 39 20 2a 20 28 35 20 2a 20 d7 += h9 * (5 * 000298b0: 72 38 29 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 28 r8);\n c += ( 000298c0: 64 37 20 3e 3e 3e 20 31 33 29 3b 20 64 37 20 26 d7 >>> 13); d7 & 000298d0: 3d 20 30 78 31 66 66 66 3b 5c 6e 5c 6e 20 20 20 = 0x1fff;\n\n 000298e0: 20 64 38 20 3d 20 63 3b 5c 6e 20 20 20 20 64 38 d8 = c;\n d8 000298f0: 20 2b 3d 20 68 30 20 2a 20 72 38 3b 5c 6e 20 20 += h0 * r8;\n 00029900: 20 20 64 38 20 2b 3d 20 68 31 20 2a 20 72 37 3b d8 += h1 * r7; 00029910: 5c 6e 20 20 20 20 64 38 20 2b 3d 20 68 32 20 2a \n d8 += h2 * 00029920: 20 72 36 3b 5c 6e 20 20 20 20 64 38 20 2b 3d 20 r6;\n d8 += 00029930: 68 33 20 2a 20 72 35 3b 5c 6e 20 20 20 20 64 38 h3 * r5;\n d8 00029940: 20 2b 3d 20 68 34 20 2a 20 72 34 3b 5c 6e 20 20 += h4 * r4;\n 00029950: 20 20 63 20 3d 20 28 64 38 20 3e 3e 3e 20 31 33 c = (d8 >>> 13 00029960: 29 3b 20 64 38 20 26 3d 20 30 78 31 66 66 66 3b ); d8 &= 0x1fff; 00029970: 5c 6e 20 20 20 20 64 38 20 2b 3d 20 68 35 20 2a \n d8 += h5 * 00029980: 20 72 33 3b 5c 6e 20 20 20 20 64 38 20 2b 3d 20 r3;\n d8 += 00029990: 68 36 20 2a 20 72 32 3b 5c 6e 20 20 20 20 64 38 h6 * r2;\n d8 000299a0: 20 2b 3d 20 68 37 20 2a 20 72 31 3b 5c 6e 20 20 += h7 * r1;\n 000299b0: 20 20 64 38 20 2b 3d 20 68 38 20 2a 20 72 30 3b d8 += h8 * r0; 000299c0: 5c 6e 20 20 20 20 64 38 20 2b 3d 20 68 39 20 2a \n d8 += h9 * 000299d0: 20 28 35 20 2a 20 72 39 29 3b 5c 6e 20 20 20 20 (5 * r9);\n 000299e0: 63 20 2b 3d 20 28 64 38 20 3e 3e 3e 20 31 33 29 c += (d8 >>> 13) 000299f0: 3b 20 64 38 20 26 3d 20 30 78 31 66 66 66 3b 5c ; d8 &= 0x1fff;\ 00029a00: 6e 5c 6e 20 20 20 20 64 39 20 3d 20 63 3b 5c 6e n\n d9 = c;\n 00029a10: 20 20 20 20 64 39 20 2b 3d 20 68 30 20 2a 20 72 d9 += h0 * r 00029a20: 39 3b 5c 6e 20 20 20 20 64 39 20 2b 3d 20 68 31 9;\n d9 += h1 00029a30: 20 2a 20 72 38 3b 5c 6e 20 20 20 20 64 39 20 2b * r8;\n d9 + 00029a40: 3d 20 68 32 20 2a 20 72 37 3b 5c 6e 20 20 20 20 = h2 * r7;\n 00029a50: 64 39 20 2b 3d 20 68 33 20 2a 20 72 36 3b 5c 6e d9 += h3 * r6;\n 00029a60: 20 20 20 20 64 39 20 2b 3d 20 68 34 20 2a 20 72 d9 += h4 * r 00029a70: 35 3b 5c 6e 20 20 20 20 63 20 3d 20 28 64 39 20 5;\n c = (d9 00029a80: 3e 3e 3e 20 31 33 29 3b 20 64 39 20 26 3d 20 30 >>> 13); d9 &= 0 00029a90: 78 31 66 66 66 3b 5c 6e 20 20 20 20 64 39 20 2b x1fff;\n d9 + 00029aa0: 3d 20 68 35 20 2a 20 72 34 3b 5c 6e 20 20 20 20 = h5 * r4;\n 00029ab0: 64 39 20 2b 3d 20 68 36 20 2a 20 72 33 3b 5c 6e d9 += h6 * r3;\n 00029ac0: 20 20 20 20 64 39 20 2b 3d 20 68 37 20 2a 20 72 d9 += h7 * r 00029ad0: 32 3b 5c 6e 20 20 20 20 64 39 20 2b 3d 20 68 38 2;\n d9 += h8 00029ae0: 20 2a 20 72 31 3b 5c 6e 20 20 20 20 64 39 20 2b * r1;\n d9 + 00029af0: 3d 20 68 39 20 2a 20 72 30 3b 5c 6e 20 20 20 20 = h9 * r0;\n 00029b00: 63 20 2b 3d 20 28 64 39 20 3e 3e 3e 20 31 33 29 c += (d9 >>> 13) 00029b10: 3b 20 64 39 20 26 3d 20 30 78 31 66 66 66 3b 5c ; d9 &= 0x1fff;\ 00029b20: 6e 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 63 20 n\n c = (((c 00029b30: 3c 3c 20 32 29 20 2b 20 63 29 29 20 7c 20 30 3b << 2) + c)) | 0; 00029b40: 5c 6e 20 20 20 20 63 20 3d 20 28 63 20 2b 20 64 \n c = (c + d 00029b50: 30 29 20 7c 20 30 3b 5c 6e 20 20 20 20 64 30 20 0) | 0;\n d0 00029b60: 3d 20 63 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 = c & 0x1fff;\n 00029b70: 20 20 20 63 20 3d 20 28 63 20 3e 3e 3e 20 31 33 c = (c >>> 13 00029b80: 29 3b 5c 6e 20 20 20 20 64 31 20 2b 3d 20 63 3b );\n d1 += c; 00029b90: 5c 6e 5c 6e 20 20 20 20 68 30 20 3d 20 64 30 3b \n\n h0 = d0; 00029ba0: 5c 6e 20 20 20 20 68 31 20 3d 20 64 31 3b 5c 6e \n h1 = d1;\n 00029bb0: 20 20 20 20 68 32 20 3d 20 64 32 3b 5c 6e 20 20 h2 = d2;\n 00029bc0: 20 20 68 33 20 3d 20 64 33 3b 5c 6e 20 20 20 20 h3 = d3;\n 00029bd0: 68 34 20 3d 20 64 34 3b 5c 6e 20 20 20 20 68 35 h4 = d4;\n h5 00029be0: 20 3d 20 64 35 3b 5c 6e 20 20 20 20 68 36 20 3d = d5;\n h6 = 00029bf0: 20 64 36 3b 5c 6e 20 20 20 20 68 37 20 3d 20 64 d6;\n h7 = d 00029c00: 37 3b 5c 6e 20 20 20 20 68 38 20 3d 20 64 38 3b 7;\n h8 = d8; 00029c10: 5c 6e 20 20 20 20 68 39 20 3d 20 64 39 3b 5c 6e \n h9 = d9;\n 00029c20: 5c 6e 20 20 20 20 6d 70 6f 73 20 2b 3d 20 31 36 \n mpos += 16 00029c30: 3b 5c 6e 20 20 20 20 62 79 74 65 73 20 2d 3d 20 ;\n bytes -= 00029c40: 31 36 3b 5c 6e 20 20 7d 5c 6e 20 20 74 68 69 73 16;\n }\n this 00029c50: 2e 68 5b 30 5d 20 3d 20 68 30 3b 5c 6e 20 20 74 .h[0] = h0;\n t 00029c60: 68 69 73 2e 68 5b 31 5d 20 3d 20 68 31 3b 5c 6e his.h[1] = h1;\n 00029c70: 20 20 74 68 69 73 2e 68 5b 32 5d 20 3d 20 68 32 this.h[2] = h2 00029c80: 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 33 5d 20 3d ;\n this.h[3] = 00029c90: 20 68 33 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 34 h3;\n this.h[4 00029ca0: 5d 20 3d 20 68 34 3b 5c 6e 20 20 74 68 69 73 2e ] = h4;\n this. 00029cb0: 68 5b 35 5d 20 3d 20 68 35 3b 5c 6e 20 20 74 68 h[5] = h5;\n th 00029cc0: 69 73 2e 68 5b 36 5d 20 3d 20 68 36 3b 5c 6e 20 is.h[6] = h6;\n 00029cd0: 20 74 68 69 73 2e 68 5b 37 5d 20 3d 20 68 37 3b this.h[7] = h7; 00029ce0: 5c 6e 20 20 74 68 69 73 2e 68 5b 38 5d 20 3d 20 \n this.h[8] = 00029cf0: 68 38 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 39 5d h8;\n this.h[9] 00029d00: 20 3d 20 68 39 3b 5c 6e 7d 3b 5c 6e 5c 6e 70 6f = h9;\n};\n\npo 00029d10: 6c 79 31 33 30 35 2e 70 72 6f 74 6f 74 79 70 65 ly1305.prototype 00029d20: 2e 66 69 6e 69 73 68 20 3d 20 66 75 6e 63 74 69 .finish = functi 00029d30: 6f 6e 28 6d 61 63 2c 20 6d 61 63 70 6f 73 29 20 on(mac, macpos) 00029d40: 7b 5c 6e 20 20 76 61 72 20 67 20 3d 20 6e 65 77 {\n var g = new 00029d50: 20 55 69 6e 74 31 36 41 72 72 61 79 28 31 30 29 Uint16Array(10) 00029d60: 3b 5c 6e 20 20 76 61 72 20 63 2c 20 6d 61 73 6b ;\n var c, mask 00029d70: 2c 20 66 2c 20 69 3b 5c 6e 5c 6e 20 20 69 66 20 , f, i;\n\n if 00029d80: 28 74 68 69 73 2e 6c 65 66 74 6f 76 65 72 29 20 (this.leftover) 00029d90: 7b 5c 6e 20 20 20 20 69 20 3d 20 74 68 69 73 2e {\n i = this. 00029da0: 6c 65 66 74 6f 76 65 72 3b 5c 6e 20 20 20 20 74 leftover;\n t 00029db0: 68 69 73 2e 62 75 66 66 65 72 5b 69 2b 2b 5d 20 his.buffer[i++] 00029dc0: 3d 20 31 3b 5c 6e 20 20 20 20 66 6f 72 20 28 3b = 1;\n for (; 00029dd0: 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 74 68 i < 16; i++) th 00029de0: 69 73 2e 62 75 66 66 65 72 5b 69 5d 20 3d 20 30 is.buffer[i] = 0 00029df0: 3b 5c 6e 20 20 20 20 74 68 69 73 2e 66 69 6e 20 ;\n this.fin 00029e00: 3d 20 31 3b 5c 6e 20 20 20 20 74 68 69 73 2e 62 = 1;\n this.b 00029e10: 6c 6f 63 6b 73 28 74 68 69 73 2e 62 75 66 66 65 locks(this.buffe 00029e20: 72 2c 20 30 2c 20 31 36 29 3b 5c 6e 20 20 7d 5c r, 0, 16);\n }\ 00029e30: 6e 5c 6e 20 20 63 20 3d 20 74 68 69 73 2e 68 5b n\n c = this.h[ 00029e40: 31 5d 20 3e 3e 3e 20 31 33 3b 5c 6e 20 20 74 68 1] >>> 13;\n th 00029e50: 69 73 2e 68 5b 31 5d 20 26 3d 20 30 78 31 66 66 is.h[1] &= 0x1ff 00029e60: 66 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 32 f;\n for (i = 2 00029e70: 3b 20 69 20 3c 20 31 30 3b 20 69 2b 2b 29 20 7b ; i < 10; i++) { 00029e80: 5c 6e 20 20 20 20 74 68 69 73 2e 68 5b 69 5d 20 \n this.h[i] 00029e90: 2b 3d 20 63 3b 5c 6e 20 20 20 20 63 20 3d 20 74 += c;\n c = t 00029ea0: 68 69 73 2e 68 5b 69 5d 20 3e 3e 3e 20 31 33 3b his.h[i] >>> 13; 00029eb0: 5c 6e 20 20 20 20 74 68 69 73 2e 68 5b 69 5d 20 \n this.h[i] 00029ec0: 26 3d 20 30 78 31 66 66 66 3b 5c 6e 20 20 7d 5c &= 0x1fff;\n }\ 00029ed0: 6e 20 20 74 68 69 73 2e 68 5b 30 5d 20 2b 3d 20 n this.h[0] += 00029ee0: 28 63 20 2a 20 35 29 3b 5c 6e 20 20 63 20 3d 20 (c * 5);\n c = 00029ef0: 74 68 69 73 2e 68 5b 30 5d 20 3e 3e 3e 20 31 33 this.h[0] >>> 13 00029f00: 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 30 5d 20 26 ;\n this.h[0] & 00029f10: 3d 20 30 78 31 66 66 66 3b 5c 6e 20 20 74 68 69 = 0x1fff;\n thi 00029f20: 73 2e 68 5b 31 5d 20 2b 3d 20 63 3b 5c 6e 20 20 s.h[1] += c;\n 00029f30: 63 20 3d 20 74 68 69 73 2e 68 5b 31 5d 20 3e 3e c = this.h[1] >> 00029f40: 3e 20 31 33 3b 5c 6e 20 20 74 68 69 73 2e 68 5b > 13;\n this.h[ 00029f50: 31 5d 20 26 3d 20 30 78 31 66 66 66 3b 5c 6e 20 1] &= 0x1fff;\n 00029f60: 20 74 68 69 73 2e 68 5b 32 5d 20 2b 3d 20 63 3b this.h[2] += c; 00029f70: 5c 6e 5c 6e 20 20 67 5b 30 5d 20 3d 20 74 68 69 \n\n g[0] = thi 00029f80: 73 2e 68 5b 30 5d 20 2b 20 35 3b 5c 6e 20 20 63 s.h[0] + 5;\n c 00029f90: 20 3d 20 67 5b 30 5d 20 3e 3e 3e 20 31 33 3b 5c = g[0] >>> 13;\ 00029fa0: 6e 20 20 67 5b 30 5d 20 26 3d 20 30 78 31 66 66 n g[0] &= 0x1ff 00029fb0: 66 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 31 f;\n for (i = 1 00029fc0: 3b 20 69 20 3c 20 31 30 3b 20 69 2b 2b 29 20 7b ; i < 10; i++) { 00029fd0: 5c 6e 20 20 20 20 67 5b 69 5d 20 3d 20 74 68 69 \n g[i] = thi 00029fe0: 73 2e 68 5b 69 5d 20 2b 20 63 3b 5c 6e 20 20 20 s.h[i] + c;\n 00029ff0: 20 63 20 3d 20 67 5b 69 5d 20 3e 3e 3e 20 31 33 c = g[i] >>> 13 0002a000: 3b 5c 6e 20 20 20 20 67 5b 69 5d 20 26 3d 20 30 ;\n g[i] &= 0 0002a010: 78 31 66 66 66 3b 5c 6e 20 20 7d 5c 6e 20 20 67 x1fff;\n }\n g 0002a020: 5b 39 5d 20 2d 3d 20 28 31 20 3c 3c 20 31 33 29 [9] -= (1 << 13) 0002a030: 3b 5c 6e 5c 6e 20 20 6d 61 73 6b 20 3d 20 28 63 ;\n\n mask = (c 0002a040: 20 5e 20 31 29 20 2d 20 31 3b 5c 6e 20 20 66 6f ^ 1) - 1;\n fo 0002a050: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 31 30 r (i = 0; i < 10 0002a060: 3b 20 69 2b 2b 29 20 67 5b 69 5d 20 26 3d 20 6d ; i++) g[i] &= m 0002a070: 61 73 6b 3b 5c 6e 20 20 6d 61 73 6b 20 3d 20 7e ask;\n mask = ~ 0002a080: 6d 61 73 6b 3b 5c 6e 20 20 66 6f 72 20 28 69 20 mask;\n for (i 0002a090: 3d 20 30 3b 20 69 20 3c 20 31 30 3b 20 69 2b 2b = 0; i < 10; i++ 0002a0a0: 29 20 74 68 69 73 2e 68 5b 69 5d 20 3d 20 28 74 ) this.h[i] = (t 0002a0b0: 68 69 73 2e 68 5b 69 5d 20 26 20 6d 61 73 6b 29 his.h[i] & mask) 0002a0c0: 20 7c 20 67 5b 69 5d 3b 5c 6e 5c 6e 20 20 74 68 | g[i];\n\n th 0002a0d0: 69 73 2e 68 5b 30 5d 20 3d 20 28 28 74 68 69 73 is.h[0] = ((this 0002a0e0: 2e 68 5b 30 5d 20 20 20 20 20 20 20 29 20 7c 20 .h[0] ) | 0002a0f0: 28 74 68 69 73 2e 68 5b 31 5d 20 3c 3c 20 31 33 (this.h[1] << 13 0002a100: 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ) 0002a110: 20 20 20 20 20 29 20 26 20 30 78 66 66 66 66 3b ) & 0xffff; 0002a120: 5c 6e 20 20 74 68 69 73 2e 68 5b 31 5d 20 3d 20 \n this.h[1] = 0002a130: 28 28 74 68 69 73 2e 68 5b 31 5d 20 3e 3e 3e 20 ((this.h[1] >>> 0002a140: 20 33 29 20 7c 20 28 74 68 69 73 2e 68 5b 32 5d 3) | (this.h[2] 0002a150: 20 3c 3c 20 31 30 29 20 20 20 20 20 20 20 20 20 << 10) 0002a160: 20 20 20 20 20 20 20 20 20 20 20 29 20 26 20 30 ) & 0 0002a170: 78 66 66 66 66 3b 5c 6e 20 20 74 68 69 73 2e 68 xffff;\n this.h 0002a180: 5b 32 5d 20 3d 20 28 28 74 68 69 73 2e 68 5b 32 [2] = ((this.h[2 0002a190: 5d 20 3e 3e 3e 20 20 36 29 20 7c 20 28 74 68 69 ] >>> 6) | (thi 0002a1a0: 73 2e 68 5b 33 5d 20 3c 3c 20 20 37 29 20 20 20 s.h[3] << 7) 0002a1b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0002a1c0: 20 29 20 26 20 30 78 66 66 66 66 3b 5c 6e 20 20 ) & 0xffff;\n 0002a1d0: 74 68 69 73 2e 68 5b 33 5d 20 3d 20 28 28 74 68 this.h[3] = ((th 0002a1e0: 69 73 2e 68 5b 33 5d 20 3e 3e 3e 20 20 39 29 20 is.h[3] >>> 9) 0002a1f0: 7c 20 28 74 68 69 73 2e 68 5b 34 5d 20 3c 3c 20 | (this.h[4] << 0002a200: 20 34 29 20 20 20 20 20 20 20 20 20 20 20 20 20 4) 0002a210: 20 20 20 20 20 20 20 29 20 26 20 30 78 66 66 66 ) & 0xfff 0002a220: 66 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 34 5d 20 f;\n this.h[4] 0002a230: 3d 20 28 28 74 68 69 73 2e 68 5b 34 5d 20 3e 3e = ((this.h[4] >> 0002a240: 3e 20 31 32 29 20 7c 20 28 74 68 69 73 2e 68 5b > 12) | (this.h[ 0002a250: 35 5d 20 3c 3c 20 20 31 29 20 7c 20 28 74 68 69 5] << 1) | (thi 0002a260: 73 2e 68 5b 36 5d 20 3c 3c 20 31 34 29 29 20 26 s.h[6] << 14)) & 0002a270: 20 30 78 66 66 66 66 3b 5c 6e 20 20 74 68 69 73 0xffff;\n this 0002a280: 2e 68 5b 35 5d 20 3d 20 28 28 74 68 69 73 2e 68 .h[5] = ((this.h 0002a290: 5b 36 5d 20 3e 3e 3e 20 20 32 29 20 7c 20 28 74 [6] >>> 2) | (t 0002a2a0: 68 69 73 2e 68 5b 37 5d 20 3c 3c 20 31 31 29 20 his.h[7] << 11) 0002a2b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0002a2c0: 20 20 20 29 20 26 20 30 78 66 66 66 66 3b 5c 6e ) & 0xffff;\n 0002a2d0: 20 20 74 68 69 73 2e 68 5b 36 5d 20 3d 20 28 28 this.h[6] = (( 0002a2e0: 74 68 69 73 2e 68 5b 37 5d 20 3e 3e 3e 20 20 35 this.h[7] >>> 5 0002a2f0: 29 20 7c 20 28 74 68 69 73 2e 68 5b 38 5d 20 3c ) | (this.h[8] < 0002a300: 3c 20 20 38 29 20 20 20 20 20 20 20 20 20 20 20 < 8) 0002a310: 20 20 20 20 20 20 20 20 20 29 20 26 20 30 78 66 ) & 0xf 0002a320: 66 66 66 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 37 fff;\n this.h[7 0002a330: 5d 20 3d 20 28 28 74 68 69 73 2e 68 5b 38 5d 20 ] = ((this.h[8] 0002a340: 3e 3e 3e 20 20 38 29 20 7c 20 28 74 68 69 73 2e >>> 8) | (this. 0002a350: 68 5b 39 5d 20 3c 3c 20 20 35 29 20 20 20 20 20 h[9] << 5) 0002a360: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 29 ) 0002a370: 20 26 20 30 78 66 66 66 66 3b 5c 6e 5c 6e 20 20 & 0xffff;\n\n 0002a380: 66 20 3d 20 74 68 69 73 2e 68 5b 30 5d 20 2b 20 f = this.h[0] + 0002a390: 74 68 69 73 2e 70 61 64 5b 30 5d 3b 5c 6e 20 20 this.pad[0];\n 0002a3a0: 74 68 69 73 2e 68 5b 30 5d 20 3d 20 66 20 26 20 this.h[0] = f & 0002a3b0: 30 78 66 66 66 66 3b 5c 6e 20 20 66 6f 72 20 28 0xffff;\n for ( 0002a3c0: 69 20 3d 20 31 3b 20 69 20 3c 20 38 3b 20 69 2b i = 1; i < 8; i+ 0002a3d0: 2b 29 20 7b 5c 6e 20 20 20 20 66 20 3d 20 28 28 +) {\n f = (( 0002a3e0: 28 74 68 69 73 2e 68 5b 69 5d 20 2b 20 74 68 69 (this.h[i] + thi 0002a3f0: 73 2e 70 61 64 5b 69 5d 29 20 7c 20 30 29 20 2b s.pad[i]) | 0) + 0002a400: 20 28 66 20 3e 3e 3e 20 31 36 29 29 20 7c 20 30 (f >>> 16)) | 0 0002a410: 3b 5c 6e 20 20 20 20 74 68 69 73 2e 68 5b 69 5d ;\n this.h[i] 0002a420: 20 3d 20 66 20 26 20 30 78 66 66 66 66 3b 5c 6e = f & 0xffff;\n 0002a430: 20 20 7d 5c 6e 5c 6e 20 20 6d 61 63 5b 6d 61 63 }\n\n mac[mac 0002a440: 70 6f 73 2b 20 30 5d 20 3d 20 28 74 68 69 73 2e pos+ 0] = (this. 0002a450: 68 5b 30 5d 20 3e 3e 3e 20 30 29 20 26 20 30 78 h[0] >>> 0) & 0x 0002a460: 66 66 3b 5c 6e 20 20 6d 61 63 5b 6d 61 63 70 6f ff;\n mac[macpo 0002a470: 73 2b 20 31 5d 20 3d 20 28 74 68 69 73 2e 68 5b s+ 1] = (this.h[ 0002a480: 30 5d 20 3e 3e 3e 20 38 29 20 26 20 30 78 66 66 0] >>> 8) & 0xff 0002a490: 3b 5c 6e 20 20 6d 61 63 5b 6d 61 63 70 6f 73 2b ;\n mac[macpos+ 0002a4a0: 20 32 5d 20 3d 20 28 74 68 69 73 2e 68 5b 31 5d 2] = (this.h[1] 0002a4b0: 20 3e 3e 3e 20 30 29 20 26 20 30 78 66 66 3b 5c >>> 0) & 0xff;\ 0002a4c0: 6e 20 20 6d 61 63 5b 6d 61 63 70 6f 73 2b 20 33 n mac[macpos+ 3 0002a4d0: 5d 20 3d 20 28 74 68 69 73 2e 68 5b 31 5d 20 3e ] = (this.h[1] > 0002a4e0: 3e 3e 20 38 29 20 26 20 30 78 66 66 3b 5c 6e 20 >> 8) & 0xff;\n 0002a4f0: 20 6d 61 63 5b 6d 61 63 70 6f 73 2b 20 34 5d 20 mac[macpos+ 4] 0002a500: 3d 20 28 74 68 69 73 2e 68 5b 32 5d 20 3e 3e 3e = (this.h[2] >>> 0002a510: 20 30 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 6d 0) & 0xff;\n m 0002a520: 61 63 5b 6d 61 63 70 6f 73 2b 20 35 5d 20 3d 20 ac[macpos+ 5] = 0002a530: 28 74 68 69 73 2e 68 5b 32 5d 20 3e 3e 3e 20 38 (this.h[2] >>> 8 0002a540: 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 6d 61 63 ) & 0xff;\n mac 0002a550: 5b 6d 61 63 70 6f 73 2b 20 36 5d 20 3d 20 28 74 [macpos+ 6] = (t 0002a560: 68 69 73 2e 68 5b 33 5d 20 3e 3e 3e 20 30 29 20 his.h[3] >>> 0) 0002a570: 26 20 30 78 66 66 3b 5c 6e 20 20 6d 61 63 5b 6d & 0xff;\n mac[m 0002a580: 61 63 70 6f 73 2b 20 37 5d 20 3d 20 28 74 68 69 acpos+ 7] = (thi 0002a590: 73 2e 68 5b 33 5d 20 3e 3e 3e 20 38 29 20 26 20 s.h[3] >>> 8) & 0002a5a0: 30 78 66 66 3b 5c 6e 20 20 6d 61 63 5b 6d 61 63 0xff;\n mac[mac 0002a5b0: 70 6f 73 2b 20 38 5d 20 3d 20 28 74 68 69 73 2e pos+ 8] = (this. 0002a5c0: 68 5b 34 5d 20 3e 3e 3e 20 30 29 20 26 20 30 78 h[4] >>> 0) & 0x 0002a5d0: 66 66 3b 5c 6e 20 20 6d 61 63 5b 6d 61 63 70 6f ff;\n mac[macpo 0002a5e0: 73 2b 20 39 5d 20 3d 20 28 74 68 69 73 2e 68 5b s+ 9] = (this.h[ 0002a5f0: 34 5d 20 3e 3e 3e 20 38 29 20 26 20 30 78 66 66 4] >>> 8) & 0xff 0002a600: 3b 5c 6e 20 20 6d 61 63 5b 6d 61 63 70 6f 73 2b ;\n mac[macpos+ 0002a610: 31 30 5d 20 3d 20 28 74 68 69 73 2e 68 5b 35 5d 10] = (this.h[5] 0002a620: 20 3e 3e 3e 20 30 29 20 26 20 30 78 66 66 3b 5c >>> 0) & 0xff;\ 0002a630: 6e 20 20 6d 61 63 5b 6d 61 63 70 6f 73 2b 31 31 n mac[macpos+11 0002a640: 5d 20 3d 20 28 74 68 69 73 2e 68 5b 35 5d 20 3e ] = (this.h[5] > 0002a650: 3e 3e 20 38 29 20 26 20 30 78 66 66 3b 5c 6e 20 >> 8) & 0xff;\n 0002a660: 20 6d 61 63 5b 6d 61 63 70 6f 73 2b 31 32 5d 20 mac[macpos+12] 0002a670: 3d 20 28 74 68 69 73 2e 68 5b 36 5d 20 3e 3e 3e = (this.h[6] >>> 0002a680: 20 30 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 6d 0) & 0xff;\n m 0002a690: 61 63 5b 6d 61 63 70 6f 73 2b 31 33 5d 20 3d 20 ac[macpos+13] = 0002a6a0: 28 74 68 69 73 2e 68 5b 36 5d 20 3e 3e 3e 20 38 (this.h[6] >>> 8 0002a6b0: 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 6d 61 63 ) & 0xff;\n mac 0002a6c0: 5b 6d 61 63 70 6f 73 2b 31 34 5d 20 3d 20 28 74 [macpos+14] = (t 0002a6d0: 68 69 73 2e 68 5b 37 5d 20 3e 3e 3e 20 30 29 20 his.h[7] >>> 0) 0002a6e0: 26 20 30 78 66 66 3b 5c 6e 20 20 6d 61 63 5b 6d & 0xff;\n mac[m 0002a6f0: 61 63 70 6f 73 2b 31 35 5d 20 3d 20 28 74 68 69 acpos+15] = (thi 0002a700: 73 2e 68 5b 37 5d 20 3e 3e 3e 20 38 29 20 26 20 s.h[7] >>> 8) & 0002a710: 30 78 66 66 3b 5c 6e 7d 3b 5c 6e 5c 6e 70 6f 6c 0xff;\n};\n\npol 0002a720: 79 31 33 30 35 2e 70 72 6f 74 6f 74 79 70 65 2e y1305.prototype. 0002a730: 75 70 64 61 74 65 20 3d 20 66 75 6e 63 74 69 6f update = functio 0002a740: 6e 28 6d 2c 20 6d 70 6f 73 2c 20 62 79 74 65 73 n(m, mpos, bytes 0002a750: 29 20 7b 5c 6e 20 20 76 61 72 20 69 2c 20 77 61 ) {\n var i, wa 0002a760: 6e 74 3b 5c 6e 5c 6e 20 20 69 66 20 28 74 68 69 nt;\n\n if (thi 0002a770: 73 2e 6c 65 66 74 6f 76 65 72 29 20 7b 5c 6e 20 s.leftover) {\n 0002a780: 20 20 20 77 61 6e 74 20 3d 20 28 31 36 20 2d 20 want = (16 - 0002a790: 74 68 69 73 2e 6c 65 66 74 6f 76 65 72 29 3b 5c this.leftover);\ 0002a7a0: 6e 20 20 20 20 69 66 20 28 77 61 6e 74 20 3e 20 n if (want > 0002a7b0: 62 79 74 65 73 29 5c 6e 20 20 20 20 20 20 77 61 bytes)\n wa 0002a7c0: 6e 74 20 3d 20 62 79 74 65 73 3b 5c 6e 20 20 20 nt = bytes;\n 0002a7d0: 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c for (i = 0; i < 0002a7e0: 20 77 61 6e 74 3b 20 69 2b 2b 29 5c 6e 20 20 20 want; i++)\n 0002a7f0: 20 20 20 74 68 69 73 2e 62 75 66 66 65 72 5b 74 this.buffer[t 0002a800: 68 69 73 2e 6c 65 66 74 6f 76 65 72 20 2b 20 69 his.leftover + i 0002a810: 5d 20 3d 20 6d 5b 6d 70 6f 73 2b 69 5d 3b 5c 6e ] = m[mpos+i];\n 0002a820: 20 20 20 20 62 79 74 65 73 20 2d 3d 20 77 61 6e bytes -= wan 0002a830: 74 3b 5c 6e 20 20 20 20 6d 70 6f 73 20 2b 3d 20 t;\n mpos += 0002a840: 77 61 6e 74 3b 5c 6e 20 20 20 20 74 68 69 73 2e want;\n this. 0002a850: 6c 65 66 74 6f 76 65 72 20 2b 3d 20 77 61 6e 74 leftover += want 0002a860: 3b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e ;\n if (this. 0002a870: 6c 65 66 74 6f 76 65 72 20 3c 20 31 36 29 5c 6e leftover < 16)\n 0002a880: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 5c 6e 20 return;\n 0002a890: 20 20 20 74 68 69 73 2e 62 6c 6f 63 6b 73 28 74 this.blocks(t 0002a8a0: 68 69 73 2e 62 75 66 66 65 72 2c 20 30 2c 20 31 his.buffer, 0, 1 0002a8b0: 36 29 3b 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 6);\n this.le 0002a8c0: 66 74 6f 76 65 72 20 3d 20 30 3b 5c 6e 20 20 7d ftover = 0;\n } 0002a8d0: 5c 6e 5c 6e 20 20 69 66 20 28 62 79 74 65 73 20 \n\n if (bytes 0002a8e0: 3e 3d 20 31 36 29 20 7b 5c 6e 20 20 20 20 77 61 >= 16) {\n wa 0002a8f0: 6e 74 20 3d 20 62 79 74 65 73 20 2d 20 28 62 79 nt = bytes - (by 0002a900: 74 65 73 20 25 20 31 36 29 3b 5c 6e 20 20 20 20 tes % 16);\n 0002a910: 74 68 69 73 2e 62 6c 6f 63 6b 73 28 6d 2c 20 6d this.blocks(m, m 0002a920: 70 6f 73 2c 20 77 61 6e 74 29 3b 5c 6e 20 20 20 pos, want);\n 0002a930: 20 6d 70 6f 73 20 2b 3d 20 77 61 6e 74 3b 5c 6e mpos += want;\n 0002a940: 20 20 20 20 62 79 74 65 73 20 2d 3d 20 77 61 6e bytes -= wan 0002a950: 74 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 t;\n }\n\n if 0002a960: 28 62 79 74 65 73 29 20 7b 5c 6e 20 20 20 20 66 (bytes) {\n f 0002a970: 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 62 or (i = 0; i < b 0002a980: 79 74 65 73 3b 20 69 2b 2b 29 5c 6e 20 20 20 20 ytes; i++)\n 0002a990: 20 20 74 68 69 73 2e 62 75 66 66 65 72 5b 74 68 this.buffer[th 0002a9a0: 69 73 2e 6c 65 66 74 6f 76 65 72 20 2b 20 69 5d is.leftover + i] 0002a9b0: 20 3d 20 6d 5b 6d 70 6f 73 2b 69 5d 3b 5c 6e 20 = m[mpos+i];\n 0002a9c0: 20 20 20 74 68 69 73 2e 6c 65 66 74 6f 76 65 72 this.leftover 0002a9d0: 20 2b 3d 20 62 79 74 65 73 3b 5c 6e 20 20 7d 5c += bytes;\n }\ 0002a9e0: 6e 7d 3b 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 n};\n\nfunction 0002a9f0: 63 72 79 70 74 6f 5f 6f 6e 65 74 69 6d 65 61 75 crypto_onetimeau 0002aa00: 74 68 28 6f 75 74 2c 20 6f 75 74 70 6f 73 2c 20 th(out, outpos, 0002aa10: 6d 2c 20 6d 70 6f 73 2c 20 6e 2c 20 6b 29 20 7b m, mpos, n, k) { 0002aa20: 5c 6e 20 20 76 61 72 20 73 20 3d 20 6e 65 77 20 \n var s = new 0002aa30: 70 6f 6c 79 31 33 30 35 28 6b 29 3b 5c 6e 20 20 poly1305(k);\n 0002aa40: 73 2e 75 70 64 61 74 65 28 6d 2c 20 6d 70 6f 73 s.update(m, mpos 0002aa50: 2c 20 6e 29 3b 5c 6e 20 20 73 2e 66 69 6e 69 73 , n);\n s.finis 0002aa60: 68 28 6f 75 74 2c 20 6f 75 74 70 6f 73 29 3b 5c h(out, outpos);\ 0002aa70: 6e 20 20 72 65 74 75 72 6e 20 30 3b 5c 6e 7d 5c n return 0;\n}\ 0002aa80: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 70 n\nfunction cryp 0002aa90: 74 6f 5f 6f 6e 65 74 69 6d 65 61 75 74 68 5f 76 to_onetimeauth_v 0002aaa0: 65 72 69 66 79 28 68 2c 20 68 70 6f 73 2c 20 6d erify(h, hpos, m 0002aab0: 2c 20 6d 70 6f 73 2c 20 6e 2c 20 6b 29 20 7b 5c , mpos, n, k) {\ 0002aac0: 6e 20 20 76 61 72 20 78 20 3d 20 6e 65 77 20 55 n var x = new U 0002aad0: 69 6e 74 38 41 72 72 61 79 28 31 36 29 3b 5c 6e int8Array(16);\n 0002aae0: 20 20 63 72 79 70 74 6f 5f 6f 6e 65 74 69 6d 65 crypto_onetime 0002aaf0: 61 75 74 68 28 78 2c 30 2c 6d 2c 6d 70 6f 73 2c auth(x,0,m,mpos, 0002ab00: 6e 2c 6b 29 3b 5c 6e 20 20 72 65 74 75 72 6e 20 n,k);\n return 0002ab10: 63 72 79 70 74 6f 5f 76 65 72 69 66 79 5f 31 36 crypto_verify_16 0002ab20: 28 68 2c 68 70 6f 73 2c 78 2c 30 29 3b 5c 6e 7d (h,hpos,x,0);\n} 0002ab30: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 \n\nfunction cry 0002ab40: 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 28 63 2c pto_secretbox(c, 0002ab50: 6d 2c 64 2c 6e 2c 6b 29 20 7b 5c 6e 20 20 76 61 m,d,n,k) {\n va 0002ab60: 72 20 69 3b 5c 6e 20 20 69 66 20 28 64 20 3c 20 r i;\n if (d < 0002ab70: 33 32 29 20 72 65 74 75 72 6e 20 2d 31 3b 5c 6e 32) return -1;\n 0002ab80: 20 20 63 72 79 70 74 6f 5f 73 74 72 65 61 6d 5f crypto_stream_ 0002ab90: 78 6f 72 28 63 2c 30 2c 6d 2c 30 2c 64 2c 6e 2c xor(c,0,m,0,d,n, 0002aba0: 6b 29 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 6f 6e k);\n crypto_on 0002abb0: 65 74 69 6d 65 61 75 74 68 28 63 2c 20 31 36 2c etimeauth(c, 16, 0002abc0: 20 63 2c 20 33 32 2c 20 64 20 2d 20 33 32 2c 20 c, 32, d - 32, 0002abd0: 63 29 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 c);\n for (i = 0002abe0: 30 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 0; i < 16; i++) 0002abf0: 63 5b 69 5d 20 3d 20 30 3b 5c 6e 20 20 72 65 74 c[i] = 0;\n ret 0002ac00: 75 72 6e 20 30 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e urn 0;\n}\n\nfun 0002ac10: 63 74 69 6f 6e 20 63 72 79 70 74 6f 5f 73 65 63 ction crypto_sec 0002ac20: 72 65 74 62 6f 78 5f 6f 70 65 6e 28 6d 2c 63 2c retbox_open(m,c, 0002ac30: 64 2c 6e 2c 6b 29 20 7b 5c 6e 20 20 76 61 72 20 d,n,k) {\n var 0002ac40: 69 3b 5c 6e 20 20 76 61 72 20 78 20 3d 20 6e 65 i;\n var x = ne 0002ac50: 77 20 55 69 6e 74 38 41 72 72 61 79 28 33 32 29 w Uint8Array(32) 0002ac60: 3b 5c 6e 20 20 69 66 20 28 64 20 3c 20 33 32 29 ;\n if (d < 32) 0002ac70: 20 72 65 74 75 72 6e 20 2d 31 3b 5c 6e 20 20 63 return -1;\n c 0002ac80: 72 79 70 74 6f 5f 73 74 72 65 61 6d 28 78 2c 30 rypto_stream(x,0 0002ac90: 2c 33 32 2c 6e 2c 6b 29 3b 5c 6e 20 20 69 66 20 ,32,n,k);\n if 0002aca0: 28 63 72 79 70 74 6f 5f 6f 6e 65 74 69 6d 65 61 (crypto_onetimea 0002acb0: 75 74 68 5f 76 65 72 69 66 79 28 63 2c 20 31 36 uth_verify(c, 16 0002acc0: 2c 63 2c 20 33 32 2c 64 20 2d 20 33 32 2c 78 29 ,c, 32,d - 32,x) 0002acd0: 20 21 3d 3d 20 30 29 20 72 65 74 75 72 6e 20 2d !== 0) return - 0002ace0: 31 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 73 74 72 1;\n crypto_str 0002acf0: 65 61 6d 5f 78 6f 72 28 6d 2c 30 2c 63 2c 30 2c eam_xor(m,0,c,0, 0002ad00: 64 2c 6e 2c 6b 29 3b 5c 6e 20 20 66 6f 72 20 28 d,n,k);\n for ( 0002ad10: 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 3b 20 69 i = 0; i < 32; i 0002ad20: 2b 2b 29 20 6d 5b 69 5d 20 3d 20 30 3b 5c 6e 20 ++) m[i] = 0;\n 0002ad30: 20 72 65 74 75 72 6e 20 30 3b 5c 6e 7d 5c 6e 5c return 0;\n}\n\ 0002ad40: 6e 66 75 6e 63 74 69 6f 6e 20 73 65 74 32 35 35 nfunction set255 0002ad50: 31 39 28 72 2c 20 61 29 20 7b 5c 6e 20 20 76 61 19(r, a) {\n va 0002ad60: 72 20 69 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d r i;\n for (i = 0002ad70: 20 30 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 0; i < 16; i++) 0002ad80: 20 72 5b 69 5d 20 3d 20 61 5b 69 5d 7c 30 3b 5c r[i] = a[i]|0;\ 0002ad90: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 n}\n\nfunction c 0002ada0: 61 72 32 35 35 31 39 28 6f 29 20 7b 5c 6e 20 20 ar25519(o) {\n 0002adb0: 76 61 72 20 69 2c 20 76 2c 20 63 20 3d 20 31 3b var i, v, c = 1; 0002adc0: 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 \n for (i = 0; 0002add0: 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 7b 5c 6e i < 16; i++) {\n 0002ade0: 20 20 20 20 76 20 3d 20 6f 5b 69 5d 20 2b 20 63 v = o[i] + c 0002adf0: 20 2b 20 36 35 35 33 35 3b 5c 6e 20 20 20 20 63 + 65535;\n c 0002ae00: 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 28 76 20 = Math.floor(v 0002ae10: 2f 20 36 35 35 33 36 29 3b 5c 6e 20 20 20 20 6f / 65536);\n o 0002ae20: 5b 69 5d 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 [i] = v - c * 65 0002ae30: 35 33 36 3b 5c 6e 20 20 7d 5c 6e 20 20 6f 5b 30 536;\n }\n o[0 0002ae40: 5d 20 2b 3d 20 63 2d 31 20 2b 20 33 37 20 2a 20 ] += c-1 + 37 * 0002ae50: 28 63 2d 31 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e (c-1);\n}\n\nfun 0002ae60: 63 74 69 6f 6e 20 73 65 6c 32 35 35 31 39 28 70 ction sel25519(p 0002ae70: 2c 20 71 2c 20 62 29 20 7b 5c 6e 20 20 76 61 72 , q, b) {\n var 0002ae80: 20 74 2c 20 63 20 3d 20 7e 28 62 2d 31 29 3b 5c t, c = ~(b-1);\ 0002ae90: 6e 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 n for (var i = 0002aea0: 30 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 0; i < 16; i++) 0002aeb0: 7b 5c 6e 20 20 20 20 74 20 3d 20 63 20 26 20 28 {\n t = c & ( 0002aec0: 70 5b 69 5d 20 5e 20 71 5b 69 5d 29 3b 5c 6e 20 p[i] ^ q[i]);\n 0002aed0: 20 20 20 70 5b 69 5d 20 5e 3d 20 74 3b 5c 6e 20 p[i] ^= t;\n 0002aee0: 20 20 20 71 5b 69 5d 20 5e 3d 20 74 3b 5c 6e 20 q[i] ^= t;\n 0002aef0: 20 7d 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f }\n}\n\nfunctio 0002af00: 6e 20 70 61 63 6b 32 35 35 31 39 28 6f 2c 20 6e n pack25519(o, n 0002af10: 29 20 7b 5c 6e 20 20 76 61 72 20 69 2c 20 6a 2c ) {\n var i, j, 0002af20: 20 62 3b 5c 6e 20 20 76 61 72 20 6d 20 3d 20 67 b;\n var m = g 0002af30: 66 28 29 2c 20 74 20 3d 20 67 66 28 29 3b 5c 6e f(), t = gf();\n 0002af40: 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 for (i = 0; i 0002af50: 3c 20 31 36 3b 20 69 2b 2b 29 20 74 5b 69 5d 20 < 16; i++) t[i] 0002af60: 3d 20 6e 5b 69 5d 3b 5c 6e 20 20 63 61 72 32 35 = n[i];\n car25 0002af70: 35 31 39 28 74 29 3b 5c 6e 20 20 63 61 72 32 35 519(t);\n car25 0002af80: 35 31 39 28 74 29 3b 5c 6e 20 20 63 61 72 32 35 519(t);\n car25 0002af90: 35 31 39 28 74 29 3b 5c 6e 20 20 66 6f 72 20 28 519(t);\n for ( 0002afa0: 6a 20 3d 20 30 3b 20 6a 20 3c 20 32 3b 20 6a 2b j = 0; j < 2; j+ 0002afb0: 2b 29 20 7b 5c 6e 20 20 20 20 6d 5b 30 5d 20 3d +) {\n m[0] = 0002afc0: 20 74 5b 30 5d 20 2d 20 30 78 66 66 65 64 3b 5c t[0] - 0xffed;\ 0002afd0: 6e 20 20 20 20 66 6f 72 20 28 69 20 3d 20 31 3b n for (i = 1; 0002afe0: 20 69 20 3c 20 31 35 3b 20 69 2b 2b 29 20 7b 5c i < 15; i++) {\ 0002aff0: 6e 20 20 20 20 20 20 6d 5b 69 5d 20 3d 20 74 5b n m[i] = t[ 0002b000: 69 5d 20 2d 20 30 78 66 66 66 66 20 2d 20 28 28 i] - 0xffff - (( 0002b010: 6d 5b 69 2d 31 5d 3e 3e 31 36 29 20 26 20 31 29 m[i-1]>>16) & 1) 0002b020: 3b 5c 6e 20 20 20 20 20 20 6d 5b 69 2d 31 5d 20 ;\n m[i-1] 0002b030: 26 3d 20 30 78 66 66 66 66 3b 5c 6e 20 20 20 20 &= 0xffff;\n 0002b040: 7d 5c 6e 20 20 20 20 6d 5b 31 35 5d 20 3d 20 74 }\n m[15] = t 0002b050: 5b 31 35 5d 20 2d 20 30 78 37 66 66 66 20 2d 20 [15] - 0x7fff - 0002b060: 28 28 6d 5b 31 34 5d 3e 3e 31 36 29 20 26 20 31 ((m[14]>>16) & 1 0002b070: 29 3b 5c 6e 20 20 20 20 62 20 3d 20 28 6d 5b 31 );\n b = (m[1 0002b080: 35 5d 3e 3e 31 36 29 20 26 20 31 3b 5c 6e 20 20 5]>>16) & 1;\n 0002b090: 20 20 6d 5b 31 34 5d 20 26 3d 20 30 78 66 66 66 m[14] &= 0xfff 0002b0a0: 66 3b 5c 6e 20 20 20 20 73 65 6c 32 35 35 31 39 f;\n sel25519 0002b0b0: 28 74 2c 20 6d 2c 20 31 2d 62 29 3b 5c 6e 20 20 (t, m, 1-b);\n 0002b0c0: 7d 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b }\n for (i = 0; 0002b0d0: 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 7b 5c i < 16; i++) {\ 0002b0e0: 6e 20 20 20 20 6f 5b 32 2a 69 5d 20 3d 20 74 5b n o[2*i] = t[ 0002b0f0: 69 5d 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 i] & 0xff;\n 0002b100: 6f 5b 32 2a 69 2b 31 5d 20 3d 20 74 5b 69 5d 3e o[2*i+1] = t[i]> 0002b110: 3e 38 3b 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c 6e 66 >8;\n }\n}\n\nf 0002b120: 75 6e 63 74 69 6f 6e 20 6e 65 71 32 35 35 31 39 unction neq25519 0002b130: 28 61 2c 20 62 29 20 7b 5c 6e 20 20 76 61 72 20 (a, b) {\n var 0002b140: 63 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 c = new Uint8Arr 0002b150: 61 79 28 33 32 29 2c 20 64 20 3d 20 6e 65 77 20 ay(32), d = new 0002b160: 55 69 6e 74 38 41 72 72 61 79 28 33 32 29 3b 5c Uint8Array(32);\ 0002b170: 6e 20 20 70 61 63 6b 32 35 35 31 39 28 63 2c 20 n pack25519(c, 0002b180: 61 29 3b 5c 6e 20 20 70 61 63 6b 32 35 35 31 39 a);\n pack25519 0002b190: 28 64 2c 20 62 29 3b 5c 6e 20 20 72 65 74 75 72 (d, b);\n retur 0002b1a0: 6e 20 63 72 79 70 74 6f 5f 76 65 72 69 66 79 5f n crypto_verify_ 0002b1b0: 33 32 28 63 2c 20 30 2c 20 64 2c 20 30 29 3b 5c 32(c, 0, d, 0);\ 0002b1c0: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 70 n}\n\nfunction p 0002b1d0: 61 72 32 35 35 31 39 28 61 29 20 7b 5c 6e 20 20 ar25519(a) {\n 0002b1e0: 76 61 72 20 64 20 3d 20 6e 65 77 20 55 69 6e 74 var d = new Uint 0002b1f0: 38 41 72 72 61 79 28 33 32 29 3b 5c 6e 20 20 70 8Array(32);\n p 0002b200: 61 63 6b 32 35 35 31 39 28 64 2c 20 61 29 3b 5c ack25519(d, a);\ 0002b210: 6e 20 20 72 65 74 75 72 6e 20 64 5b 30 5d 20 26 n return d[0] & 0002b220: 20 31 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 1;\n}\n\nfuncti 0002b230: 6f 6e 20 75 6e 70 61 63 6b 32 35 35 31 39 28 6f on unpack25519(o 0002b240: 2c 20 6e 29 20 7b 5c 6e 20 20 76 61 72 20 69 3b , n) {\n var i; 0002b250: 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 \n for (i = 0; 0002b260: 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 6f 5b 69 i < 16; i++) o[i 0002b270: 5d 20 3d 20 6e 5b 32 2a 69 5d 20 2b 20 28 6e 5b ] = n[2*i] + (n[ 0002b280: 32 2a 69 2b 31 5d 20 3c 3c 20 38 29 3b 5c 6e 20 2*i+1] << 8);\n 0002b290: 20 6f 5b 31 35 5d 20 26 3d 20 30 78 37 66 66 66 o[15] &= 0x7fff 0002b2a0: 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e ;\n}\n\nfunction 0002b2b0: 20 41 28 6f 2c 20 61 2c 20 62 29 20 7b 5c 6e 20 A(o, a, b) {\n 0002b2c0: 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b for (var i = 0; 0002b2d0: 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 6f 5b i < 16; i++) o[ 0002b2e0: 69 5d 20 3d 20 61 5b 69 5d 20 2b 20 62 5b 69 5d i] = a[i] + b[i] 0002b2f0: 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e ;\n}\n\nfunction 0002b300: 20 5a 28 6f 2c 20 61 2c 20 62 29 20 7b 5c 6e 20 Z(o, a, b) {\n 0002b310: 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b for (var i = 0; 0002b320: 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 6f 5b i < 16; i++) o[ 0002b330: 69 5d 20 3d 20 61 5b 69 5d 20 2d 20 62 5b 69 5d i] = a[i] - b[i] 0002b340: 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e ;\n}\n\nfunction 0002b350: 20 4d 28 6f 2c 20 61 2c 20 62 29 20 7b 5c 6e 20 M(o, a, b) {\n 0002b360: 20 76 61 72 20 76 2c 20 63 2c 5c 6e 20 20 20 20 var v, c,\n 0002b370: 20 74 30 20 3d 20 30 2c 20 20 74 31 20 3d 20 30 t0 = 0, t1 = 0 0002b380: 2c 20 20 74 32 20 3d 20 30 2c 20 20 74 33 20 3d , t2 = 0, t3 = 0002b390: 20 30 2c 20 20 74 34 20 3d 20 30 2c 20 20 74 35 0, t4 = 0, t5 0002b3a0: 20 3d 20 30 2c 20 20 74 36 20 3d 20 30 2c 20 20 = 0, t6 = 0, 0002b3b0: 74 37 20 3d 20 30 2c 5c 6e 20 20 20 20 20 74 38 t7 = 0,\n t8 0002b3c0: 20 3d 20 30 2c 20 20 74 39 20 3d 20 30 2c 20 74 = 0, t9 = 0, t 0002b3d0: 31 30 20 3d 20 30 2c 20 74 31 31 20 3d 20 30 2c 10 = 0, t11 = 0, 0002b3e0: 20 74 31 32 20 3d 20 30 2c 20 74 31 33 20 3d 20 t12 = 0, t13 = 0002b3f0: 30 2c 20 74 31 34 20 3d 20 30 2c 20 74 31 35 20 0, t14 = 0, t15 0002b400: 3d 20 30 2c 5c 6e 20 20 20 20 74 31 36 20 3d 20 = 0,\n t16 = 0002b410: 30 2c 20 74 31 37 20 3d 20 30 2c 20 74 31 38 20 0, t17 = 0, t18 0002b420: 3d 20 30 2c 20 74 31 39 20 3d 20 30 2c 20 74 32 = 0, t19 = 0, t2 0002b430: 30 20 3d 20 30 2c 20 74 32 31 20 3d 20 30 2c 20 0 = 0, t21 = 0, 0002b440: 74 32 32 20 3d 20 30 2c 20 74 32 33 20 3d 20 30 t22 = 0, t23 = 0 0002b450: 2c 5c 6e 20 20 20 20 74 32 34 20 3d 20 30 2c 20 ,\n t24 = 0, 0002b460: 74 32 35 20 3d 20 30 2c 20 74 32 36 20 3d 20 30 t25 = 0, t26 = 0 0002b470: 2c 20 74 32 37 20 3d 20 30 2c 20 74 32 38 20 3d , t27 = 0, t28 = 0002b480: 20 30 2c 20 74 32 39 20 3d 20 30 2c 20 74 33 30 0, t29 = 0, t30 0002b490: 20 3d 20 30 2c 5c 6e 20 20 20 20 62 30 20 3d 20 = 0,\n b0 = 0002b4a0: 62 5b 30 5d 2c 5c 6e 20 20 20 20 62 31 20 3d 20 b[0],\n b1 = 0002b4b0: 62 5b 31 5d 2c 5c 6e 20 20 20 20 62 32 20 3d 20 b[1],\n b2 = 0002b4c0: 62 5b 32 5d 2c 5c 6e 20 20 20 20 62 33 20 3d 20 b[2],\n b3 = 0002b4d0: 62 5b 33 5d 2c 5c 6e 20 20 20 20 62 34 20 3d 20 b[3],\n b4 = 0002b4e0: 62 5b 34 5d 2c 5c 6e 20 20 20 20 62 35 20 3d 20 b[4],\n b5 = 0002b4f0: 62 5b 35 5d 2c 5c 6e 20 20 20 20 62 36 20 3d 20 b[5],\n b6 = 0002b500: 62 5b 36 5d 2c 5c 6e 20 20 20 20 62 37 20 3d 20 b[6],\n b7 = 0002b510: 62 5b 37 5d 2c 5c 6e 20 20 20 20 62 38 20 3d 20 b[7],\n b8 = 0002b520: 62 5b 38 5d 2c 5c 6e 20 20 20 20 62 39 20 3d 20 b[8],\n b9 = 0002b530: 62 5b 39 5d 2c 5c 6e 20 20 20 20 62 31 30 20 3d b[9],\n b10 = 0002b540: 20 62 5b 31 30 5d 2c 5c 6e 20 20 20 20 62 31 31 b[10],\n b11 0002b550: 20 3d 20 62 5b 31 31 5d 2c 5c 6e 20 20 20 20 62 = b[11],\n b 0002b560: 31 32 20 3d 20 62 5b 31 32 5d 2c 5c 6e 20 20 20 12 = b[12],\n 0002b570: 20 62 31 33 20 3d 20 62 5b 31 33 5d 2c 5c 6e 20 b13 = b[13],\n 0002b580: 20 20 20 62 31 34 20 3d 20 62 5b 31 34 5d 2c 5c b14 = b[14],\ 0002b590: 6e 20 20 20 20 62 31 35 20 3d 20 62 5b 31 35 5d n b15 = b[15] 0002b5a0: 3b 5c 6e 5c 6e 20 20 76 20 3d 20 61 5b 30 5d 3b ;\n\n v = a[0]; 0002b5b0: 5c 6e 20 20 74 30 20 2b 3d 20 76 20 2a 20 62 30 \n t0 += v * b0 0002b5c0: 3b 5c 6e 20 20 74 31 20 2b 3d 20 76 20 2a 20 62 ;\n t1 += v * b 0002b5d0: 31 3b 5c 6e 20 20 74 32 20 2b 3d 20 76 20 2a 20 1;\n t2 += v * 0002b5e0: 62 32 3b 5c 6e 20 20 74 33 20 2b 3d 20 76 20 2a b2;\n t3 += v * 0002b5f0: 20 62 33 3b 5c 6e 20 20 74 34 20 2b 3d 20 76 20 b3;\n t4 += v 0002b600: 2a 20 62 34 3b 5c 6e 20 20 74 35 20 2b 3d 20 76 * b4;\n t5 += v 0002b610: 20 2a 20 62 35 3b 5c 6e 20 20 74 36 20 2b 3d 20 * b5;\n t6 += 0002b620: 76 20 2a 20 62 36 3b 5c 6e 20 20 74 37 20 2b 3d v * b6;\n t7 += 0002b630: 20 76 20 2a 20 62 37 3b 5c 6e 20 20 74 38 20 2b v * b7;\n t8 + 0002b640: 3d 20 76 20 2a 20 62 38 3b 5c 6e 20 20 74 39 20 = v * b8;\n t9 0002b650: 2b 3d 20 76 20 2a 20 62 39 3b 5c 6e 20 20 74 31 += v * b9;\n t1 0002b660: 30 20 2b 3d 20 76 20 2a 20 62 31 30 3b 5c 6e 20 0 += v * b10;\n 0002b670: 20 74 31 31 20 2b 3d 20 76 20 2a 20 62 31 31 3b t11 += v * b11; 0002b680: 5c 6e 20 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 \n t12 += v * b 0002b690: 31 32 3b 5c 6e 20 20 74 31 33 20 2b 3d 20 76 20 12;\n t13 += v 0002b6a0: 2a 20 62 31 33 3b 5c 6e 20 20 74 31 34 20 2b 3d * b13;\n t14 += 0002b6b0: 20 76 20 2a 20 62 31 34 3b 5c 6e 20 20 74 31 35 v * b14;\n t15 0002b6c0: 20 2b 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 20 20 += v * b15;\n 0002b6d0: 76 20 3d 20 61 5b 31 5d 3b 5c 6e 20 20 74 31 20 v = a[1];\n t1 0002b6e0: 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e 20 20 74 32 += v * b0;\n t2 0002b6f0: 20 2b 3d 20 76 20 2a 20 62 31 3b 5c 6e 20 20 74 += v * b1;\n t 0002b700: 33 20 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e 20 20 3 += v * b2;\n 0002b710: 74 34 20 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 t4 += v * b3;\n 0002b720: 20 74 35 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e t5 += v * b4;\n 0002b730: 20 20 74 36 20 2b 3d 20 76 20 2a 20 62 35 3b 5c t6 += v * b5;\ 0002b740: 6e 20 20 74 37 20 2b 3d 20 76 20 2a 20 62 36 3b n t7 += v * b6; 0002b750: 5c 6e 20 20 74 38 20 2b 3d 20 76 20 2a 20 62 37 \n t8 += v * b7 0002b760: 3b 5c 6e 20 20 74 39 20 2b 3d 20 76 20 2a 20 62 ;\n t9 += v * b 0002b770: 38 3b 5c 6e 20 20 74 31 30 20 2b 3d 20 76 20 2a 8;\n t10 += v * 0002b780: 20 62 39 3b 5c 6e 20 20 74 31 31 20 2b 3d 20 76 b9;\n t11 += v 0002b790: 20 2a 20 62 31 30 3b 5c 6e 20 20 74 31 32 20 2b * b10;\n t12 + 0002b7a0: 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 74 31 = v * b11;\n t1 0002b7b0: 33 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c 6e 20 3 += v * b12;\n 0002b7c0: 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 31 33 3b t14 += v * b13; 0002b7d0: 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 20 62 \n t15 += v * b 0002b7e0: 31 34 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 20 14;\n t16 += v 0002b7f0: 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 61 5b * b15;\n v = a[ 0002b800: 32 5d 3b 5c 6e 20 20 74 32 20 2b 3d 20 76 20 2a 2];\n t2 += v * 0002b810: 20 62 30 3b 5c 6e 20 20 74 33 20 2b 3d 20 76 20 b0;\n t3 += v 0002b820: 2a 20 62 31 3b 5c 6e 20 20 74 34 20 2b 3d 20 76 * b1;\n t4 += v 0002b830: 20 2a 20 62 32 3b 5c 6e 20 20 74 35 20 2b 3d 20 * b2;\n t5 += 0002b840: 76 20 2a 20 62 33 3b 5c 6e 20 20 74 36 20 2b 3d v * b3;\n t6 += 0002b850: 20 76 20 2a 20 62 34 3b 5c 6e 20 20 74 37 20 2b v * b4;\n t7 + 0002b860: 3d 20 76 20 2a 20 62 35 3b 5c 6e 20 20 74 38 20 = v * b5;\n t8 0002b870: 2b 3d 20 76 20 2a 20 62 36 3b 5c 6e 20 20 74 39 += v * b6;\n t9 0002b880: 20 2b 3d 20 76 20 2a 20 62 37 3b 5c 6e 20 20 74 += v * b7;\n t 0002b890: 31 30 20 2b 3d 20 76 20 2a 20 62 38 3b 5c 6e 20 10 += v * b8;\n 0002b8a0: 20 74 31 31 20 2b 3d 20 76 20 2a 20 62 39 3b 5c t11 += v * b9;\ 0002b8b0: 6e 20 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 31 n t12 += v * b1 0002b8c0: 30 3b 5c 6e 20 20 74 31 33 20 2b 3d 20 76 20 2a 0;\n t13 += v * 0002b8d0: 20 62 31 31 3b 5c 6e 20 20 74 31 34 20 2b 3d 20 b11;\n t14 += 0002b8e0: 76 20 2a 20 62 31 32 3b 5c 6e 20 20 74 31 35 20 v * b12;\n t15 0002b8f0: 2b 3d 20 76 20 2a 20 62 31 33 3b 5c 6e 20 20 74 += v * b13;\n t 0002b900: 31 36 20 2b 3d 20 76 20 2a 20 62 31 34 3b 5c 6e 16 += v * b14;\n 0002b910: 20 20 74 31 37 20 2b 3d 20 76 20 2a 20 62 31 35 t17 += v * b15 0002b920: 3b 5c 6e 20 20 76 20 3d 20 61 5b 33 5d 3b 5c 6e ;\n v = a[3];\n 0002b930: 20 20 74 33 20 2b 3d 20 76 20 2a 20 62 30 3b 5c t3 += v * b0;\ 0002b940: 6e 20 20 74 34 20 2b 3d 20 76 20 2a 20 62 31 3b n t4 += v * b1; 0002b950: 5c 6e 20 20 74 35 20 2b 3d 20 76 20 2a 20 62 32 \n t5 += v * b2 0002b960: 3b 5c 6e 20 20 74 36 20 2b 3d 20 76 20 2a 20 62 ;\n t6 += v * b 0002b970: 33 3b 5c 6e 20 20 74 37 20 2b 3d 20 76 20 2a 20 3;\n t7 += v * 0002b980: 62 34 3b 5c 6e 20 20 74 38 20 2b 3d 20 76 20 2a b4;\n t8 += v * 0002b990: 20 62 35 3b 5c 6e 20 20 74 39 20 2b 3d 20 76 20 b5;\n t9 += v 0002b9a0: 2a 20 62 36 3b 5c 6e 20 20 74 31 30 20 2b 3d 20 * b6;\n t10 += 0002b9b0: 76 20 2a 20 62 37 3b 5c 6e 20 20 74 31 31 20 2b v * b7;\n t11 + 0002b9c0: 3d 20 76 20 2a 20 62 38 3b 5c 6e 20 20 74 31 32 = v * b8;\n t12 0002b9d0: 20 2b 3d 20 76 20 2a 20 62 39 3b 5c 6e 20 20 74 += v * b9;\n t 0002b9e0: 31 33 20 2b 3d 20 76 20 2a 20 62 31 30 3b 5c 6e 13 += v * b10;\n 0002b9f0: 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 31 31 t14 += v * b11 0002ba00: 3b 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 20 ;\n t15 += v * 0002ba10: 62 31 32 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 b12;\n t16 += v 0002ba20: 20 2a 20 62 31 33 3b 5c 6e 20 20 74 31 37 20 2b * b13;\n t17 + 0002ba30: 3d 20 76 20 2a 20 62 31 34 3b 5c 6e 20 20 74 31 = v * b14;\n t1 0002ba40: 38 20 2b 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 20 8 += v * b15;\n 0002ba50: 20 76 20 3d 20 61 5b 34 5d 3b 5c 6e 20 20 74 34 v = a[4];\n t4 0002ba60: 20 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e 20 20 74 += v * b0;\n t 0002ba70: 35 20 2b 3d 20 76 20 2a 20 62 31 3b 5c 6e 20 20 5 += v * b1;\n 0002ba80: 74 36 20 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e 20 t6 += v * b2;\n 0002ba90: 20 74 37 20 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e t7 += v * b3;\n 0002baa0: 20 20 74 38 20 2b 3d 20 76 20 2a 20 62 34 3b 5c t8 += v * b4;\ 0002bab0: 6e 20 20 74 39 20 2b 3d 20 76 20 2a 20 62 35 3b n t9 += v * b5; 0002bac0: 5c 6e 20 20 74 31 30 20 2b 3d 20 76 20 2a 20 62 \n t10 += v * b 0002bad0: 36 3b 5c 6e 20 20 74 31 31 20 2b 3d 20 76 20 2a 6;\n t11 += v * 0002bae0: 20 62 37 3b 5c 6e 20 20 74 31 32 20 2b 3d 20 76 b7;\n t12 += v 0002baf0: 20 2a 20 62 38 3b 5c 6e 20 20 74 31 33 20 2b 3d * b8;\n t13 += 0002bb00: 20 76 20 2a 20 62 39 3b 5c 6e 20 20 74 31 34 20 v * b9;\n t14 0002bb10: 2b 3d 20 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 += v * b10;\n t 0002bb20: 31 35 20 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 15 += v * b11;\n 0002bb30: 20 20 74 31 36 20 2b 3d 20 76 20 2a 20 62 31 32 t16 += v * b12 0002bb40: 3b 5c 6e 20 20 74 31 37 20 2b 3d 20 76 20 2a 20 ;\n t17 += v * 0002bb50: 62 31 33 3b 5c 6e 20 20 74 31 38 20 2b 3d 20 76 b13;\n t18 += v 0002bb60: 20 2a 20 62 31 34 3b 5c 6e 20 20 74 31 39 20 2b * b14;\n t19 + 0002bb70: 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 = v * b15;\n v 0002bb80: 3d 20 61 5b 35 5d 3b 5c 6e 20 20 74 35 20 2b 3d = a[5];\n t5 += 0002bb90: 20 76 20 2a 20 62 30 3b 5c 6e 20 20 74 36 20 2b v * b0;\n t6 + 0002bba0: 3d 20 76 20 2a 20 62 31 3b 5c 6e 20 20 74 37 20 = v * b1;\n t7 0002bbb0: 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e 20 20 74 38 += v * b2;\n t8 0002bbc0: 20 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 74 += v * b3;\n t 0002bbd0: 39 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e 20 20 9 += v * b4;\n 0002bbe0: 74 31 30 20 2b 3d 20 76 20 2a 20 62 35 3b 5c 6e t10 += v * b5;\n 0002bbf0: 20 20 74 31 31 20 2b 3d 20 76 20 2a 20 62 36 3b t11 += v * b6; 0002bc00: 5c 6e 20 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 \n t12 += v * b 0002bc10: 37 3b 5c 6e 20 20 74 31 33 20 2b 3d 20 76 20 2a 7;\n t13 += v * 0002bc20: 20 62 38 3b 5c 6e 20 20 74 31 34 20 2b 3d 20 76 b8;\n t14 += v 0002bc30: 20 2a 20 62 39 3b 5c 6e 20 20 74 31 35 20 2b 3d * b9;\n t15 += 0002bc40: 20 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 31 36 v * b10;\n t16 0002bc50: 20 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 += v * b11;\n 0002bc60: 74 31 37 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c t17 += v * b12;\ 0002bc70: 6e 20 20 74 31 38 20 2b 3d 20 76 20 2a 20 62 31 n t18 += v * b1 0002bc80: 33 3b 5c 6e 20 20 74 31 39 20 2b 3d 20 76 20 2a 3;\n t19 += v * 0002bc90: 20 62 31 34 3b 5c 6e 20 20 74 32 30 20 2b 3d 20 b14;\n t20 += 0002bca0: 76 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 v * b15;\n v = 0002bcb0: 61 5b 36 5d 3b 5c 6e 20 20 74 36 20 2b 3d 20 76 a[6];\n t6 += v 0002bcc0: 20 2a 20 62 30 3b 5c 6e 20 20 74 37 20 2b 3d 20 * b0;\n t7 += 0002bcd0: 76 20 2a 20 62 31 3b 5c 6e 20 20 74 38 20 2b 3d v * b1;\n t8 += 0002bce0: 20 76 20 2a 20 62 32 3b 5c 6e 20 20 74 39 20 2b v * b2;\n t9 + 0002bcf0: 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 74 31 30 = v * b3;\n t10 0002bd00: 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e 20 20 74 += v * b4;\n t 0002bd10: 31 31 20 2b 3d 20 76 20 2a 20 62 35 3b 5c 6e 20 11 += v * b5;\n 0002bd20: 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 36 3b 5c t12 += v * b6;\ 0002bd30: 6e 20 20 74 31 33 20 2b 3d 20 76 20 2a 20 62 37 n t13 += v * b7 0002bd40: 3b 5c 6e 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 ;\n t14 += v * 0002bd50: 62 38 3b 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 b8;\n t15 += v 0002bd60: 2a 20 62 39 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 * b9;\n t16 += 0002bd70: 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 31 37 20 v * b10;\n t17 0002bd80: 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 74 += v * b11;\n t 0002bd90: 31 38 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c 6e 18 += v * b12;\n 0002bda0: 20 20 74 31 39 20 2b 3d 20 76 20 2a 20 62 31 33 t19 += v * b13 0002bdb0: 3b 5c 6e 20 20 74 32 30 20 2b 3d 20 76 20 2a 20 ;\n t20 += v * 0002bdc0: 62 31 34 3b 5c 6e 20 20 74 32 31 20 2b 3d 20 76 b14;\n t21 += v 0002bdd0: 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 61 * b15;\n v = a 0002bde0: 5b 37 5d 3b 5c 6e 20 20 74 37 20 2b 3d 20 76 20 [7];\n t7 += v 0002bdf0: 2a 20 62 30 3b 5c 6e 20 20 74 38 20 2b 3d 20 76 * b0;\n t8 += v 0002be00: 20 2a 20 62 31 3b 5c 6e 20 20 74 39 20 2b 3d 20 * b1;\n t9 += 0002be10: 76 20 2a 20 62 32 3b 5c 6e 20 20 74 31 30 20 2b v * b2;\n t10 + 0002be20: 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 74 31 31 = v * b3;\n t11 0002be30: 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e 20 20 74 += v * b4;\n t 0002be40: 31 32 20 2b 3d 20 76 20 2a 20 62 35 3b 5c 6e 20 12 += v * b5;\n 0002be50: 20 74 31 33 20 2b 3d 20 76 20 2a 20 62 36 3b 5c t13 += v * b6;\ 0002be60: 6e 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 37 n t14 += v * b7 0002be70: 3b 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 20 ;\n t15 += v * 0002be80: 62 38 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 20 b8;\n t16 += v 0002be90: 2a 20 62 39 3b 5c 6e 20 20 74 31 37 20 2b 3d 20 * b9;\n t17 += 0002bea0: 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 31 38 20 v * b10;\n t18 0002beb0: 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 74 += v * b11;\n t 0002bec0: 31 39 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c 6e 19 += v * b12;\n 0002bed0: 20 20 74 32 30 20 2b 3d 20 76 20 2a 20 62 31 33 t20 += v * b13 0002bee0: 3b 5c 6e 20 20 74 32 31 20 2b 3d 20 76 20 2a 20 ;\n t21 += v * 0002bef0: 62 31 34 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 b14;\n t22 += v 0002bf00: 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 61 * b15;\n v = a 0002bf10: 5b 38 5d 3b 5c 6e 20 20 74 38 20 2b 3d 20 76 20 [8];\n t8 += v 0002bf20: 2a 20 62 30 3b 5c 6e 20 20 74 39 20 2b 3d 20 76 * b0;\n t9 += v 0002bf30: 20 2a 20 62 31 3b 5c 6e 20 20 74 31 30 20 2b 3d * b1;\n t10 += 0002bf40: 20 76 20 2a 20 62 32 3b 5c 6e 20 20 74 31 31 20 v * b2;\n t11 0002bf50: 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 74 31 += v * b3;\n t1 0002bf60: 32 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e 20 20 2 += v * b4;\n 0002bf70: 74 31 33 20 2b 3d 20 76 20 2a 20 62 35 3b 5c 6e t13 += v * b5;\n 0002bf80: 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 36 3b t14 += v * b6; 0002bf90: 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 20 62 \n t15 += v * b 0002bfa0: 37 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 20 2a 7;\n t16 += v * 0002bfb0: 20 62 38 3b 5c 6e 20 20 74 31 37 20 2b 3d 20 76 b8;\n t17 += v 0002bfc0: 20 2a 20 62 39 3b 5c 6e 20 20 74 31 38 20 2b 3d * b9;\n t18 += 0002bfd0: 20 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 31 39 v * b10;\n t19 0002bfe0: 20 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 += v * b11;\n 0002bff0: 74 32 30 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c t20 += v * b12;\ 0002c000: 6e 20 20 74 32 31 20 2b 3d 20 76 20 2a 20 62 31 n t21 += v * b1 0002c010: 33 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 20 2a 3;\n t22 += v * 0002c020: 20 62 31 34 3b 5c 6e 20 20 74 32 33 20 2b 3d 20 b14;\n t23 += 0002c030: 76 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 v * b15;\n v = 0002c040: 61 5b 39 5d 3b 5c 6e 20 20 74 39 20 2b 3d 20 76 a[9];\n t9 += v 0002c050: 20 2a 20 62 30 3b 5c 6e 20 20 74 31 30 20 2b 3d * b0;\n t10 += 0002c060: 20 76 20 2a 20 62 31 3b 5c 6e 20 20 74 31 31 20 v * b1;\n t11 0002c070: 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e 20 20 74 31 += v * b2;\n t1 0002c080: 32 20 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 2 += v * b3;\n 0002c090: 74 31 33 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e t13 += v * b4;\n 0002c0a0: 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 35 3b t14 += v * b5; 0002c0b0: 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 20 62 \n t15 += v * b 0002c0c0: 36 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 20 2a 6;\n t16 += v * 0002c0d0: 20 62 37 3b 5c 6e 20 20 74 31 37 20 2b 3d 20 76 b7;\n t17 += v 0002c0e0: 20 2a 20 62 38 3b 5c 6e 20 20 74 31 38 20 2b 3d * b8;\n t18 += 0002c0f0: 20 76 20 2a 20 62 39 3b 5c 6e 20 20 74 31 39 20 v * b9;\n t19 0002c100: 2b 3d 20 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 += v * b10;\n t 0002c110: 32 30 20 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 += v * b11;\n 0002c120: 20 20 74 32 31 20 2b 3d 20 76 20 2a 20 62 31 32 t21 += v * b12 0002c130: 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 20 2a 20 ;\n t22 += v * 0002c140: 62 31 33 3b 5c 6e 20 20 74 32 33 20 2b 3d 20 76 b13;\n t23 += v 0002c150: 20 2a 20 62 31 34 3b 5c 6e 20 20 74 32 34 20 2b * b14;\n t24 + 0002c160: 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 = v * b15;\n v 0002c170: 3d 20 61 5b 31 30 5d 3b 5c 6e 20 20 74 31 30 20 = a[10];\n t10 0002c180: 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e 20 20 74 31 += v * b0;\n t1 0002c190: 31 20 2b 3d 20 76 20 2a 20 62 31 3b 5c 6e 20 20 1 += v * b1;\n 0002c1a0: 74 31 32 20 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e t12 += v * b2;\n 0002c1b0: 20 20 74 31 33 20 2b 3d 20 76 20 2a 20 62 33 3b t13 += v * b3; 0002c1c0: 5c 6e 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 \n t14 += v * b 0002c1d0: 34 3b 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 4;\n t15 += v * 0002c1e0: 20 62 35 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 b5;\n t16 += v 0002c1f0: 20 2a 20 62 36 3b 5c 6e 20 20 74 31 37 20 2b 3d * b6;\n t17 += 0002c200: 20 76 20 2a 20 62 37 3b 5c 6e 20 20 74 31 38 20 v * b7;\n t18 0002c210: 2b 3d 20 76 20 2a 20 62 38 3b 5c 6e 20 20 74 31 += v * b8;\n t1 0002c220: 39 20 2b 3d 20 76 20 2a 20 62 39 3b 5c 6e 20 20 9 += v * b9;\n 0002c230: 74 32 30 20 2b 3d 20 76 20 2a 20 62 31 30 3b 5c t20 += v * b10;\ 0002c240: 6e 20 20 74 32 31 20 2b 3d 20 76 20 2a 20 62 31 n t21 += v * b1 0002c250: 31 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 20 2a 1;\n t22 += v * 0002c260: 20 62 31 32 3b 5c 6e 20 20 74 32 33 20 2b 3d 20 b12;\n t23 += 0002c270: 76 20 2a 20 62 31 33 3b 5c 6e 20 20 74 32 34 20 v * b13;\n t24 0002c280: 2b 3d 20 76 20 2a 20 62 31 34 3b 5c 6e 20 20 74 += v * b14;\n t 0002c290: 32 35 20 2b 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 25 += v * b15;\n 0002c2a0: 20 20 76 20 3d 20 61 5b 31 31 5d 3b 5c 6e 20 20 v = a[11];\n 0002c2b0: 74 31 31 20 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e t11 += v * b0;\n 0002c2c0: 20 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 31 3b t12 += v * b1; 0002c2d0: 5c 6e 20 20 74 31 33 20 2b 3d 20 76 20 2a 20 62 \n t13 += v * b 0002c2e0: 32 3b 5c 6e 20 20 74 31 34 20 2b 3d 20 76 20 2a 2;\n t14 += v * 0002c2f0: 20 62 33 3b 5c 6e 20 20 74 31 35 20 2b 3d 20 76 b3;\n t15 += v 0002c300: 20 2a 20 62 34 3b 5c 6e 20 20 74 31 36 20 2b 3d * b4;\n t16 += 0002c310: 20 76 20 2a 20 62 35 3b 5c 6e 20 20 74 31 37 20 v * b5;\n t17 0002c320: 2b 3d 20 76 20 2a 20 62 36 3b 5c 6e 20 20 74 31 += v * b6;\n t1 0002c330: 38 20 2b 3d 20 76 20 2a 20 62 37 3b 5c 6e 20 20 8 += v * b7;\n 0002c340: 74 31 39 20 2b 3d 20 76 20 2a 20 62 38 3b 5c 6e t19 += v * b8;\n 0002c350: 20 20 74 32 30 20 2b 3d 20 76 20 2a 20 62 39 3b t20 += v * b9; 0002c360: 5c 6e 20 20 74 32 31 20 2b 3d 20 76 20 2a 20 62 \n t21 += v * b 0002c370: 31 30 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 20 10;\n t22 += v 0002c380: 2a 20 62 31 31 3b 5c 6e 20 20 74 32 33 20 2b 3d * b11;\n t23 += 0002c390: 20 76 20 2a 20 62 31 32 3b 5c 6e 20 20 74 32 34 v * b12;\n t24 0002c3a0: 20 2b 3d 20 76 20 2a 20 62 31 33 3b 5c 6e 20 20 += v * b13;\n 0002c3b0: 74 32 35 20 2b 3d 20 76 20 2a 20 62 31 34 3b 5c t25 += v * b14;\ 0002c3c0: 6e 20 20 74 32 36 20 2b 3d 20 76 20 2a 20 62 31 n t26 += v * b1 0002c3d0: 35 3b 5c 6e 20 20 76 20 3d 20 61 5b 31 32 5d 3b 5;\n v = a[12]; 0002c3e0: 5c 6e 20 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 \n t12 += v * b 0002c3f0: 30 3b 5c 6e 20 20 74 31 33 20 2b 3d 20 76 20 2a 0;\n t13 += v * 0002c400: 20 62 31 3b 5c 6e 20 20 74 31 34 20 2b 3d 20 76 b1;\n t14 += v 0002c410: 20 2a 20 62 32 3b 5c 6e 20 20 74 31 35 20 2b 3d * b2;\n t15 += 0002c420: 20 76 20 2a 20 62 33 3b 5c 6e 20 20 74 31 36 20 v * b3;\n t16 0002c430: 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e 20 20 74 31 += v * b4;\n t1 0002c440: 37 20 2b 3d 20 76 20 2a 20 62 35 3b 5c 6e 20 20 7 += v * b5;\n 0002c450: 74 31 38 20 2b 3d 20 76 20 2a 20 62 36 3b 5c 6e t18 += v * b6;\n 0002c460: 20 20 74 31 39 20 2b 3d 20 76 20 2a 20 62 37 3b t19 += v * b7; 0002c470: 5c 6e 20 20 74 32 30 20 2b 3d 20 76 20 2a 20 62 \n t20 += v * b 0002c480: 38 3b 5c 6e 20 20 74 32 31 20 2b 3d 20 76 20 2a 8;\n t21 += v * 0002c490: 20 62 39 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 b9;\n t22 += v 0002c4a0: 20 2a 20 62 31 30 3b 5c 6e 20 20 74 32 33 20 2b * b10;\n t23 + 0002c4b0: 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 74 32 = v * b11;\n t2 0002c4c0: 34 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c 6e 20 4 += v * b12;\n 0002c4d0: 20 74 32 35 20 2b 3d 20 76 20 2a 20 62 31 33 3b t25 += v * b13; 0002c4e0: 5c 6e 20 20 74 32 36 20 2b 3d 20 76 20 2a 20 62 \n t26 += v * b 0002c4f0: 31 34 3b 5c 6e 20 20 74 32 37 20 2b 3d 20 76 20 14;\n t27 += v 0002c500: 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 61 5b * b15;\n v = a[ 0002c510: 31 33 5d 3b 5c 6e 20 20 74 31 33 20 2b 3d 20 76 13];\n t13 += v 0002c520: 20 2a 20 62 30 3b 5c 6e 20 20 74 31 34 20 2b 3d * b0;\n t14 += 0002c530: 20 76 20 2a 20 62 31 3b 5c 6e 20 20 74 31 35 20 v * b1;\n t15 0002c540: 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e 20 20 74 31 += v * b2;\n t1 0002c550: 36 20 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 6 += v * b3;\n 0002c560: 74 31 37 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e t17 += v * b4;\n 0002c570: 20 20 74 31 38 20 2b 3d 20 76 20 2a 20 62 35 3b t18 += v * b5; 0002c580: 5c 6e 20 20 74 31 39 20 2b 3d 20 76 20 2a 20 62 \n t19 += v * b 0002c590: 36 3b 5c 6e 20 20 74 32 30 20 2b 3d 20 76 20 2a 6;\n t20 += v * 0002c5a0: 20 62 37 3b 5c 6e 20 20 74 32 31 20 2b 3d 20 76 b7;\n t21 += v 0002c5b0: 20 2a 20 62 38 3b 5c 6e 20 20 74 32 32 20 2b 3d * b8;\n t22 += 0002c5c0: 20 76 20 2a 20 62 39 3b 5c 6e 20 20 74 32 33 20 v * b9;\n t23 0002c5d0: 2b 3d 20 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 += v * b10;\n t 0002c5e0: 32 34 20 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 24 += v * b11;\n 0002c5f0: 20 20 74 32 35 20 2b 3d 20 76 20 2a 20 62 31 32 t25 += v * b12 0002c600: 3b 5c 6e 20 20 74 32 36 20 2b 3d 20 76 20 2a 20 ;\n t26 += v * 0002c610: 62 31 33 3b 5c 6e 20 20 74 32 37 20 2b 3d 20 76 b13;\n t27 += v 0002c620: 20 2a 20 62 31 34 3b 5c 6e 20 20 74 32 38 20 2b * b14;\n t28 + 0002c630: 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 = v * b15;\n v 0002c640: 3d 20 61 5b 31 34 5d 3b 5c 6e 20 20 74 31 34 20 = a[14];\n t14 0002c650: 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e 20 20 74 31 += v * b0;\n t1 0002c660: 35 20 2b 3d 20 76 20 2a 20 62 31 3b 5c 6e 20 20 5 += v * b1;\n 0002c670: 74 31 36 20 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e t16 += v * b2;\n 0002c680: 20 20 74 31 37 20 2b 3d 20 76 20 2a 20 62 33 3b t17 += v * b3; 0002c690: 5c 6e 20 20 74 31 38 20 2b 3d 20 76 20 2a 20 62 \n t18 += v * b 0002c6a0: 34 3b 5c 6e 20 20 74 31 39 20 2b 3d 20 76 20 2a 4;\n t19 += v * 0002c6b0: 20 62 35 3b 5c 6e 20 20 74 32 30 20 2b 3d 20 76 b5;\n t20 += v 0002c6c0: 20 2a 20 62 36 3b 5c 6e 20 20 74 32 31 20 2b 3d * b6;\n t21 += 0002c6d0: 20 76 20 2a 20 62 37 3b 5c 6e 20 20 74 32 32 20 v * b7;\n t22 0002c6e0: 2b 3d 20 76 20 2a 20 62 38 3b 5c 6e 20 20 74 32 += v * b8;\n t2 0002c6f0: 33 20 2b 3d 20 76 20 2a 20 62 39 3b 5c 6e 20 20 3 += v * b9;\n 0002c700: 74 32 34 20 2b 3d 20 76 20 2a 20 62 31 30 3b 5c t24 += v * b10;\ 0002c710: 6e 20 20 74 32 35 20 2b 3d 20 76 20 2a 20 62 31 n t25 += v * b1 0002c720: 31 3b 5c 6e 20 20 74 32 36 20 2b 3d 20 76 20 2a 1;\n t26 += v * 0002c730: 20 62 31 32 3b 5c 6e 20 20 74 32 37 20 2b 3d 20 b12;\n t27 += 0002c740: 76 20 2a 20 62 31 33 3b 5c 6e 20 20 74 32 38 20 v * b13;\n t28 0002c750: 2b 3d 20 76 20 2a 20 62 31 34 3b 5c 6e 20 20 74 += v * b14;\n t 0002c760: 32 39 20 2b 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 29 += v * b15;\n 0002c770: 20 20 76 20 3d 20 61 5b 31 35 5d 3b 5c 6e 20 20 v = a[15];\n 0002c780: 74 31 35 20 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e t15 += v * b0;\n 0002c790: 20 20 74 31 36 20 2b 3d 20 76 20 2a 20 62 31 3b t16 += v * b1; 0002c7a0: 5c 6e 20 20 74 31 37 20 2b 3d 20 76 20 2a 20 62 \n t17 += v * b 0002c7b0: 32 3b 5c 6e 20 20 74 31 38 20 2b 3d 20 76 20 2a 2;\n t18 += v * 0002c7c0: 20 62 33 3b 5c 6e 20 20 74 31 39 20 2b 3d 20 76 b3;\n t19 += v 0002c7d0: 20 2a 20 62 34 3b 5c 6e 20 20 74 32 30 20 2b 3d * b4;\n t20 += 0002c7e0: 20 76 20 2a 20 62 35 3b 5c 6e 20 20 74 32 31 20 v * b5;\n t21 0002c7f0: 2b 3d 20 76 20 2a 20 62 36 3b 5c 6e 20 20 74 32 += v * b6;\n t2 0002c800: 32 20 2b 3d 20 76 20 2a 20 62 37 3b 5c 6e 20 20 2 += v * b7;\n 0002c810: 74 32 33 20 2b 3d 20 76 20 2a 20 62 38 3b 5c 6e t23 += v * b8;\n 0002c820: 20 20 74 32 34 20 2b 3d 20 76 20 2a 20 62 39 3b t24 += v * b9; 0002c830: 5c 6e 20 20 74 32 35 20 2b 3d 20 76 20 2a 20 62 \n t25 += v * b 0002c840: 31 30 3b 5c 6e 20 20 74 32 36 20 2b 3d 20 76 20 10;\n t26 += v 0002c850: 2a 20 62 31 31 3b 5c 6e 20 20 74 32 37 20 2b 3d * b11;\n t27 += 0002c860: 20 76 20 2a 20 62 31 32 3b 5c 6e 20 20 74 32 38 v * b12;\n t28 0002c870: 20 2b 3d 20 76 20 2a 20 62 31 33 3b 5c 6e 20 20 += v * b13;\n 0002c880: 74 32 39 20 2b 3d 20 76 20 2a 20 62 31 34 3b 5c t29 += v * b14;\ 0002c890: 6e 20 20 74 33 30 20 2b 3d 20 76 20 2a 20 62 31 n t30 += v * b1 0002c8a0: 35 3b 5c 6e 5c 6e 20 20 74 30 20 20 2b 3d 20 33 5;\n\n t0 += 3 0002c8b0: 38 20 2a 20 74 31 36 3b 5c 6e 20 20 74 31 20 20 8 * t16;\n t1 0002c8c0: 2b 3d 20 33 38 20 2a 20 74 31 37 3b 5c 6e 20 20 += 38 * t17;\n 0002c8d0: 74 32 20 20 2b 3d 20 33 38 20 2a 20 74 31 38 3b t2 += 38 * t18; 0002c8e0: 5c 6e 20 20 74 33 20 20 2b 3d 20 33 38 20 2a 20 \n t3 += 38 * 0002c8f0: 74 31 39 3b 5c 6e 20 20 74 34 20 20 2b 3d 20 33 t19;\n t4 += 3 0002c900: 38 20 2a 20 74 32 30 3b 5c 6e 20 20 74 35 20 20 8 * t20;\n t5 0002c910: 2b 3d 20 33 38 20 2a 20 74 32 31 3b 5c 6e 20 20 += 38 * t21;\n 0002c920: 74 36 20 20 2b 3d 20 33 38 20 2a 20 74 32 32 3b t6 += 38 * t22; 0002c930: 5c 6e 20 20 74 37 20 20 2b 3d 20 33 38 20 2a 20 \n t7 += 38 * 0002c940: 74 32 33 3b 5c 6e 20 20 74 38 20 20 2b 3d 20 33 t23;\n t8 += 3 0002c950: 38 20 2a 20 74 32 34 3b 5c 6e 20 20 74 39 20 20 8 * t24;\n t9 0002c960: 2b 3d 20 33 38 20 2a 20 74 32 35 3b 5c 6e 20 20 += 38 * t25;\n 0002c970: 74 31 30 20 2b 3d 20 33 38 20 2a 20 74 32 36 3b t10 += 38 * t26; 0002c980: 5c 6e 20 20 74 31 31 20 2b 3d 20 33 38 20 2a 20 \n t11 += 38 * 0002c990: 74 32 37 3b 5c 6e 20 20 74 31 32 20 2b 3d 20 33 t27;\n t12 += 3 0002c9a0: 38 20 2a 20 74 32 38 3b 5c 6e 20 20 74 31 33 20 8 * t28;\n t13 0002c9b0: 2b 3d 20 33 38 20 2a 20 74 32 39 3b 5c 6e 20 20 += 38 * t29;\n 0002c9c0: 74 31 34 20 2b 3d 20 33 38 20 2a 20 74 33 30 3b t14 += 38 * t30; 0002c9d0: 5c 6e 20 20 2f 2f 20 74 31 35 20 6c 65 66 74 20 \n // t15 left 0002c9e0: 61 73 20 69 73 5c 6e 5c 6e 20 20 2f 2f 20 66 69 as is\n\n // fi 0002c9f0: 72 73 74 20 63 61 72 5c 6e 20 20 63 20 3d 20 31 rst car\n c = 1 0002ca00: 3b 5c 6e 20 20 76 20 3d 20 20 74 30 20 2b 20 63 ;\n v = t0 + c 0002ca10: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002ca20: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002ca30: 33 36 29 3b 20 20 74 30 20 3d 20 76 20 2d 20 63 36); t0 = v - c 0002ca40: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002ca50: 20 20 74 31 20 2b 20 63 20 2b 20 36 35 35 33 35 t1 + c + 65535 0002ca60: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002ca70: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 31 (v / 65536); t1 0002ca80: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002ca90: 3b 5c 6e 20 20 76 20 3d 20 20 74 32 20 2b 20 63 ;\n v = t2 + c 0002caa0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cab0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cac0: 33 36 29 3b 20 20 74 32 20 3d 20 76 20 2d 20 63 36); t2 = v - c 0002cad0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cae0: 20 20 74 33 20 2b 20 63 20 2b 20 36 35 35 33 35 t3 + c + 65535 0002caf0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cb00: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 33 (v / 65536); t3 0002cb10: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cb20: 3b 5c 6e 20 20 76 20 3d 20 20 74 34 20 2b 20 63 ;\n v = t4 + c 0002cb30: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cb40: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cb50: 33 36 29 3b 20 20 74 34 20 3d 20 76 20 2d 20 63 36); t4 = v - c 0002cb60: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cb70: 20 20 74 35 20 2b 20 63 20 2b 20 36 35 35 33 35 t5 + c + 65535 0002cb80: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cb90: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 35 (v / 65536); t5 0002cba0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cbb0: 3b 5c 6e 20 20 76 20 3d 20 20 74 36 20 2b 20 63 ;\n v = t6 + c 0002cbc0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cbd0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cbe0: 33 36 29 3b 20 20 74 36 20 3d 20 76 20 2d 20 63 36); t6 = v - c 0002cbf0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cc00: 20 20 74 37 20 2b 20 63 20 2b 20 36 35 35 33 35 t7 + c + 65535 0002cc10: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cc20: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 37 (v / 65536); t7 0002cc30: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cc40: 3b 5c 6e 20 20 76 20 3d 20 20 74 38 20 2b 20 63 ;\n v = t8 + c 0002cc50: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cc60: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cc70: 33 36 29 3b 20 20 74 38 20 3d 20 76 20 2d 20 63 36); t8 = v - c 0002cc80: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cc90: 20 20 74 39 20 2b 20 63 20 2b 20 36 35 35 33 35 t9 + c + 65535 0002cca0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002ccb0: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 39 (v / 65536); t9 0002ccc0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002ccd0: 3b 5c 6e 20 20 76 20 3d 20 74 31 30 20 2b 20 63 ;\n v = t10 + c 0002cce0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002ccf0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cd00: 33 36 29 3b 20 74 31 30 20 3d 20 76 20 2d 20 63 36); t10 = v - c 0002cd10: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cd20: 20 74 31 31 20 2b 20 63 20 2b 20 36 35 35 33 35 t11 + c + 65535 0002cd30: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cd40: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 31 (v / 65536); t11 0002cd50: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cd60: 3b 5c 6e 20 20 76 20 3d 20 74 31 32 20 2b 20 63 ;\n v = t12 + c 0002cd70: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cd80: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cd90: 33 36 29 3b 20 74 31 32 20 3d 20 76 20 2d 20 63 36); t12 = v - c 0002cda0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cdb0: 20 74 31 33 20 2b 20 63 20 2b 20 36 35 35 33 35 t13 + c + 65535 0002cdc0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cdd0: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 33 (v / 65536); t13 0002cde0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cdf0: 3b 5c 6e 20 20 76 20 3d 20 74 31 34 20 2b 20 63 ;\n v = t14 + c 0002ce00: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002ce10: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002ce20: 33 36 29 3b 20 74 31 34 20 3d 20 76 20 2d 20 63 36); t14 = v - c 0002ce30: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002ce40: 20 74 31 35 20 2b 20 63 20 2b 20 36 35 35 33 35 t15 + c + 65535 0002ce50: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002ce60: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 35 (v / 65536); t15 0002ce70: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002ce80: 3b 5c 6e 20 20 74 30 20 2b 3d 20 63 2d 31 20 2b ;\n t0 += c-1 + 0002ce90: 20 33 37 20 2a 20 28 63 2d 31 29 3b 5c 6e 5c 6e 37 * (c-1);\n\n 0002cea0: 20 20 2f 2f 20 73 65 63 6f 6e 64 20 63 61 72 5c // second car\ 0002ceb0: 6e 20 20 63 20 3d 20 31 3b 5c 6e 20 20 76 20 3d n c = 1;\n v = 0002cec0: 20 20 74 30 20 2b 20 63 20 2b 20 36 35 35 33 35 t0 + c + 65535 0002ced0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cee0: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 30 (v / 65536); t0 0002cef0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cf00: 3b 5c 6e 20 20 76 20 3d 20 20 74 31 20 2b 20 63 ;\n v = t1 + c 0002cf10: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cf20: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cf30: 33 36 29 3b 20 20 74 31 20 3d 20 76 20 2d 20 63 36); t1 = v - c 0002cf40: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cf50: 20 20 74 32 20 2b 20 63 20 2b 20 36 35 35 33 35 t2 + c + 65535 0002cf60: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cf70: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 32 (v / 65536); t2 0002cf80: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cf90: 3b 5c 6e 20 20 76 20 3d 20 20 74 33 20 2b 20 63 ;\n v = t3 + c 0002cfa0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cfb0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cfc0: 33 36 29 3b 20 20 74 33 20 3d 20 76 20 2d 20 63 36); t3 = v - c 0002cfd0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cfe0: 20 20 74 34 20 2b 20 63 20 2b 20 36 35 35 33 35 t4 + c + 65535 0002cff0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d000: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 34 (v / 65536); t4 0002d010: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d020: 3b 5c 6e 20 20 76 20 3d 20 20 74 35 20 2b 20 63 ;\n v = t5 + c 0002d030: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d040: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d050: 33 36 29 3b 20 20 74 35 20 3d 20 76 20 2d 20 63 36); t5 = v - c 0002d060: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002d070: 20 20 74 36 20 2b 20 63 20 2b 20 36 35 35 33 35 t6 + c + 65535 0002d080: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d090: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 36 (v / 65536); t6 0002d0a0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d0b0: 3b 5c 6e 20 20 76 20 3d 20 20 74 37 20 2b 20 63 ;\n v = t7 + c 0002d0c0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d0d0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d0e0: 33 36 29 3b 20 20 74 37 20 3d 20 76 20 2d 20 63 36); t7 = v - c 0002d0f0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002d100: 20 20 74 38 20 2b 20 63 20 2b 20 36 35 35 33 35 t8 + c + 65535 0002d110: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d120: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 38 (v / 65536); t8 0002d130: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d140: 3b 5c 6e 20 20 76 20 3d 20 20 74 39 20 2b 20 63 ;\n v = t9 + c 0002d150: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d160: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d170: 33 36 29 3b 20 20 74 39 20 3d 20 76 20 2d 20 63 36); t9 = v - c 0002d180: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002d190: 20 74 31 30 20 2b 20 63 20 2b 20 36 35 35 33 35 t10 + c + 65535 0002d1a0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d1b0: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 30 (v / 65536); t10 0002d1c0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d1d0: 3b 5c 6e 20 20 76 20 3d 20 74 31 31 20 2b 20 63 ;\n v = t11 + c 0002d1e0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d1f0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d200: 33 36 29 3b 20 74 31 31 20 3d 20 76 20 2d 20 63 36); t11 = v - c 0002d210: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002d220: 20 74 31 32 20 2b 20 63 20 2b 20 36 35 35 33 35 t12 + c + 65535 0002d230: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d240: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 32 (v / 65536); t12 0002d250: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d260: 3b 5c 6e 20 20 76 20 3d 20 74 31 33 20 2b 20 63 ;\n v = t13 + c 0002d270: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d280: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d290: 33 36 29 3b 20 74 31 33 20 3d 20 76 20 2d 20 63 36); t13 = v - c 0002d2a0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002d2b0: 20 74 31 34 20 2b 20 63 20 2b 20 36 35 35 33 35 t14 + c + 65535 0002d2c0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d2d0: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 34 (v / 65536); t14 0002d2e0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d2f0: 3b 5c 6e 20 20 76 20 3d 20 74 31 35 20 2b 20 63 ;\n v = t15 + c 0002d300: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d310: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d320: 33 36 29 3b 20 74 31 35 20 3d 20 76 20 2d 20 63 36); t15 = v - c 0002d330: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 74 30 20 * 65536;\n t0 0002d340: 2b 3d 20 63 2d 31 20 2b 20 33 37 20 2a 20 28 63 += c-1 + 37 * (c 0002d350: 2d 31 29 3b 5c 6e 5c 6e 20 20 6f 5b 20 30 5d 20 -1);\n\n o[ 0] 0002d360: 3d 20 74 30 3b 5c 6e 20 20 6f 5b 20 31 5d 20 3d = t0;\n o[ 1] = 0002d370: 20 74 31 3b 5c 6e 20 20 6f 5b 20 32 5d 20 3d 20 t1;\n o[ 2] = 0002d380: 74 32 3b 5c 6e 20 20 6f 5b 20 33 5d 20 3d 20 74 t2;\n o[ 3] = t 0002d390: 33 3b 5c 6e 20 20 6f 5b 20 34 5d 20 3d 20 74 34 3;\n o[ 4] = t4 0002d3a0: 3b 5c 6e 20 20 6f 5b 20 35 5d 20 3d 20 74 35 3b ;\n o[ 5] = t5; 0002d3b0: 5c 6e 20 20 6f 5b 20 36 5d 20 3d 20 74 36 3b 5c \n o[ 6] = t6;\ 0002d3c0: 6e 20 20 6f 5b 20 37 5d 20 3d 20 74 37 3b 5c 6e n o[ 7] = t7;\n 0002d3d0: 20 20 6f 5b 20 38 5d 20 3d 20 74 38 3b 5c 6e 20 o[ 8] = t8;\n 0002d3e0: 20 6f 5b 20 39 5d 20 3d 20 74 39 3b 5c 6e 20 20 o[ 9] = t9;\n 0002d3f0: 6f 5b 31 30 5d 20 3d 20 74 31 30 3b 5c 6e 20 20 o[10] = t10;\n 0002d400: 6f 5b 31 31 5d 20 3d 20 74 31 31 3b 5c 6e 20 20 o[11] = t11;\n 0002d410: 6f 5b 31 32 5d 20 3d 20 74 31 32 3b 5c 6e 20 20 o[12] = t12;\n 0002d420: 6f 5b 31 33 5d 20 3d 20 74 31 33 3b 5c 6e 20 20 o[13] = t13;\n 0002d430: 6f 5b 31 34 5d 20 3d 20 74 31 34 3b 5c 6e 20 20 o[14] = t14;\n 0002d440: 6f 5b 31 35 5d 20 3d 20 74 31 35 3b 5c 6e 7d 5c o[15] = t15;\n}\ 0002d450: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 53 28 6f 2c n\nfunction S(o, 0002d460: 20 61 29 20 7b 5c 6e 20 20 4d 28 6f 2c 20 61 2c a) {\n M(o, a, 0002d470: 20 61 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 a);\n}\n\nfunct 0002d480: 69 6f 6e 20 69 6e 76 32 35 35 31 39 28 6f 2c 20 ion inv25519(o, 0002d490: 69 29 20 7b 5c 6e 20 20 76 61 72 20 63 20 3d 20 i) {\n var c = 0002d4a0: 67 66 28 29 3b 5c 6e 20 20 76 61 72 20 61 3b 5c gf();\n var a;\ 0002d4b0: 6e 20 20 66 6f 72 20 28 61 20 3d 20 30 3b 20 61 n for (a = 0; a 0002d4c0: 20 3c 20 31 36 3b 20 61 2b 2b 29 20 63 5b 61 5d < 16; a++) c[a] 0002d4d0: 20 3d 20 69 5b 61 5d 3b 5c 6e 20 20 66 6f 72 20 = i[a];\n for 0002d4e0: 28 61 20 3d 20 32 35 33 3b 20 61 20 3e 3d 20 30 (a = 253; a >= 0 0002d4f0: 3b 20 61 2d 2d 29 20 7b 5c 6e 20 20 20 20 53 28 ; a--) {\n S( 0002d500: 63 2c 20 63 29 3b 5c 6e 20 20 20 20 69 66 28 61 c, c);\n if(a 0002d510: 20 21 3d 3d 20 32 20 26 26 20 61 20 21 3d 3d 20 !== 2 && a !== 0002d520: 34 29 20 4d 28 63 2c 20 63 2c 20 69 29 3b 5c 6e 4) M(c, c, i);\n 0002d530: 20 20 7d 5c 6e 20 20 66 6f 72 20 28 61 20 3d 20 }\n for (a = 0002d540: 30 3b 20 61 20 3c 20 31 36 3b 20 61 2b 2b 29 20 0; a < 16; a++) 0002d550: 6f 5b 61 5d 20 3d 20 63 5b 61 5d 3b 5c 6e 7d 5c o[a] = c[a];\n}\ 0002d560: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 70 6f 77 32 n\nfunction pow2 0002d570: 35 32 33 28 6f 2c 20 69 29 20 7b 5c 6e 20 20 76 523(o, i) {\n v 0002d580: 61 72 20 63 20 3d 20 67 66 28 29 3b 5c 6e 20 20 ar c = gf();\n 0002d590: 76 61 72 20 61 3b 5c 6e 20 20 66 6f 72 20 28 61 var a;\n for (a 0002d5a0: 20 3d 20 30 3b 20 61 20 3c 20 31 36 3b 20 61 2b = 0; a < 16; a+ 0002d5b0: 2b 29 20 63 5b 61 5d 20 3d 20 69 5b 61 5d 3b 5c +) c[a] = i[a];\ 0002d5c0: 6e 20 20 66 6f 72 20 28 61 20 3d 20 32 35 30 3b n for (a = 250; 0002d5d0: 20 61 20 3e 3d 20 30 3b 20 61 2d 2d 29 20 7b 5c a >= 0; a--) {\ 0002d5e0: 6e 20 20 20 20 20 20 53 28 63 2c 20 63 29 3b 5c n S(c, c);\ 0002d5f0: 6e 20 20 20 20 20 20 69 66 28 61 20 21 3d 3d 20 n if(a !== 0002d600: 31 29 20 4d 28 63 2c 20 63 2c 20 69 29 3b 5c 6e 1) M(c, c, i);\n 0002d610: 20 20 7d 5c 6e 20 20 66 6f 72 20 28 61 20 3d 20 }\n for (a = 0002d620: 30 3b 20 61 20 3c 20 31 36 3b 20 61 2b 2b 29 20 0; a < 16; a++) 0002d630: 6f 5b 61 5d 20 3d 20 63 5b 61 5d 3b 5c 6e 7d 5c o[a] = c[a];\n}\ 0002d640: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 70 n\nfunction cryp 0002d650: 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 28 71 2c to_scalarmult(q, 0002d660: 20 6e 2c 20 70 29 20 7b 5c 6e 20 20 76 61 72 20 n, p) {\n var 0002d670: 7a 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 z = new Uint8Arr 0002d680: 61 79 28 33 32 29 3b 5c 6e 20 20 76 61 72 20 78 ay(32);\n var x 0002d690: 20 3d 20 6e 65 77 20 46 6c 6f 61 74 36 34 41 72 = new Float64Ar 0002d6a0: 72 61 79 28 38 30 29 2c 20 72 2c 20 69 3b 5c 6e ray(80), r, i;\n 0002d6b0: 20 20 76 61 72 20 61 20 3d 20 67 66 28 29 2c 20 var a = gf(), 0002d6c0: 62 20 3d 20 67 66 28 29 2c 20 63 20 3d 20 67 66 b = gf(), c = gf 0002d6d0: 28 29 2c 5c 6e 20 20 20 20 20 20 64 20 3d 20 67 (),\n d = g 0002d6e0: 66 28 29 2c 20 65 20 3d 20 67 66 28 29 2c 20 66 f(), e = gf(), f 0002d6f0: 20 3d 20 67 66 28 29 3b 5c 6e 20 20 66 6f 72 20 = gf();\n for 0002d700: 28 69 20 3d 20 30 3b 20 69 20 3c 20 33 31 3b 20 (i = 0; i < 31; 0002d710: 69 2b 2b 29 20 7a 5b 69 5d 20 3d 20 6e 5b 69 5d i++) z[i] = n[i] 0002d720: 3b 5c 6e 20 20 7a 5b 33 31 5d 3d 28 6e 5b 33 31 ;\n z[31]=(n[31 0002d730: 5d 26 31 32 37 29 7c 36 34 3b 5c 6e 20 20 7a 5b ]&127)|64;\n z[ 0002d740: 30 5d 26 3d 32 34 38 3b 5c 6e 20 20 75 6e 70 61 0]&=248;\n unpa 0002d750: 63 6b 32 35 35 31 39 28 78 2c 70 29 3b 5c 6e 20 ck25519(x,p);\n 0002d760: 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c for (i = 0; i < 0002d770: 20 31 36 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 16; i++) {\n 0002d780: 20 62 5b 69 5d 3d 78 5b 69 5d 3b 5c 6e 20 20 20 b[i]=x[i];\n 0002d790: 20 64 5b 69 5d 3d 61 5b 69 5d 3d 63 5b 69 5d 3d d[i]=a[i]=c[i]= 0002d7a0: 30 3b 5c 6e 20 20 7d 5c 6e 20 20 61 5b 30 5d 3d 0;\n }\n a[0]= 0002d7b0: 64 5b 30 5d 3d 31 3b 5c 6e 20 20 66 6f 72 20 28 d[0]=1;\n for ( 0002d7c0: 69 3d 32 35 34 3b 20 69 3e 3d 30 3b 20 2d 2d 69 i=254; i>=0; --i 0002d7d0: 29 20 7b 5c 6e 20 20 20 20 72 3d 28 7a 5b 69 3e ) {\n r=(z[i> 0002d7e0: 3e 3e 33 5d 3e 3e 3e 28 69 26 37 29 29 26 31 3b >>3]>>>(i&7))&1; 0002d7f0: 5c 6e 20 20 20 20 73 65 6c 32 35 35 31 39 28 61 \n sel25519(a 0002d800: 2c 62 2c 72 29 3b 5c 6e 20 20 20 20 73 65 6c 32 ,b,r);\n sel2 0002d810: 35 35 31 39 28 63 2c 64 2c 72 29 3b 5c 6e 20 20 5519(c,d,r);\n 0002d820: 20 20 41 28 65 2c 61 2c 63 29 3b 5c 6e 20 20 20 A(e,a,c);\n 0002d830: 20 5a 28 61 2c 61 2c 63 29 3b 5c 6e 20 20 20 20 Z(a,a,c);\n 0002d840: 41 28 63 2c 62 2c 64 29 3b 5c 6e 20 20 20 20 5a A(c,b,d);\n Z 0002d850: 28 62 2c 62 2c 64 29 3b 5c 6e 20 20 20 20 53 28 (b,b,d);\n S( 0002d860: 64 2c 65 29 3b 5c 6e 20 20 20 20 53 28 66 2c 61 d,e);\n S(f,a 0002d870: 29 3b 5c 6e 20 20 20 20 4d 28 61 2c 63 2c 61 29 );\n M(a,c,a) 0002d880: 3b 5c 6e 20 20 20 20 4d 28 63 2c 62 2c 65 29 3b ;\n M(c,b,e); 0002d890: 5c 6e 20 20 20 20 41 28 65 2c 61 2c 63 29 3b 5c \n A(e,a,c);\ 0002d8a0: 6e 20 20 20 20 5a 28 61 2c 61 2c 63 29 3b 5c 6e n Z(a,a,c);\n 0002d8b0: 20 20 20 20 53 28 62 2c 61 29 3b 5c 6e 20 20 20 S(b,a);\n 0002d8c0: 20 5a 28 63 2c 64 2c 66 29 3b 5c 6e 20 20 20 20 Z(c,d,f);\n 0002d8d0: 4d 28 61 2c 63 2c 5f 31 32 31 36 36 35 29 3b 5c M(a,c,_121665);\ 0002d8e0: 6e 20 20 20 20 41 28 61 2c 61 2c 64 29 3b 5c 6e n A(a,a,d);\n 0002d8f0: 20 20 20 20 4d 28 63 2c 63 2c 61 29 3b 5c 6e 20 M(c,c,a);\n 0002d900: 20 20 20 4d 28 61 2c 64 2c 66 29 3b 5c 6e 20 20 M(a,d,f);\n 0002d910: 20 20 4d 28 64 2c 62 2c 78 29 3b 5c 6e 20 20 20 M(d,b,x);\n 0002d920: 20 53 28 62 2c 65 29 3b 5c 6e 20 20 20 20 73 65 S(b,e);\n se 0002d930: 6c 32 35 35 31 39 28 61 2c 62 2c 72 29 3b 5c 6e l25519(a,b,r);\n 0002d940: 20 20 20 20 73 65 6c 32 35 35 31 39 28 63 2c 64 sel25519(c,d 0002d950: 2c 72 29 3b 5c 6e 20 20 7d 5c 6e 20 20 66 6f 72 ,r);\n }\n for 0002d960: 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 31 36 3b (i = 0; i < 16; 0002d970: 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 78 5b 69 i++) {\n x[i 0002d980: 2b 31 36 5d 3d 61 5b 69 5d 3b 5c 6e 20 20 20 20 +16]=a[i];\n 0002d990: 78 5b 69 2b 33 32 5d 3d 63 5b 69 5d 3b 5c 6e 20 x[i+32]=c[i];\n 0002d9a0: 20 20 20 78 5b 69 2b 34 38 5d 3d 62 5b 69 5d 3b x[i+48]=b[i]; 0002d9b0: 5c 6e 20 20 20 20 78 5b 69 2b 36 34 5d 3d 64 5b \n x[i+64]=d[ 0002d9c0: 69 5d 3b 5c 6e 20 20 7d 5c 6e 20 20 76 61 72 20 i];\n }\n var 0002d9d0: 78 33 32 20 3d 20 78 2e 73 75 62 61 72 72 61 79 x32 = x.subarray 0002d9e0: 28 33 32 29 3b 5c 6e 20 20 76 61 72 20 78 31 36 (32);\n var x16 0002d9f0: 20 3d 20 78 2e 73 75 62 61 72 72 61 79 28 31 36 = x.subarray(16 0002da00: 29 3b 5c 6e 20 20 69 6e 76 32 35 35 31 39 28 78 );\n inv25519(x 0002da10: 33 32 2c 78 33 32 29 3b 5c 6e 20 20 4d 28 78 31 32,x32);\n M(x1 0002da20: 36 2c 78 31 36 2c 78 33 32 29 3b 5c 6e 20 20 70 6,x16,x32);\n p 0002da30: 61 63 6b 32 35 35 31 39 28 71 2c 78 31 36 29 3b ack25519(q,x16); 0002da40: 5c 6e 20 20 72 65 74 75 72 6e 20 30 3b 5c 6e 7d \n return 0;\n} 0002da50: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 \n\nfunction cry 0002da60: 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f 62 pto_scalarmult_b 0002da70: 61 73 65 28 71 2c 20 6e 29 20 7b 5c 6e 20 20 72 ase(q, n) {\n r 0002da80: 65 74 75 72 6e 20 63 72 79 70 74 6f 5f 73 63 61 eturn crypto_sca 0002da90: 6c 61 72 6d 75 6c 74 28 71 2c 20 6e 2c 20 5f 39 larmult(q, n, _9 0002daa0: 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f );\n}\n\nfunctio 0002dab0: 6e 20 63 72 79 70 74 6f 5f 62 6f 78 5f 6b 65 79 n crypto_box_key 0002dac0: 70 61 69 72 28 79 2c 20 78 29 20 7b 5c 6e 20 20 pair(y, x) {\n 0002dad0: 72 61 6e 64 6f 6d 62 79 74 65 73 28 78 2c 20 33 randombytes(x, 3 0002dae0: 32 29 3b 5c 6e 20 20 72 65 74 75 72 6e 20 63 72 2);\n return cr 0002daf0: 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f ypto_scalarmult_ 0002db00: 62 61 73 65 28 79 2c 20 78 29 3b 5c 6e 7d 5c 6e base(y, x);\n}\n 0002db10: 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 70 74 \nfunction crypt 0002db20: 6f 5f 62 6f 78 5f 62 65 66 6f 72 65 6e 6d 28 6b o_box_beforenm(k 0002db30: 2c 20 79 2c 20 78 29 20 7b 5c 6e 20 20 76 61 72 , y, x) {\n var 0002db40: 20 73 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 s = new Uint8Ar 0002db50: 72 61 79 28 33 32 29 3b 5c 6e 20 20 63 72 79 70 ray(32);\n cryp 0002db60: 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 28 73 2c to_scalarmult(s, 0002db70: 20 78 2c 20 79 29 3b 5c 6e 20 20 72 65 74 75 72 x, y);\n retur 0002db80: 6e 20 63 72 79 70 74 6f 5f 63 6f 72 65 5f 68 73 n crypto_core_hs 0002db90: 61 6c 73 61 32 30 28 6b 2c 20 5f 30 2c 20 73 2c alsa20(k, _0, s, 0002dba0: 20 73 69 67 6d 61 29 3b 5c 6e 7d 5c 6e 5c 6e 76 sigma);\n}\n\nv 0002dbb0: 61 72 20 63 72 79 70 74 6f 5f 62 6f 78 5f 61 66 ar crypto_box_af 0002dbc0: 74 65 72 6e 6d 20 3d 20 63 72 79 70 74 6f 5f 73 ternm = crypto_s 0002dbd0: 65 63 72 65 74 62 6f 78 3b 5c 6e 76 61 72 20 63 ecretbox;\nvar c 0002dbe0: 72 79 70 74 6f 5f 62 6f 78 5f 6f 70 65 6e 5f 61 rypto_box_open_a 0002dbf0: 66 74 65 72 6e 6d 20 3d 20 63 72 79 70 74 6f 5f fternm = crypto_ 0002dc00: 73 65 63 72 65 74 62 6f 78 5f 6f 70 65 6e 3b 5c secretbox_open;\ 0002dc10: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 70 n\nfunction cryp 0002dc20: 74 6f 5f 62 6f 78 28 63 2c 20 6d 2c 20 64 2c 20 to_box(c, m, d, 0002dc30: 6e 2c 20 79 2c 20 78 29 20 7b 5c 6e 20 20 76 61 n, y, x) {\n va 0002dc40: 72 20 6b 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 r k = new Uint8A 0002dc50: 72 72 61 79 28 33 32 29 3b 5c 6e 20 20 63 72 79 rray(32);\n cry 0002dc60: 70 74 6f 5f 62 6f 78 5f 62 65 66 6f 72 65 6e 6d pto_box_beforenm 0002dc70: 28 6b 2c 20 79 2c 20 78 29 3b 5c 6e 20 20 72 65 (k, y, x);\n re 0002dc80: 74 75 72 6e 20 63 72 79 70 74 6f 5f 62 6f 78 5f turn crypto_box_ 0002dc90: 61 66 74 65 72 6e 6d 28 63 2c 20 6d 2c 20 64 2c afternm(c, m, d, 0002dca0: 20 6e 2c 20 6b 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 n, k);\n}\n\nfu 0002dcb0: 6e 63 74 69 6f 6e 20 63 72 79 70 74 6f 5f 62 6f nction crypto_bo 0002dcc0: 78 5f 6f 70 65 6e 28 6d 2c 20 63 2c 20 64 2c 20 x_open(m, c, d, 0002dcd0: 6e 2c 20 79 2c 20 78 29 20 7b 5c 6e 20 20 76 61 n, y, x) {\n va 0002dce0: 72 20 6b 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 r k = new Uint8A 0002dcf0: 72 72 61 79 28 33 32 29 3b 5c 6e 20 20 63 72 79 rray(32);\n cry 0002dd00: 70 74 6f 5f 62 6f 78 5f 62 65 66 6f 72 65 6e 6d pto_box_beforenm 0002dd10: 28 6b 2c 20 79 2c 20 78 29 3b 5c 6e 20 20 72 65 (k, y, x);\n re 0002dd20: 74 75 72 6e 20 63 72 79 70 74 6f 5f 62 6f 78 5f turn crypto_box_ 0002dd30: 6f 70 65 6e 5f 61 66 74 65 72 6e 6d 28 6d 2c 20 open_afternm(m, 0002dd40: 63 2c 20 64 2c 20 6e 2c 20 6b 29 3b 5c 6e 7d 5c c, d, n, k);\n}\ 0002dd50: 6e 5c 6e 76 61 72 20 4b 20 3d 20 5b 5c 6e 20 20 n\nvar K = [\n 0002dd60: 30 78 34 32 38 61 32 66 39 38 2c 20 30 78 64 37 0x428a2f98, 0xd7 0002dd70: 32 38 61 65 32 32 2c 20 30 78 37 31 33 37 34 34 28ae22, 0x713744 0002dd80: 39 31 2c 20 30 78 32 33 65 66 36 35 63 64 2c 5c 91, 0x23ef65cd,\ 0002dd90: 6e 20 20 30 78 62 35 63 30 66 62 63 66 2c 20 30 n 0xb5c0fbcf, 0 0002dda0: 78 65 63 34 64 33 62 32 66 2c 20 30 78 65 39 62 xec4d3b2f, 0xe9b 0002ddb0: 35 64 62 61 35 2c 20 30 78 38 31 38 39 64 62 62 5dba5, 0x8189dbb 0002ddc0: 63 2c 5c 6e 20 20 30 78 33 39 35 36 63 32 35 62 c,\n 0x3956c25b 0002ddd0: 2c 20 30 78 66 33 34 38 62 35 33 38 2c 20 30 78 , 0xf348b538, 0x 0002dde0: 35 39 66 31 31 31 66 31 2c 20 30 78 62 36 30 35 59f111f1, 0xb605 0002ddf0: 64 30 31 39 2c 5c 6e 20 20 30 78 39 32 33 66 38 d019,\n 0x923f8 0002de00: 32 61 34 2c 20 30 78 61 66 31 39 34 66 39 62 2c 2a4, 0xaf194f9b, 0002de10: 20 30 78 61 62 31 63 35 65 64 35 2c 20 30 78 64 0xab1c5ed5, 0xd 0002de20: 61 36 64 38 31 31 38 2c 5c 6e 20 20 30 78 64 38 a6d8118,\n 0xd8 0002de30: 30 37 61 61 39 38 2c 20 30 78 61 33 30 33 30 32 07aa98, 0xa30302 0002de40: 34 32 2c 20 30 78 31 32 38 33 35 62 30 31 2c 20 42, 0x12835b01, 0002de50: 30 78 34 35 37 30 36 66 62 65 2c 5c 6e 20 20 30 0x45706fbe,\n 0 0002de60: 78 32 34 33 31 38 35 62 65 2c 20 30 78 34 65 65 x243185be, 0x4ee 0002de70: 34 62 32 38 63 2c 20 30 78 35 35 30 63 37 64 63 4b28c, 0x550c7dc 0002de80: 33 2c 20 30 78 64 35 66 66 62 34 65 32 2c 5c 6e 3, 0xd5ffb4e2,\n 0002de90: 20 20 30 78 37 32 62 65 35 64 37 34 2c 20 30 78 0x72be5d74, 0x 0002dea0: 66 32 37 62 38 39 36 66 2c 20 30 78 38 30 64 65 f27b896f, 0x80de 0002deb0: 62 31 66 65 2c 20 30 78 33 62 31 36 39 36 62 31 b1fe, 0x3b1696b1 0002dec0: 2c 5c 6e 20 20 30 78 39 62 64 63 30 36 61 37 2c ,\n 0x9bdc06a7, 0002ded0: 20 30 78 32 35 63 37 31 32 33 35 2c 20 30 78 63 0x25c71235, 0xc 0002dee0: 31 39 62 66 31 37 34 2c 20 30 78 63 66 36 39 32 19bf174, 0xcf692 0002def0: 36 39 34 2c 5c 6e 20 20 30 78 65 34 39 62 36 39 694,\n 0xe49b69 0002df00: 63 31 2c 20 30 78 39 65 66 31 34 61 64 32 2c 20 c1, 0x9ef14ad2, 0002df10: 30 78 65 66 62 65 34 37 38 36 2c 20 30 78 33 38 0xefbe4786, 0x38 0002df20: 34 66 32 35 65 33 2c 5c 6e 20 20 30 78 30 66 63 4f25e3,\n 0x0fc 0002df30: 31 39 64 63 36 2c 20 30 78 38 62 38 63 64 35 62 19dc6, 0x8b8cd5b 0002df40: 35 2c 20 30 78 32 34 30 63 61 31 63 63 2c 20 30 5, 0x240ca1cc, 0 0002df50: 78 37 37 61 63 39 63 36 35 2c 5c 6e 20 20 30 78 x77ac9c65,\n 0x 0002df60: 32 64 65 39 32 63 36 66 2c 20 30 78 35 39 32 62 2de92c6f, 0x592b 0002df70: 30 32 37 35 2c 20 30 78 34 61 37 34 38 34 61 61 0275, 0x4a7484aa 0002df80: 2c 20 30 78 36 65 61 36 65 34 38 33 2c 5c 6e 20 , 0x6ea6e483,\n 0002df90: 20 30 78 35 63 62 30 61 39 64 63 2c 20 30 78 62 0x5cb0a9dc, 0xb 0002dfa0: 64 34 31 66 62 64 34 2c 20 30 78 37 36 66 39 38 d41fbd4, 0x76f98 0002dfb0: 38 64 61 2c 20 30 78 38 33 31 31 35 33 62 35 2c 8da, 0x831153b5, 0002dfc0: 5c 6e 20 20 30 78 39 38 33 65 35 31 35 32 2c 20 \n 0x983e5152, 0002dfd0: 30 78 65 65 36 36 64 66 61 62 2c 20 30 78 61 38 0xee66dfab, 0xa8 0002dfe0: 33 31 63 36 36 64 2c 20 30 78 32 64 62 34 33 32 31c66d, 0x2db432 0002dff0: 31 30 2c 5c 6e 20 20 30 78 62 30 30 33 32 37 63 10,\n 0xb00327c 0002e000: 38 2c 20 30 78 39 38 66 62 32 31 33 66 2c 20 30 8, 0x98fb213f, 0 0002e010: 78 62 66 35 39 37 66 63 37 2c 20 30 78 62 65 65 xbf597fc7, 0xbee 0002e020: 66 30 65 65 34 2c 5c 6e 20 20 30 78 63 36 65 30 f0ee4,\n 0xc6e0 0002e030: 30 62 66 33 2c 20 30 78 33 64 61 38 38 66 63 32 0bf3, 0x3da88fc2 0002e040: 2c 20 30 78 64 35 61 37 39 31 34 37 2c 20 30 78 , 0xd5a79147, 0x 0002e050: 39 33 30 61 61 37 32 35 2c 5c 6e 20 20 30 78 30 930aa725,\n 0x0 0002e060: 36 63 61 36 33 35 31 2c 20 30 78 65 30 30 33 38 6ca6351, 0xe0038 0002e070: 32 36 66 2c 20 30 78 31 34 32 39 32 39 36 37 2c 26f, 0x14292967, 0002e080: 20 30 78 30 61 30 65 36 65 37 30 2c 5c 6e 20 20 0x0a0e6e70,\n 0002e090: 30 78 32 37 62 37 30 61 38 35 2c 20 30 78 34 36 0x27b70a85, 0x46 0002e0a0: 64 32 32 66 66 63 2c 20 30 78 32 65 31 62 32 31 d22ffc, 0x2e1b21 0002e0b0: 33 38 2c 20 30 78 35 63 32 36 63 39 32 36 2c 5c 38, 0x5c26c926,\ 0002e0c0: 6e 20 20 30 78 34 64 32 63 36 64 66 63 2c 20 30 n 0x4d2c6dfc, 0 0002e0d0: 78 35 61 63 34 32 61 65 64 2c 20 30 78 35 33 33 x5ac42aed, 0x533 0002e0e0: 38 30 64 31 33 2c 20 30 78 39 64 39 35 62 33 64 80d13, 0x9d95b3d 0002e0f0: 66 2c 5c 6e 20 20 30 78 36 35 30 61 37 33 35 34 f,\n 0x650a7354 0002e100: 2c 20 30 78 38 62 61 66 36 33 64 65 2c 20 30 78 , 0x8baf63de, 0x 0002e110: 37 36 36 61 30 61 62 62 2c 20 30 78 33 63 37 37 766a0abb, 0x3c77 0002e120: 62 32 61 38 2c 5c 6e 20 20 30 78 38 31 63 32 63 b2a8,\n 0x81c2c 0002e130: 39 32 65 2c 20 30 78 34 37 65 64 61 65 65 36 2c 92e, 0x47edaee6, 0002e140: 20 30 78 39 32 37 32 32 63 38 35 2c 20 30 78 31 0x92722c85, 0x1 0002e150: 34 38 32 33 35 33 62 2c 5c 6e 20 20 30 78 61 32 482353b,\n 0xa2 0002e160: 62 66 65 38 61 31 2c 20 30 78 34 63 66 31 30 33 bfe8a1, 0x4cf103 0002e170: 36 34 2c 20 30 78 61 38 31 61 36 36 34 62 2c 20 64, 0xa81a664b, 0002e180: 30 78 62 63 34 32 33 30 30 31 2c 5c 6e 20 20 30 0xbc423001,\n 0 0002e190: 78 63 32 34 62 38 62 37 30 2c 20 30 78 64 30 66 xc24b8b70, 0xd0f 0002e1a0: 38 39 37 39 31 2c 20 30 78 63 37 36 63 35 31 61 89791, 0xc76c51a 0002e1b0: 33 2c 20 30 78 30 36 35 34 62 65 33 30 2c 5c 6e 3, 0x0654be30,\n 0002e1c0: 20 20 30 78 64 31 39 32 65 38 31 39 2c 20 30 78 0xd192e819, 0x 0002e1d0: 64 36 65 66 35 32 31 38 2c 20 30 78 64 36 39 39 d6ef5218, 0xd699 0002e1e0: 30 36 32 34 2c 20 30 78 35 35 36 35 61 39 31 30 0624, 0x5565a910 0002e1f0: 2c 5c 6e 20 20 30 78 66 34 30 65 33 35 38 35 2c ,\n 0xf40e3585, 0002e200: 20 30 78 35 37 37 31 32 30 32 61 2c 20 30 78 31 0x5771202a, 0x1 0002e210: 30 36 61 61 30 37 30 2c 20 30 78 33 32 62 62 64 06aa070, 0x32bbd 0002e220: 31 62 38 2c 5c 6e 20 20 30 78 31 39 61 34 63 31 1b8,\n 0x19a4c1 0002e230: 31 36 2c 20 30 78 62 38 64 32 64 30 63 38 2c 20 16, 0xb8d2d0c8, 0002e240: 30 78 31 65 33 37 36 63 30 38 2c 20 30 78 35 31 0x1e376c08, 0x51 0002e250: 34 31 61 62 35 33 2c 5c 6e 20 20 30 78 32 37 34 41ab53,\n 0x274 0002e260: 38 37 37 34 63 2c 20 30 78 64 66 38 65 65 62 39 8774c, 0xdf8eeb9 0002e270: 39 2c 20 30 78 33 34 62 30 62 63 62 35 2c 20 30 9, 0x34b0bcb5, 0 0002e280: 78 65 31 39 62 34 38 61 38 2c 5c 6e 20 20 30 78 xe19b48a8,\n 0x 0002e290: 33 39 31 63 30 63 62 33 2c 20 30 78 63 35 63 39 391c0cb3, 0xc5c9 0002e2a0: 35 61 36 33 2c 20 30 78 34 65 64 38 61 61 34 61 5a63, 0x4ed8aa4a 0002e2b0: 2c 20 30 78 65 33 34 31 38 61 63 62 2c 5c 6e 20 , 0xe3418acb,\n 0002e2c0: 20 30 78 35 62 39 63 63 61 34 66 2c 20 30 78 37 0x5b9cca4f, 0x7 0002e2d0: 37 36 33 65 33 37 33 2c 20 30 78 36 38 32 65 36 763e373, 0x682e6 0002e2e0: 66 66 33 2c 20 30 78 64 36 62 32 62 38 61 33 2c ff3, 0xd6b2b8a3, 0002e2f0: 5c 6e 20 20 30 78 37 34 38 66 38 32 65 65 2c 20 \n 0x748f82ee, 0002e300: 30 78 35 64 65 66 62 32 66 63 2c 20 30 78 37 38 0x5defb2fc, 0x78 0002e310: 61 35 36 33 36 66 2c 20 30 78 34 33 31 37 32 66 a5636f, 0x43172f 0002e320: 36 30 2c 5c 6e 20 20 30 78 38 34 63 38 37 38 31 60,\n 0x84c8781 0002e330: 34 2c 20 30 78 61 31 66 30 61 62 37 32 2c 20 30 4, 0xa1f0ab72, 0 0002e340: 78 38 63 63 37 30 32 30 38 2c 20 30 78 31 61 36 x8cc70208, 0x1a6 0002e350: 34 33 39 65 63 2c 5c 6e 20 20 30 78 39 30 62 65 439ec,\n 0x90be 0002e360: 66 66 66 61 2c 20 30 78 32 33 36 33 31 65 32 38 fffa, 0x23631e28 0002e370: 2c 20 30 78 61 34 35 30 36 63 65 62 2c 20 30 78 , 0xa4506ceb, 0x 0002e380: 64 65 38 32 62 64 65 39 2c 5c 6e 20 20 30 78 62 de82bde9,\n 0xb 0002e390: 65 66 39 61 33 66 37 2c 20 30 78 62 32 63 36 37 ef9a3f7, 0xb2c67 0002e3a0: 39 31 35 2c 20 30 78 63 36 37 31 37 38 66 32 2c 915, 0xc67178f2, 0002e3b0: 20 30 78 65 33 37 32 35 33 32 62 2c 5c 6e 20 20 0xe372532b,\n 0002e3c0: 30 78 63 61 32 37 33 65 63 65 2c 20 30 78 65 61 0xca273ece, 0xea 0002e3d0: 32 36 36 31 39 63 2c 20 30 78 64 31 38 36 62 38 26619c, 0xd186b8 0002e3e0: 63 37 2c 20 30 78 32 31 63 30 63 32 30 37 2c 5c c7, 0x21c0c207,\ 0002e3f0: 6e 20 20 30 78 65 61 64 61 37 64 64 36 2c 20 30 n 0xeada7dd6, 0 0002e400: 78 63 64 65 30 65 62 31 65 2c 20 30 78 66 35 37 xcde0eb1e, 0xf57 0002e410: 64 34 66 37 66 2c 20 30 78 65 65 36 65 64 31 37 d4f7f, 0xee6ed17 0002e420: 38 2c 5c 6e 20 20 30 78 30 36 66 30 36 37 61 61 8,\n 0x06f067aa 0002e430: 2c 20 30 78 37 32 31 37 36 66 62 61 2c 20 30 78 , 0x72176fba, 0x 0002e440: 30 61 36 33 37 64 63 35 2c 20 30 78 61 32 63 38 0a637dc5, 0xa2c8 0002e450: 39 38 61 36 2c 5c 6e 20 20 30 78 31 31 33 66 39 98a6,\n 0x113f9 0002e460: 38 30 34 2c 20 30 78 62 65 66 39 30 64 61 65 2c 804, 0xbef90dae, 0002e470: 20 30 78 31 62 37 31 30 62 33 35 2c 20 30 78 31 0x1b710b35, 0x1 0002e480: 33 31 63 34 37 31 62 2c 5c 6e 20 20 30 78 32 38 31c471b,\n 0x28 0002e490: 64 62 37 37 66 35 2c 20 30 78 32 33 30 34 37 64 db77f5, 0x23047d 0002e4a0: 38 34 2c 20 30 78 33 32 63 61 61 62 37 62 2c 20 84, 0x32caab7b, 0002e4b0: 30 78 34 30 63 37 32 34 39 33 2c 5c 6e 20 20 30 0x40c72493,\n 0 0002e4c0: 78 33 63 39 65 62 65 30 61 2c 20 30 78 31 35 63 x3c9ebe0a, 0x15c 0002e4d0: 39 62 65 62 63 2c 20 30 78 34 33 31 64 36 37 63 9bebc, 0x431d67c 0002e4e0: 34 2c 20 30 78 39 63 31 30 30 64 34 63 2c 5c 6e 4, 0x9c100d4c,\n 0002e4f0: 20 20 30 78 34 63 63 35 64 34 62 65 2c 20 30 78 0x4cc5d4be, 0x 0002e500: 63 62 33 65 34 32 62 36 2c 20 30 78 35 39 37 66 cb3e42b6, 0x597f 0002e510: 32 39 39 63 2c 20 30 78 66 63 36 35 37 65 32 61 299c, 0xfc657e2a 0002e520: 2c 5c 6e 20 20 30 78 35 66 63 62 36 66 61 62 2c ,\n 0x5fcb6fab, 0002e530: 20 30 78 33 61 64 36 66 61 65 63 2c 20 30 78 36 0x3ad6faec, 0x6 0002e540: 63 34 34 31 39 38 63 2c 20 30 78 34 61 34 37 35 c44198c, 0x4a475 0002e550: 38 31 37 5c 6e 5d 3b 5c 6e 5c 6e 66 75 6e 63 74 817\n];\n\nfunct 0002e560: 69 6f 6e 20 63 72 79 70 74 6f 5f 68 61 73 68 62 ion crypto_hashb 0002e570: 6c 6f 63 6b 73 5f 68 6c 28 68 68 2c 20 68 6c 2c locks_hl(hh, hl, 0002e580: 20 6d 2c 20 6e 29 20 7b 5c 6e 20 20 76 61 72 20 m, n) {\n var 0002e590: 77 68 20 3d 20 6e 65 77 20 49 6e 74 33 32 41 72 wh = new Int32Ar 0002e5a0: 72 61 79 28 31 36 29 2c 20 77 6c 20 3d 20 6e 65 ray(16), wl = ne 0002e5b0: 77 20 49 6e 74 33 32 41 72 72 61 79 28 31 36 29 w Int32Array(16) 0002e5c0: 2c 5c 6e 20 20 20 20 20 20 62 68 30 2c 20 62 68 ,\n bh0, bh 0002e5d0: 31 2c 20 62 68 32 2c 20 62 68 33 2c 20 62 68 34 1, bh2, bh3, bh4 0002e5e0: 2c 20 62 68 35 2c 20 62 68 36 2c 20 62 68 37 2c , bh5, bh6, bh7, 0002e5f0: 5c 6e 20 20 20 20 20 20 62 6c 30 2c 20 62 6c 31 \n bl0, bl1 0002e600: 2c 20 62 6c 32 2c 20 62 6c 33 2c 20 62 6c 34 2c , bl2, bl3, bl4, 0002e610: 20 62 6c 35 2c 20 62 6c 36 2c 20 62 6c 37 2c 5c bl5, bl6, bl7,\ 0002e620: 6e 20 20 20 20 20 20 74 68 2c 20 74 6c 2c 20 69 n th, tl, i 0002e630: 2c 20 6a 2c 20 68 2c 20 6c 2c 20 61 2c 20 62 2c , j, h, l, a, b, 0002e640: 20 63 2c 20 64 3b 5c 6e 5c 6e 20 20 76 61 72 20 c, d;\n\n var 0002e650: 61 68 30 20 3d 20 68 68 5b 30 5d 2c 5c 6e 20 20 ah0 = hh[0],\n 0002e660: 20 20 20 20 61 68 31 20 3d 20 68 68 5b 31 5d 2c ah1 = hh[1], 0002e670: 5c 6e 20 20 20 20 20 20 61 68 32 20 3d 20 68 68 \n ah2 = hh 0002e680: 5b 32 5d 2c 5c 6e 20 20 20 20 20 20 61 68 33 20 [2],\n ah3 0002e690: 3d 20 68 68 5b 33 5d 2c 5c 6e 20 20 20 20 20 20 = hh[3],\n 0002e6a0: 61 68 34 20 3d 20 68 68 5b 34 5d 2c 5c 6e 20 20 ah4 = hh[4],\n 0002e6b0: 20 20 20 20 61 68 35 20 3d 20 68 68 5b 35 5d 2c ah5 = hh[5], 0002e6c0: 5c 6e 20 20 20 20 20 20 61 68 36 20 3d 20 68 68 \n ah6 = hh 0002e6d0: 5b 36 5d 2c 5c 6e 20 20 20 20 20 20 61 68 37 20 [6],\n ah7 0002e6e0: 3d 20 68 68 5b 37 5d 2c 5c 6e 5c 6e 20 20 20 20 = hh[7],\n\n 0002e6f0: 20 20 61 6c 30 20 3d 20 68 6c 5b 30 5d 2c 5c 6e al0 = hl[0],\n 0002e700: 20 20 20 20 20 20 61 6c 31 20 3d 20 68 6c 5b 31 al1 = hl[1 0002e710: 5d 2c 5c 6e 20 20 20 20 20 20 61 6c 32 20 3d 20 ],\n al2 = 0002e720: 68 6c 5b 32 5d 2c 5c 6e 20 20 20 20 20 20 61 6c hl[2],\n al 0002e730: 33 20 3d 20 68 6c 5b 33 5d 2c 5c 6e 20 20 20 20 3 = hl[3],\n 0002e740: 20 20 61 6c 34 20 3d 20 68 6c 5b 34 5d 2c 5c 6e al4 = hl[4],\n 0002e750: 20 20 20 20 20 20 61 6c 35 20 3d 20 68 6c 5b 35 al5 = hl[5 0002e760: 5d 2c 5c 6e 20 20 20 20 20 20 61 6c 36 20 3d 20 ],\n al6 = 0002e770: 68 6c 5b 36 5d 2c 5c 6e 20 20 20 20 20 20 61 6c hl[6],\n al 0002e780: 37 20 3d 20 68 6c 5b 37 5d 3b 5c 6e 5c 6e 20 20 7 = hl[7];\n\n 0002e790: 76 61 72 20 70 6f 73 20 3d 20 30 3b 5c 6e 20 20 var pos = 0;\n 0002e7a0: 77 68 69 6c 65 20 28 6e 20 3e 3d 20 31 32 38 29 while (n >= 128) 0002e7b0: 20 7b 5c 6e 20 20 20 20 66 6f 72 20 28 69 20 3d {\n for (i = 0002e7c0: 20 30 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 0; i < 16; i++) 0002e7d0: 20 7b 5c 6e 20 20 20 20 20 20 6a 20 3d 20 38 20 {\n j = 8 0002e7e0: 2a 20 69 20 2b 20 70 6f 73 3b 5c 6e 20 20 20 20 * i + pos;\n 0002e7f0: 20 20 77 68 5b 69 5d 20 3d 20 28 6d 5b 6a 2b 30 wh[i] = (m[j+0 0002e800: 5d 20 3c 3c 20 32 34 29 20 7c 20 28 6d 5b 6a 2b ] << 24) | (m[j+ 0002e810: 31 5d 20 3c 3c 20 31 36 29 20 7c 20 28 6d 5b 6a 1] << 16) | (m[j 0002e820: 2b 32 5d 20 3c 3c 20 38 29 20 7c 20 6d 5b 6a 2b +2] << 8) | m[j+ 0002e830: 33 5d 3b 5c 6e 20 20 20 20 20 20 77 6c 5b 69 5d 3];\n wl[i] 0002e840: 20 3d 20 28 6d 5b 6a 2b 34 5d 20 3c 3c 20 32 34 = (m[j+4] << 24 0002e850: 29 20 7c 20 28 6d 5b 6a 2b 35 5d 20 3c 3c 20 31 ) | (m[j+5] << 1 0002e860: 36 29 20 7c 20 28 6d 5b 6a 2b 36 5d 20 3c 3c 20 6) | (m[j+6] << 0002e870: 38 29 20 7c 20 6d 5b 6a 2b 37 5d 3b 5c 6e 20 20 8) | m[j+7];\n 0002e880: 20 20 7d 5c 6e 20 20 20 20 66 6f 72 20 28 69 20 }\n for (i 0002e890: 3d 20 30 3b 20 69 20 3c 20 38 30 3b 20 69 2b 2b = 0; i < 80; i++ 0002e8a0: 29 20 7b 5c 6e 20 20 20 20 20 20 62 68 30 20 3d ) {\n bh0 = 0002e8b0: 20 61 68 30 3b 5c 6e 20 20 20 20 20 20 62 68 31 ah0;\n bh1 0002e8c0: 20 3d 20 61 68 31 3b 5c 6e 20 20 20 20 20 20 62 = ah1;\n b 0002e8d0: 68 32 20 3d 20 61 68 32 3b 5c 6e 20 20 20 20 20 h2 = ah2;\n 0002e8e0: 20 62 68 33 20 3d 20 61 68 33 3b 5c 6e 20 20 20 bh3 = ah3;\n 0002e8f0: 20 20 20 62 68 34 20 3d 20 61 68 34 3b 5c 6e 20 bh4 = ah4;\n 0002e900: 20 20 20 20 20 62 68 35 20 3d 20 61 68 35 3b 5c bh5 = ah5;\ 0002e910: 6e 20 20 20 20 20 20 62 68 36 20 3d 20 61 68 36 n bh6 = ah6 0002e920: 3b 5c 6e 20 20 20 20 20 20 62 68 37 20 3d 20 61 ;\n bh7 = a 0002e930: 68 37 3b 5c 6e 5c 6e 20 20 20 20 20 20 62 6c 30 h7;\n\n bl0 0002e940: 20 3d 20 61 6c 30 3b 5c 6e 20 20 20 20 20 20 62 = al0;\n b 0002e950: 6c 31 20 3d 20 61 6c 31 3b 5c 6e 20 20 20 20 20 l1 = al1;\n 0002e960: 20 62 6c 32 20 3d 20 61 6c 32 3b 5c 6e 20 20 20 bl2 = al2;\n 0002e970: 20 20 20 62 6c 33 20 3d 20 61 6c 33 3b 5c 6e 20 bl3 = al3;\n 0002e980: 20 20 20 20 20 62 6c 34 20 3d 20 61 6c 34 3b 5c bl4 = al4;\ 0002e990: 6e 20 20 20 20 20 20 62 6c 35 20 3d 20 61 6c 35 n bl5 = al5 0002e9a0: 3b 5c 6e 20 20 20 20 20 20 62 6c 36 20 3d 20 61 ;\n bl6 = a 0002e9b0: 6c 36 3b 5c 6e 20 20 20 20 20 20 62 6c 37 20 3d l6;\n bl7 = 0002e9c0: 20 61 6c 37 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f al7;\n\n / 0002e9d0: 2f 20 61 64 64 5c 6e 20 20 20 20 20 20 68 20 3d / add\n h = 0002e9e0: 20 61 68 37 3b 5c 6e 20 20 20 20 20 20 6c 20 3d ah7;\n l = 0002e9f0: 20 61 6c 37 3b 5c 6e 5c 6e 20 20 20 20 20 20 61 al7;\n\n a 0002ea00: 20 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 = l & 0xffff; b 0002ea10: 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 = l >>> 16;\n 0002ea20: 20 20 20 20 63 20 3d 20 68 20 26 20 30 78 66 66 c = h & 0xff 0002ea30: 66 66 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 31 36 ff; d = h >>> 16 0002ea40: 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f 2f 20 53 69 ;\n\n // Si 0002ea50: 67 6d 61 31 5c 6e 20 20 20 20 20 20 68 20 3d 20 gma1\n h = 0002ea60: 28 28 61 68 34 20 3e 3e 3e 20 31 34 29 20 7c 20 ((ah4 >>> 14) | 0002ea70: 28 61 6c 34 20 3c 3c 20 28 33 32 2d 31 34 29 29 (al4 << (32-14)) 0002ea80: 29 20 5e 20 28 28 61 68 34 20 3e 3e 3e 20 31 38 ) ^ ((ah4 >>> 18 0002ea90: 29 20 7c 20 28 61 6c 34 20 3c 3c 20 28 33 32 2d ) | (al4 << (32- 0002eaa0: 31 38 29 29 29 20 5e 20 28 28 61 6c 34 20 3e 3e 18))) ^ ((al4 >> 0002eab0: 3e 20 28 34 31 2d 33 32 29 29 20 7c 20 28 61 68 > (41-32)) | (ah 0002eac0: 34 20 3c 3c 20 28 33 32 2d 28 34 31 2d 33 32 29 4 << (32-(41-32) 0002ead0: 29 29 29 3b 5c 6e 20 20 20 20 20 20 6c 20 3d 20 )));\n l = 0002eae0: 28 28 61 6c 34 20 3e 3e 3e 20 31 34 29 20 7c 20 ((al4 >>> 14) | 0002eaf0: 28 61 68 34 20 3c 3c 20 28 33 32 2d 31 34 29 29 (ah4 << (32-14)) 0002eb00: 29 20 5e 20 28 28 61 6c 34 20 3e 3e 3e 20 31 38 ) ^ ((al4 >>> 18 0002eb10: 29 20 7c 20 28 61 68 34 20 3c 3c 20 28 33 32 2d ) | (ah4 << (32- 0002eb20: 31 38 29 29 29 20 5e 20 28 28 61 68 34 20 3e 3e 18))) ^ ((ah4 >> 0002eb30: 3e 20 28 34 31 2d 33 32 29 29 20 7c 20 28 61 6c > (41-32)) | (al 0002eb40: 34 20 3c 3c 20 28 33 32 2d 28 34 31 2d 33 32 29 4 << (32-(41-32) 0002eb50: 29 29 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 61 20 )));\n\n a 0002eb60: 2b 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 += l & 0xffff; b 0002eb70: 20 2b 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 += l >>> 16;\n 0002eb80: 20 20 20 20 20 63 20 2b 3d 20 68 20 26 20 30 78 c += h & 0x 0002eb90: 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e ffff; d += h >>> 0002eba0: 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f 2f 16;\n\n // 0002ebb0: 20 43 68 5c 6e 20 20 20 20 20 20 68 20 3d 20 28 Ch\n h = ( 0002ebc0: 61 68 34 20 26 20 61 68 35 29 20 5e 20 28 7e 61 ah4 & ah5) ^ (~a 0002ebd0: 68 34 20 26 20 61 68 36 29 3b 5c 6e 20 20 20 20 h4 & ah6);\n 0002ebe0: 20 20 6c 20 3d 20 28 61 6c 34 20 26 20 61 6c 35 l = (al4 & al5 0002ebf0: 29 20 5e 20 28 7e 61 6c 34 20 26 20 61 6c 36 29 ) ^ (~al4 & al6) 0002ec00: 3b 5c 6e 5c 6e 20 20 20 20 20 20 61 20 2b 3d 20 ;\n\n a += 0002ec10: 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b 3d l & 0xffff; b += 0002ec20: 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 l >>> 16;\n 0002ec30: 20 20 63 20 2b 3d 20 68 20 26 20 30 78 66 66 66 c += h & 0xfff 0002ec40: 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 f; d += h >>> 16 0002ec50: 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f 2f 20 4b 5c ;\n\n // K\ 0002ec60: 6e 20 20 20 20 20 20 68 20 3d 20 4b 5b 69 2a 32 n h = K[i*2 0002ec70: 5d 3b 5c 6e 20 20 20 20 20 20 6c 20 3d 20 4b 5b ];\n l = K[ 0002ec80: 69 2a 32 2b 31 5d 3b 5c 6e 5c 6e 20 20 20 20 20 i*2+1];\n\n 0002ec90: 20 61 20 2b 3d 20 6c 20 26 20 30 78 66 66 66 66 a += l & 0xffff 0002eca0: 3b 20 62 20 2b 3d 20 6c 20 3e 3e 3e 20 31 36 3b ; b += l >>> 16; 0002ecb0: 5c 6e 20 20 20 20 20 20 63 20 2b 3d 20 68 20 26 \n c += h & 0002ecc0: 20 30 78 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 0xffff; d += h 0002ecd0: 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 >>> 16;\n\n 0002ece0: 20 2f 2f 20 77 5c 6e 20 20 20 20 20 20 68 20 3d // w\n h = 0002ecf0: 20 77 68 5b 69 25 31 36 5d 3b 5c 6e 20 20 20 20 wh[i%16];\n 0002ed00: 20 20 6c 20 3d 20 77 6c 5b 69 25 31 36 5d 3b 5c l = wl[i%16];\ 0002ed10: 6e 5c 6e 20 20 20 20 20 20 61 20 2b 3d 20 6c 20 n\n a += l 0002ed20: 26 20 30 78 66 66 66 66 3b 20 62 20 2b 3d 20 6c & 0xffff; b += l 0002ed30: 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 20 20 >>> 16;\n 0002ed40: 63 20 2b 3d 20 68 20 26 20 30 78 66 66 66 66 3b c += h & 0xffff; 0002ed50: 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c d += h >>> 16;\ 0002ed60: 6e 5c 6e 20 20 20 20 20 20 62 20 2b 3d 20 61 20 n\n b += a 0002ed70: 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 20 20 63 >>> 16;\n c 0002ed80: 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b 5c 6e 20 += b >>> 16;\n 0002ed90: 20 20 20 20 20 64 20 2b 3d 20 63 20 3e 3e 3e 20 d += c >>> 0002eda0: 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 74 68 20 16;\n\n th 0002edb0: 3d 20 63 20 26 20 30 78 66 66 66 66 20 7c 20 64 = c & 0xffff | d 0002edc0: 20 3c 3c 20 31 36 3b 5c 6e 20 20 20 20 20 20 74 << 16;\n t 0002edd0: 6c 20 3d 20 61 20 26 20 30 78 66 66 66 66 20 7c l = a & 0xffff | 0002ede0: 20 62 20 3c 3c 20 31 36 3b 5c 6e 5c 6e 20 20 20 b << 16;\n\n 0002edf0: 20 20 20 2f 2f 20 61 64 64 5c 6e 20 20 20 20 20 // add\n 0002ee00: 20 68 20 3d 20 74 68 3b 5c 6e 20 20 20 20 20 20 h = th;\n 0002ee10: 6c 20 3d 20 74 6c 3b 5c 6e 5c 6e 20 20 20 20 20 l = tl;\n\n 0002ee20: 20 61 20 3d 20 6c 20 26 20 30 78 66 66 66 66 3b a = l & 0xffff; 0002ee30: 20 62 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e b = l >>> 16;\n 0002ee40: 20 20 20 20 20 20 63 20 3d 20 68 20 26 20 30 78 c = h & 0x 0002ee50: 66 66 66 66 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 ffff; d = h >>> 0002ee60: 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f 2f 20 16;\n\n // 0002ee70: 53 69 67 6d 61 30 5c 6e 20 20 20 20 20 20 68 20 Sigma0\n h 0002ee80: 3d 20 28 28 61 68 30 20 3e 3e 3e 20 32 38 29 20 = ((ah0 >>> 28) 0002ee90: 7c 20 28 61 6c 30 20 3c 3c 20 28 33 32 2d 32 38 | (al0 << (32-28 0002eea0: 29 29 29 20 5e 20 28 28 61 6c 30 20 3e 3e 3e 20 ))) ^ ((al0 >>> 0002eeb0: 28 33 34 2d 33 32 29 29 20 7c 20 28 61 68 30 20 (34-32)) | (ah0 0002eec0: 3c 3c 20 28 33 32 2d 28 33 34 2d 33 32 29 29 29 << (32-(34-32))) 0002eed0: 29 20 5e 20 28 28 61 6c 30 20 3e 3e 3e 20 28 33 ) ^ ((al0 >>> (3 0002eee0: 39 2d 33 32 29 29 20 7c 20 28 61 68 30 20 3c 3c 9-32)) | (ah0 << 0002eef0: 20 28 33 32 2d 28 33 39 2d 33 32 29 29 29 29 3b (32-(39-32)))); 0002ef00: 5c 6e 20 20 20 20 20 20 6c 20 3d 20 28 28 61 6c \n l = ((al 0002ef10: 30 20 3e 3e 3e 20 32 38 29 20 7c 20 28 61 68 30 0 >>> 28) | (ah0 0002ef20: 20 3c 3c 20 28 33 32 2d 32 38 29 29 29 20 5e 20 << (32-28))) ^ 0002ef30: 28 28 61 68 30 20 3e 3e 3e 20 28 33 34 2d 33 32 ((ah0 >>> (34-32 0002ef40: 29 29 20 7c 20 28 61 6c 30 20 3c 3c 20 28 33 32 )) | (al0 << (32 0002ef50: 2d 28 33 34 2d 33 32 29 29 29 29 20 5e 20 28 28 -(34-32)))) ^ (( 0002ef60: 61 68 30 20 3e 3e 3e 20 28 33 39 2d 33 32 29 29 ah0 >>> (39-32)) 0002ef70: 20 7c 20 28 61 6c 30 20 3c 3c 20 28 33 32 2d 28 | (al0 << (32-( 0002ef80: 33 39 2d 33 32 29 29 29 29 3b 5c 6e 5c 6e 20 20 39-32))));\n\n 0002ef90: 20 20 20 20 61 20 2b 3d 20 6c 20 26 20 30 78 66 a += l & 0xf 0002efa0: 66 66 66 3b 20 62 20 2b 3d 20 6c 20 3e 3e 3e 20 fff; b += l >>> 0002efb0: 31 36 3b 5c 6e 20 20 20 20 20 20 63 20 2b 3d 20 16;\n c += 0002efc0: 68 20 26 20 30 78 66 66 66 66 3b 20 64 20 2b 3d h & 0xffff; d += 0002efd0: 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 h >>> 16;\n\n 0002efe0: 20 20 20 20 2f 2f 20 4d 61 6a 5c 6e 20 20 20 20 // Maj\n 0002eff0: 20 20 68 20 3d 20 28 61 68 30 20 26 20 61 68 31 h = (ah0 & ah1 0002f000: 29 20 5e 20 28 61 68 30 20 26 20 61 68 32 29 20 ) ^ (ah0 & ah2) 0002f010: 5e 20 28 61 68 31 20 26 20 61 68 32 29 3b 5c 6e ^ (ah1 & ah2);\n 0002f020: 20 20 20 20 20 20 6c 20 3d 20 28 61 6c 30 20 26 l = (al0 & 0002f030: 20 61 6c 31 29 20 5e 20 28 61 6c 30 20 26 20 61 al1) ^ (al0 & a 0002f040: 6c 32 29 20 5e 20 28 61 6c 31 20 26 20 61 6c 32 l2) ^ (al1 & al2 0002f050: 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 61 20 2b 3d );\n\n a += 0002f060: 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b l & 0xffff; b + 0002f070: 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 = l >>> 16;\n 0002f080: 20 20 20 63 20 2b 3d 20 68 20 26 20 30 78 66 66 c += h & 0xff 0002f090: 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 ff; d += h >>> 1 0002f0a0: 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 62 20 2b 3d 6;\n\n b += 0002f0b0: 20 61 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 a >>> 16;\n 0002f0c0: 20 20 63 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b c += b >>> 16; 0002f0d0: 5c 6e 20 20 20 20 20 20 64 20 2b 3d 20 63 20 3e \n d += c > 0002f0e0: 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 >> 16;\n\n 0002f0f0: 62 68 37 20 3d 20 28 63 20 26 20 30 78 66 66 66 bh7 = (c & 0xfff 0002f100: 66 29 20 7c 20 28 64 20 3c 3c 20 31 36 29 3b 5c f) | (d << 16);\ 0002f110: 6e 20 20 20 20 20 20 62 6c 37 20 3d 20 28 61 20 n bl7 = (a 0002f120: 26 20 30 78 66 66 66 66 29 20 7c 20 28 62 20 3c & 0xffff) | (b < 0002f130: 3c 20 31 36 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 < 16);\n\n 0002f140: 2f 2f 20 61 64 64 5c 6e 20 20 20 20 20 20 68 20 // add\n h 0002f150: 3d 20 62 68 33 3b 5c 6e 20 20 20 20 20 20 6c 20 = bh3;\n l 0002f160: 3d 20 62 6c 33 3b 5c 6e 5c 6e 20 20 20 20 20 20 = bl3;\n\n 0002f170: 61 20 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 a = l & 0xffff; 0002f180: 62 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 b = l >>> 16;\n 0002f190: 20 20 20 20 20 63 20 3d 20 68 20 26 20 30 78 66 c = h & 0xf 0002f1a0: 66 66 66 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 31 fff; d = h >>> 1 0002f1b0: 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 68 20 3d 20 6;\n\n h = 0002f1c0: 74 68 3b 5c 6e 20 20 20 20 20 20 6c 20 3d 20 74 th;\n l = t 0002f1d0: 6c 3b 5c 6e 5c 6e 20 20 20 20 20 20 61 20 2b 3d l;\n\n a += 0002f1e0: 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b l & 0xffff; b + 0002f1f0: 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 = l >>> 16;\n 0002f200: 20 20 20 63 20 2b 3d 20 68 20 26 20 30 78 66 66 c += h & 0xff 0002f210: 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 ff; d += h >>> 1 0002f220: 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 62 20 2b 3d 6;\n\n b += 0002f230: 20 61 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 a >>> 16;\n 0002f240: 20 20 63 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b c += b >>> 16; 0002f250: 5c 6e 20 20 20 20 20 20 64 20 2b 3d 20 63 20 3e \n d += c > 0002f260: 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 >> 16;\n\n 0002f270: 62 68 33 20 3d 20 28 63 20 26 20 30 78 66 66 66 bh3 = (c & 0xfff 0002f280: 66 29 20 7c 20 28 64 20 3c 3c 20 31 36 29 3b 5c f) | (d << 16);\ 0002f290: 6e 20 20 20 20 20 20 62 6c 33 20 3d 20 28 61 20 n bl3 = (a 0002f2a0: 26 20 30 78 66 66 66 66 29 20 7c 20 28 62 20 3c & 0xffff) | (b < 0002f2b0: 3c 20 31 36 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 < 16);\n\n 0002f2c0: 61 68 31 20 3d 20 62 68 30 3b 5c 6e 20 20 20 20 ah1 = bh0;\n 0002f2d0: 20 20 61 68 32 20 3d 20 62 68 31 3b 5c 6e 20 20 ah2 = bh1;\n 0002f2e0: 20 20 20 20 61 68 33 20 3d 20 62 68 32 3b 5c 6e ah3 = bh2;\n 0002f2f0: 20 20 20 20 20 20 61 68 34 20 3d 20 62 68 33 3b ah4 = bh3; 0002f300: 5c 6e 20 20 20 20 20 20 61 68 35 20 3d 20 62 68 \n ah5 = bh 0002f310: 34 3b 5c 6e 20 20 20 20 20 20 61 68 36 20 3d 20 4;\n ah6 = 0002f320: 62 68 35 3b 5c 6e 20 20 20 20 20 20 61 68 37 20 bh5;\n ah7 0002f330: 3d 20 62 68 36 3b 5c 6e 20 20 20 20 20 20 61 68 = bh6;\n ah 0002f340: 30 20 3d 20 62 68 37 3b 5c 6e 5c 6e 20 20 20 20 0 = bh7;\n\n 0002f350: 20 20 61 6c 31 20 3d 20 62 6c 30 3b 5c 6e 20 20 al1 = bl0;\n 0002f360: 20 20 20 20 61 6c 32 20 3d 20 62 6c 31 3b 5c 6e al2 = bl1;\n 0002f370: 20 20 20 20 20 20 61 6c 33 20 3d 20 62 6c 32 3b al3 = bl2; 0002f380: 5c 6e 20 20 20 20 20 20 61 6c 34 20 3d 20 62 6c \n al4 = bl 0002f390: 33 3b 5c 6e 20 20 20 20 20 20 61 6c 35 20 3d 20 3;\n al5 = 0002f3a0: 62 6c 34 3b 5c 6e 20 20 20 20 20 20 61 6c 36 20 bl4;\n al6 0002f3b0: 3d 20 62 6c 35 3b 5c 6e 20 20 20 20 20 20 61 6c = bl5;\n al 0002f3c0: 37 20 3d 20 62 6c 36 3b 5c 6e 20 20 20 20 20 20 7 = bl6;\n 0002f3d0: 61 6c 30 20 3d 20 62 6c 37 3b 5c 6e 5c 6e 20 20 al0 = bl7;\n\n 0002f3e0: 20 20 20 20 69 66 20 28 69 25 31 36 20 3d 3d 3d if (i%16 === 0002f3f0: 20 31 35 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 15) {\n 0002f400: 66 6f 72 20 28 6a 20 3d 20 30 3b 20 6a 20 3c 20 for (j = 0; j < 0002f410: 31 36 3b 20 6a 2b 2b 29 20 7b 5c 6e 20 20 20 20 16; j++) {\n 0002f420: 20 20 20 20 20 20 2f 2f 20 61 64 64 5c 6e 20 20 // add\n 0002f430: 20 20 20 20 20 20 20 20 68 20 3d 20 77 68 5b 6a h = wh[j 0002f440: 5d 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 6c 20 ];\n l 0002f450: 3d 20 77 6c 5b 6a 5d 3b 5c 6e 5c 6e 20 20 20 20 = wl[j];\n\n 0002f460: 20 20 20 20 20 20 61 20 3d 20 6c 20 26 20 30 78 a = l & 0x 0002f470: 66 66 66 66 3b 20 62 20 3d 20 6c 20 3e 3e 3e 20 ffff; b = l >>> 0002f480: 31 36 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 63 16;\n c 0002f490: 20 3d 20 68 20 26 20 30 78 66 66 66 66 3b 20 64 = h & 0xffff; d 0002f4a0: 20 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e = h >>> 16;\n\n 0002f4b0: 20 20 20 20 20 20 20 20 20 20 68 20 3d 20 77 68 h = wh 0002f4c0: 5b 28 6a 2b 39 29 25 31 36 5d 3b 5c 6e 20 20 20 [(j+9)%16];\n 0002f4d0: 20 20 20 20 20 20 20 6c 20 3d 20 77 6c 5b 28 6a l = wl[(j 0002f4e0: 2b 39 29 25 31 36 5d 3b 5c 6e 5c 6e 20 20 20 20 +9)%16];\n\n 0002f4f0: 20 20 20 20 20 20 61 20 2b 3d 20 6c 20 26 20 30 a += l & 0 0002f500: 78 66 66 66 66 3b 20 62 20 2b 3d 20 6c 20 3e 3e xffff; b += l >> 0002f510: 3e 20 31 36 3b 5c 6e 20 20 20 20 20 20 20 20 20 > 16;\n 0002f520: 20 63 20 2b 3d 20 68 20 26 20 30 78 66 66 66 66 c += h & 0xffff 0002f530: 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 3b ; d += h >>> 16; 0002f540: 5c 6e 5c 6e 20 20 20 20 20 20 20 20 20 20 2f 2f \n\n // 0002f550: 20 73 69 67 6d 61 30 5c 6e 20 20 20 20 20 20 20 sigma0\n 0002f560: 20 20 20 74 68 20 3d 20 77 68 5b 28 6a 2b 31 29 th = wh[(j+1) 0002f570: 25 31 36 5d 3b 5c 6e 20 20 20 20 20 20 20 20 20 %16];\n 0002f580: 20 74 6c 20 3d 20 77 6c 5b 28 6a 2b 31 29 25 31 tl = wl[(j+1)%1 0002f590: 36 5d 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 68 6];\n h 0002f5a0: 20 3d 20 28 28 74 68 20 3e 3e 3e 20 31 29 20 7c = ((th >>> 1) | 0002f5b0: 20 28 74 6c 20 3c 3c 20 28 33 32 2d 31 29 29 29 (tl << (32-1))) 0002f5c0: 20 5e 20 28 28 74 68 20 3e 3e 3e 20 38 29 20 7c ^ ((th >>> 8) | 0002f5d0: 20 28 74 6c 20 3c 3c 20 28 33 32 2d 38 29 29 29 (tl << (32-8))) 0002f5e0: 20 5e 20 28 74 68 20 3e 3e 3e 20 37 29 3b 5c 6e ^ (th >>> 7);\n 0002f5f0: 20 20 20 20 20 20 20 20 20 20 6c 20 3d 20 28 28 l = (( 0002f600: 74 6c 20 3e 3e 3e 20 31 29 20 7c 20 28 74 68 20 tl >>> 1) | (th 0002f610: 3c 3c 20 28 33 32 2d 31 29 29 29 20 5e 20 28 28 << (32-1))) ^ (( 0002f620: 74 6c 20 3e 3e 3e 20 38 29 20 7c 20 28 74 68 20 tl >>> 8) | (th 0002f630: 3c 3c 20 28 33 32 2d 38 29 29 29 20 5e 20 28 28 << (32-8))) ^ (( 0002f640: 74 6c 20 3e 3e 3e 20 37 29 20 7c 20 28 74 68 20 tl >>> 7) | (th 0002f650: 3c 3c 20 28 33 32 2d 37 29 29 29 3b 5c 6e 5c 6e << (32-7)));\n\n 0002f660: 20 20 20 20 20 20 20 20 20 20 61 20 2b 3d 20 6c a += l 0002f670: 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b 3d 20 & 0xffff; b += 0002f680: 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 20 l >>> 16;\n 0002f690: 20 20 20 20 20 63 20 2b 3d 20 68 20 26 20 30 78 c += h & 0x 0002f6a0: 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e ffff; d += h >>> 0002f6b0: 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 20 20 16;\n\n 0002f6c0: 20 20 2f 2f 20 73 69 67 6d 61 31 5c 6e 20 20 20 // sigma1\n 0002f6d0: 20 20 20 20 20 20 20 74 68 20 3d 20 77 68 5b 28 th = wh[( 0002f6e0: 6a 2b 31 34 29 25 31 36 5d 3b 5c 6e 20 20 20 20 j+14)%16];\n 0002f6f0: 20 20 20 20 20 20 74 6c 20 3d 20 77 6c 5b 28 6a tl = wl[(j 0002f700: 2b 31 34 29 25 31 36 5d 3b 5c 6e 20 20 20 20 20 +14)%16];\n 0002f710: 20 20 20 20 20 68 20 3d 20 28 28 74 68 20 3e 3e h = ((th >> 0002f720: 3e 20 31 39 29 20 7c 20 28 74 6c 20 3c 3c 20 28 > 19) | (tl << ( 0002f730: 33 32 2d 31 39 29 29 29 20 5e 20 28 28 74 6c 20 32-19))) ^ ((tl 0002f740: 3e 3e 3e 20 28 36 31 2d 33 32 29 29 20 7c 20 28 >>> (61-32)) | ( 0002f750: 74 68 20 3c 3c 20 28 33 32 2d 28 36 31 2d 33 32 th << (32-(61-32 0002f760: 29 29 29 29 20 5e 20 28 74 68 20 3e 3e 3e 20 36 )))) ^ (th >>> 6 0002f770: 29 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 6c 20 );\n l 0002f780: 3d 20 28 28 74 6c 20 3e 3e 3e 20 31 39 29 20 7c = ((tl >>> 19) | 0002f790: 20 28 74 68 20 3c 3c 20 28 33 32 2d 31 39 29 29 (th << (32-19)) 0002f7a0: 29 20 5e 20 28 28 74 68 20 3e 3e 3e 20 28 36 31 ) ^ ((th >>> (61 0002f7b0: 2d 33 32 29 29 20 7c 20 28 74 6c 20 3c 3c 20 28 -32)) | (tl << ( 0002f7c0: 33 32 2d 28 36 31 2d 33 32 29 29 29 29 20 5e 20 32-(61-32)))) ^ 0002f7d0: 28 28 74 6c 20 3e 3e 3e 20 36 29 20 7c 20 28 74 ((tl >>> 6) | (t 0002f7e0: 68 20 3c 3c 20 28 33 32 2d 36 29 29 29 3b 5c 6e h << (32-6)));\n 0002f7f0: 5c 6e 20 20 20 20 20 20 20 20 20 20 61 20 2b 3d \n a += 0002f800: 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b l & 0xffff; b + 0002f810: 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 = l >>> 16;\n 0002f820: 20 20 20 20 20 20 20 63 20 2b 3d 20 68 20 26 20 c += h & 0002f830: 30 78 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 3e 0xffff; d += h > 0002f840: 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 >> 16;\n\n 0002f850: 20 20 20 20 62 20 2b 3d 20 61 20 3e 3e 3e 20 31 b += a >>> 1 0002f860: 36 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 63 20 6;\n c 0002f870: 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 += b >>> 16;\n 0002f880: 20 20 20 20 20 20 20 20 64 20 2b 3d 20 63 20 3e d += c > 0002f890: 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 >> 16;\n\n 0002f8a0: 20 20 20 20 77 68 5b 6a 5d 20 3d 20 28 63 20 26 wh[j] = (c & 0002f8b0: 20 30 78 66 66 66 66 29 20 7c 20 28 64 20 3c 3c 0xffff) | (d << 0002f8c0: 20 31 36 29 3b 5c 6e 20 20 20 20 20 20 20 20 20 16);\n 0002f8d0: 20 77 6c 5b 6a 5d 20 3d 20 28 61 20 26 20 30 78 wl[j] = (a & 0x 0002f8e0: 66 66 66 66 29 20 7c 20 28 62 20 3c 3c 20 31 36 ffff) | (b << 16 0002f8f0: 29 3b 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 );\n }\n 0002f900: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c }\n }\n\ 0002f910: 6e 20 20 20 20 2f 2f 20 61 64 64 5c 6e 20 20 20 n // add\n 0002f920: 20 68 20 3d 20 61 68 30 3b 5c 6e 20 20 20 20 6c h = ah0;\n l 0002f930: 20 3d 20 61 6c 30 3b 5c 6e 5c 6e 20 20 20 20 61 = al0;\n\n a 0002f940: 20 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 = l & 0xffff; b 0002f950: 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 = l >>> 16;\n 0002f960: 20 20 63 20 3d 20 68 20 26 20 30 78 66 66 66 66 c = h & 0xffff 0002f970: 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c ; d = h >>> 16;\ 0002f980: 6e 5c 6e 20 20 20 20 68 20 3d 20 68 68 5b 30 5d n\n h = hh[0] 0002f990: 3b 5c 6e 20 20 20 20 6c 20 3d 20 68 6c 5b 30 5d ;\n l = hl[0] 0002f9a0: 3b 5c 6e 5c 6e 20 20 20 20 61 20 2b 3d 20 6c 20 ;\n\n a += l 0002f9b0: 26 20 30 78 66 66 66 66 3b 20 62 20 2b 3d 20 6c & 0xffff; b += l 0002f9c0: 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 >>> 16;\n c 0002f9d0: 2b 3d 20 68 20 26 20 30 78 66 66 66 66 3b 20 64 += h & 0xffff; d 0002f9e0: 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c += h >>> 16;\n\ 0002f9f0: 6e 20 20 20 20 62 20 2b 3d 20 61 20 3e 3e 3e 20 n b += a >>> 0002fa00: 31 36 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 62 20 16;\n c += b 0002fa10: 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 64 20 2b >>> 16;\n d + 0002fa20: 3d 20 63 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 = c >>> 16;\n\n 0002fa30: 20 20 20 68 68 5b 30 5d 20 3d 20 61 68 30 20 3d hh[0] = ah0 = 0002fa40: 20 28 63 20 26 20 30 78 66 66 66 66 29 20 7c 20 (c & 0xffff) | 0002fa50: 28 64 20 3c 3c 20 31 36 29 3b 5c 6e 20 20 20 20 (d << 16);\n 0002fa60: 68 6c 5b 30 5d 20 3d 20 61 6c 30 20 3d 20 28 61 hl[0] = al0 = (a 0002fa70: 20 26 20 30 78 66 66 66 66 29 20 7c 20 28 62 20 & 0xffff) | (b 0002fa80: 3c 3c 20 31 36 29 3b 5c 6e 5c 6e 20 20 20 20 68 << 16);\n\n h 0002fa90: 20 3d 20 61 68 31 3b 5c 6e 20 20 20 20 6c 20 3d = ah1;\n l = 0002faa0: 20 61 6c 31 3b 5c 6e 5c 6e 20 20 20 20 61 20 3d al1;\n\n a = 0002fab0: 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 3d l & 0xffff; b = 0002fac0: 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 l >>> 16;\n 0002fad0: 63 20 3d 20 68 20 26 20 30 78 66 66 66 66 3b 20 c = h & 0xffff; 0002fae0: 64 20 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c d = h >>> 16;\n\ 0002faf0: 6e 20 20 20 20 68 20 3d 20 68 68 5b 31 5d 3b 5c n h = hh[1];\ 0002fb00: 6e 20 20 20 20 6c 20 3d 20 68 6c 5b 31 5d 3b 5c n l = hl[1];\ 0002fb10: 6e 5c 6e 20 20 20 20 61 20 2b 3d 20 6c 20 26 20 n\n a += l & 0002fb20: 30 78 66 66 66 66 3b 20 62 20 2b 3d 20 6c 20 3e 0xffff; b += l > 0002fb30: 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 2b 3d >> 16;\n c += 0002fb40: 20 68 20 26 20 30 78 66 66 66 66 3b 20 64 20 2b h & 0xffff; d + 0002fb50: 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 = h >>> 16;\n\n 0002fb60: 20 20 20 62 20 2b 3d 20 61 20 3e 3e 3e 20 31 36 b += a >>> 16 0002fb70: 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 62 20 3e 3e ;\n c += b >> 0002fb80: 3e 20 31 36 3b 5c 6e 20 20 20 20 64 20 2b 3d 20 > 16;\n d += 0002fb90: 63 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 c >>> 16;\n\n 0002fba0: 20 68 68 5b 31 5d 20 3d 20 61 68 31 20 3d 20 28 hh[1] = ah1 = ( 0002fbb0: 63 20 26 20 30 78 66 66 66 66 29 20 7c 20 28 64 c & 0xffff) | (d 0002fbc0: 20 3c 3c 20 31 36 29 3b 5c 6e 20 20 20 20 68 6c << 16);\n hl 0002fbd0: 5b 31 5d 20 3d 20 61 6c 31 20 3d 20 28 61 20 26 [1] = al1 = (a & 0002fbe0: 20 30 78 66 66 66 66 29 20 7c 20 28 62 20 3c 3c 0xffff) | (b << 0002fbf0: 20 31 36 29 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d 16);\n\n h = 0002fc00: 20 61 68 32 3b 5c 6e 20 20 20 20 6c 20 3d 20 61 ah2;\n l = a 0002fc10: 6c 32 3b 5c 6e 5c 6e 20 20 20 20 61 20 3d 20 6c l2;\n\n a = l 0002fc20: 20 26 20 30 78 66 66 66 66 3b 20 62 20 3d 20 6c & 0xffff; b = l 0002fc30: 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 >>> 16;\n c 0002fc40: 3d 20 68 20 26 20 30 78 66 66 66 66 3b 20 64 20 = h & 0xffff; d 0002fc50: 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 = h >>> 16;\n\n 0002fc60: 20 20 20 68 20 3d 20 68 68 5b 32 5d 3b 5c 6e 20 h = hh[2];\n 0002fc70: 20 20 20 6c 20 3d 20 68 6c 5b 32 5d 3b 5c 6e 5c l = hl[2];\n\ 0002fc80: 6e 20 20 20 20 61 20 2b 3d 20 6c 20 26 20 30 78 n a += l & 0x 0002fc90: 66 66 66 66 3b 20 62 20 2b 3d 20 6c 20 3e 3e 3e ffff; b += l >>> 0002fca0: 20 31 36 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 68 16;\n c += h 0002fcb0: 20 26 20 30 78 66 66 66 66 3b 20 64 20 2b 3d 20 & 0xffff; d += 0002fcc0: 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 h >>> 16;\n\n 0002fcd0: 20 62 20 2b 3d 20 61 20 3e 3e 3e 20 31 36 3b 5c b += a >>> 16;\ 0002fce0: 6e 20 20 20 20 63 20 2b 3d 20 62 20 3e 3e 3e 20 n c += b >>> 0002fcf0: 31 36 3b 5c 6e 20 20 20 20 64 20 2b 3d 20 63 20 16;\n d += c 0002fd00: 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 >>> 16;\n\n h 0002fd10: 68 5b 32 5d 20 3d 20 61 68 32 20 3d 20 28 63 20 h[2] = ah2 = (c 0002fd20: 26 20 30 78 66 66 66 66 29 20 7c 20 28 64 20 3c & 0xffff) | (d < 0002fd30: 3c 20 31 36 29 3b 5c 6e 20 20 20 20 68 6c 5b 32 < 16);\n hl[2 0002fd40: 5d 20 3d 20 61 6c 32 20 3d 20 28 61 20 26 20 30 ] = al2 = (a & 0 0002fd50: 78 66 66 66 66 29 20 7c 20 28 62 20 3c 3c 20 31 xffff) | (b << 1 0002fd60: 36 29 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d 20 61 6);\n\n h = a 0002fd70: 68 33 3b 5c 6e 20 20 20 20 6c 20 3d 20 61 6c 33 h3;\n l = al3 0002fd80: 3b 5c 6e 5c 6e 20 20 20 20 61 20 3d 20 6c 20 26 ;\n\n a = l & 0002fd90: 20 30 78 66 66 66 66 3b 20 62 20 3d 20 6c 20 3e 0xffff; b = l > 0002fda0: 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 3d 20 >> 16;\n c = 0002fdb0: 68 20 26 20 30 78 66 66 66 66 3b 20 64 20 3d 20 h & 0xffff; d = 0002fdc0: 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 h >>> 16;\n\n 0002fdd0: 20 68 20 3d 20 68 68 5b 33 5d 3b 5c 6e 20 20 20 h = hh[3];\n 0002fde0: 20 6c 20 3d 20 68 6c 5b 33 5d 3b 5c 6e 5c 6e 20 l = hl[3];\n\n 0002fdf0: 20 20 20 61 20 2b 3d 20 6c 20 26 20 30 78 66 66 a += l & 0xff 0002fe00: 66 66 3b 20 62 20 2b 3d 20 6c 20 3e 3e 3e 20 31 ff; b += l >>> 1 0002fe10: 36 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 68 20 26 6;\n c += h & 0002fe20: 20 30 78 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 0xffff; d += h 0002fe30: 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 62 >>> 16;\n\n b 0002fe40: 20 2b 3d 20 61 20 3e 3e 3e 20 31 36 3b 5c 6e 20 += a >>> 16;\n 0002fe50: 20 20 20 63 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 c += b >>> 16 0002fe60: 3b 5c 6e 20 20 20 20 64 20 2b 3d 20 63 20 3e 3e ;\n d += c >> 0002fe70: 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 68 5b > 16;\n\n hh[ 0002fe80: 33 5d 20 3d 20 61 68 33 20 3d 20 28 63 20 26 20 3] = ah3 = (c & 0002fe90: 30 78 66 66 66 66 29 20 7c 20 28 64 20 3c 3c 20 0xffff) | (d << 0002fea0: 31 36 29 3b 5c 6e 20 20 20 20 68 6c 5b 33 5d 20 16);\n hl[3] 0002feb0: 3d 20 61 6c 33 20 3d 20 28 61 20 26 20 30 78 66 = al3 = (a & 0xf 0002fec0: 66 66 66 29 20 7c 20 28 62 20 3c 3c 20 31 36 29 fff) | (b << 16) 0002fed0: 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d 20 61 68 34 ;\n\n h = ah4 0002fee0: 3b 5c 6e 20 20 20 20 6c 20 3d 20 61 6c 34 3b 5c ;\n l = al4;\ 0002fef0: 6e 5c 6e 20 20 20 20 61 20 3d 20 6c 20 26 20 30 n\n a = l & 0 0002ff00: 78 66 66 66 66 3b 20 62 20 3d 20 6c 20 3e 3e 3e xffff; b = l >>> 0002ff10: 20 31 36 3b 5c 6e 20 20 20 20 63 20 3d 20 68 20 16;\n c = h 0002ff20: 26 20 30 78 66 66 66 66 3b 20 64 20 3d 20 68 20 & 0xffff; d = h 0002ff30: 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 >>> 16;\n\n h 0002ff40: 20 3d 20 68 68 5b 34 5d 3b 5c 6e 20 20 20 20 6c = hh[4];\n l 0002ff50: 20 3d 20 68 6c 5b 34 5d 3b 5c 6e 5c 6e 20 20 20 = hl[4];\n\n 0002ff60: 20 61 20 2b 3d 20 6c 20 26 20 30 78 66 66 66 66 a += l & 0xffff 0002ff70: 3b 20 62 20 2b 3d 20 6c 20 3e 3e 3e 20 31 36 3b ; b += l >>> 16; 0002ff80: 5c 6e 20 20 20 20 63 20 2b 3d 20 68 20 26 20 30 \n c += h & 0 0002ff90: 78 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e xffff; d += h >> 0002ffa0: 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 62 20 2b > 16;\n\n b + 0002ffb0: 3d 20 61 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 = a >>> 16;\n 0002ffc0: 20 63 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b 5c c += b >>> 16;\ 0002ffd0: 6e 20 20 20 20 64 20 2b 3d 20 63 20 3e 3e 3e 20 n d += c >>> 0002ffe0: 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 68 5b 34 5d 16;\n\n hh[4] 0002fff0: 20 3d 20 61 68 34 20 3d 20 28 63 20 26 20 30 78 = ah4 = (c & 0x 00030000: 66 66 66 66 29 20 7c 20 28 64 20 3c 3c 20 31 36 ffff) | (d << 16 00030010: 29 3b 5c 6e 20 20 20 20 68 6c 5b 34 5d 20 3d 20 );\n hl[4] = 00030020: 61 6c 34 20 3d 20 28 61 20 26 20 30 78 66 66 66 al4 = (a & 0xfff 00030030: 66 29 20 7c 20 28 62 20 3c 3c 20 31 36 29 3b 5c f) | (b << 16);\ 00030040: 6e 5c 6e 20 20 20 20 68 20 3d 20 61 68 35 3b 5c n\n h = ah5;\ 00030050: 6e 20 20 20 20 6c 20 3d 20 61 6c 35 3b 5c 6e 5c n l = al5;\n\ 00030060: 6e 20 20 20 20 61 20 3d 20 6c 20 26 20 30 78 66 n a = l & 0xf 00030070: 66 66 66 3b 20 62 20 3d 20 6c 20 3e 3e 3e 20 31 fff; b = l >>> 1 00030080: 36 3b 5c 6e 20 20 20 20 63 20 3d 20 68 20 26 20 6;\n c = h & 00030090: 30 78 66 66 66 66 3b 20 64 20 3d 20 68 20 3e 3e 0xffff; d = h >> 000300a0: 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d > 16;\n\n h = 000300b0: 20 68 68 5b 35 5d 3b 5c 6e 20 20 20 20 6c 20 3d hh[5];\n l = 000300c0: 20 68 6c 5b 35 5d 3b 5c 6e 5c 6e 20 20 20 20 61 hl[5];\n\n a 000300d0: 20 2b 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 += l & 0xffff; 000300e0: 62 20 2b 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e b += l >>> 16;\n 000300f0: 20 20 20 20 63 20 2b 3d 20 68 20 26 20 30 78 66 c += h & 0xf 00030100: 66 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 fff; d += h >>> 00030110: 31 36 3b 5c 6e 5c 6e 20 20 20 20 62 20 2b 3d 20 16;\n\n b += 00030120: 61 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 a >>> 16;\n c 00030130: 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b 5c 6e 20 += b >>> 16;\n 00030140: 20 20 20 64 20 2b 3d 20 63 20 3e 3e 3e 20 31 36 d += c >>> 16 00030150: 3b 5c 6e 5c 6e 20 20 20 20 68 68 5b 35 5d 20 3d ;\n\n hh[5] = 00030160: 20 61 68 35 20 3d 20 28 63 20 26 20 30 78 66 66 ah5 = (c & 0xff 00030170: 66 66 29 20 7c 20 28 64 20 3c 3c 20 31 36 29 3b ff) | (d << 16); 00030180: 5c 6e 20 20 20 20 68 6c 5b 35 5d 20 3d 20 61 6c \n hl[5] = al 00030190: 35 20 3d 20 28 61 20 26 20 30 78 66 66 66 66 29 5 = (a & 0xffff) 000301a0: 20 7c 20 28 62 20 3c 3c 20 31 36 29 3b 5c 6e 5c | (b << 16);\n\ 000301b0: 6e 20 20 20 20 68 20 3d 20 61 68 36 3b 5c 6e 20 n h = ah6;\n 000301c0: 20 20 20 6c 20 3d 20 61 6c 36 3b 5c 6e 5c 6e 20 l = al6;\n\n 000301d0: 20 20 20 61 20 3d 20 6c 20 26 20 30 78 66 66 66 a = l & 0xfff 000301e0: 66 3b 20 62 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b f; b = l >>> 16; 000301f0: 5c 6e 20 20 20 20 63 20 3d 20 68 20 26 20 30 78 \n c = h & 0x 00030200: 66 66 66 66 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 ffff; d = h >>> 00030210: 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d 20 68 16;\n\n h = h 00030220: 68 5b 36 5d 3b 5c 6e 20 20 20 20 6c 20 3d 20 68 h[6];\n l = h 00030230: 6c 5b 36 5d 3b 5c 6e 5c 6e 20 20 20 20 61 20 2b l[6];\n\n a + 00030240: 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 = l & 0xffff; b 00030250: 2b 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 += l >>> 16;\n 00030260: 20 20 63 20 2b 3d 20 68 20 26 20 30 78 66 66 66 c += h & 0xfff 00030270: 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 f; d += h >>> 16 00030280: 3b 5c 6e 5c 6e 20 20 20 20 62 20 2b 3d 20 61 20 ;\n\n b += a 00030290: 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 2b >>> 16;\n c + 000302a0: 3d 20 62 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 = b >>> 16;\n 000302b0: 20 64 20 2b 3d 20 63 20 3e 3e 3e 20 31 36 3b 5c d += c >>> 16;\ 000302c0: 6e 5c 6e 20 20 20 20 68 68 5b 36 5d 20 3d 20 61 n\n hh[6] = a 000302d0: 68 36 20 3d 20 28 63 20 26 20 30 78 66 66 66 66 h6 = (c & 0xffff 000302e0: 29 20 7c 20 28 64 20 3c 3c 20 31 36 29 3b 5c 6e ) | (d << 16);\n 000302f0: 20 20 20 20 68 6c 5b 36 5d 20 3d 20 61 6c 36 20 hl[6] = al6 00030300: 3d 20 28 61 20 26 20 30 78 66 66 66 66 29 20 7c = (a & 0xffff) | 00030310: 20 28 62 20 3c 3c 20 31 36 29 3b 5c 6e 5c 6e 20 (b << 16);\n\n 00030320: 20 20 20 68 20 3d 20 61 68 37 3b 5c 6e 20 20 20 h = ah7;\n 00030330: 20 6c 20 3d 20 61 6c 37 3b 5c 6e 5c 6e 20 20 20 l = al7;\n\n 00030340: 20 61 20 3d 20 6c 20 26 20 30 78 66 66 66 66 3b a = l & 0xffff; 00030350: 20 62 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e b = l >>> 16;\n 00030360: 20 20 20 20 63 20 3d 20 68 20 26 20 30 78 66 66 c = h & 0xff 00030370: 66 66 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 31 36 ff; d = h >>> 16 00030380: 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d 20 68 68 5b ;\n\n h = hh[ 00030390: 37 5d 3b 5c 6e 20 20 20 20 6c 20 3d 20 68 6c 5b 7];\n l = hl[ 000303a0: 37 5d 3b 5c 6e 5c 6e 20 20 20 20 61 20 2b 3d 20 7];\n\n a += 000303b0: 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b 3d l & 0xffff; b += 000303c0: 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 l >>> 16;\n 000303d0: 63 20 2b 3d 20 68 20 26 20 30 78 66 66 66 66 3b c += h & 0xffff; 000303e0: 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c d += h >>> 16;\ 000303f0: 6e 5c 6e 20 20 20 20 62 20 2b 3d 20 61 20 3e 3e n\n b += a >> 00030400: 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 > 16;\n c += 00030410: 62 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 64 b >>> 16;\n d 00030420: 20 2b 3d 20 63 20 3e 3e 3e 20 31 36 3b 5c 6e 5c += c >>> 16;\n\ 00030430: 6e 20 20 20 20 68 68 5b 37 5d 20 3d 20 61 68 37 n hh[7] = ah7 00030440: 20 3d 20 28 63 20 26 20 30 78 66 66 66 66 29 20 = (c & 0xffff) 00030450: 7c 20 28 64 20 3c 3c 20 31 36 29 3b 5c 6e 20 20 | (d << 16);\n 00030460: 20 20 68 6c 5b 37 5d 20 3d 20 61 6c 37 20 3d 20 hl[7] = al7 = 00030470: 28 61 20 26 20 30 78 66 66 66 66 29 20 7c 20 28 (a & 0xffff) | ( 00030480: 62 20 3c 3c 20 31 36 29 3b 5c 6e 5c 6e 20 20 20 b << 16);\n\n 00030490: 20 70 6f 73 20 2b 3d 20 31 32 38 3b 5c 6e 20 20 pos += 128;\n 000304a0: 20 20 6e 20 2d 3d 20 31 32 38 3b 5c 6e 20 20 7d n -= 128;\n } 000304b0: 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 6e 3b 5c \n\n return n;\ 000304c0: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 n}\n\nfunction c 000304d0: 72 79 70 74 6f 5f 68 61 73 68 28 6f 75 74 2c 20 rypto_hash(out, 000304e0: 6d 2c 20 6e 29 20 7b 5c 6e 20 20 76 61 72 20 68 m, n) {\n var h 000304f0: 68 20 3d 20 6e 65 77 20 49 6e 74 33 32 41 72 72 h = new Int32Arr 00030500: 61 79 28 38 29 2c 5c 6e 20 20 20 20 20 20 68 6c ay(8),\n hl 00030510: 20 3d 20 6e 65 77 20 49 6e 74 33 32 41 72 72 61 = new Int32Arra 00030520: 79 28 38 29 2c 5c 6e 20 20 20 20 20 20 78 20 3d y(8),\n x = 00030530: 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 new Uint8Array( 00030540: 32 35 36 29 2c 5c 6e 20 20 20 20 20 20 69 2c 20 256),\n i, 00030550: 62 20 3d 20 6e 3b 5c 6e 5c 6e 20 20 68 68 5b 30 b = n;\n\n hh[0 00030560: 5d 20 3d 20 30 78 36 61 30 39 65 36 36 37 3b 5c ] = 0x6a09e667;\ 00030570: 6e 20 20 68 68 5b 31 5d 20 3d 20 30 78 62 62 36 n hh[1] = 0xbb6 00030580: 37 61 65 38 35 3b 5c 6e 20 20 68 68 5b 32 5d 20 7ae85;\n hh[2] 00030590: 3d 20 30 78 33 63 36 65 66 33 37 32 3b 5c 6e 20 = 0x3c6ef372;\n 000305a0: 20 68 68 5b 33 5d 20 3d 20 30 78 61 35 34 66 66 hh[3] = 0xa54ff 000305b0: 35 33 61 3b 5c 6e 20 20 68 68 5b 34 5d 20 3d 20 53a;\n hh[4] = 000305c0: 30 78 35 31 30 65 35 32 37 66 3b 5c 6e 20 20 68 0x510e527f;\n h 000305d0: 68 5b 35 5d 20 3d 20 30 78 39 62 30 35 36 38 38 h[5] = 0x9b05688 000305e0: 63 3b 5c 6e 20 20 68 68 5b 36 5d 20 3d 20 30 78 c;\n hh[6] = 0x 000305f0: 31 66 38 33 64 39 61 62 3b 5c 6e 20 20 68 68 5b 1f83d9ab;\n hh[ 00030600: 37 5d 20 3d 20 30 78 35 62 65 30 63 64 31 39 3b 7] = 0x5be0cd19; 00030610: 5c 6e 5c 6e 20 20 68 6c 5b 30 5d 20 3d 20 30 78 \n\n hl[0] = 0x 00030620: 66 33 62 63 63 39 30 38 3b 5c 6e 20 20 68 6c 5b f3bcc908;\n hl[ 00030630: 31 5d 20 3d 20 30 78 38 34 63 61 61 37 33 62 3b 1] = 0x84caa73b; 00030640: 5c 6e 20 20 68 6c 5b 32 5d 20 3d 20 30 78 66 65 \n hl[2] = 0xfe 00030650: 39 34 66 38 32 62 3b 5c 6e 20 20 68 6c 5b 33 5d 94f82b;\n hl[3] 00030660: 20 3d 20 30 78 35 66 31 64 33 36 66 31 3b 5c 6e = 0x5f1d36f1;\n 00030670: 20 20 68 6c 5b 34 5d 20 3d 20 30 78 61 64 65 36 hl[4] = 0xade6 00030680: 38 32 64 31 3b 5c 6e 20 20 68 6c 5b 35 5d 20 3d 82d1;\n hl[5] = 00030690: 20 30 78 32 62 33 65 36 63 31 66 3b 5c 6e 20 20 0x2b3e6c1f;\n 000306a0: 68 6c 5b 36 5d 20 3d 20 30 78 66 62 34 31 62 64 hl[6] = 0xfb41bd 000306b0: 36 62 3b 5c 6e 20 20 68 6c 5b 37 5d 20 3d 20 30 6b;\n hl[7] = 0 000306c0: 78 31 33 37 65 32 31 37 39 3b 5c 6e 5c 6e 20 20 x137e2179;\n\n 000306d0: 63 72 79 70 74 6f 5f 68 61 73 68 62 6c 6f 63 6b crypto_hashblock 000306e0: 73 5f 68 6c 28 68 68 2c 20 68 6c 2c 20 6d 2c 20 s_hl(hh, hl, m, 000306f0: 6e 29 3b 5c 6e 20 20 6e 20 25 3d 20 31 32 38 3b n);\n n %= 128; 00030700: 5c 6e 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 \n\n for (i = 0 00030710: 3b 20 69 20 3c 20 6e 3b 20 69 2b 2b 29 20 78 5b ; i < n; i++) x[ 00030720: 69 5d 20 3d 20 6d 5b 62 2d 6e 2b 69 5d 3b 5c 6e i] = m[b-n+i];\n 00030730: 20 20 78 5b 6e 5d 20 3d 20 31 32 38 3b 5c 6e 5c x[n] = 128;\n\ 00030740: 6e 20 20 6e 20 3d 20 32 35 36 2d 31 32 38 2a 28 n n = 256-128*( 00030750: 6e 3c 31 31 32 3f 31 3a 30 29 3b 5c 6e 20 20 78 n<112?1:0);\n x 00030760: 5b 6e 2d 39 5d 20 3d 20 30 3b 5c 6e 20 20 74 73 [n-9] = 0;\n ts 00030770: 36 34 28 78 2c 20 6e 2d 38 2c 20 20 28 62 20 2f 64(x, n-8, (b / 00030780: 20 30 78 32 30 30 30 30 30 30 30 29 20 7c 20 30 0x20000000) | 0 00030790: 2c 20 62 20 3c 3c 20 33 29 3b 5c 6e 20 20 63 72 , b << 3);\n cr 000307a0: 79 70 74 6f 5f 68 61 73 68 62 6c 6f 63 6b 73 5f ypto_hashblocks_ 000307b0: 68 6c 28 68 68 2c 20 68 6c 2c 20 78 2c 20 6e 29 hl(hh, hl, x, n) 000307c0: 3b 5c 6e 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 ;\n\n for (i = 000307d0: 30 3b 20 69 20 3c 20 38 3b 20 69 2b 2b 29 20 74 0; i < 8; i++) t 000307e0: 73 36 34 28 6f 75 74 2c 20 38 2a 69 2c 20 68 68 s64(out, 8*i, hh 000307f0: 5b 69 5d 2c 20 68 6c 5b 69 5d 29 3b 5c 6e 5c 6e [i], hl[i]);\n\n 00030800: 20 20 72 65 74 75 72 6e 20 30 3b 5c 6e 7d 5c 6e return 0;\n}\n 00030810: 5c 6e 66 75 6e 63 74 69 6f 6e 20 61 64 64 28 70 \nfunction add(p 00030820: 2c 20 71 29 20 7b 5c 6e 20 20 76 61 72 20 61 20 , q) {\n var a 00030830: 3d 20 67 66 28 29 2c 20 62 20 3d 20 67 66 28 29 = gf(), b = gf() 00030840: 2c 20 63 20 3d 20 67 66 28 29 2c 5c 6e 20 20 20 , c = gf(),\n 00030850: 20 20 20 64 20 3d 20 67 66 28 29 2c 20 65 20 3d d = gf(), e = 00030860: 20 67 66 28 29 2c 20 66 20 3d 20 67 66 28 29 2c gf(), f = gf(), 00030870: 5c 6e 20 20 20 20 20 20 67 20 3d 20 67 66 28 29 \n g = gf() 00030880: 2c 20 68 20 3d 20 67 66 28 29 2c 20 74 20 3d 20 , h = gf(), t = 00030890: 67 66 28 29 3b 5c 6e 5c 6e 20 20 5a 28 61 2c 20 gf();\n\n Z(a, 000308a0: 70 5b 31 5d 2c 20 70 5b 30 5d 29 3b 5c 6e 20 20 p[1], p[0]);\n 000308b0: 5a 28 74 2c 20 71 5b 31 5d 2c 20 71 5b 30 5d 29 Z(t, q[1], q[0]) 000308c0: 3b 5c 6e 20 20 4d 28 61 2c 20 61 2c 20 74 29 3b ;\n M(a, a, t); 000308d0: 5c 6e 20 20 41 28 62 2c 20 70 5b 30 5d 2c 20 70 \n A(b, p[0], p 000308e0: 5b 31 5d 29 3b 5c 6e 20 20 41 28 74 2c 20 71 5b [1]);\n A(t, q[ 000308f0: 30 5d 2c 20 71 5b 31 5d 29 3b 5c 6e 20 20 4d 28 0], q[1]);\n M( 00030900: 62 2c 20 62 2c 20 74 29 3b 5c 6e 20 20 4d 28 63 b, b, t);\n M(c 00030910: 2c 20 70 5b 33 5d 2c 20 71 5b 33 5d 29 3b 5c 6e , p[3], q[3]);\n 00030920: 20 20 4d 28 63 2c 20 63 2c 20 44 32 29 3b 5c 6e M(c, c, D2);\n 00030930: 20 20 4d 28 64 2c 20 70 5b 32 5d 2c 20 71 5b 32 M(d, p[2], q[2 00030940: 5d 29 3b 5c 6e 20 20 41 28 64 2c 20 64 2c 20 64 ]);\n A(d, d, d 00030950: 29 3b 5c 6e 20 20 5a 28 65 2c 20 62 2c 20 61 29 );\n Z(e, b, a) 00030960: 3b 5c 6e 20 20 5a 28 66 2c 20 64 2c 20 63 29 3b ;\n Z(f, d, c); 00030970: 5c 6e 20 20 41 28 67 2c 20 64 2c 20 63 29 3b 5c \n A(g, d, c);\ 00030980: 6e 20 20 41 28 68 2c 20 62 2c 20 61 29 3b 5c 6e n A(h, b, a);\n 00030990: 5c 6e 20 20 4d 28 70 5b 30 5d 2c 20 65 2c 20 66 \n M(p[0], e, f 000309a0: 29 3b 5c 6e 20 20 4d 28 70 5b 31 5d 2c 20 68 2c );\n M(p[1], h, 000309b0: 20 67 29 3b 5c 6e 20 20 4d 28 70 5b 32 5d 2c 20 g);\n M(p[2], 000309c0: 67 2c 20 66 29 3b 5c 6e 20 20 4d 28 70 5b 33 5d g, f);\n M(p[3] 000309d0: 2c 20 65 2c 20 68 29 3b 5c 6e 7d 5c 6e 5c 6e 66 , e, h);\n}\n\nf 000309e0: 75 6e 63 74 69 6f 6e 20 63 73 77 61 70 28 70 2c unction cswap(p, 000309f0: 20 71 2c 20 62 29 20 7b 5c 6e 20 20 76 61 72 20 q, b) {\n var 00030a00: 69 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 i;\n for (i = 0 00030a10: 3b 20 69 20 3c 20 34 3b 20 69 2b 2b 29 20 7b 5c ; i < 4; i++) {\ 00030a20: 6e 20 20 20 20 73 65 6c 32 35 35 31 39 28 70 5b n sel25519(p[ 00030a30: 69 5d 2c 20 71 5b 69 5d 2c 20 62 29 3b 5c 6e 20 i], q[i], b);\n 00030a40: 20 7d 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f }\n}\n\nfunctio 00030a50: 6e 20 70 61 63 6b 28 72 2c 20 70 29 20 7b 5c 6e n pack(r, p) {\n 00030a60: 20 20 76 61 72 20 74 78 20 3d 20 67 66 28 29 2c var tx = gf(), 00030a70: 20 74 79 20 3d 20 67 66 28 29 2c 20 7a 69 20 3d ty = gf(), zi = 00030a80: 20 67 66 28 29 3b 5c 6e 20 20 69 6e 76 32 35 35 gf();\n inv255 00030a90: 31 39 28 7a 69 2c 20 70 5b 32 5d 29 3b 5c 6e 20 19(zi, p[2]);\n 00030aa0: 20 4d 28 74 78 2c 20 70 5b 30 5d 2c 20 7a 69 29 M(tx, p[0], zi) 00030ab0: 3b 5c 6e 20 20 4d 28 74 79 2c 20 70 5b 31 5d 2c ;\n M(ty, p[1], 00030ac0: 20 7a 69 29 3b 5c 6e 20 20 70 61 63 6b 32 35 35 zi);\n pack255 00030ad0: 31 39 28 72 2c 20 74 79 29 3b 5c 6e 20 20 72 5b 19(r, ty);\n r[ 00030ae0: 33 31 5d 20 5e 3d 20 70 61 72 32 35 35 31 39 28 31] ^= par25519( 00030af0: 74 78 29 20 3c 3c 20 37 3b 5c 6e 7d 5c 6e 5c 6e tx) << 7;\n}\n\n 00030b00: 66 75 6e 63 74 69 6f 6e 20 73 63 61 6c 61 72 6d function scalarm 00030b10: 75 6c 74 28 70 2c 20 71 2c 20 73 29 20 7b 5c 6e ult(p, q, s) {\n 00030b20: 20 20 76 61 72 20 62 2c 20 69 3b 5c 6e 20 20 73 var b, i;\n s 00030b30: 65 74 32 35 35 31 39 28 70 5b 30 5d 2c 20 67 66 et25519(p[0], gf 00030b40: 30 29 3b 5c 6e 20 20 73 65 74 32 35 35 31 39 28 0);\n set25519( 00030b50: 70 5b 31 5d 2c 20 67 66 31 29 3b 5c 6e 20 20 73 p[1], gf1);\n s 00030b60: 65 74 32 35 35 31 39 28 70 5b 32 5d 2c 20 67 66 et25519(p[2], gf 00030b70: 31 29 3b 5c 6e 20 20 73 65 74 32 35 35 31 39 28 1);\n set25519( 00030b80: 70 5b 33 5d 2c 20 67 66 30 29 3b 5c 6e 20 20 66 p[3], gf0);\n f 00030b90: 6f 72 20 28 69 20 3d 20 32 35 35 3b 20 69 20 3e or (i = 255; i > 00030ba0: 3d 20 30 3b 20 2d 2d 69 29 20 7b 5c 6e 20 20 20 = 0; --i) {\n 00030bb0: 20 62 20 3d 20 28 73 5b 28 69 2f 38 29 7c 30 5d b = (s[(i/8)|0] 00030bc0: 20 3e 3e 20 28 69 26 37 29 29 20 26 20 31 3b 5c >> (i&7)) & 1;\ 00030bd0: 6e 20 20 20 20 63 73 77 61 70 28 70 2c 20 71 2c n cswap(p, q, 00030be0: 20 62 29 3b 5c 6e 20 20 20 20 61 64 64 28 71 2c b);\n add(q, 00030bf0: 20 70 29 3b 5c 6e 20 20 20 20 61 64 64 28 70 2c p);\n add(p, 00030c00: 20 70 29 3b 5c 6e 20 20 20 20 63 73 77 61 70 28 p);\n cswap( 00030c10: 70 2c 20 71 2c 20 62 29 3b 5c 6e 20 20 7d 5c 6e p, q, b);\n }\n 00030c20: 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 73 63 }\n\nfunction sc 00030c30: 61 6c 61 72 62 61 73 65 28 70 2c 20 73 29 20 7b alarbase(p, s) { 00030c40: 5c 6e 20 20 76 61 72 20 71 20 3d 20 5b 67 66 28 \n var q = [gf( 00030c50: 29 2c 20 67 66 28 29 2c 20 67 66 28 29 2c 20 67 ), gf(), gf(), g 00030c60: 66 28 29 5d 3b 5c 6e 20 20 73 65 74 32 35 35 31 f()];\n set2551 00030c70: 39 28 71 5b 30 5d 2c 20 58 29 3b 5c 6e 20 20 73 9(q[0], X);\n s 00030c80: 65 74 32 35 35 31 39 28 71 5b 31 5d 2c 20 59 29 et25519(q[1], Y) 00030c90: 3b 5c 6e 20 20 73 65 74 32 35 35 31 39 28 71 5b ;\n set25519(q[ 00030ca0: 32 5d 2c 20 67 66 31 29 3b 5c 6e 20 20 4d 28 71 2], gf1);\n M(q 00030cb0: 5b 33 5d 2c 20 58 2c 20 59 29 3b 5c 6e 20 20 73 [3], X, Y);\n s 00030cc0: 63 61 6c 61 72 6d 75 6c 74 28 70 2c 20 71 2c 20 calarmult(p, q, 00030cd0: 73 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 s);\n}\n\nfuncti 00030ce0: 6f 6e 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 6b on crypto_sign_k 00030cf0: 65 79 70 61 69 72 28 70 6b 2c 20 73 6b 2c 20 73 eypair(pk, sk, s 00030d00: 65 65 64 65 64 29 20 7b 5c 6e 20 20 76 61 72 20 eeded) {\n var 00030d10: 64 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 d = new Uint8Arr 00030d20: 61 79 28 36 34 29 3b 5c 6e 20 20 76 61 72 20 70 ay(64);\n var p 00030d30: 20 3d 20 5b 67 66 28 29 2c 20 67 66 28 29 2c 20 = [gf(), gf(), 00030d40: 67 66 28 29 2c 20 67 66 28 29 5d 3b 5c 6e 20 20 gf(), gf()];\n 00030d50: 76 61 72 20 69 3b 5c 6e 5c 6e 20 20 69 66 20 28 var i;\n\n if ( 00030d60: 21 73 65 65 64 65 64 29 20 72 61 6e 64 6f 6d 62 !seeded) randomb 00030d70: 79 74 65 73 28 73 6b 2c 20 33 32 29 3b 5c 6e 20 ytes(sk, 32);\n 00030d80: 20 63 72 79 70 74 6f 5f 68 61 73 68 28 64 2c 20 crypto_hash(d, 00030d90: 73 6b 2c 20 33 32 29 3b 5c 6e 20 20 64 5b 30 5d sk, 32);\n d[0] 00030da0: 20 26 3d 20 32 34 38 3b 5c 6e 20 20 64 5b 33 31 &= 248;\n d[31 00030db0: 5d 20 26 3d 20 31 32 37 3b 5c 6e 20 20 64 5b 33 ] &= 127;\n d[3 00030dc0: 31 5d 20 7c 3d 20 36 34 3b 5c 6e 5c 6e 20 20 73 1] |= 64;\n\n s 00030dd0: 63 61 6c 61 72 62 61 73 65 28 70 2c 20 64 29 3b calarbase(p, d); 00030de0: 5c 6e 20 20 70 61 63 6b 28 70 6b 2c 20 70 29 3b \n pack(pk, p); 00030df0: 5c 6e 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 \n\n for (i = 0 00030e00: 3b 20 69 20 3c 20 33 32 3b 20 69 2b 2b 29 20 73 ; i < 32; i++) s 00030e10: 6b 5b 69 2b 33 32 5d 20 3d 20 70 6b 5b 69 5d 3b k[i+32] = pk[i]; 00030e20: 5c 6e 20 20 72 65 74 75 72 6e 20 30 3b 5c 6e 7d \n return 0;\n} 00030e30: 5c 6e 5c 6e 76 61 72 20 4c 20 3d 20 6e 65 77 20 \n\nvar L = new 00030e40: 46 6c 6f 61 74 36 34 41 72 72 61 79 28 5b 30 78 Float64Array([0x 00030e50: 65 64 2c 20 30 78 64 33 2c 20 30 78 66 35 2c 20 ed, 0xd3, 0xf5, 00030e60: 30 78 35 63 2c 20 30 78 31 61 2c 20 30 78 36 33 0x5c, 0x1a, 0x63 00030e70: 2c 20 30 78 31 32 2c 20 30 78 35 38 2c 20 30 78 , 0x12, 0x58, 0x 00030e80: 64 36 2c 20 30 78 39 63 2c 20 30 78 66 37 2c 20 d6, 0x9c, 0xf7, 00030e90: 30 78 61 32 2c 20 30 78 64 65 2c 20 30 78 66 39 0xa2, 0xde, 0xf9 00030ea0: 2c 20 30 78 64 65 2c 20 30 78 31 34 2c 20 30 2c , 0xde, 0x14, 0, 00030eb0: 20 30 2c 20 30 2c 20 30 2c 20 30 2c 20 30 2c 20 0, 0, 0, 0, 0, 00030ec0: 30 2c 20 30 2c 20 30 2c 20 30 2c 20 30 2c 20 30 0, 0, 0, 0, 0, 0 00030ed0: 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78 31 30 5d , 0, 0, 0, 0x10] 00030ee0: 29 3b 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 6d );\n\nfunction m 00030ef0: 6f 64 4c 28 72 2c 20 78 29 20 7b 5c 6e 20 20 76 odL(r, x) {\n v 00030f00: 61 72 20 63 61 72 72 79 2c 20 69 2c 20 6a 2c 20 ar carry, i, j, 00030f10: 6b 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 36 k;\n for (i = 6 00030f20: 33 3b 20 69 20 3e 3d 20 33 32 3b 20 2d 2d 69 29 3; i >= 32; --i) 00030f30: 20 7b 5c 6e 20 20 20 20 63 61 72 72 79 20 3d 20 {\n carry = 00030f40: 30 3b 5c 6e 20 20 20 20 66 6f 72 20 28 6a 20 3d 0;\n for (j = 00030f50: 20 69 20 2d 20 33 32 2c 20 6b 20 3d 20 69 20 2d i - 32, k = i - 00030f60: 20 31 32 3b 20 6a 20 3c 20 6b 3b 20 2b 2b 6a 29 12; j < k; ++j) 00030f70: 20 7b 5c 6e 20 20 20 20 20 20 78 5b 6a 5d 20 2b {\n x[j] + 00030f80: 3d 20 63 61 72 72 79 20 2d 20 31 36 20 2a 20 78 = carry - 16 * x 00030f90: 5b 69 5d 20 2a 20 4c 5b 6a 20 2d 20 28 69 20 2d [i] * L[j - (i - 00030fa0: 20 33 32 29 5d 3b 5c 6e 20 20 20 20 20 20 63 61 32)];\n ca 00030fb0: 72 72 79 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 rry = Math.floor 00030fc0: 28 28 78 5b 6a 5d 20 2b 20 31 32 38 29 20 2f 20 ((x[j] + 128) / 00030fd0: 32 35 36 29 3b 5c 6e 20 20 20 20 20 20 78 5b 6a 256);\n x[j 00030fe0: 5d 20 2d 3d 20 63 61 72 72 79 20 2a 20 32 35 36 ] -= carry * 256 00030ff0: 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 78 5b ;\n }\n x[ 00031000: 6a 5d 20 2b 3d 20 63 61 72 72 79 3b 5c 6e 20 20 j] += carry;\n 00031010: 20 20 78 5b 69 5d 20 3d 20 30 3b 5c 6e 20 20 7d x[i] = 0;\n } 00031020: 5c 6e 20 20 63 61 72 72 79 20 3d 20 30 3b 5c 6e \n carry = 0;\n 00031030: 20 20 66 6f 72 20 28 6a 20 3d 20 30 3b 20 6a 20 for (j = 0; j 00031040: 3c 20 33 32 3b 20 6a 2b 2b 29 20 7b 5c 6e 20 20 < 32; j++) {\n 00031050: 20 20 78 5b 6a 5d 20 2b 3d 20 63 61 72 72 79 20 x[j] += carry 00031060: 2d 20 28 78 5b 33 31 5d 20 3e 3e 20 34 29 20 2a - (x[31] >> 4) * 00031070: 20 4c 5b 6a 5d 3b 5c 6e 20 20 20 20 63 61 72 72 L[j];\n carr 00031080: 79 20 3d 20 78 5b 6a 5d 20 3e 3e 20 38 3b 5c 6e y = x[j] >> 8;\n 00031090: 20 20 20 20 78 5b 6a 5d 20 26 3d 20 32 35 35 3b x[j] &= 255; 000310a0: 5c 6e 20 20 7d 5c 6e 20 20 66 6f 72 20 28 6a 20 \n }\n for (j 000310b0: 3d 20 30 3b 20 6a 20 3c 20 33 32 3b 20 6a 2b 2b = 0; j < 32; j++ 000310c0: 29 20 78 5b 6a 5d 20 2d 3d 20 63 61 72 72 79 20 ) x[j] -= carry 000310d0: 2a 20 4c 5b 6a 5d 3b 5c 6e 20 20 66 6f 72 20 28 * L[j];\n for ( 000310e0: 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 3b 20 69 i = 0; i < 32; i 000310f0: 2b 2b 29 20 7b 5c 6e 20 20 20 20 78 5b 69 2b 31 ++) {\n x[i+1 00031100: 5d 20 2b 3d 20 78 5b 69 5d 20 3e 3e 20 38 3b 5c ] += x[i] >> 8;\ 00031110: 6e 20 20 20 20 72 5b 69 5d 20 3d 20 78 5b 69 5d n r[i] = x[i] 00031120: 20 26 20 32 35 35 3b 5c 6e 20 20 7d 5c 6e 7d 5c & 255;\n }\n}\ 00031130: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 72 65 64 75 n\nfunction redu 00031140: 63 65 28 72 29 20 7b 5c 6e 20 20 76 61 72 20 78 ce(r) {\n var x 00031150: 20 3d 20 6e 65 77 20 46 6c 6f 61 74 36 34 41 72 = new Float64Ar 00031160: 72 61 79 28 36 34 29 2c 20 69 3b 5c 6e 20 20 66 ray(64), i;\n f 00031170: 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 36 or (i = 0; i < 6 00031180: 34 3b 20 69 2b 2b 29 20 78 5b 69 5d 20 3d 20 72 4; i++) x[i] = r 00031190: 5b 69 5d 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d [i];\n for (i = 000311a0: 20 30 3b 20 69 20 3c 20 36 34 3b 20 69 2b 2b 29 0; i < 64; i++) 000311b0: 20 72 5b 69 5d 20 3d 20 30 3b 5c 6e 20 20 6d 6f r[i] = 0;\n mo 000311c0: 64 4c 28 72 2c 20 78 29 3b 5c 6e 7d 5c 6e 5c 6e dL(r, x);\n}\n\n 000311d0: 2f 2f 20 4e 6f 74 65 3a 20 64 69 66 66 65 72 65 // Note: differe 000311e0: 6e 63 65 20 66 72 6f 6d 20 43 20 2d 20 73 6d 6c nce from C - sml 000311f0: 65 6e 20 72 65 74 75 72 6e 65 64 2c 20 6e 6f 74 en returned, not 00031200: 20 70 61 73 73 65 64 20 61 73 20 61 72 67 75 6d passed as argum 00031210: 65 6e 74 2e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 ent.\nfunction c 00031220: 72 79 70 74 6f 5f 73 69 67 6e 28 73 6d 2c 20 6d rypto_sign(sm, m 00031230: 2c 20 6e 2c 20 73 6b 29 20 7b 5c 6e 20 20 76 61 , n, sk) {\n va 00031240: 72 20 64 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 r d = new Uint8A 00031250: 72 72 61 79 28 36 34 29 2c 20 68 20 3d 20 6e 65 rray(64), h = ne 00031260: 77 20 55 69 6e 74 38 41 72 72 61 79 28 36 34 29 w Uint8Array(64) 00031270: 2c 20 72 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 , r = new Uint8A 00031280: 72 72 61 79 28 36 34 29 3b 5c 6e 20 20 76 61 72 rray(64);\n var 00031290: 20 69 2c 20 6a 2c 20 78 20 3d 20 6e 65 77 20 46 i, j, x = new F 000312a0: 6c 6f 61 74 36 34 41 72 72 61 79 28 36 34 29 3b loat64Array(64); 000312b0: 5c 6e 20 20 76 61 72 20 70 20 3d 20 5b 67 66 28 \n var p = [gf( 000312c0: 29 2c 20 67 66 28 29 2c 20 67 66 28 29 2c 20 67 ), gf(), gf(), g 000312d0: 66 28 29 5d 3b 5c 6e 5c 6e 20 20 63 72 79 70 74 f()];\n\n crypt 000312e0: 6f 5f 68 61 73 68 28 64 2c 20 73 6b 2c 20 33 32 o_hash(d, sk, 32 000312f0: 29 3b 5c 6e 20 20 64 5b 30 5d 20 26 3d 20 32 34 );\n d[0] &= 24 00031300: 38 3b 5c 6e 20 20 64 5b 33 31 5d 20 26 3d 20 31 8;\n d[31] &= 1 00031310: 32 37 3b 5c 6e 20 20 64 5b 33 31 5d 20 7c 3d 20 27;\n d[31] |= 00031320: 36 34 3b 5c 6e 5c 6e 20 20 76 61 72 20 73 6d 6c 64;\n\n var sml 00031330: 65 6e 20 3d 20 6e 20 2b 20 36 34 3b 5c 6e 20 20 en = n + 64;\n 00031340: 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 for (i = 0; i < 00031350: 6e 3b 20 69 2b 2b 29 20 73 6d 5b 36 34 20 2b 20 n; i++) sm[64 + 00031360: 69 5d 20 3d 20 6d 5b 69 5d 3b 5c 6e 20 20 66 6f i] = m[i];\n fo 00031370: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 r (i = 0; i < 32 00031380: 3b 20 69 2b 2b 29 20 73 6d 5b 33 32 20 2b 20 69 ; i++) sm[32 + i 00031390: 5d 20 3d 20 64 5b 33 32 20 2b 20 69 5d 3b 5c 6e ] = d[32 + i];\n 000313a0: 5c 6e 20 20 63 72 79 70 74 6f 5f 68 61 73 68 28 \n crypto_hash( 000313b0: 72 2c 20 73 6d 2e 73 75 62 61 72 72 61 79 28 33 r, sm.subarray(3 000313c0: 32 29 2c 20 6e 2b 33 32 29 3b 5c 6e 20 20 72 65 2), n+32);\n re 000313d0: 64 75 63 65 28 72 29 3b 5c 6e 20 20 73 63 61 6c duce(r);\n scal 000313e0: 61 72 62 61 73 65 28 70 2c 20 72 29 3b 5c 6e 20 arbase(p, r);\n 000313f0: 20 70 61 63 6b 28 73 6d 2c 20 70 29 3b 5c 6e 5c pack(sm, p);\n\ 00031400: 6e 20 20 66 6f 72 20 28 69 20 3d 20 33 32 3b 20 n for (i = 32; 00031410: 69 20 3c 20 36 34 3b 20 69 2b 2b 29 20 73 6d 5b i < 64; i++) sm[ 00031420: 69 5d 20 3d 20 73 6b 5b 69 5d 3b 5c 6e 20 20 63 i] = sk[i];\n c 00031430: 72 79 70 74 6f 5f 68 61 73 68 28 68 2c 20 73 6d rypto_hash(h, sm 00031440: 2c 20 6e 20 2b 20 36 34 29 3b 5c 6e 20 20 72 65 , n + 64);\n re 00031450: 64 75 63 65 28 68 29 3b 5c 6e 5c 6e 20 20 66 6f duce(h);\n\n fo 00031460: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 36 34 r (i = 0; i < 64 00031470: 3b 20 69 2b 2b 29 20 78 5b 69 5d 20 3d 20 30 3b ; i++) x[i] = 0; 00031480: 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 \n for (i = 0; 00031490: 69 20 3c 20 33 32 3b 20 69 2b 2b 29 20 78 5b 69 i < 32; i++) x[i 000314a0: 5d 20 3d 20 72 5b 69 5d 3b 5c 6e 20 20 66 6f 72 ] = r[i];\n for 000314b0: 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 3b (i = 0; i < 32; 000314c0: 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 66 6f 72 i++) {\n for 000314d0: 20 28 6a 20 3d 20 30 3b 20 6a 20 3c 20 33 32 3b (j = 0; j < 32; 000314e0: 20 6a 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 78 j++) {\n x 000314f0: 5b 69 2b 6a 5d 20 2b 3d 20 68 5b 69 5d 20 2a 20 [i+j] += h[i] * 00031500: 64 5b 6a 5d 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 d[j];\n }\n 00031510: 7d 5c 6e 5c 6e 20 20 6d 6f 64 4c 28 73 6d 2e 73 }\n\n modL(sm.s 00031520: 75 62 61 72 72 61 79 28 33 32 29 2c 20 78 29 3b ubarray(32), x); 00031530: 5c 6e 20 20 72 65 74 75 72 6e 20 73 6d 6c 65 6e \n return smlen 00031540: 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e ;\n}\n\nfunction 00031550: 20 75 6e 70 61 63 6b 6e 65 67 28 72 2c 20 70 29 unpackneg(r, p) 00031560: 20 7b 5c 6e 20 20 76 61 72 20 74 20 3d 20 67 66 {\n var t = gf 00031570: 28 29 2c 20 63 68 6b 20 3d 20 67 66 28 29 2c 20 (), chk = gf(), 00031580: 6e 75 6d 20 3d 20 67 66 28 29 2c 5c 6e 20 20 20 num = gf(),\n 00031590: 20 20 20 64 65 6e 20 3d 20 67 66 28 29 2c 20 64 den = gf(), d 000315a0: 65 6e 32 20 3d 20 67 66 28 29 2c 20 64 65 6e 34 en2 = gf(), den4 000315b0: 20 3d 20 67 66 28 29 2c 5c 6e 20 20 20 20 20 20 = gf(),\n 000315c0: 64 65 6e 36 20 3d 20 67 66 28 29 3b 5c 6e 5c 6e den6 = gf();\n\n 000315d0: 20 20 73 65 74 32 35 35 31 39 28 72 5b 32 5d 2c set25519(r[2], 000315e0: 20 67 66 31 29 3b 5c 6e 20 20 75 6e 70 61 63 6b gf1);\n unpack 000315f0: 32 35 35 31 39 28 72 5b 31 5d 2c 20 70 29 3b 5c 25519(r[1], p);\ 00031600: 6e 20 20 53 28 6e 75 6d 2c 20 72 5b 31 5d 29 3b n S(num, r[1]); 00031610: 5c 6e 20 20 4d 28 64 65 6e 2c 20 6e 75 6d 2c 20 \n M(den, num, 00031620: 44 29 3b 5c 6e 20 20 5a 28 6e 75 6d 2c 20 6e 75 D);\n Z(num, nu 00031630: 6d 2c 20 72 5b 32 5d 29 3b 5c 6e 20 20 41 28 64 m, r[2]);\n A(d 00031640: 65 6e 2c 20 72 5b 32 5d 2c 20 64 65 6e 29 3b 5c en, r[2], den);\ 00031650: 6e 5c 6e 20 20 53 28 64 65 6e 32 2c 20 64 65 6e n\n S(den2, den 00031660: 29 3b 5c 6e 20 20 53 28 64 65 6e 34 2c 20 64 65 );\n S(den4, de 00031670: 6e 32 29 3b 5c 6e 20 20 4d 28 64 65 6e 36 2c 20 n2);\n M(den6, 00031680: 64 65 6e 34 2c 20 64 65 6e 32 29 3b 5c 6e 20 20 den4, den2);\n 00031690: 4d 28 74 2c 20 64 65 6e 36 2c 20 6e 75 6d 29 3b M(t, den6, num); 000316a0: 5c 6e 20 20 4d 28 74 2c 20 74 2c 20 64 65 6e 29 \n M(t, t, den) 000316b0: 3b 5c 6e 5c 6e 20 20 70 6f 77 32 35 32 33 28 74 ;\n\n pow2523(t 000316c0: 2c 20 74 29 3b 5c 6e 20 20 4d 28 74 2c 20 74 2c , t);\n M(t, t, 000316d0: 20 6e 75 6d 29 3b 5c 6e 20 20 4d 28 74 2c 20 74 num);\n M(t, t 000316e0: 2c 20 64 65 6e 29 3b 5c 6e 20 20 4d 28 74 2c 20 , den);\n M(t, 000316f0: 74 2c 20 64 65 6e 29 3b 5c 6e 20 20 4d 28 72 5b t, den);\n M(r[ 00031700: 30 5d 2c 20 74 2c 20 64 65 6e 29 3b 5c 6e 5c 6e 0], t, den);\n\n 00031710: 20 20 53 28 63 68 6b 2c 20 72 5b 30 5d 29 3b 5c S(chk, r[0]);\ 00031720: 6e 20 20 4d 28 63 68 6b 2c 20 63 68 6b 2c 20 64 n M(chk, chk, d 00031730: 65 6e 29 3b 5c 6e 20 20 69 66 20 28 6e 65 71 32 en);\n if (neq2 00031740: 35 35 31 39 28 63 68 6b 2c 20 6e 75 6d 29 29 20 5519(chk, num)) 00031750: 4d 28 72 5b 30 5d 2c 20 72 5b 30 5d 2c 20 49 29 M(r[0], r[0], I) 00031760: 3b 5c 6e 5c 6e 20 20 53 28 63 68 6b 2c 20 72 5b ;\n\n S(chk, r[ 00031770: 30 5d 29 3b 5c 6e 20 20 4d 28 63 68 6b 2c 20 63 0]);\n M(chk, c 00031780: 68 6b 2c 20 64 65 6e 29 3b 5c 6e 20 20 69 66 20 hk, den);\n if 00031790: 28 6e 65 71 32 35 35 31 39 28 63 68 6b 2c 20 6e (neq25519(chk, n 000317a0: 75 6d 29 29 20 72 65 74 75 72 6e 20 2d 31 3b 5c um)) return -1;\ 000317b0: 6e 5c 6e 20 20 69 66 20 28 70 61 72 32 35 35 31 n\n if (par2551 000317c0: 39 28 72 5b 30 5d 29 20 3d 3d 3d 20 28 70 5b 33 9(r[0]) === (p[3 000317d0: 31 5d 3e 3e 37 29 29 20 5a 28 72 5b 30 5d 2c 20 1]>>7)) Z(r[0], 000317e0: 67 66 30 2c 20 72 5b 30 5d 29 3b 5c 6e 5c 6e 20 gf0, r[0]);\n\n 000317f0: 20 4d 28 72 5b 33 5d 2c 20 72 5b 30 5d 2c 20 72 M(r[3], r[0], r 00031800: 5b 31 5d 29 3b 5c 6e 20 20 72 65 74 75 72 6e 20 [1]);\n return 00031810: 30 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 0;\n}\n\nfunctio 00031820: 6e 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 6f 70 n crypto_sign_op 00031830: 65 6e 28 6d 2c 20 73 6d 2c 20 6e 2c 20 70 6b 29 en(m, sm, n, pk) 00031840: 20 7b 5c 6e 20 20 76 61 72 20 69 3b 5c 6e 20 20 {\n var i;\n 00031850: 76 61 72 20 74 20 3d 20 6e 65 77 20 55 69 6e 74 var t = new Uint 00031860: 38 41 72 72 61 79 28 33 32 29 2c 20 68 20 3d 20 8Array(32), h = 00031870: 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 36 new Uint8Array(6 00031880: 34 29 3b 5c 6e 20 20 76 61 72 20 70 20 3d 20 5b 4);\n var p = [ 00031890: 67 66 28 29 2c 20 67 66 28 29 2c 20 67 66 28 29 gf(), gf(), gf() 000318a0: 2c 20 67 66 28 29 5d 2c 5c 6e 20 20 20 20 20 20 , gf()],\n 000318b0: 71 20 3d 20 5b 67 66 28 29 2c 20 67 66 28 29 2c q = [gf(), gf(), 000318c0: 20 67 66 28 29 2c 20 67 66 28 29 5d 3b 5c 6e 5c gf(), gf()];\n\ 000318d0: 6e 20 20 69 66 20 28 6e 20 3c 20 36 34 29 20 72 n if (n < 64) r 000318e0: 65 74 75 72 6e 20 2d 31 3b 5c 6e 5c 6e 20 20 69 eturn -1;\n\n i 000318f0: 66 20 28 75 6e 70 61 63 6b 6e 65 67 28 71 2c 20 f (unpackneg(q, 00031900: 70 6b 29 29 20 72 65 74 75 72 6e 20 2d 31 3b 5c pk)) return -1;\ 00031910: 6e 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b n\n for (i = 0; 00031920: 20 69 20 3c 20 6e 3b 20 69 2b 2b 29 20 6d 5b 69 i < n; i++) m[i 00031930: 5d 20 3d 20 73 6d 5b 69 5d 3b 5c 6e 20 20 66 6f ] = sm[i];\n fo 00031940: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 r (i = 0; i < 32 00031950: 3b 20 69 2b 2b 29 20 6d 5b 69 2b 33 32 5d 20 3d ; i++) m[i+32] = 00031960: 20 70 6b 5b 69 5d 3b 5c 6e 20 20 63 72 79 70 74 pk[i];\n crypt 00031970: 6f 5f 68 61 73 68 28 68 2c 20 6d 2c 20 6e 29 3b o_hash(h, m, n); 00031980: 5c 6e 20 20 72 65 64 75 63 65 28 68 29 3b 5c 6e \n reduce(h);\n 00031990: 20 20 73 63 61 6c 61 72 6d 75 6c 74 28 70 2c 20 scalarmult(p, 000319a0: 71 2c 20 68 29 3b 5c 6e 5c 6e 20 20 73 63 61 6c q, h);\n\n scal 000319b0: 61 72 62 61 73 65 28 71 2c 20 73 6d 2e 73 75 62 arbase(q, sm.sub 000319c0: 61 72 72 61 79 28 33 32 29 29 3b 5c 6e 20 20 61 array(32));\n a 000319d0: 64 64 28 70 2c 20 71 29 3b 5c 6e 20 20 70 61 63 dd(p, q);\n pac 000319e0: 6b 28 74 2c 20 70 29 3b 5c 6e 5c 6e 20 20 6e 20 k(t, p);\n\n n 000319f0: 2d 3d 20 36 34 3b 5c 6e 20 20 69 66 20 28 63 72 -= 64;\n if (cr 00031a00: 79 70 74 6f 5f 76 65 72 69 66 79 5f 33 32 28 73 ypto_verify_32(s 00031a10: 6d 2c 20 30 2c 20 74 2c 20 30 29 29 20 7b 5c 6e m, 0, t, 0)) {\n 00031a20: 20 20 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 for (i = 0; 00031a30: 69 20 3c 20 6e 3b 20 69 2b 2b 29 20 6d 5b 69 5d i < n; i++) m[i] 00031a40: 20 3d 20 30 3b 5c 6e 20 20 20 20 72 65 74 75 72 = 0;\n retur 00031a50: 6e 20 2d 31 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 n -1;\n }\n\n 00031a60: 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 for (i = 0; i < 00031a70: 6e 3b 20 69 2b 2b 29 20 6d 5b 69 5d 20 3d 20 73 n; i++) m[i] = s 00031a80: 6d 5b 69 20 2b 20 36 34 5d 3b 5c 6e 20 20 72 65 m[i + 64];\n re 00031a90: 74 75 72 6e 20 6e 3b 5c 6e 7d 5c 6e 5c 6e 76 61 turn n;\n}\n\nva 00031aa0: 72 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 62 r crypto_secretb 00031ab0: 6f 78 5f 4b 45 59 42 59 54 45 53 20 3d 20 33 32 ox_KEYBYTES = 32 00031ac0: 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 5f 73 65 ,\n crypto_se 00031ad0: 63 72 65 74 62 6f 78 5f 4e 4f 4e 43 45 42 59 54 cretbox_NONCEBYT 00031ae0: 45 53 20 3d 20 32 34 2c 5c 6e 20 20 20 20 63 72 ES = 24,\n cr 00031af0: 79 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f 5a ypto_secretbox_Z 00031b00: 45 52 4f 42 59 54 45 53 20 3d 20 33 32 2c 5c 6e EROBYTES = 32,\n 00031b10: 20 20 20 20 63 72 79 70 74 6f 5f 73 65 63 72 65 crypto_secre 00031b20: 74 62 6f 78 5f 42 4f 58 5a 45 52 4f 42 59 54 45 tbox_BOXZEROBYTE 00031b30: 53 20 3d 20 31 36 2c 5c 6e 20 20 20 20 63 72 79 S = 16,\n cry 00031b40: 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f 42 pto_scalarmult_B 00031b50: 59 54 45 53 20 3d 20 33 32 2c 5c 6e 20 20 20 20 YTES = 32,\n 00031b60: 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c crypto_scalarmul 00031b70: 74 5f 53 43 41 4c 41 52 42 59 54 45 53 20 3d 20 t_SCALARBYTES = 00031b80: 33 32 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 5f 32,\n crypto_ 00031b90: 62 6f 78 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 box_PUBLICKEYBYT 00031ba0: 45 53 20 3d 20 33 32 2c 5c 6e 20 20 20 20 63 72 ES = 32,\n cr 00031bb0: 79 70 74 6f 5f 62 6f 78 5f 53 45 43 52 45 54 4b ypto_box_SECRETK 00031bc0: 45 59 42 59 54 45 53 20 3d 20 33 32 2c 5c 6e 20 EYBYTES = 32,\n 00031bd0: 20 20 20 63 72 79 70 74 6f 5f 62 6f 78 5f 42 45 crypto_box_BE 00031be0: 46 4f 52 45 4e 4d 42 59 54 45 53 20 3d 20 33 32 FORENMBYTES = 32 00031bf0: 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 5f 62 6f ,\n crypto_bo 00031c00: 78 5f 4e 4f 4e 43 45 42 59 54 45 53 20 3d 20 63 x_NONCEBYTES = c 00031c10: 72 79 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f rypto_secretbox_ 00031c20: 4e 4f 4e 43 45 42 59 54 45 53 2c 5c 6e 20 20 20 NONCEBYTES,\n 00031c30: 20 63 72 79 70 74 6f 5f 62 6f 78 5f 5a 45 52 4f crypto_box_ZERO 00031c40: 42 59 54 45 53 20 3d 20 63 72 79 70 74 6f 5f 73 BYTES = crypto_s 00031c50: 65 63 72 65 74 62 6f 78 5f 5a 45 52 4f 42 59 54 ecretbox_ZEROBYT 00031c60: 45 53 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 5f ES,\n crypto_ 00031c70: 62 6f 78 5f 42 4f 58 5a 45 52 4f 42 59 54 45 53 box_BOXZEROBYTES 00031c80: 20 3d 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 = crypto_secret 00031c90: 62 6f 78 5f 42 4f 58 5a 45 52 4f 42 59 54 45 53 box_BOXZEROBYTES 00031ca0: 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 5f 73 69 ,\n crypto_si 00031cb0: 67 6e 5f 42 59 54 45 53 20 3d 20 36 34 2c 5c 6e gn_BYTES = 64,\n 00031cc0: 20 20 20 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f crypto_sign_ 00031cd0: 50 55 42 4c 49 43 4b 45 59 42 59 54 45 53 20 3d PUBLICKEYBYTES = 00031ce0: 20 33 32 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 32,\n crypto 00031cf0: 5f 73 69 67 6e 5f 53 45 43 52 45 54 4b 45 59 42 _sign_SECRETKEYB 00031d00: 59 54 45 53 20 3d 20 36 34 2c 5c 6e 20 20 20 20 YTES = 64,\n 00031d10: 63 72 79 70 74 6f 5f 73 69 67 6e 5f 53 45 45 44 crypto_sign_SEED 00031d20: 42 59 54 45 53 20 3d 20 33 32 2c 5c 6e 20 20 20 BYTES = 32,\n 00031d30: 20 63 72 79 70 74 6f 5f 68 61 73 68 5f 42 59 54 crypto_hash_BYT 00031d40: 45 53 20 3d 20 36 34 3b 5c 6e 5c 6e 6e 61 63 6c ES = 64;\n\nnacl 00031d50: 2e 6c 6f 77 6c 65 76 65 6c 20 3d 20 7b 5c 6e 20 .lowlevel = {\n 00031d60: 20 63 72 79 70 74 6f 5f 63 6f 72 65 5f 68 73 61 crypto_core_hsa 00031d70: 6c 73 61 32 30 3a 20 63 72 79 70 74 6f 5f 63 6f lsa20: crypto_co 00031d80: 72 65 5f 68 73 61 6c 73 61 32 30 2c 5c 6e 20 20 re_hsalsa20,\n 00031d90: 63 72 79 70 74 6f 5f 73 74 72 65 61 6d 5f 78 6f crypto_stream_xo 00031da0: 72 3a 20 63 72 79 70 74 6f 5f 73 74 72 65 61 6d r: crypto_stream 00031db0: 5f 78 6f 72 2c 5c 6e 20 20 63 72 79 70 74 6f 5f _xor,\n crypto_ 00031dc0: 73 74 72 65 61 6d 3a 20 63 72 79 70 74 6f 5f 73 stream: crypto_s 00031dd0: 74 72 65 61 6d 2c 5c 6e 20 20 63 72 79 70 74 6f tream,\n crypto 00031de0: 5f 73 74 72 65 61 6d 5f 73 61 6c 73 61 32 30 5f _stream_salsa20_ 00031df0: 78 6f 72 3a 20 63 72 79 70 74 6f 5f 73 74 72 65 xor: crypto_stre 00031e00: 61 6d 5f 73 61 6c 73 61 32 30 5f 78 6f 72 2c 5c am_salsa20_xor,\ 00031e10: 6e 20 20 63 72 79 70 74 6f 5f 73 74 72 65 61 6d n crypto_stream 00031e20: 5f 73 61 6c 73 61 32 30 3a 20 63 72 79 70 74 6f _salsa20: crypto 00031e30: 5f 73 74 72 65 61 6d 5f 73 61 6c 73 61 32 30 2c _stream_salsa20, 00031e40: 5c 6e 20 20 63 72 79 70 74 6f 5f 6f 6e 65 74 69 \n crypto_oneti 00031e50: 6d 65 61 75 74 68 3a 20 63 72 79 70 74 6f 5f 6f meauth: crypto_o 00031e60: 6e 65 74 69 6d 65 61 75 74 68 2c 5c 6e 20 20 63 netimeauth,\n c 00031e70: 72 79 70 74 6f 5f 6f 6e 65 74 69 6d 65 61 75 74 rypto_onetimeaut 00031e80: 68 5f 76 65 72 69 66 79 3a 20 63 72 79 70 74 6f h_verify: crypto 00031e90: 5f 6f 6e 65 74 69 6d 65 61 75 74 68 5f 76 65 72 _onetimeauth_ver 00031ea0: 69 66 79 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 76 ify,\n crypto_v 00031eb0: 65 72 69 66 79 5f 31 36 3a 20 63 72 79 70 74 6f erify_16: crypto 00031ec0: 5f 76 65 72 69 66 79 5f 31 36 2c 5c 6e 20 20 63 _verify_16,\n c 00031ed0: 72 79 70 74 6f 5f 76 65 72 69 66 79 5f 33 32 3a rypto_verify_32: 00031ee0: 20 63 72 79 70 74 6f 5f 76 65 72 69 66 79 5f 33 crypto_verify_3 00031ef0: 32 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 73 65 63 2,\n crypto_sec 00031f00: 72 65 74 62 6f 78 3a 20 63 72 79 70 74 6f 5f 73 retbox: crypto_s 00031f10: 65 63 72 65 74 62 6f 78 2c 5c 6e 20 20 63 72 79 ecretbox,\n cry 00031f20: 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f 6f 70 pto_secretbox_op 00031f30: 65 6e 3a 20 63 72 79 70 74 6f 5f 73 65 63 72 65 en: crypto_secre 00031f40: 74 62 6f 78 5f 6f 70 65 6e 2c 5c 6e 20 20 63 72 tbox_open,\n cr 00031f50: 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 3a ypto_scalarmult: 00031f60: 20 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 crypto_scalarmu 00031f70: 6c 74 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 73 63 lt,\n crypto_sc 00031f80: 61 6c 61 72 6d 75 6c 74 5f 62 61 73 65 3a 20 63 alarmult_base: c 00031f90: 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 rypto_scalarmult 00031fa0: 5f 62 61 73 65 2c 5c 6e 20 20 63 72 79 70 74 6f _base,\n crypto 00031fb0: 5f 62 6f 78 5f 62 65 66 6f 72 65 6e 6d 3a 20 63 _box_beforenm: c 00031fc0: 72 79 70 74 6f 5f 62 6f 78 5f 62 65 66 6f 72 65 rypto_box_before 00031fd0: 6e 6d 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 62 6f nm,\n crypto_bo 00031fe0: 78 5f 61 66 74 65 72 6e 6d 3a 20 63 72 79 70 74 x_afternm: crypt 00031ff0: 6f 5f 62 6f 78 5f 61 66 74 65 72 6e 6d 2c 5c 6e o_box_afternm,\n 00032000: 20 20 63 72 79 70 74 6f 5f 62 6f 78 3a 20 63 72 crypto_box: cr 00032010: 79 70 74 6f 5f 62 6f 78 2c 5c 6e 20 20 63 72 79 ypto_box,\n cry 00032020: 70 74 6f 5f 62 6f 78 5f 6f 70 65 6e 3a 20 63 72 pto_box_open: cr 00032030: 79 70 74 6f 5f 62 6f 78 5f 6f 70 65 6e 2c 5c 6e ypto_box_open,\n 00032040: 20 20 63 72 79 70 74 6f 5f 62 6f 78 5f 6b 65 79 crypto_box_key 00032050: 70 61 69 72 3a 20 63 72 79 70 74 6f 5f 62 6f 78 pair: crypto_box 00032060: 5f 6b 65 79 70 61 69 72 2c 5c 6e 20 20 63 72 79 _keypair,\n cry 00032070: 70 74 6f 5f 68 61 73 68 3a 20 63 72 79 70 74 6f pto_hash: crypto 00032080: 5f 68 61 73 68 2c 5c 6e 20 20 63 72 79 70 74 6f _hash,\n crypto 00032090: 5f 73 69 67 6e 3a 20 63 72 79 70 74 6f 5f 73 69 _sign: crypto_si 000320a0: 67 6e 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 73 69 gn,\n crypto_si 000320b0: 67 6e 5f 6b 65 79 70 61 69 72 3a 20 63 72 79 70 gn_keypair: cryp 000320c0: 74 6f 5f 73 69 67 6e 5f 6b 65 79 70 61 69 72 2c to_sign_keypair, 000320d0: 5c 6e 20 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f \n crypto_sign_ 000320e0: 6f 70 65 6e 3a 20 63 72 79 70 74 6f 5f 73 69 67 open: crypto_sig 000320f0: 6e 5f 6f 70 65 6e 2c 5c 6e 5c 6e 20 20 63 72 79 n_open,\n\n cry 00032100: 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f 4b 45 pto_secretbox_KE 00032110: 59 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 73 YBYTES: crypto_s 00032120: 65 63 72 65 74 62 6f 78 5f 4b 45 59 42 59 54 45 ecretbox_KEYBYTE 00032130: 53 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 73 65 63 S,\n crypto_sec 00032140: 72 65 74 62 6f 78 5f 4e 4f 4e 43 45 42 59 54 45 retbox_NONCEBYTE 00032150: 53 3a 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 S: crypto_secret 00032160: 62 6f 78 5f 4e 4f 4e 43 45 42 59 54 45 53 2c 5c box_NONCEBYTES,\ 00032170: 6e 20 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 n crypto_secret 00032180: 62 6f 78 5f 5a 45 52 4f 42 59 54 45 53 3a 20 63 box_ZEROBYTES: c 00032190: 72 79 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f rypto_secretbox_ 000321a0: 5a 45 52 4f 42 59 54 45 53 2c 5c 6e 20 20 63 72 ZEROBYTES,\n cr 000321b0: 79 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f 42 ypto_secretbox_B 000321c0: 4f 58 5a 45 52 4f 42 59 54 45 53 3a 20 63 72 79 OXZEROBYTES: cry 000321d0: 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f 42 4f pto_secretbox_BO 000321e0: 58 5a 45 52 4f 42 59 54 45 53 2c 5c 6e 20 20 63 XZEROBYTES,\n c 000321f0: 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 rypto_scalarmult 00032200: 5f 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 73 _BYTES: crypto_s 00032210: 63 61 6c 61 72 6d 75 6c 74 5f 42 59 54 45 53 2c calarmult_BYTES, 00032220: 5c 6e 20 20 63 72 79 70 74 6f 5f 73 63 61 6c 61 \n crypto_scala 00032230: 72 6d 75 6c 74 5f 53 43 41 4c 41 52 42 59 54 45 rmult_SCALARBYTE 00032240: 53 3a 20 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 S: crypto_scalar 00032250: 6d 75 6c 74 5f 53 43 41 4c 41 52 42 59 54 45 53 mult_SCALARBYTES 00032260: 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 62 6f 78 5f ,\n crypto_box_ 00032270: 50 55 42 4c 49 43 4b 45 59 42 59 54 45 53 3a 20 PUBLICKEYBYTES: 00032280: 63 72 79 70 74 6f 5f 62 6f 78 5f 50 55 42 4c 49 crypto_box_PUBLI 00032290: 43 4b 45 59 42 59 54 45 53 2c 5c 6e 20 20 63 72 CKEYBYTES,\n cr 000322a0: 79 70 74 6f 5f 62 6f 78 5f 53 45 43 52 45 54 4b ypto_box_SECRETK 000322b0: 45 59 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f EYBYTES: crypto_ 000322c0: 62 6f 78 5f 53 45 43 52 45 54 4b 45 59 42 59 54 box_SECRETKEYBYT 000322d0: 45 53 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 62 6f ES,\n crypto_bo 000322e0: 78 5f 42 45 46 4f 52 45 4e 4d 42 59 54 45 53 3a x_BEFORENMBYTES: 000322f0: 20 63 72 79 70 74 6f 5f 62 6f 78 5f 42 45 46 4f crypto_box_BEFO 00032300: 52 45 4e 4d 42 59 54 45 53 2c 5c 6e 20 20 63 72 RENMBYTES,\n cr 00032310: 79 70 74 6f 5f 62 6f 78 5f 4e 4f 4e 43 45 42 59 ypto_box_NONCEBY 00032320: 54 45 53 3a 20 63 72 79 70 74 6f 5f 62 6f 78 5f TES: crypto_box_ 00032330: 4e 4f 4e 43 45 42 59 54 45 53 2c 5c 6e 20 20 63 NONCEBYTES,\n c 00032340: 72 79 70 74 6f 5f 62 6f 78 5f 5a 45 52 4f 42 59 rypto_box_ZEROBY 00032350: 54 45 53 3a 20 63 72 79 70 74 6f 5f 62 6f 78 5f TES: crypto_box_ 00032360: 5a 45 52 4f 42 59 54 45 53 2c 5c 6e 20 20 63 72 ZEROBYTES,\n cr 00032370: 79 70 74 6f 5f 62 6f 78 5f 42 4f 58 5a 45 52 4f ypto_box_BOXZERO 00032380: 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 62 6f BYTES: crypto_bo 00032390: 78 5f 42 4f 58 5a 45 52 4f 42 59 54 45 53 2c 5c x_BOXZEROBYTES,\ 000323a0: 6e 20 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 42 n crypto_sign_B 000323b0: 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 73 69 67 YTES: crypto_sig 000323c0: 6e 5f 42 59 54 45 53 2c 5c 6e 20 20 63 72 79 70 n_BYTES,\n cryp 000323d0: 74 6f 5f 73 69 67 6e 5f 50 55 42 4c 49 43 4b 45 to_sign_PUBLICKE 000323e0: 59 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 73 YBYTES: crypto_s 000323f0: 69 67 6e 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 ign_PUBLICKEYBYT 00032400: 45 53 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 73 69 ES,\n crypto_si 00032410: 67 6e 5f 53 45 43 52 45 54 4b 45 59 42 59 54 45 gn_SECRETKEYBYTE 00032420: 53 3a 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 53 S: crypto_sign_S 00032430: 45 43 52 45 54 4b 45 59 42 59 54 45 53 2c 5c 6e ECRETKEYBYTES,\n 00032440: 20 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 53 45 crypto_sign_SE 00032450: 45 44 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f EDBYTES: crypto_ 00032460: 73 69 67 6e 5f 53 45 45 44 42 59 54 45 53 2c 5c sign_SEEDBYTES,\ 00032470: 6e 20 20 63 72 79 70 74 6f 5f 68 61 73 68 5f 42 n crypto_hash_B 00032480: 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 68 61 73 YTES: crypto_has 00032490: 68 5f 42 59 54 45 53 2c 5c 6e 5c 6e 20 20 67 66 h_BYTES,\n\n gf 000324a0: 3a 20 67 66 2c 5c 6e 20 20 44 3a 20 44 2c 5c 6e : gf,\n D: D,\n 000324b0: 20 20 4c 3a 20 4c 2c 5c 6e 20 20 70 61 63 6b 32 L: L,\n pack2 000324c0: 35 35 31 39 3a 20 70 61 63 6b 32 35 35 31 39 2c 5519: pack25519, 000324d0: 5c 6e 20 20 75 6e 70 61 63 6b 32 35 35 31 39 3a \n unpack25519: 000324e0: 20 75 6e 70 61 63 6b 32 35 35 31 39 2c 5c 6e 20 unpack25519,\n 000324f0: 20 4d 3a 20 4d 2c 5c 6e 20 20 41 3a 20 41 2c 5c M: M,\n A: A,\ 00032500: 6e 20 20 53 3a 20 53 2c 5c 6e 20 20 5a 3a 20 5a n S: S,\n Z: Z 00032510: 2c 5c 6e 20 20 70 6f 77 32 35 32 33 3a 20 70 6f ,\n pow2523: po 00032520: 77 32 35 32 33 2c 5c 6e 20 20 61 64 64 3a 20 61 w2523,\n add: a 00032530: 64 64 2c 5c 6e 20 20 73 65 74 32 35 35 31 39 3a dd,\n set25519: 00032540: 20 73 65 74 32 35 35 31 39 2c 5c 6e 20 20 6d 6f set25519,\n mo 00032550: 64 4c 3a 20 6d 6f 64 4c 2c 5c 6e 20 20 73 63 61 dL: modL,\n sca 00032560: 6c 61 72 6d 75 6c 74 3a 20 73 63 61 6c 61 72 6d larmult: scalarm 00032570: 75 6c 74 2c 5c 6e 20 20 73 63 61 6c 61 72 62 61 ult,\n scalarba 00032580: 73 65 3a 20 73 63 61 6c 61 72 62 61 73 65 2c 5c se: scalarbase,\ 00032590: 6e 7d 3b 5c 6e 5c 6e 2f 2a 20 48 69 67 68 2d 6c n};\n\n/* High-l 000325a0: 65 76 65 6c 20 41 50 49 20 2a 2f 5c 6e 5c 6e 66 evel API */\n\nf 000325b0: 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 4c 65 6e unction checkLen 000325c0: 67 74 68 73 28 6b 2c 20 6e 29 20 7b 5c 6e 20 20 gths(k, n) {\n 000325d0: 69 66 20 28 6b 2e 6c 65 6e 67 74 68 20 21 3d 3d if (k.length !== 000325e0: 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 62 6f crypto_secretbo 000325f0: 78 5f 4b 45 59 42 59 54 45 53 29 20 74 68 72 6f x_KEYBYTES) thro 00032600: 77 20 6e 65 77 20 45 72 72 6f 72 28 27 62 61 64 w new Error('bad 00032610: 20 6b 65 79 20 73 69 7a 65 27 29 3b 5c 6e 20 20 key size');\n 00032620: 69 66 20 28 6e 2e 6c 65 6e 67 74 68 20 21 3d 3d if (n.length !== 00032630: 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 62 6f crypto_secretbo 00032640: 78 5f 4e 4f 4e 43 45 42 59 54 45 53 29 20 74 68 x_NONCEBYTES) th 00032650: 72 6f 77 20 6e 65 77 20 45 72 72 6f 72 28 27 62 row new Error('b 00032660: 61 64 20 6e 6f 6e 63 65 20 73 69 7a 65 27 29 3b ad nonce size'); 00032670: 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 \n}\n\nfunction 00032680: 63 68 65 63 6b 42 6f 78 4c 65 6e 67 74 68 73 28 checkBoxLengths( 00032690: 70 6b 2c 20 73 6b 29 20 7b 5c 6e 20 20 69 66 20 pk, sk) {\n if 000326a0: 28 70 6b 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 (pk.length !== c 000326b0: 72 79 70 74 6f 5f 62 6f 78 5f 50 55 42 4c 49 43 rypto_box_PUBLIC 000326c0: 4b 45 59 42 59 54 45 53 29 20 74 68 72 6f 77 20 KEYBYTES) throw 000326d0: 6e 65 77 20 45 72 72 6f 72 28 27 62 61 64 20 70 new Error('bad p 000326e0: 75 62 6c 69 63 20 6b 65 79 20 73 69 7a 65 27 29 ublic key size') 000326f0: 3b 5c 6e 20 20 69 66 20 28 73 6b 2e 6c 65 6e 67 ;\n if (sk.leng 00032700: 74 68 20 21 3d 3d 20 63 72 79 70 74 6f 5f 62 6f th !== crypto_bo 00032710: 78 5f 53 45 43 52 45 54 4b 45 59 42 59 54 45 53 x_SECRETKEYBYTES 00032720: 29 20 74 68 72 6f 77 20 6e 65 77 20 45 72 72 6f ) throw new Erro 00032730: 72 28 27 62 61 64 20 73 65 63 72 65 74 20 6b 65 r('bad secret ke 00032740: 79 20 73 69 7a 65 27 29 3b 5c 6e 7d 5c 6e 5c 6e y size');\n}\n\n 00032750: 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 41 72 function checkAr 00032760: 72 61 79 54 79 70 65 73 28 29 20 7b 5c 6e 20 20 rayTypes() {\n 00032770: 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 for (var i = 0; 00032780: 69 20 3c 20 61 72 67 75 6d 65 6e 74 73 2e 6c 65 i < arguments.le 00032790: 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 ngth; i++) {\n 000327a0: 20 20 69 66 20 28 21 28 61 72 67 75 6d 65 6e 74 if (!(argument 000327b0: 73 5b 69 5d 20 69 6e 73 74 61 6e 63 65 6f 66 20 s[i] instanceof 000327c0: 55 69 6e 74 38 41 72 72 61 79 29 29 5c 6e 20 20 Uint8Array))\n 000327d0: 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 54 79 throw new Ty 000327e0: 70 65 45 72 72 6f 72 28 27 75 6e 65 78 70 65 63 peError('unexpec 000327f0: 74 65 64 20 74 79 70 65 2c 20 75 73 65 20 55 69 ted type, use Ui 00032800: 6e 74 38 41 72 72 61 79 27 29 3b 5c 6e 20 20 7d nt8Array');\n } 00032810: 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 \n}\n\nfunction 00032820: 63 6c 65 61 6e 75 70 28 61 72 72 29 20 7b 5c 6e cleanup(arr) {\n 00032830: 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 for (var i = 0 00032840: 3b 20 69 20 3c 20 61 72 72 2e 6c 65 6e 67 74 68 ; i < arr.length 00032850: 3b 20 69 2b 2b 29 20 61 72 72 5b 69 5d 20 3d 20 ; i++) arr[i] = 00032860: 30 3b 5c 6e 7d 5c 6e 5c 6e 6e 61 63 6c 2e 72 61 0;\n}\n\nnacl.ra 00032870: 6e 64 6f 6d 42 79 74 65 73 20 3d 20 66 75 6e 63 ndomBytes = func 00032880: 74 69 6f 6e 28 6e 29 20 7b 5c 6e 20 20 76 61 72 tion(n) {\n var 00032890: 20 62 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 b = new Uint8Ar 000328a0: 72 61 79 28 6e 29 3b 5c 6e 20 20 72 61 6e 64 6f ray(n);\n rando 000328b0: 6d 62 79 74 65 73 28 62 2c 20 6e 29 3b 5c 6e 20 mbytes(b, n);\n 000328c0: 20 72 65 74 75 72 6e 20 62 3b 5c 6e 7d 3b 5c 6e return b;\n};\n 000328d0: 5c 6e 6e 61 63 6c 2e 73 65 63 72 65 74 62 6f 78 \nnacl.secretbox 000328e0: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 6d 73 67 2c = function(msg, 000328f0: 20 6e 6f 6e 63 65 2c 20 6b 65 79 29 20 7b 5c 6e nonce, key) {\n 00032900: 20 20 63 68 65 63 6b 41 72 72 61 79 54 79 70 65 checkArrayType 00032910: 73 28 6d 73 67 2c 20 6e 6f 6e 63 65 2c 20 6b 65 s(msg, nonce, ke 00032920: 79 29 3b 5c 6e 20 20 63 68 65 63 6b 4c 65 6e 67 y);\n checkLeng 00032930: 74 68 73 28 6b 65 79 2c 20 6e 6f 6e 63 65 29 3b ths(key, nonce); 00032940: 5c 6e 20 20 76 61 72 20 6d 20 3d 20 6e 65 77 20 \n var m = new 00032950: 55 69 6e 74 38 41 72 72 61 79 28 63 72 79 70 74 Uint8Array(crypt 00032960: 6f 5f 73 65 63 72 65 74 62 6f 78 5f 5a 45 52 4f o_secretbox_ZERO 00032970: 42 59 54 45 53 20 2b 20 6d 73 67 2e 6c 65 6e 67 BYTES + msg.leng 00032980: 74 68 29 3b 5c 6e 20 20 76 61 72 20 63 20 3d 20 th);\n var c = 00032990: 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 6d new Uint8Array(m 000329a0: 2e 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 66 6f 72 .length);\n for 000329b0: 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c (var i = 0; i < 000329c0: 20 6d 73 67 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b msg.length; i++ 000329d0: 29 20 6d 5b 69 2b 63 72 79 70 74 6f 5f 73 65 63 ) m[i+crypto_sec 000329e0: 72 65 74 62 6f 78 5f 5a 45 52 4f 42 59 54 45 53 retbox_ZEROBYTES 000329f0: 5d 20 3d 20 6d 73 67 5b 69 5d 3b 5c 6e 20 20 63 ] = msg[i];\n c 00032a00: 72 79 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 28 rypto_secretbox( 00032a10: 63 2c 20 6d 2c 20 6d 2e 6c 65 6e 67 74 68 2c 20 c, m, m.length, 00032a20: 6e 6f 6e 63 65 2c 20 6b 65 79 29 3b 5c 6e 20 20 nonce, key);\n 00032a30: 72 65 74 75 72 6e 20 63 2e 73 75 62 61 72 72 61 return c.subarra 00032a40: 79 28 63 72 79 70 74 6f 5f 73 65 63 72 65 74 62 y(crypto_secretb 00032a50: 6f 78 5f 42 4f 58 5a 45 52 4f 42 59 54 45 53 29 ox_BOXZEROBYTES) 00032a60: 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 65 ;\n};\n\nnacl.se 00032a70: 63 72 65 74 62 6f 78 2e 6f 70 65 6e 20 3d 20 66 cretbox.open = f 00032a80: 75 6e 63 74 69 6f 6e 28 62 6f 78 2c 20 6e 6f 6e unction(box, non 00032a90: 63 65 2c 20 6b 65 79 29 20 7b 5c 6e 20 20 63 68 ce, key) {\n ch 00032aa0: 65 63 6b 41 72 72 61 79 54 79 70 65 73 28 62 6f eckArrayTypes(bo 00032ab0: 78 2c 20 6e 6f 6e 63 65 2c 20 6b 65 79 29 3b 5c x, nonce, key);\ 00032ac0: 6e 20 20 63 68 65 63 6b 4c 65 6e 67 74 68 73 28 n checkLengths( 00032ad0: 6b 65 79 2c 20 6e 6f 6e 63 65 29 3b 5c 6e 20 20 key, nonce);\n 00032ae0: 76 61 72 20 63 20 3d 20 6e 65 77 20 55 69 6e 74 var c = new Uint 00032af0: 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 73 65 8Array(crypto_se 00032b00: 63 72 65 74 62 6f 78 5f 42 4f 58 5a 45 52 4f 42 cretbox_BOXZEROB 00032b10: 59 54 45 53 20 2b 20 62 6f 78 2e 6c 65 6e 67 74 YTES + box.lengt 00032b20: 68 29 3b 5c 6e 20 20 76 61 72 20 6d 20 3d 20 6e h);\n var m = n 00032b30: 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 63 2e ew Uint8Array(c. 00032b40: 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 66 6f 72 20 length);\n for 00032b50: 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 (var i = 0; i < 00032b60: 62 6f 78 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 box.length; i++) 00032b70: 20 63 5b 69 2b 63 72 79 70 74 6f 5f 73 65 63 72 c[i+crypto_secr 00032b80: 65 74 62 6f 78 5f 42 4f 58 5a 45 52 4f 42 59 54 etbox_BOXZEROBYT 00032b90: 45 53 5d 20 3d 20 62 6f 78 5b 69 5d 3b 5c 6e 20 ES] = box[i];\n 00032ba0: 20 69 66 20 28 63 2e 6c 65 6e 67 74 68 20 3c 20 if (c.length < 00032bb0: 33 32 29 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 32) return null; 00032bc0: 5c 6e 20 20 69 66 20 28 63 72 79 70 74 6f 5f 73 \n if (crypto_s 00032bd0: 65 63 72 65 74 62 6f 78 5f 6f 70 65 6e 28 6d 2c ecretbox_open(m, 00032be0: 20 63 2c 20 63 2e 6c 65 6e 67 74 68 2c 20 6e 6f c, c.length, no 00032bf0: 6e 63 65 2c 20 6b 65 79 29 20 21 3d 3d 20 30 29 nce, key) !== 0) 00032c00: 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 5c 6e 20 return null;\n 00032c10: 20 72 65 74 75 72 6e 20 6d 2e 73 75 62 61 72 72 return m.subarr 00032c20: 61 79 28 63 72 79 70 74 6f 5f 73 65 63 72 65 74 ay(crypto_secret 00032c30: 62 6f 78 5f 5a 45 52 4f 42 59 54 45 53 29 3b 5c box_ZEROBYTES);\ 00032c40: 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 65 63 72 n};\n\nnacl.secr 00032c50: 65 74 62 6f 78 2e 6b 65 79 4c 65 6e 67 74 68 20 etbox.keyLength 00032c60: 3d 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 62 = crypto_secretb 00032c70: 6f 78 5f 4b 45 59 42 59 54 45 53 3b 5c 6e 6e 61 ox_KEYBYTES;\nna 00032c80: 63 6c 2e 73 65 63 72 65 74 62 6f 78 2e 6e 6f 6e cl.secretbox.non 00032c90: 63 65 4c 65 6e 67 74 68 20 3d 20 63 72 79 70 74 ceLength = crypt 00032ca0: 6f 5f 73 65 63 72 65 74 62 6f 78 5f 4e 4f 4e 43 o_secretbox_NONC 00032cb0: 45 42 59 54 45 53 3b 5c 6e 6e 61 63 6c 2e 73 65 EBYTES;\nnacl.se 00032cc0: 63 72 65 74 62 6f 78 2e 6f 76 65 72 68 65 61 64 cretbox.overhead 00032cd0: 4c 65 6e 67 74 68 20 3d 20 63 72 79 70 74 6f 5f Length = crypto_ 00032ce0: 73 65 63 72 65 74 62 6f 78 5f 42 4f 58 5a 45 52 secretbox_BOXZER 00032cf0: 4f 42 59 54 45 53 3b 5c 6e 5c 6e 6e 61 63 6c 2e OBYTES;\n\nnacl. 00032d00: 73 63 61 6c 61 72 4d 75 6c 74 20 3d 20 66 75 6e scalarMult = fun 00032d10: 63 74 69 6f 6e 28 6e 2c 20 70 29 20 7b 5c 6e 20 ction(n, p) {\n 00032d20: 20 63 68 65 63 6b 41 72 72 61 79 54 79 70 65 73 checkArrayTypes 00032d30: 28 6e 2c 20 70 29 3b 5c 6e 20 20 69 66 20 28 6e (n, p);\n if (n 00032d40: 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 79 70 .length !== cryp 00032d50: 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f 53 43 to_scalarmult_SC 00032d60: 41 4c 41 52 42 59 54 45 53 29 20 74 68 72 6f 77 ALARBYTES) throw 00032d70: 20 6e 65 77 20 45 72 72 6f 72 28 27 62 61 64 20 new Error('bad 00032d80: 6e 20 73 69 7a 65 27 29 3b 5c 6e 20 20 69 66 20 n size');\n if 00032d90: 28 70 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 (p.length !== cr 00032da0: 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f ypto_scalarmult_ 00032db0: 42 59 54 45 53 29 20 74 68 72 6f 77 20 6e 65 77 BYTES) throw new 00032dc0: 20 45 72 72 6f 72 28 27 62 61 64 20 70 20 73 69 Error('bad p si 00032dd0: 7a 65 27 29 3b 5c 6e 20 20 76 61 72 20 71 20 3d ze');\n var q = 00032de0: 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 new Uint8Array( 00032df0: 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c crypto_scalarmul 00032e00: 74 5f 42 59 54 45 53 29 3b 5c 6e 20 20 63 72 79 t_BYTES);\n cry 00032e10: 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 28 71 pto_scalarmult(q 00032e20: 2c 20 6e 2c 20 70 29 3b 5c 6e 20 20 72 65 74 75 , n, p);\n retu 00032e30: 72 6e 20 71 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 rn q;\n};\n\nnac 00032e40: 6c 2e 73 63 61 6c 61 72 4d 75 6c 74 2e 62 61 73 l.scalarMult.bas 00032e50: 65 20 3d 20 66 75 6e 63 74 69 6f 6e 28 6e 29 20 e = function(n) 00032e60: 7b 5c 6e 20 20 63 68 65 63 6b 41 72 72 61 79 54 {\n checkArrayT 00032e70: 79 70 65 73 28 6e 29 3b 5c 6e 20 20 69 66 20 28 ypes(n);\n if ( 00032e80: 6e 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 79 n.length !== cry 00032e90: 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f 53 pto_scalarmult_S 00032ea0: 43 41 4c 41 52 42 59 54 45 53 29 20 74 68 72 6f CALARBYTES) thro 00032eb0: 77 20 6e 65 77 20 45 72 72 6f 72 28 27 62 61 64 w new Error('bad 00032ec0: 20 6e 20 73 69 7a 65 27 29 3b 5c 6e 20 20 76 61 n size');\n va 00032ed0: 72 20 71 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 r q = new Uint8A 00032ee0: 72 72 61 79 28 63 72 79 70 74 6f 5f 73 63 61 6c rray(crypto_scal 00032ef0: 61 72 6d 75 6c 74 5f 42 59 54 45 53 29 3b 5c 6e armult_BYTES);\n 00032f00: 20 20 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d crypto_scalarm 00032f10: 75 6c 74 5f 62 61 73 65 28 71 2c 20 6e 29 3b 5c ult_base(q, n);\ 00032f20: 6e 20 20 72 65 74 75 72 6e 20 71 3b 5c 6e 7d 3b n return q;\n}; 00032f30: 5c 6e 5c 6e 6e 61 63 6c 2e 73 63 61 6c 61 72 4d \n\nnacl.scalarM 00032f40: 75 6c 74 2e 73 63 61 6c 61 72 4c 65 6e 67 74 68 ult.scalarLength 00032f50: 20 3d 20 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 = crypto_scalar 00032f60: 6d 75 6c 74 5f 53 43 41 4c 41 52 42 59 54 45 53 mult_SCALARBYTES 00032f70: 3b 5c 6e 6e 61 63 6c 2e 73 63 61 6c 61 72 4d 75 ;\nnacl.scalarMu 00032f80: 6c 74 2e 67 72 6f 75 70 45 6c 65 6d 65 6e 74 4c lt.groupElementL 00032f90: 65 6e 67 74 68 20 3d 20 63 72 79 70 74 6f 5f 73 ength = crypto_s 00032fa0: 63 61 6c 61 72 6d 75 6c 74 5f 42 59 54 45 53 3b calarmult_BYTES; 00032fb0: 5c 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 20 3d 20 66 \n\nnacl.box = f 00032fc0: 75 6e 63 74 69 6f 6e 28 6d 73 67 2c 20 6e 6f 6e unction(msg, non 00032fd0: 63 65 2c 20 70 75 62 6c 69 63 4b 65 79 2c 20 73 ce, publicKey, s 00032fe0: 65 63 72 65 74 4b 65 79 29 20 7b 5c 6e 20 20 76 ecretKey) {\n v 00032ff0: 61 72 20 6b 20 3d 20 6e 61 63 6c 2e 62 6f 78 2e ar k = nacl.box. 00033000: 62 65 66 6f 72 65 28 70 75 62 6c 69 63 4b 65 79 before(publicKey 00033010: 2c 20 73 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 , secretKey);\n 00033020: 20 72 65 74 75 72 6e 20 6e 61 63 6c 2e 73 65 63 return nacl.sec 00033030: 72 65 74 62 6f 78 28 6d 73 67 2c 20 6e 6f 6e 63 retbox(msg, nonc 00033040: 65 2c 20 6b 29 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 e, k);\n};\n\nna 00033050: 63 6c 2e 62 6f 78 2e 62 65 66 6f 72 65 20 3d 20 cl.box.before = 00033060: 66 75 6e 63 74 69 6f 6e 28 70 75 62 6c 69 63 4b function(publicK 00033070: 65 79 2c 20 73 65 63 72 65 74 4b 65 79 29 20 7b ey, secretKey) { 00033080: 5c 6e 20 20 63 68 65 63 6b 41 72 72 61 79 54 79 \n checkArrayTy 00033090: 70 65 73 28 70 75 62 6c 69 63 4b 65 79 2c 20 73 pes(publicKey, s 000330a0: 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 20 63 68 ecretKey);\n ch 000330b0: 65 63 6b 42 6f 78 4c 65 6e 67 74 68 73 28 70 75 eckBoxLengths(pu 000330c0: 62 6c 69 63 4b 65 79 2c 20 73 65 63 72 65 74 4b blicKey, secretK 000330d0: 65 79 29 3b 5c 6e 20 20 76 61 72 20 6b 20 3d 20 ey);\n var k = 000330e0: 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 63 new Uint8Array(c 000330f0: 72 79 70 74 6f 5f 62 6f 78 5f 42 45 46 4f 52 45 rypto_box_BEFORE 00033100: 4e 4d 42 59 54 45 53 29 3b 5c 6e 20 20 63 72 79 NMBYTES);\n cry 00033110: 70 74 6f 5f 62 6f 78 5f 62 65 66 6f 72 65 6e 6d pto_box_beforenm 00033120: 28 6b 2c 20 70 75 62 6c 69 63 4b 65 79 2c 20 73 (k, publicKey, s 00033130: 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 20 72 65 ecretKey);\n re 00033140: 74 75 72 6e 20 6b 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e turn k;\n};\n\nn 00033150: 61 63 6c 2e 62 6f 78 2e 61 66 74 65 72 20 3d 20 acl.box.after = 00033160: 6e 61 63 6c 2e 73 65 63 72 65 74 62 6f 78 3b 5c nacl.secretbox;\ 00033170: 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 2e 6f 70 65 6e n\nnacl.box.open 00033180: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 6d 73 67 2c = function(msg, 00033190: 20 6e 6f 6e 63 65 2c 20 70 75 62 6c 69 63 4b 65 nonce, publicKe 000331a0: 79 2c 20 73 65 63 72 65 74 4b 65 79 29 20 7b 5c y, secretKey) {\ 000331b0: 6e 20 20 76 61 72 20 6b 20 3d 20 6e 61 63 6c 2e n var k = nacl. 000331c0: 62 6f 78 2e 62 65 66 6f 72 65 28 70 75 62 6c 69 box.before(publi 000331d0: 63 4b 65 79 2c 20 73 65 63 72 65 74 4b 65 79 29 cKey, secretKey) 000331e0: 3b 5c 6e 20 20 72 65 74 75 72 6e 20 6e 61 63 6c ;\n return nacl 000331f0: 2e 73 65 63 72 65 74 62 6f 78 2e 6f 70 65 6e 28 .secretbox.open( 00033200: 6d 73 67 2c 20 6e 6f 6e 63 65 2c 20 6b 29 3b 5c msg, nonce, k);\ 00033210: 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 2e n};\n\nnacl.box. 00033220: 6f 70 65 6e 2e 61 66 74 65 72 20 3d 20 6e 61 63 open.after = nac 00033230: 6c 2e 73 65 63 72 65 74 62 6f 78 2e 6f 70 65 6e l.secretbox.open 00033240: 3b 5c 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 2e 6b 65 ;\n\nnacl.box.ke 00033250: 79 50 61 69 72 20 3d 20 66 75 6e 63 74 69 6f 6e yPair = function 00033260: 28 29 20 7b 5c 6e 20 20 76 61 72 20 70 6b 20 3d () {\n var pk = 00033270: 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 new Uint8Array( 00033280: 63 72 79 70 74 6f 5f 62 6f 78 5f 50 55 42 4c 49 crypto_box_PUBLI 00033290: 43 4b 45 59 42 59 54 45 53 29 3b 5c 6e 20 20 76 CKEYBYTES);\n v 000332a0: 61 72 20 73 6b 20 3d 20 6e 65 77 20 55 69 6e 74 ar sk = new Uint 000332b0: 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 62 6f 8Array(crypto_bo 000332c0: 78 5f 53 45 43 52 45 54 4b 45 59 42 59 54 45 53 x_SECRETKEYBYTES 000332d0: 29 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 62 6f 78 );\n crypto_box 000332e0: 5f 6b 65 79 70 61 69 72 28 70 6b 2c 20 73 6b 29 _keypair(pk, sk) 000332f0: 3b 5c 6e 20 20 72 65 74 75 72 6e 20 7b 70 75 62 ;\n return {pub 00033300: 6c 69 63 4b 65 79 3a 20 70 6b 2c 20 73 65 63 72 licKey: pk, secr 00033310: 65 74 4b 65 79 3a 20 73 6b 7d 3b 5c 6e 7d 3b 5c etKey: sk};\n};\ 00033320: 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 2e 6b 65 79 50 n\nnacl.box.keyP 00033330: 61 69 72 2e 66 72 6f 6d 53 65 63 72 65 74 4b 65 air.fromSecretKe 00033340: 79 20 3d 20 66 75 6e 63 74 69 6f 6e 28 73 65 63 y = function(sec 00033350: 72 65 74 4b 65 79 29 20 7b 5c 6e 20 20 63 68 65 retKey) {\n che 00033360: 63 6b 41 72 72 61 79 54 79 70 65 73 28 73 65 63 ckArrayTypes(sec 00033370: 72 65 74 4b 65 79 29 3b 5c 6e 20 20 69 66 20 28 retKey);\n if ( 00033380: 73 65 63 72 65 74 4b 65 79 2e 6c 65 6e 67 74 68 secretKey.length 00033390: 20 21 3d 3d 20 63 72 79 70 74 6f 5f 62 6f 78 5f !== crypto_box_ 000333a0: 53 45 43 52 45 54 4b 45 59 42 59 54 45 53 29 5c SECRETKEYBYTES)\ 000333b0: 6e 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 45 n throw new E 000333c0: 72 72 6f 72 28 27 62 61 64 20 73 65 63 72 65 74 rror('bad secret 000333d0: 20 6b 65 79 20 73 69 7a 65 27 29 3b 5c 6e 20 20 key size');\n 000333e0: 76 61 72 20 70 6b 20 3d 20 6e 65 77 20 55 69 6e var pk = new Uin 000333f0: 74 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 62 t8Array(crypto_b 00033400: 6f 78 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 45 ox_PUBLICKEYBYTE 00033410: 53 29 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 73 63 S);\n crypto_sc 00033420: 61 6c 61 72 6d 75 6c 74 5f 62 61 73 65 28 70 6b alarmult_base(pk 00033430: 2c 20 73 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 , secretKey);\n 00033440: 20 72 65 74 75 72 6e 20 7b 70 75 62 6c 69 63 4b return {publicK 00033450: 65 79 3a 20 70 6b 2c 20 73 65 63 72 65 74 4b 65 ey: pk, secretKe 00033460: 79 3a 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 y: new Uint8Arra 00033470: 79 28 73 65 63 72 65 74 4b 65 79 29 7d 3b 5c 6e y(secretKey)};\n 00033480: 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 2e 70 };\n\nnacl.box.p 00033490: 75 62 6c 69 63 4b 65 79 4c 65 6e 67 74 68 20 3d ublicKeyLength = 000334a0: 20 63 72 79 70 74 6f 5f 62 6f 78 5f 50 55 42 4c crypto_box_PUBL 000334b0: 49 43 4b 45 59 42 59 54 45 53 3b 5c 6e 6e 61 63 ICKEYBYTES;\nnac 000334c0: 6c 2e 62 6f 78 2e 73 65 63 72 65 74 4b 65 79 4c l.box.secretKeyL 000334d0: 65 6e 67 74 68 20 3d 20 63 72 79 70 74 6f 5f 62 ength = crypto_b 000334e0: 6f 78 5f 53 45 43 52 45 54 4b 45 59 42 59 54 45 ox_SECRETKEYBYTE 000334f0: 53 3b 5c 6e 6e 61 63 6c 2e 62 6f 78 2e 73 68 61 S;\nnacl.box.sha 00033500: 72 65 64 4b 65 79 4c 65 6e 67 74 68 20 3d 20 63 redKeyLength = c 00033510: 72 79 70 74 6f 5f 62 6f 78 5f 42 45 46 4f 52 45 rypto_box_BEFORE 00033520: 4e 4d 42 59 54 45 53 3b 5c 6e 6e 61 63 6c 2e 62 NMBYTES;\nnacl.b 00033530: 6f 78 2e 6e 6f 6e 63 65 4c 65 6e 67 74 68 20 3d ox.nonceLength = 00033540: 20 63 72 79 70 74 6f 5f 62 6f 78 5f 4e 4f 4e 43 crypto_box_NONC 00033550: 45 42 59 54 45 53 3b 5c 6e 6e 61 63 6c 2e 62 6f EBYTES;\nnacl.bo 00033560: 78 2e 6f 76 65 72 68 65 61 64 4c 65 6e 67 74 68 x.overheadLength 00033570: 20 3d 20 6e 61 63 6c 2e 73 65 63 72 65 74 62 6f = nacl.secretbo 00033580: 78 2e 6f 76 65 72 68 65 61 64 4c 65 6e 67 74 68 x.overheadLength 00033590: 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 69 67 6e 20 3d ;\n\nnacl.sign = 000335a0: 20 66 75 6e 63 74 69 6f 6e 28 6d 73 67 2c 20 73 function(msg, s 000335b0: 65 63 72 65 74 4b 65 79 29 20 7b 5c 6e 20 20 63 ecretKey) {\n c 000335c0: 68 65 63 6b 41 72 72 61 79 54 79 70 65 73 28 6d heckArrayTypes(m 000335d0: 73 67 2c 20 73 65 63 72 65 74 4b 65 79 29 3b 5c sg, secretKey);\ 000335e0: 6e 20 20 69 66 20 28 73 65 63 72 65 74 4b 65 79 n if (secretKey 000335f0: 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 79 70 .length !== cryp 00033600: 74 6f 5f 73 69 67 6e 5f 53 45 43 52 45 54 4b 45 to_sign_SECRETKE 00033610: 59 42 59 54 45 53 29 5c 6e 20 20 20 20 74 68 72 YBYTES)\n thr 00033620: 6f 77 20 6e 65 77 20 45 72 72 6f 72 28 27 62 61 ow new Error('ba 00033630: 64 20 73 65 63 72 65 74 20 6b 65 79 20 73 69 7a d secret key siz 00033640: 65 27 29 3b 5c 6e 20 20 76 61 72 20 73 69 67 6e e');\n var sign 00033650: 65 64 4d 73 67 20 3d 20 6e 65 77 20 55 69 6e 74 edMsg = new Uint 00033660: 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 73 69 8Array(crypto_si 00033670: 67 6e 5f 42 59 54 45 53 2b 6d 73 67 2e 6c 65 6e gn_BYTES+msg.len 00033680: 67 74 68 29 3b 5c 6e 20 20 63 72 79 70 74 6f 5f gth);\n crypto_ 00033690: 73 69 67 6e 28 73 69 67 6e 65 64 4d 73 67 2c 20 sign(signedMsg, 000336a0: 6d 73 67 2c 20 6d 73 67 2e 6c 65 6e 67 74 68 2c msg, msg.length, 000336b0: 20 73 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 20 secretKey);\n 000336c0: 72 65 74 75 72 6e 20 73 69 67 6e 65 64 4d 73 67 return signedMsg 000336d0: 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 69 ;\n};\n\nnacl.si 000336e0: 67 6e 2e 6f 70 65 6e 20 3d 20 66 75 6e 63 74 69 gn.open = functi 000336f0: 6f 6e 28 73 69 67 6e 65 64 4d 73 67 2c 20 70 75 on(signedMsg, pu 00033700: 62 6c 69 63 4b 65 79 29 20 7b 5c 6e 20 20 63 68 blicKey) {\n ch 00033710: 65 63 6b 41 72 72 61 79 54 79 70 65 73 28 73 69 eckArrayTypes(si 00033720: 67 6e 65 64 4d 73 67 2c 20 70 75 62 6c 69 63 4b gnedMsg, publicK 00033730: 65 79 29 3b 5c 6e 20 20 69 66 20 28 70 75 62 6c ey);\n if (publ 00033740: 69 63 4b 65 79 2e 6c 65 6e 67 74 68 20 21 3d 3d icKey.length !== 00033750: 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 50 55 42 crypto_sign_PUB 00033760: 4c 49 43 4b 45 59 42 59 54 45 53 29 5c 6e 20 20 LICKEYBYTES)\n 00033770: 20 20 74 68 72 6f 77 20 6e 65 77 20 45 72 72 6f throw new Erro 00033780: 72 28 27 62 61 64 20 70 75 62 6c 69 63 20 6b 65 r('bad public ke 00033790: 79 20 73 69 7a 65 27 29 3b 5c 6e 20 20 76 61 72 y size');\n var 000337a0: 20 74 6d 70 20 3d 20 6e 65 77 20 55 69 6e 74 38 tmp = new Uint8 000337b0: 41 72 72 61 79 28 73 69 67 6e 65 64 4d 73 67 2e Array(signedMsg. 000337c0: 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 76 61 72 20 length);\n var 000337d0: 6d 6c 65 6e 20 3d 20 63 72 79 70 74 6f 5f 73 69 mlen = crypto_si 000337e0: 67 6e 5f 6f 70 65 6e 28 74 6d 70 2c 20 73 69 67 gn_open(tmp, sig 000337f0: 6e 65 64 4d 73 67 2c 20 73 69 67 6e 65 64 4d 73 nedMsg, signedMs 00033800: 67 2e 6c 65 6e 67 74 68 2c 20 70 75 62 6c 69 63 g.length, public 00033810: 4b 65 79 29 3b 5c 6e 20 20 69 66 20 28 6d 6c 65 Key);\n if (mle 00033820: 6e 20 3c 20 30 29 20 72 65 74 75 72 6e 20 6e 75 n < 0) return nu 00033830: 6c 6c 3b 5c 6e 20 20 76 61 72 20 6d 20 3d 20 6e ll;\n var m = n 00033840: 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 6d 6c ew Uint8Array(ml 00033850: 65 6e 29 3b 5c 6e 20 20 66 6f 72 20 28 76 61 72 en);\n for (var 00033860: 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 2e 6c 65 i = 0; i < m.le 00033870: 6e 67 74 68 3b 20 69 2b 2b 29 20 6d 5b 69 5d 20 ngth; i++) m[i] 00033880: 3d 20 74 6d 70 5b 69 5d 3b 5c 6e 20 20 72 65 74 = tmp[i];\n ret 00033890: 75 72 6e 20 6d 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 urn m;\n};\n\nna 000338a0: 63 6c 2e 73 69 67 6e 2e 64 65 74 61 63 68 65 64 cl.sign.detached 000338b0: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 6d 73 67 2c = function(msg, 000338c0: 20 73 65 63 72 65 74 4b 65 79 29 20 7b 5c 6e 20 secretKey) {\n 000338d0: 20 76 61 72 20 73 69 67 6e 65 64 4d 73 67 20 3d var signedMsg = 000338e0: 20 6e 61 63 6c 2e 73 69 67 6e 28 6d 73 67 2c 20 nacl.sign(msg, 000338f0: 73 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 20 76 secretKey);\n v 00033900: 61 72 20 73 69 67 20 3d 20 6e 65 77 20 55 69 6e ar sig = new Uin 00033910: 74 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 73 t8Array(crypto_s 00033920: 69 67 6e 5f 42 59 54 45 53 29 3b 5c 6e 20 20 66 ign_BYTES);\n f 00033930: 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 or (var i = 0; i 00033940: 20 3c 20 73 69 67 2e 6c 65 6e 67 74 68 3b 20 69 < sig.length; i 00033950: 2b 2b 29 20 73 69 67 5b 69 5d 20 3d 20 73 69 67 ++) sig[i] = sig 00033960: 6e 65 64 4d 73 67 5b 69 5d 3b 5c 6e 20 20 72 65 nedMsg[i];\n re 00033970: 74 75 72 6e 20 73 69 67 3b 5c 6e 7d 3b 5c 6e 5c turn sig;\n};\n\ 00033980: 6e 6e 61 63 6c 2e 73 69 67 6e 2e 64 65 74 61 63 nnacl.sign.detac 00033990: 68 65 64 2e 76 65 72 69 66 79 20 3d 20 66 75 6e hed.verify = fun 000339a0: 63 74 69 6f 6e 28 6d 73 67 2c 20 73 69 67 2c 20 ction(msg, sig, 000339b0: 70 75 62 6c 69 63 4b 65 79 29 20 7b 5c 6e 20 20 publicKey) {\n 000339c0: 63 68 65 63 6b 41 72 72 61 79 54 79 70 65 73 28 checkArrayTypes( 000339d0: 6d 73 67 2c 20 73 69 67 2c 20 70 75 62 6c 69 63 msg, sig, public 000339e0: 4b 65 79 29 3b 5c 6e 20 20 69 66 20 28 73 69 67 Key);\n if (sig 000339f0: 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 79 70 .length !== cryp 00033a00: 74 6f 5f 73 69 67 6e 5f 42 59 54 45 53 29 5c 6e to_sign_BYTES)\n 00033a10: 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 45 72 throw new Er 00033a20: 72 6f 72 28 27 62 61 64 20 73 69 67 6e 61 74 75 ror('bad signatu 00033a30: 72 65 20 73 69 7a 65 27 29 3b 5c 6e 20 20 69 66 re size');\n if 00033a40: 20 28 70 75 62 6c 69 63 4b 65 79 2e 6c 65 6e 67 (publicKey.leng 00033a50: 74 68 20 21 3d 3d 20 63 72 79 70 74 6f 5f 73 69 th !== crypto_si 00033a60: 67 6e 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 45 gn_PUBLICKEYBYTE 00033a70: 53 29 5c 6e 20 20 20 20 74 68 72 6f 77 20 6e 65 S)\n throw ne 00033a80: 77 20 45 72 72 6f 72 28 27 62 61 64 20 70 75 62 w Error('bad pub 00033a90: 6c 69 63 20 6b 65 79 20 73 69 7a 65 27 29 3b 5c lic key size');\ 00033aa0: 6e 20 20 76 61 72 20 73 6d 20 3d 20 6e 65 77 20 n var sm = new 00033ab0: 55 69 6e 74 38 41 72 72 61 79 28 63 72 79 70 74 Uint8Array(crypt 00033ac0: 6f 5f 73 69 67 6e 5f 42 59 54 45 53 20 2b 20 6d o_sign_BYTES + m 00033ad0: 73 67 2e 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 76 sg.length);\n v 00033ae0: 61 72 20 6d 20 3d 20 6e 65 77 20 55 69 6e 74 38 ar m = new Uint8 00033af0: 41 72 72 61 79 28 63 72 79 70 74 6f 5f 73 69 67 Array(crypto_sig 00033b00: 6e 5f 42 59 54 45 53 20 2b 20 6d 73 67 2e 6c 65 n_BYTES + msg.le 00033b10: 6e 67 74 68 29 3b 5c 6e 20 20 76 61 72 20 69 3b ngth);\n var i; 00033b20: 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 \n for (i = 0; 00033b30: 69 20 3c 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f i < crypto_sign_ 00033b40: 42 59 54 45 53 3b 20 69 2b 2b 29 20 73 6d 5b 69 BYTES; i++) sm[i 00033b50: 5d 20 3d 20 73 69 67 5b 69 5d 3b 5c 6e 20 20 66 ] = sig[i];\n f 00033b60: 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 6d or (i = 0; i < m 00033b70: 73 67 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 20 sg.length; i++) 00033b80: 73 6d 5b 69 2b 63 72 79 70 74 6f 5f 73 69 67 6e sm[i+crypto_sign 00033b90: 5f 42 59 54 45 53 5d 20 3d 20 6d 73 67 5b 69 5d _BYTES] = msg[i] 00033ba0: 3b 5c 6e 20 20 72 65 74 75 72 6e 20 28 63 72 79 ;\n return (cry 00033bb0: 70 74 6f 5f 73 69 67 6e 5f 6f 70 65 6e 28 6d 2c pto_sign_open(m, 00033bc0: 20 73 6d 2c 20 73 6d 2e 6c 65 6e 67 74 68 2c 20 sm, sm.length, 00033bd0: 70 75 62 6c 69 63 4b 65 79 29 20 3e 3d 20 30 29 publicKey) >= 0) 00033be0: 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 69 ;\n};\n\nnacl.si 00033bf0: 67 6e 2e 6b 65 79 50 61 69 72 20 3d 20 66 75 6e gn.keyPair = fun 00033c00: 63 74 69 6f 6e 28 29 20 7b 5c 6e 20 20 76 61 72 ction() {\n var 00033c10: 20 70 6b 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 pk = new Uint8A 00033c20: 72 72 61 79 28 63 72 79 70 74 6f 5f 73 69 67 6e rray(crypto_sign 00033c30: 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 45 53 29 _PUBLICKEYBYTES) 00033c40: 3b 5c 6e 20 20 76 61 72 20 73 6b 20 3d 20 6e 65 ;\n var sk = ne 00033c50: 77 20 55 69 6e 74 38 41 72 72 61 79 28 63 72 79 w Uint8Array(cry 00033c60: 70 74 6f 5f 73 69 67 6e 5f 53 45 43 52 45 54 4b pto_sign_SECRETK 00033c70: 45 59 42 59 54 45 53 29 3b 5c 6e 20 20 63 72 79 EYBYTES);\n cry 00033c80: 70 74 6f 5f 73 69 67 6e 5f 6b 65 79 70 61 69 72 pto_sign_keypair 00033c90: 28 70 6b 2c 20 73 6b 29 3b 5c 6e 20 20 72 65 74 (pk, sk);\n ret 00033ca0: 75 72 6e 20 7b 70 75 62 6c 69 63 4b 65 79 3a 20 urn {publicKey: 00033cb0: 70 6b 2c 20 73 65 63 72 65 74 4b 65 79 3a 20 73 pk, secretKey: s 00033cc0: 6b 7d 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e k};\n};\n\nnacl. 00033cd0: 73 69 67 6e 2e 6b 65 79 50 61 69 72 2e 66 72 6f sign.keyPair.fro 00033ce0: 6d 53 65 63 72 65 74 4b 65 79 20 3d 20 66 75 6e mSecretKey = fun 00033cf0: 63 74 69 6f 6e 28 73 65 63 72 65 74 4b 65 79 29 ction(secretKey) 00033d00: 20 7b 5c 6e 20 20 63 68 65 63 6b 41 72 72 61 79 {\n checkArray 00033d10: 54 79 70 65 73 28 73 65 63 72 65 74 4b 65 79 29 Types(secretKey) 00033d20: 3b 5c 6e 20 20 69 66 20 28 73 65 63 72 65 74 4b ;\n if (secretK 00033d30: 65 79 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 ey.length !== cr 00033d40: 79 70 74 6f 5f 73 69 67 6e 5f 53 45 43 52 45 54 ypto_sign_SECRET 00033d50: 4b 45 59 42 59 54 45 53 29 5c 6e 20 20 20 20 74 KEYBYTES)\n t 00033d60: 68 72 6f 77 20 6e 65 77 20 45 72 72 6f 72 28 27 hrow new Error(' 00033d70: 62 61 64 20 73 65 63 72 65 74 20 6b 65 79 20 73 bad secret key s 00033d80: 69 7a 65 27 29 3b 5c 6e 20 20 76 61 72 20 70 6b ize');\n var pk 00033d90: 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 = new Uint8Arra 00033da0: 79 28 63 72 79 70 74 6f 5f 73 69 67 6e 5f 50 55 y(crypto_sign_PU 00033db0: 42 4c 49 43 4b 45 59 42 59 54 45 53 29 3b 5c 6e BLICKEYBYTES);\n 00033dc0: 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 for (var i = 0 00033dd0: 3b 20 69 20 3c 20 70 6b 2e 6c 65 6e 67 74 68 3b ; i < pk.length; 00033de0: 20 69 2b 2b 29 20 70 6b 5b 69 5d 20 3d 20 73 65 i++) pk[i] = se 00033df0: 63 72 65 74 4b 65 79 5b 33 32 2b 69 5d 3b 5c 6e cretKey[32+i];\n 00033e00: 20 20 72 65 74 75 72 6e 20 7b 70 75 62 6c 69 63 return {public 00033e10: 4b 65 79 3a 20 70 6b 2c 20 73 65 63 72 65 74 4b Key: pk, secretK 00033e20: 65 79 3a 20 6e 65 77 20 55 69 6e 74 38 41 72 72 ey: new Uint8Arr 00033e30: 61 79 28 73 65 63 72 65 74 4b 65 79 29 7d 3b 5c ay(secretKey)};\ 00033e40: 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 69 67 6e n};\n\nnacl.sign 00033e50: 2e 6b 65 79 50 61 69 72 2e 66 72 6f 6d 53 65 65 .keyPair.fromSee 00033e60: 64 20 3d 20 66 75 6e 63 74 69 6f 6e 28 73 65 65 d = function(see 00033e70: 64 29 20 7b 5c 6e 20 20 63 68 65 63 6b 41 72 72 d) {\n checkArr 00033e80: 61 79 54 79 70 65 73 28 73 65 65 64 29 3b 5c 6e ayTypes(seed);\n 00033e90: 20 20 69 66 20 28 73 65 65 64 2e 6c 65 6e 67 74 if (seed.lengt 00033ea0: 68 20 21 3d 3d 20 63 72 79 70 74 6f 5f 73 69 67 h !== crypto_sig 00033eb0: 6e 5f 53 45 45 44 42 59 54 45 53 29 5c 6e 20 20 n_SEEDBYTES)\n 00033ec0: 20 20 74 68 72 6f 77 20 6e 65 77 20 45 72 72 6f throw new Erro 00033ed0: 72 28 27 62 61 64 20 73 65 65 64 20 73 69 7a 65 r('bad seed size 00033ee0: 27 29 3b 5c 6e 20 20 76 61 72 20 70 6b 20 3d 20 ');\n var pk = 00033ef0: 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 63 new Uint8Array(c 00033f00: 72 79 70 74 6f 5f 73 69 67 6e 5f 50 55 42 4c 49 rypto_sign_PUBLI 00033f10: 43 4b 45 59 42 59 54 45 53 29 3b 5c 6e 20 20 76 CKEYBYTES);\n v 00033f20: 61 72 20 73 6b 20 3d 20 6e 65 77 20 55 69 6e 74 ar sk = new Uint 00033f30: 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 73 69 8Array(crypto_si 00033f40: 67 6e 5f 53 45 43 52 45 54 4b 45 59 42 59 54 45 gn_SECRETKEYBYTE 00033f50: 53 29 3b 5c 6e 20 20 66 6f 72 20 28 76 61 72 20 S);\n for (var 00033f60: 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 3b 20 69 i = 0; i < 32; i 00033f70: 2b 2b 29 20 73 6b 5b 69 5d 20 3d 20 73 65 65 64 ++) sk[i] = seed 00033f80: 5b 69 5d 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 73 [i];\n crypto_s 00033f90: 69 67 6e 5f 6b 65 79 70 61 69 72 28 70 6b 2c 20 ign_keypair(pk, 00033fa0: 73 6b 2c 20 74 72 75 65 29 3b 5c 6e 20 20 72 65 sk, true);\n re 00033fb0: 74 75 72 6e 20 7b 70 75 62 6c 69 63 4b 65 79 3a turn {publicKey: 00033fc0: 20 70 6b 2c 20 73 65 63 72 65 74 4b 65 79 3a 20 pk, secretKey: 00033fd0: 73 6b 7d 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c sk};\n};\n\nnacl 00033fe0: 2e 73 69 67 6e 2e 70 75 62 6c 69 63 4b 65 79 4c .sign.publicKeyL 00033ff0: 65 6e 67 74 68 20 3d 20 63 72 79 70 74 6f 5f 73 ength = crypto_s 00034000: 69 67 6e 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 ign_PUBLICKEYBYT 00034010: 45 53 3b 5c 6e 6e 61 63 6c 2e 73 69 67 6e 2e 73 ES;\nnacl.sign.s 00034020: 65 63 72 65 74 4b 65 79 4c 65 6e 67 74 68 20 3d ecretKeyLength = 00034030: 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 53 45 43 crypto_sign_SEC 00034040: 52 45 54 4b 45 59 42 59 54 45 53 3b 5c 6e 6e 61 RETKEYBYTES;\nna 00034050: 63 6c 2e 73 69 67 6e 2e 73 65 65 64 4c 65 6e 67 cl.sign.seedLeng 00034060: 74 68 20 3d 20 63 72 79 70 74 6f 5f 73 69 67 6e th = crypto_sign 00034070: 5f 53 45 45 44 42 59 54 45 53 3b 5c 6e 6e 61 63 _SEEDBYTES;\nnac 00034080: 6c 2e 73 69 67 6e 2e 73 69 67 6e 61 74 75 72 65 l.sign.signature 00034090: 4c 65 6e 67 74 68 20 3d 20 63 72 79 70 74 6f 5f Length = crypto_ 000340a0: 73 69 67 6e 5f 42 59 54 45 53 3b 5c 6e 5c 6e 6e sign_BYTES;\n\nn 000340b0: 61 63 6c 2e 68 61 73 68 20 3d 20 66 75 6e 63 74 acl.hash = funct 000340c0: 69 6f 6e 28 6d 73 67 29 20 7b 5c 6e 20 20 63 68 ion(msg) {\n ch 000340d0: 65 63 6b 41 72 72 61 79 54 79 70 65 73 28 6d 73 eckArrayTypes(ms 000340e0: 67 29 3b 5c 6e 20 20 76 61 72 20 68 20 3d 20 6e g);\n var h = n 000340f0: 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 63 72 ew Uint8Array(cr 00034100: 79 70 74 6f 5f 68 61 73 68 5f 42 59 54 45 53 29 ypto_hash_BYTES) 00034110: 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 68 61 73 68 ;\n crypto_hash 00034120: 28 68 2c 20 6d 73 67 2c 20 6d 73 67 2e 6c 65 6e (h, msg, msg.len 00034130: 67 74 68 29 3b 5c 6e 20 20 72 65 74 75 72 6e 20 gth);\n return 00034140: 68 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 68 h;\n};\n\nnacl.h 00034150: 61 73 68 2e 68 61 73 68 4c 65 6e 67 74 68 20 3d ash.hashLength = 00034160: 20 63 72 79 70 74 6f 5f 68 61 73 68 5f 42 59 54 crypto_hash_BYT 00034170: 45 53 3b 5c 6e 5c 6e 6e 61 63 6c 2e 76 65 72 69 ES;\n\nnacl.veri 00034180: 66 79 20 3d 20 66 75 6e 63 74 69 6f 6e 28 78 2c fy = function(x, 00034190: 20 79 29 20 7b 5c 6e 20 20 63 68 65 63 6b 41 72 y) {\n checkAr 000341a0: 72 61 79 54 79 70 65 73 28 78 2c 20 79 29 3b 5c rayTypes(x, y);\ 000341b0: 6e 20 20 2f 2f 20 5a 65 72 6f 20 6c 65 6e 67 74 n // Zero lengt 000341c0: 68 20 61 72 67 75 6d 65 6e 74 73 20 61 72 65 20 h arguments are 000341d0: 63 6f 6e 73 69 64 65 72 65 64 20 6e 6f 74 20 65 considered not e 000341e0: 71 75 61 6c 2e 5c 6e 20 20 69 66 20 28 78 2e 6c qual.\n if (x.l 000341f0: 65 6e 67 74 68 20 3d 3d 3d 20 30 20 7c 7c 20 79 ength === 0 || y 00034200: 2e 6c 65 6e 67 74 68 20 3d 3d 3d 20 30 29 20 72 .length === 0) r 00034210: 65 74 75 72 6e 20 66 61 6c 73 65 3b 5c 6e 20 20 eturn false;\n 00034220: 69 66 20 28 78 2e 6c 65 6e 67 74 68 20 21 3d 3d if (x.length !== 00034230: 20 79 2e 6c 65 6e 67 74 68 29 20 72 65 74 75 72 y.length) retur 00034240: 6e 20 66 61 6c 73 65 3b 5c 6e 20 20 72 65 74 75 n false;\n retu 00034250: 72 6e 20 28 76 6e 28 78 2c 20 30 2c 20 79 2c 20 rn (vn(x, 0, y, 00034260: 30 2c 20 78 2e 6c 65 6e 67 74 68 29 20 3d 3d 3d 0, x.length) === 00034270: 20 30 29 20 3f 20 74 72 75 65 20 3a 20 66 61 6c 0) ? true : fal 00034280: 73 65 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e se;\n};\n\nnacl. 00034290: 73 65 74 50 52 4e 47 20 3d 20 66 75 6e 63 74 69 setPRNG = functi 000342a0: 6f 6e 28 66 6e 29 20 7b 5c 6e 20 20 72 61 6e 64 on(fn) {\n rand 000342b0: 6f 6d 62 79 74 65 73 20 3d 20 66 6e 3b 5c 6e 7d ombytes = fn;\n} 000342c0: 3b 5c 6e 5c 6e 28 66 75 6e 63 74 69 6f 6e 28 29 ;\n\n(function() 000342d0: 20 7b 5c 6e 20 20 2f 2f 20 49 6e 69 74 69 61 6c {\n // Initial 000342e0: 69 7a 65 20 50 52 4e 47 20 69 66 20 65 6e 76 69 ize PRNG if envi 000342f0: 72 6f 6e 6d 65 6e 74 20 70 72 6f 76 69 64 65 73 ronment provides 00034300: 20 43 53 50 52 4e 47 2e 5c 6e 20 20 2f 2f 20 49 CSPRNG.\n // I 00034310: 66 20 6e 6f 74 2c 20 6d 65 74 68 6f 64 73 20 63 f not, methods c 00034320: 61 6c 6c 69 6e 67 20 72 61 6e 64 6f 6d 62 79 74 alling randombyt 00034330: 65 73 20 77 69 6c 6c 20 74 68 72 6f 77 2e 5c 6e es will throw.\n 00034340: 20 20 76 61 72 20 63 72 79 70 74 6f 20 3d 20 74 var crypto = t 00034350: 79 70 65 6f 66 20 73 65 6c 66 20 21 3d 3d 20 27 ypeof self !== ' 00034360: 75 6e 64 65 66 69 6e 65 64 27 20 3f 20 28 73 65 undefined' ? (se 00034370: 6c 66 2e 63 72 79 70 74 6f 20 7c 7c 20 73 65 6c lf.crypto || sel 00034380: 66 2e 6d 73 43 72 79 70 74 6f 29 20 3a 20 6e 75 f.msCrypto) : nu 00034390: 6c 6c 3b 5c 6e 20 20 69 66 20 28 63 72 79 70 74 ll;\n if (crypt 000343a0: 6f 20 26 26 20 63 72 79 70 74 6f 2e 67 65 74 52 o && crypto.getR 000343b0: 61 6e 64 6f 6d 56 61 6c 75 65 73 29 20 7b 5c 6e andomValues) {\n 000343c0: 20 20 20 20 2f 2f 20 42 72 6f 77 73 65 72 73 2e // Browsers. 000343d0: 5c 6e 20 20 20 20 76 61 72 20 51 55 4f 54 41 20 \n var QUOTA 000343e0: 3d 20 36 35 35 33 36 3b 5c 6e 20 20 20 20 6e 61 = 65536;\n na 000343f0: 63 6c 2e 73 65 74 50 52 4e 47 28 66 75 6e 63 74 cl.setPRNG(funct 00034400: 69 6f 6e 28 78 2c 20 6e 29 20 7b 5c 6e 20 20 20 ion(x, n) {\n 00034410: 20 20 20 76 61 72 20 69 2c 20 76 20 3d 20 6e 65 var i, v = ne 00034420: 77 20 55 69 6e 74 38 41 72 72 61 79 28 6e 29 3b w Uint8Array(n); 00034430: 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 69 20 3d \n for (i = 00034440: 20 30 3b 20 69 20 3c 20 6e 3b 20 69 20 2b 3d 20 0; i < n; i += 00034450: 51 55 4f 54 41 29 20 7b 5c 6e 20 20 20 20 20 20 QUOTA) {\n 00034460: 20 20 63 72 79 70 74 6f 2e 67 65 74 52 61 6e 64 crypto.getRand 00034470: 6f 6d 56 61 6c 75 65 73 28 76 2e 73 75 62 61 72 omValues(v.subar 00034480: 72 61 79 28 69 2c 20 69 20 2b 20 4d 61 74 68 2e ray(i, i + Math. 00034490: 6d 69 6e 28 6e 20 2d 20 69 2c 20 51 55 4f 54 41 min(n - i, QUOTA 000344a0: 29 29 29 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 )));\n }\n 000344b0: 20 20 20 20 20 66 6f 72 20 28 69 20 3d 20 30 3b for (i = 0; 000344c0: 20 69 20 3c 20 6e 3b 20 69 2b 2b 29 20 78 5b 69 i < n; i++) x[i 000344d0: 5d 20 3d 20 76 5b 69 5d 3b 5c 6e 20 20 20 20 20 ] = v[i];\n 000344e0: 20 63 6c 65 61 6e 75 70 28 76 29 3b 5c 6e 20 20 cleanup(v);\n 000344f0: 20 20 7d 29 3b 5c 6e 20 20 7d 20 65 6c 73 65 20 });\n } else 00034500: 69 66 20 28 74 79 70 65 6f 66 20 72 65 71 75 69 if (typeof requi 00034510: 72 65 20 21 3d 3d 20 27 75 6e 64 65 66 69 6e 65 re !== 'undefine 00034520: 64 27 29 20 7b 5c 6e 20 20 20 20 2f 2f 20 4e 6f d') {\n // No 00034530: 64 65 2e 6a 73 2e 5c 6e 20 20 20 20 63 72 79 70 de.js.\n cryp 00034540: 74 6f 20 3d 20 72 65 71 75 69 72 65 28 27 63 72 to = require('cr 00034550: 79 70 74 6f 27 29 3b 5c 6e 20 20 20 20 69 66 20 ypto');\n if 00034560: 28 63 72 79 70 74 6f 20 26 26 20 63 72 79 70 74 (crypto && crypt 00034570: 6f 2e 72 61 6e 64 6f 6d 42 79 74 65 73 29 20 7b o.randomBytes) { 00034580: 5c 6e 20 20 20 20 20 20 6e 61 63 6c 2e 73 65 74 \n nacl.set 00034590: 50 52 4e 47 28 66 75 6e 63 74 69 6f 6e 28 78 2c PRNG(function(x, 000345a0: 20 6e 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 76 n) {\n v 000345b0: 61 72 20 69 2c 20 76 20 3d 20 63 72 79 70 74 6f ar i, v = crypto 000345c0: 2e 72 61 6e 64 6f 6d 42 79 74 65 73 28 6e 29 3b .randomBytes(n); 000345d0: 5c 6e 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 \n for (i 000345e0: 20 3d 20 30 3b 20 69 20 3c 20 6e 3b 20 69 2b 2b = 0; i < n; i++ 000345f0: 29 20 78 5b 69 5d 20 3d 20 76 5b 69 5d 3b 5c 6e ) x[i] = v[i];\n 00034600: 20 20 20 20 20 20 20 20 63 6c 65 61 6e 75 70 28 cleanup( 00034610: 76 29 3b 5c 6e 20 20 20 20 20 20 7d 29 3b 5c 6e v);\n });\n 00034620: 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 7d 29 28 29 }\n }\n})() 00034630: 3b 5c 6e 5c 6e 7d 29 28 74 79 70 65 6f 66 20 6d ;\n\n})(typeof m 00034640: 6f 64 75 6c 65 20 21 3d 3d 20 27 75 6e 64 65 66 odule !== 'undef 00034650: 69 6e 65 64 27 20 26 26 20 6d 6f 64 75 6c 65 2e ined' && module. 00034660: 65 78 70 6f 72 74 73 20 3f 20 6d 6f 64 75 6c 65 exports ? module 00034670: 2e 65 78 70 6f 72 74 73 20 3a 20 28 73 65 6c 66 .exports : (self 00034680: 2e 6e 61 63 6c 20 3d 20 73 65 6c 66 2e 6e 61 63 .nacl = self.nac 00034690: 6c 20 7c 7c 20 7b 7d 29 29 3b 5c 6e 22 2c 22 28 l || {}));\n","( 000346a0: 66 75 6e 63 74 69 6f 6e 20 28 6d 6f 64 75 6c 65 function (module 000346b0: 2c 20 65 78 70 6f 72 74 73 29 20 7b 5c 6e 20 20 , exports) {\n 000346c0: 27 75 73 65 20 73 74 72 69 63 74 27 3b 5c 6e 5c 'use strict';\n\ 000346d0: 6e 20 20 2f 2f 20 55 74 69 6c 73 5c 6e 20 20 66 n // Utils\n f 000346e0: 75 6e 63 74 69 6f 6e 20 61 73 73 65 72 74 20 28 unction assert ( 000346f0: 76 61 6c 2c 20 6d 73 67 29 20 7b 5c 6e 20 20 20 val, msg) {\n 00034700: 20 69 66 20 28 21 76 61 6c 29 20 74 68 72 6f 77 if (!val) throw 00034710: 20 6e 65 77 20 45 72 72 6f 72 28 6d 73 67 20 7c new Error(msg | 00034720: 7c 20 27 41 73 73 65 72 74 69 6f 6e 20 66 61 69 | 'Assertion fai 00034730: 6c 65 64 27 29 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 led');\n }\n\n 00034740: 20 2f 2f 20 43 6f 75 6c 64 20 75 73 65 20 60 69 // Could use `i 00034750: 6e 68 65 72 69 74 73 60 20 6d 6f 64 75 6c 65 2c nherits` module, 00034760: 20 62 75 74 20 64 6f 6e 27 74 20 77 61 6e 74 20 but don't want 00034770: 74 6f 20 6d 6f 76 65 20 66 72 6f 6d 20 73 69 6e to move from sin 00034780: 67 6c 65 20 66 69 6c 65 5c 6e 20 20 2f 2f 20 61 gle file\n // a 00034790: 72 63 68 69 74 65 63 74 75 72 65 20 79 65 74 2e rchitecture yet. 000347a0: 5c 6e 20 20 66 75 6e 63 74 69 6f 6e 20 69 6e 68 \n function inh 000347b0: 65 72 69 74 73 20 28 63 74 6f 72 2c 20 73 75 70 erits (ctor, sup 000347c0: 65 72 43 74 6f 72 29 20 7b 5c 6e 20 20 20 20 63 erCtor) {\n c 000347d0: 74 6f 72 2e 73 75 70 65 72 5f 20 3d 20 73 75 70 tor.super_ = sup 000347e0: 65 72 43 74 6f 72 3b 5c 6e 20 20 20 20 76 61 72 erCtor;\n var 000347f0: 20 54 65 6d 70 43 74 6f 72 20 3d 20 66 75 6e 63 TempCtor = func 00034800: 74 69 6f 6e 20 28 29 20 7b 7d 3b 5c 6e 20 20 20 tion () {};\n 00034810: 20 54 65 6d 70 43 74 6f 72 2e 70 72 6f 74 6f 74 TempCtor.protot 00034820: 79 70 65 20 3d 20 73 75 70 65 72 43 74 6f 72 2e ype = superCtor. 00034830: 70 72 6f 74 6f 74 79 70 65 3b 5c 6e 20 20 20 20 prototype;\n 00034840: 63 74 6f 72 2e 70 72 6f 74 6f 74 79 70 65 20 3d ctor.prototype = 00034850: 20 6e 65 77 20 54 65 6d 70 43 74 6f 72 28 29 3b new TempCtor(); 00034860: 5c 6e 20 20 20 20 63 74 6f 72 2e 70 72 6f 74 6f \n ctor.proto 00034870: 74 79 70 65 2e 63 6f 6e 73 74 72 75 63 74 6f 72 type.constructor 00034880: 20 3d 20 63 74 6f 72 3b 5c 6e 20 20 7d 5c 6e 5c = ctor;\n }\n\ 00034890: 6e 20 20 2f 2f 20 42 4e 5c 6e 5c 6e 20 20 66 75 n // BN\n\n fu 000348a0: 6e 63 74 69 6f 6e 20 42 4e 20 28 6e 75 6d 62 65 nction BN (numbe 000348b0: 72 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e 29 r, base, endian) 000348c0: 20 7b 5c 6e 20 20 20 20 69 66 20 28 42 4e 2e 69 {\n if (BN.i 000348d0: 73 42 4e 28 6e 75 6d 62 65 72 29 29 20 7b 5c 6e sBN(number)) {\n 000348e0: 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6d return num 000348f0: 62 65 72 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 ber;\n }\n\n 00034900: 20 20 20 74 68 69 73 2e 6e 65 67 61 74 69 76 65 this.negative 00034910: 20 3d 20 30 3b 5c 6e 20 20 20 20 74 68 69 73 2e = 0;\n this. 00034920: 77 6f 72 64 73 20 3d 20 6e 75 6c 6c 3b 5c 6e 20 words = null;\n 00034930: 20 20 20 74 68 69 73 2e 6c 65 6e 67 74 68 20 3d this.length = 00034940: 20 30 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 52 65 0;\n\n // Re 00034950: 64 75 63 74 69 6f 6e 20 63 6f 6e 74 65 78 74 5c duction context\ 00034960: 6e 20 20 20 20 74 68 69 73 2e 72 65 64 20 3d 20 n this.red = 00034970: 6e 75 6c 6c 3b 5c 6e 5c 6e 20 20 20 20 69 66 20 null;\n\n if 00034980: 28 6e 75 6d 62 65 72 20 21 3d 3d 20 6e 75 6c 6c (number !== null 00034990: 29 20 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 62 ) {\n if (b 000349a0: 61 73 65 20 3d 3d 3d 20 27 6c 65 27 20 7c 7c 20 ase === 'le' || 000349b0: 62 61 73 65 20 3d 3d 3d 20 27 62 65 27 29 20 7b base === 'be') { 000349c0: 5c 6e 20 20 20 20 20 20 20 20 65 6e 64 69 61 6e \n endian 000349d0: 20 3d 20 62 61 73 65 3b 5c 6e 20 20 20 20 20 20 = base;\n 000349e0: 20 20 62 61 73 65 20 3d 20 31 30 3b 5c 6e 20 20 base = 10;\n 000349f0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 74 }\n\n t 00034a00: 68 69 73 2e 5f 69 6e 69 74 28 6e 75 6d 62 65 72 his._init(number 00034a10: 20 7c 7c 20 30 2c 20 62 61 73 65 20 7c 7c 20 31 || 0, base || 1 00034a20: 30 2c 20 65 6e 64 69 61 6e 20 7c 7c 20 27 62 65 0, endian || 'be 00034a30: 27 29 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c ');\n }\n }\ 00034a40: 6e 20 20 69 66 20 28 74 79 70 65 6f 66 20 6d 6f n if (typeof mo 00034a50: 64 75 6c 65 20 3d 3d 3d 20 27 6f 62 6a 65 63 74 dule === 'object 00034a60: 27 29 20 7b 5c 6e 20 20 20 20 6d 6f 64 75 6c 65 ') {\n module 00034a70: 2e 65 78 70 6f 72 74 73 20 3d 20 42 4e 3b 5c 6e .exports = BN;\n 00034a80: 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 } else {\n 00034a90: 65 78 70 6f 72 74 73 2e 42 4e 20 3d 20 42 4e 3b exports.BN = BN; 00034aa0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 42 4e 2e 42 4e \n }\n\n BN.BN 00034ab0: 20 3d 20 42 4e 3b 5c 6e 20 20 42 4e 2e 77 6f 72 = BN;\n BN.wor 00034ac0: 64 53 69 7a 65 20 3d 20 32 36 3b 5c 6e 5c 6e 20 dSize = 26;\n\n 00034ad0: 20 76 61 72 20 42 75 66 66 65 72 3b 5c 6e 20 20 var Buffer;\n 00034ae0: 74 72 79 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 try {\n if (t 00034af0: 79 70 65 6f 66 20 77 69 6e 64 6f 77 20 21 3d 3d ypeof window !== 00034b00: 20 27 75 6e 64 65 66 69 6e 65 64 27 20 26 26 20 'undefined' && 00034b10: 74 79 70 65 6f 66 20 77 69 6e 64 6f 77 2e 42 75 typeof window.Bu 00034b20: 66 66 65 72 20 21 3d 3d 20 27 75 6e 64 65 66 69 ffer !== 'undefi 00034b30: 6e 65 64 27 29 20 7b 5c 6e 20 20 20 20 20 20 42 ned') {\n B 00034b40: 75 66 66 65 72 20 3d 20 77 69 6e 64 6f 77 2e 42 uffer = window.B 00034b50: 75 66 66 65 72 3b 5c 6e 20 20 20 20 7d 20 65 6c uffer;\n } el 00034b60: 73 65 20 7b 5c 6e 20 20 20 20 20 20 42 75 66 66 se {\n Buff 00034b70: 65 72 20 3d 20 72 65 71 75 69 72 65 28 27 62 75 er = require('bu 00034b80: 66 66 65 72 27 29 2e 42 75 66 66 65 72 3b 5c 6e ffer').Buffer;\n 00034b90: 20 20 20 20 7d 5c 6e 20 20 7d 20 63 61 74 63 68 }\n } catch 00034ba0: 20 28 65 29 20 7b 5c 6e 20 20 7d 5c 6e 5c 6e 20 (e) {\n }\n\n 00034bb0: 20 42 4e 2e 69 73 42 4e 20 3d 20 66 75 6e 63 74 BN.isBN = funct 00034bc0: 69 6f 6e 20 69 73 42 4e 20 28 6e 75 6d 29 20 7b ion isBN (num) { 00034bd0: 5c 6e 20 20 20 20 69 66 20 28 6e 75 6d 20 69 6e \n if (num in 00034be0: 73 74 61 6e 63 65 6f 66 20 42 4e 29 20 7b 5c 6e stanceof BN) {\n 00034bf0: 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 return tru 00034c00: 65 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 e;\n }\n\n 00034c10: 20 72 65 74 75 72 6e 20 6e 75 6d 20 21 3d 3d 20 return num !== 00034c20: 6e 75 6c 6c 20 26 26 20 74 79 70 65 6f 66 20 6e null && typeof n 00034c30: 75 6d 20 3d 3d 3d 20 27 6f 62 6a 65 63 74 27 20 um === 'object' 00034c40: 26 26 5c 6e 20 20 20 20 20 20 6e 75 6d 2e 63 6f &&\n num.co 00034c50: 6e 73 74 72 75 63 74 6f 72 2e 77 6f 72 64 53 69 nstructor.wordSi 00034c60: 7a 65 20 3d 3d 3d 20 42 4e 2e 77 6f 72 64 53 69 ze === BN.wordSi 00034c70: 7a 65 20 26 26 20 41 72 72 61 79 2e 69 73 41 72 ze && Array.isAr 00034c80: 72 61 79 28 6e 75 6d 2e 77 6f 72 64 73 29 3b 5c ray(num.words);\ 00034c90: 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 6d 61 n };\n\n BN.ma 00034ca0: 78 20 3d 20 66 75 6e 63 74 69 6f 6e 20 6d 61 78 x = function max 00034cb0: 20 28 6c 65 66 74 2c 20 72 69 67 68 74 29 20 7b (left, right) { 00034cc0: 5c 6e 20 20 20 20 69 66 20 28 6c 65 66 74 2e 63 \n if (left.c 00034cd0: 6d 70 28 72 69 67 68 74 29 20 3e 20 30 29 20 72 mp(right) > 0) r 00034ce0: 65 74 75 72 6e 20 6c 65 66 74 3b 5c 6e 20 20 20 eturn left;\n 00034cf0: 20 72 65 74 75 72 6e 20 72 69 67 68 74 3b 5c 6e return right;\n 00034d00: 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 6d 69 6e };\n\n BN.min 00034d10: 20 3d 20 66 75 6e 63 74 69 6f 6e 20 6d 69 6e 20 = function min 00034d20: 28 6c 65 66 74 2c 20 72 69 67 68 74 29 20 7b 5c (left, right) {\ 00034d30: 6e 20 20 20 20 69 66 20 28 6c 65 66 74 2e 63 6d n if (left.cm 00034d40: 70 28 72 69 67 68 74 29 20 3c 20 30 29 20 72 65 p(right) < 0) re 00034d50: 74 75 72 6e 20 6c 65 66 74 3b 5c 6e 20 20 20 20 turn left;\n 00034d60: 72 65 74 75 72 6e 20 72 69 67 68 74 3b 5c 6e 20 return right;\n 00034d70: 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 };\n\n BN.prot 00034d80: 6f 74 79 70 65 2e 5f 69 6e 69 74 20 3d 20 66 75 otype._init = fu 00034d90: 6e 63 74 69 6f 6e 20 69 6e 69 74 20 28 6e 75 6d nction init (num 00034da0: 62 65 72 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 ber, base, endia 00034db0: 6e 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 79 n) {\n if (ty 00034dc0: 70 65 6f 66 20 6e 75 6d 62 65 72 20 3d 3d 3d 20 peof number === 00034dd0: 27 6e 75 6d 62 65 72 27 29 20 7b 5c 6e 20 20 20 'number') {\n 00034de0: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f return this._ 00034df0: 69 6e 69 74 4e 75 6d 62 65 72 28 6e 75 6d 62 65 initNumber(numbe 00034e00: 72 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e 29 r, base, endian) 00034e10: 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 ;\n }\n\n 00034e20: 69 66 20 28 74 79 70 65 6f 66 20 6e 75 6d 62 65 if (typeof numbe 00034e30: 72 20 3d 3d 3d 20 27 6f 62 6a 65 63 74 27 29 20 r === 'object') 00034e40: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 {\n return 00034e50: 74 68 69 73 2e 5f 69 6e 69 74 41 72 72 61 79 28 this._initArray( 00034e60: 6e 75 6d 62 65 72 2c 20 62 61 73 65 2c 20 65 6e number, base, en 00034e70: 64 69 61 6e 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c dian);\n }\n\ 00034e80: 6e 20 20 20 20 69 66 20 28 62 61 73 65 20 3d 3d n if (base == 00034e90: 3d 20 27 68 65 78 27 29 20 7b 5c 6e 20 20 20 20 = 'hex') {\n 00034ea0: 20 20 62 61 73 65 20 3d 20 31 36 3b 5c 6e 20 20 base = 16;\n 00034eb0: 20 20 7d 5c 6e 20 20 20 20 61 73 73 65 72 74 28 }\n assert( 00034ec0: 62 61 73 65 20 3d 3d 3d 20 28 62 61 73 65 20 7c base === (base | 00034ed0: 20 30 29 20 26 26 20 62 61 73 65 20 3e 3d 20 32 0) && base >= 2 00034ee0: 20 26 26 20 62 61 73 65 20 3c 3d 20 33 36 29 3b && base <= 36); 00034ef0: 5c 6e 5c 6e 20 20 20 20 6e 75 6d 62 65 72 20 3d \n\n number = 00034f00: 20 6e 75 6d 62 65 72 2e 74 6f 53 74 72 69 6e 67 number.toString 00034f10: 28 29 2e 72 65 70 6c 61 63 65 28 2f 5c 5c 73 2b ().replace(/\\s+ 00034f20: 2f 67 2c 20 27 27 29 3b 5c 6e 20 20 20 20 76 61 /g, '');\n va 00034f30: 72 20 73 74 61 72 74 20 3d 20 30 3b 5c 6e 20 20 r start = 0;\n 00034f40: 20 20 69 66 20 28 6e 75 6d 62 65 72 5b 30 5d 20 if (number[0] 00034f50: 3d 3d 3d 20 27 2d 27 29 20 7b 5c 6e 20 20 20 20 === '-') {\n 00034f60: 20 20 73 74 61 72 74 2b 2b 3b 5c 6e 20 20 20 20 start++;\n 00034f70: 20 20 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 this.negative 00034f80: 3d 20 31 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 = 1;\n }\n\n 00034f90: 20 20 20 69 66 20 28 73 74 61 72 74 20 3c 20 6e if (start < n 00034fa0: 75 6d 62 65 72 2e 6c 65 6e 67 74 68 29 20 7b 5c umber.length) {\ 00034fb0: 6e 20 20 20 20 20 20 69 66 20 28 62 61 73 65 20 n if (base 00034fc0: 3d 3d 3d 20 31 36 29 20 7b 5c 6e 20 20 20 20 20 === 16) {\n 00034fd0: 20 20 20 74 68 69 73 2e 5f 70 61 72 73 65 48 65 this._parseHe 00034fe0: 78 28 6e 75 6d 62 65 72 2c 20 73 74 61 72 74 2c x(number, start, 00034ff0: 20 65 6e 64 69 61 6e 29 3b 5c 6e 20 20 20 20 20 endian);\n 00035000: 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 20 } else {\n 00035010: 20 20 20 74 68 69 73 2e 5f 70 61 72 73 65 42 61 this._parseBa 00035020: 73 65 28 6e 75 6d 62 65 72 2c 20 62 61 73 65 2c se(number, base, 00035030: 20 73 74 61 72 74 29 3b 5c 6e 20 20 20 20 20 20 start);\n 00035040: 20 20 69 66 20 28 65 6e 64 69 61 6e 20 3d 3d 3d if (endian === 00035050: 20 27 6c 65 27 29 20 7b 5c 6e 20 20 20 20 20 20 'le') {\n 00035060: 20 20 20 20 74 68 69 73 2e 5f 69 6e 69 74 41 72 this._initAr 00035070: 72 61 79 28 74 68 69 73 2e 74 6f 41 72 72 61 79 ray(this.toArray 00035080: 28 29 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e (), base, endian 00035090: 29 3b 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 );\n }\n 000350a0: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 20 }\n }\n 000350b0: 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 };\n\n BN.prot 000350c0: 6f 74 79 70 65 2e 5f 69 6e 69 74 4e 75 6d 62 65 otype._initNumbe 000350d0: 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 5f 69 6e r = function _in 000350e0: 69 74 4e 75 6d 62 65 72 20 28 6e 75 6d 62 65 72 itNumber (number 000350f0: 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e 29 20 , base, endian) 00035100: 7b 5c 6e 20 20 20 20 69 66 20 28 6e 75 6d 62 65 {\n if (numbe 00035110: 72 20 3c 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 r < 0) {\n 00035120: 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 3d 20 this.negative = 00035130: 31 3b 5c 6e 20 20 20 20 20 20 6e 75 6d 62 65 72 1;\n number 00035140: 20 3d 20 2d 6e 75 6d 62 65 72 3b 5c 6e 20 20 20 = -number;\n 00035150: 20 7d 5c 6e 20 20 20 20 69 66 20 28 6e 75 6d 62 }\n if (numb 00035160: 65 72 20 3c 20 30 78 34 30 30 30 30 30 30 29 20 er < 0x4000000) 00035170: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 77 6f {\n this.wo 00035180: 72 64 73 20 3d 20 5b 6e 75 6d 62 65 72 20 26 20 rds = [number & 00035190: 30 78 33 66 66 66 66 66 66 5d 3b 5c 6e 20 20 20 0x3ffffff];\n 000351a0: 20 20 20 74 68 69 73 2e 6c 65 6e 67 74 68 20 3d this.length = 000351b0: 20 31 3b 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 1;\n } else 000351c0: 69 66 20 28 6e 75 6d 62 65 72 20 3c 20 30 78 31 if (number < 0x1 000351d0: 30 30 30 30 30 30 30 30 30 30 30 30 30 29 20 7b 0000000000000) { 000351e0: 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 \n this.wor 000351f0: 64 73 20 3d 20 5b 5c 6e 20 20 20 20 20 20 20 20 ds = [\n 00035200: 6e 75 6d 62 65 72 20 26 20 30 78 33 66 66 66 66 number & 0x3ffff 00035210: 66 66 2c 5c 6e 20 20 20 20 20 20 20 20 28 6e 75 ff,\n (nu 00035220: 6d 62 65 72 20 2f 20 30 78 34 30 30 30 30 30 30 mber / 0x4000000 00035230: 29 20 26 20 30 78 33 66 66 66 66 66 66 5c 6e 20 ) & 0x3ffffff\n 00035240: 20 20 20 20 20 5d 3b 5c 6e 20 20 20 20 20 20 74 ];\n t 00035250: 68 69 73 2e 6c 65 6e 67 74 68 20 3d 20 32 3b 5c his.length = 2;\ 00035260: 6e 20 20 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 n } else {\n 00035270: 20 20 20 20 20 61 73 73 65 72 74 28 6e 75 6d 62 assert(numb 00035280: 65 72 20 3c 20 30 78 32 30 30 30 30 30 30 30 30 er < 0x200000000 00035290: 30 30 30 30 30 29 3b 20 2f 2f 20 32 20 5e 20 35 00000); // 2 ^ 5 000352a0: 33 20 28 75 6e 73 61 66 65 29 5c 6e 20 20 20 20 3 (unsafe)\n 000352b0: 20 20 74 68 69 73 2e 77 6f 72 64 73 20 3d 20 5b this.words = [ 000352c0: 5c 6e 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 \n number 000352d0: 20 26 20 30 78 33 66 66 66 66 66 66 2c 5c 6e 20 & 0x3ffffff,\n 000352e0: 20 20 20 20 20 20 20 28 6e 75 6d 62 65 72 20 2f (number / 000352f0: 20 30 78 34 30 30 30 30 30 30 29 20 26 20 30 78 0x4000000) & 0x 00035300: 33 66 66 66 66 66 66 2c 5c 6e 20 20 20 20 20 20 3ffffff,\n 00035310: 20 20 31 5c 6e 20 20 20 20 20 20 5d 3b 5c 6e 20 1\n ];\n 00035320: 20 20 20 20 20 74 68 69 73 2e 6c 65 6e 67 74 68 this.length 00035330: 20 3d 20 33 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e = 3;\n }\n\n 00035340: 20 20 20 20 69 66 20 28 65 6e 64 69 61 6e 20 21 if (endian ! 00035350: 3d 3d 20 27 6c 65 27 29 20 72 65 74 75 72 6e 3b == 'le') return; 00035360: 5c 6e 5c 6e 20 20 20 20 2f 2f 20 52 65 76 65 72 \n\n // Rever 00035370: 73 65 20 74 68 65 20 62 79 74 65 73 5c 6e 20 20 se the bytes\n 00035380: 20 20 74 68 69 73 2e 5f 69 6e 69 74 41 72 72 61 this._initArra 00035390: 79 28 74 68 69 73 2e 74 6f 41 72 72 61 79 28 29 y(this.toArray() 000353a0: 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e 29 3b , base, endian); 000353b0: 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 \n };\n\n BN.p 000353c0: 72 6f 74 6f 74 79 70 65 2e 5f 69 6e 69 74 41 72 rototype._initAr 000353d0: 72 61 79 20 3d 20 66 75 6e 63 74 69 6f 6e 20 5f ray = function _ 000353e0: 69 6e 69 74 41 72 72 61 79 20 28 6e 75 6d 62 65 initArray (numbe 000353f0: 72 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e 29 r, base, endian) 00035400: 20 7b 5c 6e 20 20 20 20 2f 2f 20 50 65 72 68 61 {\n // Perha 00035410: 70 73 20 61 20 55 69 6e 74 38 41 72 72 61 79 5c ps a Uint8Array\ 00035420: 6e 20 20 20 20 61 73 73 65 72 74 28 74 79 70 65 n assert(type 00035430: 6f 66 20 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 of number.length 00035440: 20 3d 3d 3d 20 27 6e 75 6d 62 65 72 27 29 3b 5c === 'number');\ 00035450: 6e 20 20 20 20 69 66 20 28 6e 75 6d 62 65 72 2e n if (number. 00035460: 6c 65 6e 67 74 68 20 3c 3d 20 30 29 20 7b 5c 6e length <= 0) {\n 00035470: 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 this.words 00035480: 20 3d 20 5b 30 5d 3b 5c 6e 20 20 20 20 20 20 74 = [0];\n t 00035490: 68 69 73 2e 6c 65 6e 67 74 68 20 3d 20 31 3b 5c his.length = 1;\ 000354a0: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 68 n return th 000354b0: 69 73 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 is;\n }\n\n 000354c0: 20 20 74 68 69 73 2e 6c 65 6e 67 74 68 20 3d 20 this.length = 000354d0: 4d 61 74 68 2e 63 65 69 6c 28 6e 75 6d 62 65 72 Math.ceil(number 000354e0: 2e 6c 65 6e 67 74 68 20 2f 20 33 29 3b 5c 6e 20 .length / 3);\n 000354f0: 20 20 20 74 68 69 73 2e 77 6f 72 64 73 20 3d 20 this.words = 00035500: 6e 65 77 20 41 72 72 61 79 28 74 68 69 73 2e 6c new Array(this.l 00035510: 65 6e 67 74 68 29 3b 5c 6e 20 20 20 20 66 6f 72 ength);\n for 00035520: 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c (var i = 0; i < 00035530: 20 74 68 69 73 2e 6c 65 6e 67 74 68 3b 20 69 2b this.length; i+ 00035540: 2b 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 +) {\n this 00035550: 2e 77 6f 72 64 73 5b 69 5d 20 3d 20 30 3b 5c 6e .words[i] = 0;\n 00035560: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 76 61 72 }\n\n var 00035570: 20 6a 2c 20 77 3b 5c 6e 20 20 20 20 76 61 72 20 j, w;\n var 00035580: 6f 66 66 20 3d 20 30 3b 5c 6e 20 20 20 20 69 66 off = 0;\n if 00035590: 20 28 65 6e 64 69 61 6e 20 3d 3d 3d 20 27 62 65 (endian === 'be 000355a0: 27 29 20 7b 5c 6e 20 20 20 20 20 20 66 6f 72 20 ') {\n for 000355b0: 28 69 20 3d 20 6e 75 6d 62 65 72 2e 6c 65 6e 67 (i = number.leng 000355c0: 74 68 20 2d 20 31 2c 20 6a 20 3d 20 30 3b 20 69 th - 1, j = 0; i 000355d0: 20 3e 3d 20 30 3b 20 69 20 2d 3d 20 33 29 20 7b >= 0; i -= 3) { 000355e0: 5c 6e 20 20 20 20 20 20 20 20 77 20 3d 20 6e 75 \n w = nu 000355f0: 6d 62 65 72 5b 69 5d 20 7c 20 28 6e 75 6d 62 65 mber[i] | (numbe 00035600: 72 5b 69 20 2d 20 31 5d 20 3c 3c 20 38 29 20 7c r[i - 1] << 8) | 00035610: 20 28 6e 75 6d 62 65 72 5b 69 20 2d 20 32 5d 20 (number[i - 2] 00035620: 3c 3c 20 31 36 29 3b 5c 6e 20 20 20 20 20 20 20 << 16);\n 00035630: 20 74 68 69 73 2e 77 6f 72 64 73 5b 6a 5d 20 7c this.words[j] | 00035640: 3d 20 28 77 20 3c 3c 20 6f 66 66 29 20 26 20 30 = (w << off) & 0 00035650: 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 20 20 x3ffffff;\n 00035660: 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 6a 20 this.words[j 00035670: 2b 20 31 5d 20 3d 20 28 77 20 3e 3e 3e 20 28 32 + 1] = (w >>> (2 00035680: 36 20 2d 20 6f 66 66 29 29 20 26 20 30 78 33 66 6 - off)) & 0x3f 00035690: 66 66 66 66 66 3b 5c 6e 20 20 20 20 20 20 20 20 fffff;\n 000356a0: 6f 66 66 20 2b 3d 20 32 34 3b 5c 6e 20 20 20 20 off += 24;\n 000356b0: 20 20 20 20 69 66 20 28 6f 66 66 20 3e 3d 20 32 if (off >= 2 000356c0: 36 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6) {\n 000356d0: 6f 66 66 20 2d 3d 20 32 36 3b 5c 6e 20 20 20 20 off -= 26;\n 000356e0: 20 20 20 20 20 20 6a 2b 2b 3b 5c 6e 20 20 20 20 j++;\n 000356f0: 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 7d 5c 6e }\n }\n 00035700: 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 65 } else if (e 00035710: 6e 64 69 61 6e 20 3d 3d 3d 20 27 6c 65 27 29 20 ndian === 'le') 00035720: 7b 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 69 20 {\n for (i 00035730: 3d 20 30 2c 20 6a 20 3d 20 30 3b 20 69 20 3c 20 = 0, j = 0; i < 00035740: 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 3b 20 69 number.length; i 00035750: 20 2b 3d 20 33 29 20 7b 5c 6e 20 20 20 20 20 20 += 3) {\n 00035760: 20 20 77 20 3d 20 6e 75 6d 62 65 72 5b 69 5d 20 w = number[i] 00035770: 7c 20 28 6e 75 6d 62 65 72 5b 69 20 2b 20 31 5d | (number[i + 1] 00035780: 20 3c 3c 20 38 29 20 7c 20 28 6e 75 6d 62 65 72 << 8) | (number 00035790: 5b 69 20 2b 20 32 5d 20 3c 3c 20 31 36 29 3b 5c [i + 2] << 16);\ 000357a0: 6e 20 20 20 20 20 20 20 20 74 68 69 73 2e 77 6f n this.wo 000357b0: 72 64 73 5b 6a 5d 20 7c 3d 20 28 77 20 3c 3c 20 rds[j] |= (w << 000357c0: 6f 66 66 29 20 26 20 30 78 33 66 66 66 66 66 66 off) & 0x3ffffff 000357d0: 3b 5c 6e 20 20 20 20 20 20 20 20 74 68 69 73 2e ;\n this. 000357e0: 77 6f 72 64 73 5b 6a 20 2b 20 31 5d 20 3d 20 28 words[j + 1] = ( 000357f0: 77 20 3e 3e 3e 20 28 32 36 20 2d 20 6f 66 66 29 w >>> (26 - off) 00035800: 29 20 26 20 30 78 33 66 66 66 66 66 66 3b 5c 6e ) & 0x3ffffff;\n 00035810: 20 20 20 20 20 20 20 20 6f 66 66 20 2b 3d 20 32 off += 2 00035820: 34 3b 5c 6e 20 20 20 20 20 20 20 20 69 66 20 28 4;\n if ( 00035830: 6f 66 66 20 3e 3d 20 32 36 29 20 7b 5c 6e 20 20 off >= 26) {\n 00035840: 20 20 20 20 20 20 20 20 6f 66 66 20 2d 3d 20 32 off -= 2 00035850: 36 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 6a 2b 6;\n j+ 00035860: 2b 3b 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 +;\n }\n 00035870: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 20 }\n }\n 00035880: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f return this._ 00035890: 73 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e strip();\n };\n 000358a0: 5c 6e 20 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 \n function par 000358b0: 73 65 48 65 78 34 42 69 74 73 20 28 73 74 72 69 seHex4Bits (stri 000358c0: 6e 67 2c 20 69 6e 64 65 78 29 20 7b 5c 6e 20 20 ng, index) {\n 000358d0: 20 20 76 61 72 20 63 20 3d 20 73 74 72 69 6e 67 var c = string 000358e0: 2e 63 68 61 72 43 6f 64 65 41 74 28 69 6e 64 65 .charCodeAt(inde 000358f0: 78 29 3b 5c 6e 20 20 20 20 2f 2f 20 27 30 27 20 x);\n // '0' 00035900: 2d 20 27 39 27 5c 6e 20 20 20 20 69 66 20 28 63 - '9'\n if (c 00035910: 20 3e 3d 20 34 38 20 26 26 20 63 20 3c 3d 20 35 >= 48 && c <= 5 00035920: 37 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 7) {\n retu 00035930: 72 6e 20 63 20 2d 20 34 38 3b 5c 6e 20 20 20 20 rn c - 48;\n 00035940: 2f 2f 20 27 41 27 20 2d 20 27 46 27 5c 6e 20 20 // 'A' - 'F'\n 00035950: 20 20 7d 20 65 6c 73 65 20 69 66 20 28 63 20 3e } else if (c > 00035960: 3d 20 36 35 20 26 26 20 63 20 3c 3d 20 37 30 29 = 65 && c <= 70) 00035970: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 00035980: 20 63 20 2d 20 35 35 3b 5c 6e 20 20 20 20 2f 2f c - 55;\n // 00035990: 20 27 61 27 20 2d 20 27 66 27 5c 6e 20 20 20 20 'a' - 'f'\n 000359a0: 7d 20 65 6c 73 65 20 69 66 20 28 63 20 3e 3d 20 } else if (c >= 000359b0: 39 37 20 26 26 20 63 20 3c 3d 20 31 30 32 29 20 97 && c <= 102) 000359c0: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 {\n return 000359d0: 63 20 2d 20 38 37 3b 5c 6e 20 20 20 20 7d 20 65 c - 87;\n } e 000359e0: 6c 73 65 20 7b 5c 6e 20 20 20 20 20 20 61 73 73 lse {\n ass 000359f0: 65 72 74 28 66 61 6c 73 65 2c 20 27 49 6e 76 61 ert(false, 'Inva 00035a00: 6c 69 64 20 63 68 61 72 61 63 74 65 72 20 69 6e lid character in 00035a10: 20 27 20 2b 20 73 74 72 69 6e 67 29 3b 5c 6e 20 ' + string);\n 00035a20: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 66 }\n }\n\n f 00035a30: 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 48 65 78 unction parseHex 00035a40: 42 79 74 65 20 28 73 74 72 69 6e 67 2c 20 6c 6f Byte (string, lo 00035a50: 77 65 72 42 6f 75 6e 64 2c 20 69 6e 64 65 78 29 werBound, index) 00035a60: 20 7b 5c 6e 20 20 20 20 76 61 72 20 72 20 3d 20 {\n var r = 00035a70: 70 61 72 73 65 48 65 78 34 42 69 74 73 28 73 74 parseHex4Bits(st 00035a80: 72 69 6e 67 2c 20 69 6e 64 65 78 29 3b 5c 6e 20 ring, index);\n 00035a90: 20 20 20 69 66 20 28 69 6e 64 65 78 20 2d 20 31 if (index - 1 00035aa0: 20 3e 3d 20 6c 6f 77 65 72 42 6f 75 6e 64 29 20 >= lowerBound) 00035ab0: 7b 5c 6e 20 20 20 20 20 20 72 20 7c 3d 20 70 61 {\n r |= pa 00035ac0: 72 73 65 48 65 78 34 42 69 74 73 28 73 74 72 69 rseHex4Bits(stri 00035ad0: 6e 67 2c 20 69 6e 64 65 78 20 2d 20 31 29 20 3c ng, index - 1) < 00035ae0: 3c 20 34 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 < 4;\n }\n 00035af0: 20 72 65 74 75 72 6e 20 72 3b 5c 6e 20 20 7d 5c return r;\n }\ 00035b00: 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 n\n BN.prototyp 00035b10: 65 2e 5f 70 61 72 73 65 48 65 78 20 3d 20 66 75 e._parseHex = fu 00035b20: 6e 63 74 69 6f 6e 20 5f 70 61 72 73 65 48 65 78 nction _parseHex 00035b30: 20 28 6e 75 6d 62 65 72 2c 20 73 74 61 72 74 2c (number, start, 00035b40: 20 65 6e 64 69 61 6e 29 20 7b 5c 6e 20 20 20 20 endian) {\n 00035b50: 2f 2f 20 43 72 65 61 74 65 20 70 6f 73 73 69 62 // Create possib 00035b60: 6c 79 20 62 69 67 67 65 72 20 61 72 72 61 79 20 ly bigger array 00035b70: 74 6f 20 65 6e 73 75 72 65 20 74 68 61 74 20 69 to ensure that i 00035b80: 74 20 66 69 74 73 20 74 68 65 20 6e 75 6d 62 65 t fits the numbe 00035b90: 72 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 6e 67 r\n this.leng 00035ba0: 74 68 20 3d 20 4d 61 74 68 2e 63 65 69 6c 28 28 th = Math.ceil(( 00035bb0: 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 20 2d 20 number.length - 00035bc0: 73 74 61 72 74 29 20 2f 20 36 29 3b 5c 6e 20 20 start) / 6);\n 00035bd0: 20 20 74 68 69 73 2e 77 6f 72 64 73 20 3d 20 6e this.words = n 00035be0: 65 77 20 41 72 72 61 79 28 74 68 69 73 2e 6c 65 ew Array(this.le 00035bf0: 6e 67 74 68 29 3b 5c 6e 20 20 20 20 66 6f 72 20 ngth);\n for 00035c00: 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 (var i = 0; i < 00035c10: 74 68 69 73 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b this.length; i++ 00035c20: 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e ) {\n this. 00035c30: 77 6f 72 64 73 5b 69 5d 20 3d 20 30 3b 5c 6e 20 words[i] = 0;\n 00035c40: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 32 }\n\n // 2 00035c50: 34 2d 62 69 74 73 20 63 68 75 6e 6b 73 5c 6e 20 4-bits chunks\n 00035c60: 20 20 20 76 61 72 20 6f 66 66 20 3d 20 30 3b 5c var off = 0;\ 00035c70: 6e 20 20 20 20 76 61 72 20 6a 20 3d 20 30 3b 5c n var j = 0;\ 00035c80: 6e 5c 6e 20 20 20 20 76 61 72 20 77 3b 5c 6e 20 n\n var w;\n 00035c90: 20 20 20 69 66 20 28 65 6e 64 69 61 6e 20 3d 3d if (endian == 00035ca0: 3d 20 27 62 65 27 29 20 7b 5c 6e 20 20 20 20 20 = 'be') {\n 00035cb0: 20 66 6f 72 20 28 69 20 3d 20 6e 75 6d 62 65 72 for (i = number 00035cc0: 2e 6c 65 6e 67 74 68 20 2d 20 31 3b 20 69 20 3e .length - 1; i > 00035cd0: 3d 20 73 74 61 72 74 3b 20 69 20 2d 3d 20 32 29 = start; i -= 2) 00035ce0: 20 7b 5c 6e 20 20 20 20 20 20 20 20 77 20 3d 20 {\n w = 00035cf0: 70 61 72 73 65 48 65 78 42 79 74 65 28 6e 75 6d parseHexByte(num 00035d00: 62 65 72 2c 20 73 74 61 72 74 2c 20 69 29 20 3c ber, start, i) < 00035d10: 3c 20 6f 66 66 3b 5c 6e 20 20 20 20 20 20 20 20 < off;\n 00035d20: 74 68 69 73 2e 77 6f 72 64 73 5b 6a 5d 20 7c 3d this.words[j] |= 00035d30: 20 77 20 26 20 30 78 33 66 66 66 66 66 66 3b 5c w & 0x3ffffff;\ 00035d40: 6e 20 20 20 20 20 20 20 20 69 66 20 28 6f 66 66 n if (off 00035d50: 20 3e 3d 20 31 38 29 20 7b 5c 6e 20 20 20 20 20 >= 18) {\n 00035d60: 20 20 20 20 20 6f 66 66 20 2d 3d 20 31 38 3b 5c off -= 18;\ 00035d70: 6e 20 20 20 20 20 20 20 20 20 20 6a 20 2b 3d 20 n j += 00035d80: 31 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 74 68 1;\n th 00035d90: 69 73 2e 77 6f 72 64 73 5b 6a 5d 20 7c 3d 20 77 is.words[j] |= w 00035da0: 20 3e 3e 3e 20 32 36 3b 5c 6e 20 20 20 20 20 20 >>> 26;\n 00035db0: 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 } else {\n 00035dc0: 20 20 20 20 20 20 6f 66 66 20 2b 3d 20 38 3b 5c off += 8;\ 00035dd0: 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 n }\n 00035de0: 20 20 7d 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 }\n } else 00035df0: 7b 5c 6e 20 20 20 20 20 20 76 61 72 20 70 61 72 {\n var par 00035e00: 73 65 4c 65 6e 67 74 68 20 3d 20 6e 75 6d 62 65 seLength = numbe 00035e10: 72 2e 6c 65 6e 67 74 68 20 2d 20 73 74 61 72 74 r.length - start 00035e20: 3b 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 69 20 ;\n for (i 00035e30: 3d 20 70 61 72 73 65 4c 65 6e 67 74 68 20 25 20 = parseLength % 00035e40: 32 20 3d 3d 3d 20 30 20 3f 20 73 74 61 72 74 20 2 === 0 ? start 00035e50: 2b 20 31 20 3a 20 73 74 61 72 74 3b 20 69 20 3c + 1 : start; i < 00035e60: 20 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 3b 20 number.length; 00035e70: 69 20 2b 3d 20 32 29 20 7b 5c 6e 20 20 20 20 20 i += 2) {\n 00035e80: 20 20 20 77 20 3d 20 70 61 72 73 65 48 65 78 42 w = parseHexB 00035e90: 79 74 65 28 6e 75 6d 62 65 72 2c 20 73 74 61 72 yte(number, star 00035ea0: 74 2c 20 69 29 20 3c 3c 20 6f 66 66 3b 5c 6e 20 t, i) << off;\n 00035eb0: 20 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 this.word 00035ec0: 73 5b 6a 5d 20 7c 3d 20 77 20 26 20 30 78 33 66 s[j] |= w & 0x3f 00035ed0: 66 66 66 66 66 3b 5c 6e 20 20 20 20 20 20 20 20 fffff;\n 00035ee0: 69 66 20 28 6f 66 66 20 3e 3d 20 31 38 29 20 7b if (off >= 18) { 00035ef0: 5c 6e 20 20 20 20 20 20 20 20 20 20 6f 66 66 20 \n off 00035f00: 2d 3d 20 31 38 3b 5c 6e 20 20 20 20 20 20 20 20 -= 18;\n 00035f10: 20 20 6a 20 2b 3d 20 31 3b 5c 6e 20 20 20 20 20 j += 1;\n 00035f20: 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b this.words[ 00035f30: 6a 5d 20 7c 3d 20 77 20 3e 3e 3e 20 32 36 3b 5c j] |= w >>> 26;\ 00035f40: 6e 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 n } else 00035f50: 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6f 66 66 {\n off 00035f60: 20 2b 3d 20 38 3b 5c 6e 20 20 20 20 20 20 20 20 += 8;\n 00035f70: 7d 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 }\n }\n 00035f80: 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 }\n\n this._s 00035f90: 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c trip();\n };\n\ 00035fa0: 6e 20 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 n function pars 00035fb0: 65 42 61 73 65 20 28 73 74 72 2c 20 73 74 61 72 eBase (str, star 00035fc0: 74 2c 20 65 6e 64 2c 20 6d 75 6c 29 20 7b 5c 6e t, end, mul) {\n 00035fd0: 20 20 20 20 76 61 72 20 72 20 3d 20 30 3b 5c 6e var r = 0;\n 00035fe0: 20 20 20 20 76 61 72 20 62 20 3d 20 30 3b 5c 6e var b = 0;\n 00035ff0: 20 20 20 20 76 61 72 20 6c 65 6e 20 3d 20 4d 61 var len = Ma 00036000: 74 68 2e 6d 69 6e 28 73 74 72 2e 6c 65 6e 67 74 th.min(str.lengt 00036010: 68 2c 20 65 6e 64 29 3b 5c 6e 20 20 20 20 66 6f h, end);\n fo 00036020: 72 20 28 76 61 72 20 69 20 3d 20 73 74 61 72 74 r (var i = start 00036030: 3b 20 69 20 3c 20 6c 65 6e 3b 20 69 2b 2b 29 20 ; i < len; i++) 00036040: 7b 5c 6e 20 20 20 20 20 20 76 61 72 20 63 20 3d {\n var c = 00036050: 20 73 74 72 2e 63 68 61 72 43 6f 64 65 41 74 28 str.charCodeAt( 00036060: 69 29 20 2d 20 34 38 3b 5c 6e 5c 6e 20 20 20 20 i) - 48;\n\n 00036070: 20 20 72 20 2a 3d 20 6d 75 6c 3b 5c 6e 5c 6e 20 r *= mul;\n\n 00036080: 20 20 20 20 20 2f 2f 20 27 61 27 5c 6e 20 20 20 // 'a'\n 00036090: 20 20 20 69 66 20 28 63 20 3e 3d 20 34 39 29 20 if (c >= 49) 000360a0: 7b 5c 6e 20 20 20 20 20 20 20 20 62 20 3d 20 63 {\n b = c 000360b0: 20 2d 20 34 39 20 2b 20 30 78 61 3b 5c 6e 5c 6e - 49 + 0xa;\n\n 000360c0: 20 20 20 20 20 20 2f 2f 20 27 41 27 5c 6e 20 20 // 'A'\n 000360d0: 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 63 } else if (c 000360e0: 20 3e 3d 20 31 37 29 20 7b 5c 6e 20 20 20 20 20 >= 17) {\n 000360f0: 20 20 20 62 20 3d 20 63 20 2d 20 31 37 20 2b 20 b = c - 17 + 00036100: 30 78 61 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f 2f 0xa;\n\n // 00036110: 20 27 30 27 20 2d 20 27 39 27 5c 6e 20 20 20 20 '0' - '9'\n 00036120: 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 } else {\n 00036130: 20 20 20 20 62 20 3d 20 63 3b 5c 6e 20 20 20 20 b = c;\n 00036140: 20 20 7d 5c 6e 20 20 20 20 20 20 61 73 73 65 72 }\n asser 00036150: 74 28 63 20 3e 3d 20 30 20 26 26 20 62 20 3c 20 t(c >= 0 && b < 00036160: 6d 75 6c 2c 20 27 49 6e 76 61 6c 69 64 20 63 68 mul, 'Invalid ch 00036170: 61 72 61 63 74 65 72 27 29 3b 5c 6e 20 20 20 20 aracter');\n 00036180: 20 20 72 20 2b 3d 20 62 3b 5c 6e 20 20 20 20 7d r += b;\n } 00036190: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 72 3b 5c \n return r;\ 000361a0: 6e 20 20 7d 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f n }\n\n BN.pro 000361b0: 74 6f 74 79 70 65 2e 5f 70 61 72 73 65 42 61 73 totype._parseBas 000361c0: 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 5f 70 61 e = function _pa 000361d0: 72 73 65 42 61 73 65 20 28 6e 75 6d 62 65 72 2c rseBase (number, 000361e0: 20 62 61 73 65 2c 20 73 74 61 72 74 29 20 7b 5c base, start) {\ 000361f0: 6e 20 20 20 20 2f 2f 20 49 6e 69 74 69 61 6c 69 n // Initiali 00036200: 7a 65 20 61 73 20 7a 65 72 6f 5c 6e 20 20 20 20 ze as zero\n 00036210: 74 68 69 73 2e 77 6f 72 64 73 20 3d 20 5b 30 5d this.words = [0] 00036220: 3b 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 6e 67 ;\n this.leng 00036230: 74 68 20 3d 20 31 3b 5c 6e 5c 6e 20 20 20 20 2f th = 1;\n\n / 00036240: 2f 20 46 69 6e 64 20 6c 65 6e 67 74 68 20 6f 66 / Find length of 00036250: 20 6c 69 6d 62 20 69 6e 20 62 61 73 65 5c 6e 20 limb in base\n 00036260: 20 20 20 66 6f 72 20 28 76 61 72 20 6c 69 6d 62 for (var limb 00036270: 4c 65 6e 20 3d 20 30 2c 20 6c 69 6d 62 50 6f 77 Len = 0, limbPow 00036280: 20 3d 20 31 3b 20 6c 69 6d 62 50 6f 77 20 3c 3d = 1; limbPow <= 00036290: 20 30 78 33 66 66 66 66 66 66 3b 20 6c 69 6d 62 0x3ffffff; limb 000362a0: 50 6f 77 20 2a 3d 20 62 61 73 65 29 20 7b 5c 6e Pow *= base) {\n 000362b0: 20 20 20 20 20 20 6c 69 6d 62 4c 65 6e 2b 2b 3b limbLen++; 000362c0: 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 6c 69 6d \n }\n lim 000362d0: 62 4c 65 6e 2d 2d 3b 5c 6e 20 20 20 20 6c 69 6d bLen--;\n lim 000362e0: 62 50 6f 77 20 3d 20 28 6c 69 6d 62 50 6f 77 20 bPow = (limbPow 000362f0: 2f 20 62 61 73 65 29 20 7c 20 30 3b 5c 6e 5c 6e / base) | 0;\n\n 00036300: 20 20 20 20 76 61 72 20 74 6f 74 61 6c 20 3d 20 var total = 00036310: 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 20 2d 20 number.length - 00036320: 73 74 61 72 74 3b 5c 6e 20 20 20 20 76 61 72 20 start;\n var 00036330: 6d 6f 64 20 3d 20 74 6f 74 61 6c 20 25 20 6c 69 mod = total % li 00036340: 6d 62 4c 65 6e 3b 5c 6e 20 20 20 20 76 61 72 20 mbLen;\n var 00036350: 65 6e 64 20 3d 20 4d 61 74 68 2e 6d 69 6e 28 74 end = Math.min(t 00036360: 6f 74 61 6c 2c 20 74 6f 74 61 6c 20 2d 20 6d 6f otal, total - mo 00036370: 64 29 20 2b 20 73 74 61 72 74 3b 5c 6e 5c 6e 20 d) + start;\n\n 00036380: 20 20 20 76 61 72 20 77 6f 72 64 20 3d 20 30 3b var word = 0; 00036390: 5c 6e 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 \n for (var i 000363a0: 20 3d 20 73 74 61 72 74 3b 20 69 20 3c 20 65 6e = start; i < en 000363b0: 64 3b 20 69 20 2b 3d 20 6c 69 6d 62 4c 65 6e 29 d; i += limbLen) 000363c0: 20 7b 5c 6e 20 20 20 20 20 20 77 6f 72 64 20 3d {\n word = 000363d0: 20 70 61 72 73 65 42 61 73 65 28 6e 75 6d 62 65 parseBase(numbe 000363e0: 72 2c 20 69 2c 20 69 20 2b 20 6c 69 6d 62 4c 65 r, i, i + limbLe 000363f0: 6e 2c 20 62 61 73 65 29 3b 5c 6e 5c 6e 20 20 20 n, base);\n\n 00036400: 20 20 20 74 68 69 73 2e 69 6d 75 6c 6e 28 6c 69 this.imuln(li 00036410: 6d 62 50 6f 77 29 3b 5c 6e 20 20 20 20 20 20 69 mbPow);\n i 00036420: 66 20 28 74 68 69 73 2e 77 6f 72 64 73 5b 30 5d f (this.words[0] 00036430: 20 2b 20 77 6f 72 64 20 3c 20 30 78 34 30 30 30 + word < 0x4000 00036440: 30 30 30 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 000) {\n 00036450: 74 68 69 73 2e 77 6f 72 64 73 5b 30 5d 20 2b 3d this.words[0] += 00036460: 20 77 6f 72 64 3b 5c 6e 20 20 20 20 20 20 7d 20 word;\n } 00036470: 65 6c 73 65 20 7b 5c 6e 20 20 20 20 20 20 20 20 else {\n 00036480: 74 68 69 73 2e 5f 69 61 64 64 6e 28 77 6f 72 64 this._iaddn(word 00036490: 29 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 );\n }\n 000364a0: 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 6d 6f }\n\n if (mo 000364b0: 64 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 d !== 0) {\n 000364c0: 20 20 76 61 72 20 70 6f 77 20 3d 20 31 3b 5c 6e var pow = 1;\n 000364d0: 20 20 20 20 20 20 77 6f 72 64 20 3d 20 70 61 72 word = par 000364e0: 73 65 42 61 73 65 28 6e 75 6d 62 65 72 2c 20 69 seBase(number, i 000364f0: 2c 20 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 2c , number.length, 00036500: 20 62 61 73 65 29 3b 5c 6e 5c 6e 20 20 20 20 20 base);\n\n 00036510: 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c for (i = 0; i < 00036520: 20 6d 6f 64 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 mod; i++) {\n 00036530: 20 20 20 20 20 20 70 6f 77 20 2a 3d 20 62 61 73 pow *= bas 00036540: 65 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 e;\n }\n\n 00036550: 20 20 20 20 20 74 68 69 73 2e 69 6d 75 6c 6e 28 this.imuln( 00036560: 70 6f 77 29 3b 5c 6e 20 20 20 20 20 20 69 66 20 pow);\n if 00036570: 28 74 68 69 73 2e 77 6f 72 64 73 5b 30 5d 20 2b (this.words[0] + 00036580: 20 77 6f 72 64 20 3c 20 30 78 34 30 30 30 30 30 word < 0x400000 00036590: 30 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 74 68 0) {\n th 000365a0: 69 73 2e 77 6f 72 64 73 5b 30 5d 20 2b 3d 20 77 is.words[0] += w 000365b0: 6f 72 64 3b 5c 6e 20 20 20 20 20 20 7d 20 65 6c ord;\n } el 000365c0: 73 65 20 7b 5c 6e 20 20 20 20 20 20 20 20 74 68 se {\n th 000365d0: 69 73 2e 5f 69 61 64 64 6e 28 77 6f 72 64 29 3b is._iaddn(word); 000365e0: 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d \n }\n } 000365f0: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 74 \n\n this._st 00036600: 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e rip();\n };\n\n 00036610: 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 63 BN.prototype.c 00036620: 6f 70 79 20 3d 20 66 75 6e 63 74 69 6f 6e 20 63 opy = function c 00036630: 6f 70 79 20 28 64 65 73 74 29 20 7b 5c 6e 20 20 opy (dest) {\n 00036640: 20 20 64 65 73 74 2e 77 6f 72 64 73 20 3d 20 6e dest.words = n 00036650: 65 77 20 41 72 72 61 79 28 74 68 69 73 2e 6c 65 ew Array(this.le 00036660: 6e 67 74 68 29 3b 5c 6e 20 20 20 20 66 6f 72 20 ngth);\n for 00036670: 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 (var i = 0; i < 00036680: 74 68 69 73 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b this.length; i++ 00036690: 29 20 7b 5c 6e 20 20 20 20 20 20 64 65 73 74 2e ) {\n dest. 000366a0: 77 6f 72 64 73 5b 69 5d 20 3d 20 74 68 69 73 2e words[i] = this. 000366b0: 77 6f 72 64 73 5b 69 5d 3b 5c 6e 20 20 20 20 7d words[i];\n } 000366c0: 5c 6e 20 20 20 20 64 65 73 74 2e 6c 65 6e 67 74 \n dest.lengt 000366d0: 68 20 3d 20 74 68 69 73 2e 6c 65 6e 67 74 68 3b h = this.length; 000366e0: 5c 6e 20 20 20 20 64 65 73 74 2e 6e 65 67 61 74 \n dest.negat 000366f0: 69 76 65 20 3d 20 74 68 69 73 2e 6e 65 67 61 74 ive = this.negat 00036700: 69 76 65 3b 5c 6e 20 20 20 20 64 65 73 74 2e 72 ive;\n dest.r 00036710: 65 64 20 3d 20 74 68 69 73 2e 72 65 64 3b 5c 6e ed = this.red;\n 00036720: 20 20 7d 3b 5c 6e 5c 6e 20 20 66 75 6e 63 74 69 };\n\n functi 00036730: 6f 6e 20 6d 6f 76 65 20 28 64 65 73 74 2c 20 73 on move (dest, s 00036740: 72 63 29 20 7b 5c 6e 20 20 20 20 64 65 73 74 2e rc) {\n dest. 00036750: 77 6f 72 64 73 20 3d 20 73 72 63 2e 77 6f 72 64 words = src.word 00036760: 73 3b 5c 6e 20 20 20 20 64 65 73 74 2e 6c 65 6e s;\n dest.len 00036770: 67 74 68 20 3d 20 73 72 63 2e 6c 65 6e 67 74 68 gth = src.length 00036780: 3b 5c 6e 20 20 20 20 64 65 73 74 2e 6e 65 67 61 ;\n dest.nega 00036790: 74 69 76 65 20 3d 20 73 72 63 2e 6e 65 67 61 74 tive = src.negat 000367a0: 69 76 65 3b 5c 6e 20 20 20 20 64 65 73 74 2e 72 ive;\n dest.r 000367b0: 65 64 20 3d 20 73 72 63 2e 72 65 64 3b 5c 6e 20 ed = src.red;\n 000367c0: 20 7d 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f }\n\n BN.proto 000367d0: 74 79 70 65 2e 5f 6d 6f 76 65 20 3d 20 66 75 6e type._move = fun 000367e0: 63 74 69 6f 6e 20 5f 6d 6f 76 65 20 28 64 65 73 ction _move (des 000367f0: 74 29 20 7b 5c 6e 20 20 20 20 6d 6f 76 65 28 64 t) {\n move(d 00036800: 65 73 74 2c 20 74 68 69 73 29 3b 5c 6e 20 20 7d est, this);\n } 00036810: 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 ;\n\n BN.protot 00036820: 79 70 65 2e 63 6c 6f 6e 65 20 3d 20 66 75 6e 63 ype.clone = func 00036830: 74 69 6f 6e 20 63 6c 6f 6e 65 20 28 29 20 7b 5c tion clone () {\ 00036840: 6e 20 20 20 20 76 61 72 20 72 20 3d 20 6e 65 77 n var r = new 00036850: 20 42 4e 28 6e 75 6c 6c 29 3b 5c 6e 20 20 20 20 BN(null);\n 00036860: 74 68 69 73 2e 63 6f 70 79 28 72 29 3b 5c 6e 20 this.copy(r);\n 00036870: 20 20 20 72 65 74 75 72 6e 20 72 3b 5c 6e 20 20 return r;\n 00036880: 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f };\n\n BN.proto 00036890: 74 79 70 65 2e 5f 65 78 70 61 6e 64 20 3d 20 66 type._expand = f 000368a0: 75 6e 63 74 69 6f 6e 20 5f 65 78 70 61 6e 64 20 unction _expand 000368b0: 28 73 69 7a 65 29 20 7b 5c 6e 20 20 20 20 77 68 (size) {\n wh 000368c0: 69 6c 65 20 28 74 68 69 73 2e 6c 65 6e 67 74 68 ile (this.length 000368d0: 20 3c 20 73 69 7a 65 29 20 7b 5c 6e 20 20 20 20 < size) {\n 000368e0: 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 74 68 69 this.words[thi 000368f0: 73 2e 6c 65 6e 67 74 68 2b 2b 5d 20 3d 20 30 3b s.length++] = 0; 00036900: 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 72 65 74 \n }\n ret 00036910: 75 72 6e 20 74 68 69 73 3b 5c 6e 20 20 7d 3b 5c urn this;\n };\ 00036920: 6e 5c 6e 20 20 2f 2f 20 52 65 6d 6f 76 65 20 6c n\n // Remove l 00036930: 65 61 64 69 6e 67 20 60 30 60 20 66 72 6f 6d 20 eading `0` from 00036940: 60 74 68 69 73 60 5c 6e 20 20 42 4e 2e 70 72 6f `this`\n BN.pro 00036950: 74 6f 74 79 70 65 2e 5f 73 74 72 69 70 20 3d 20 totype._strip = 00036960: 66 75 6e 63 74 69 6f 6e 20 73 74 72 69 70 20 28 function strip ( 00036970: 29 20 7b 5c 6e 20 20 20 20 77 68 69 6c 65 20 28 ) {\n while ( 00036980: 74 68 69 73 2e 6c 65 6e 67 74 68 20 3e 20 31 20 this.length > 1 00036990: 26 26 20 74 68 69 73 2e 77 6f 72 64 73 5b 74 68 && this.words[th 000369a0: 69 73 2e 6c 65 6e 67 74 68 20 2d 20 31 5d 20 3d is.length - 1] = 000369b0: 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 74 == 0) {\n t 000369c0: 68 69 73 2e 6c 65 6e 67 74 68 2d 2d 3b 5c 6e 20 his.length--;\n 000369d0: 20 20 20 7d 5c 6e 20 20 20 20 72 65 74 75 72 6e }\n return 000369e0: 20 74 68 69 73 2e 5f 6e 6f 72 6d 53 69 67 6e 28 this._normSign( 000369f0: 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e );\n };\n\n BN 00036a00: 2e 70 72 6f 74 6f 74 79 70 65 2e 5f 6e 6f 72 6d .prototype._norm 00036a10: 53 69 67 6e 20 3d 20 66 75 6e 63 74 69 6f 6e 20 Sign = function 00036a20: 5f 6e 6f 72 6d 53 69 67 6e 20 28 29 20 7b 5c 6e _normSign () {\n 00036a30: 20 20 20 20 2f 2f 20 2d 30 20 3d 20 30 5c 6e 20 // -0 = 0\n 00036a40: 20 20 20 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 if (this.leng 00036a50: 74 68 20 3d 3d 3d 20 31 20 26 26 20 74 68 69 73 th === 1 && this 00036a60: 2e 77 6f 72 64 73 5b 30 5d 20 3d 3d 3d 20 30 29 .words[0] === 0) 00036a70: 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 6e {\n this.n 00036a80: 65 67 61 74 69 76 65 20 3d 20 30 3b 5c 6e 20 20 egative = 0;\n 00036a90: 20 20 7d 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 }\n return 00036aa0: 74 68 69 73 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 this;\n };\n\n 00036ab0: 20 2f 2f 20 43 68 65 63 6b 20 53 79 6d 62 6f 6c // Check Symbol 00036ac0: 2e 66 6f 72 20 62 65 63 61 75 73 65 20 6e 6f 74 .for because not 00036ad0: 20 65 76 65 72 79 77 68 65 72 65 20 77 68 65 72 everywhere wher 00036ae0: 65 20 53 79 6d 62 6f 6c 20 64 65 66 69 6e 65 64 e Symbol defined 00036af0: 5c 6e 20 20 2f 2f 20 53 65 65 20 68 74 74 70 73 \n // See https 00036b00: 3a 2f 2f 64 65 76 65 6c 6f 70 65 72 2e 6d 6f 7a ://developer.moz 00036b10: 69 6c 6c 61 2e 6f 72 67 2f 65 6e 2d 55 53 2f 64 illa.org/en-US/d 00036b20: 6f 63 73 2f 57 65 62 2f 4a 61 76 61 53 63 72 69 ocs/Web/JavaScri 00036b30: 70 74 2f 52 65 66 65 72 65 6e 63 65 2f 47 6c 6f pt/Reference/Glo 00036b40: 62 61 6c 5f 4f 62 6a 65 63 74 73 2f 53 79 6d 62 bal_Objects/Symb 00036b50: 6f 6c 23 42 72 6f 77 73 65 72 5f 63 6f 6d 70 61 ol#Browser_compa 00036b60: 74 69 62 69 6c 69 74 79 5c 6e 20 20 69 66 20 28 tibility\n if ( 00036b70: 74 79 70 65 6f 66 20 53 79 6d 62 6f 6c 20 21 3d typeof Symbol != 00036b80: 3d 20 27 75 6e 64 65 66 69 6e 65 64 27 20 26 26 = 'undefined' && 00036b90: 20 74 79 70 65 6f 66 20 53 79 6d 62 6f 6c 2e 66 typeof Symbol.f 00036ba0: 6f 72 20 3d 3d 3d 20 27 66 75 6e 63 74 69 6f 6e or === 'function 00036bb0: 27 29 20 7b 5c 6e 20 20 20 20 74 72 79 20 7b 5c ') {\n try {\ 00036bc0: 6e 20 20 20 20 20 20 42 4e 2e 70 72 6f 74 6f 74 n BN.protot 00036bd0: 79 70 65 5b 53 79 6d 62 6f 6c 2e 66 6f 72 28 27 ype[Symbol.for(' 00036be0: 6e 6f 64 65 6a 73 2e 75 74 69 6c 2e 69 6e 73 70 nodejs.util.insp 00036bf0: 65 63 74 2e 63 75 73 74 6f 6d 27 29 5d 20 3d 20 ect.custom')] = 00036c00: 69 6e 73 70 65 63 74 3b 5c 6e 20 20 20 20 7d 20 inspect;\n } 00036c10: 63 61 74 63 68 20 28 65 29 20 7b 5c 6e 20 20 20 catch (e) {\n 00036c20: 20 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e BN.prototype. 00036c30: 69 6e 73 70 65 63 74 20 3d 20 69 6e 73 70 65 63 inspect = inspec 00036c40: 74 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 20 65 t;\n }\n } e 00036c50: 6c 73 65 20 7b 5c 6e 20 20 20 20 42 4e 2e 70 72 lse {\n BN.pr 00036c60: 6f 74 6f 74 79 70 65 2e 69 6e 73 70 65 63 74 20 ototype.inspect 00036c70: 3d 20 69 6e 73 70 65 63 74 3b 5c 6e 20 20 7d 5c = inspect;\n }\ 00036c80: 6e 5c 6e 20 20 66 75 6e 63 74 69 6f 6e 20 69 6e n\n function in 00036c90: 73 70 65 63 74 20 28 29 20 7b 5c 6e 20 20 20 20 spect () {\n 00036ca0: 72 65 74 75 72 6e 20 28 74 68 69 73 2e 72 65 64 return (this.red 00036cb0: 20 3f 20 27 3c 42 4e 2d 52 3a 20 27 20 3a 20 27 ? '<BN-R: ' : ' 00036cc0: 3c 42 4e 3a 20 27 29 20 2b 20 74 68 69 73 2e 74 <BN: ') + this.t 00036cd0: 6f 53 74 72 69 6e 67 28 31 36 29 20 2b 20 27 3e oString(16) + '> 00036ce0: 27 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2a 5c ';\n }\n\n /*\ 00036cf0: 6e 5c 6e 20 20 76 61 72 20 7a 65 72 6f 73 20 3d n\n var zeros = 00036d00: 20 5b 5d 3b 5c 6e 20 20 76 61 72 20 67 72 6f 75 [];\n var grou 00036d10: 70 53 69 7a 65 73 20 3d 20 5b 5d 3b 5c 6e 20 20 pSizes = [];\n 00036d20: 76 61 72 20 67 72 6f 75 70 42 61 73 65 73 20 3d var groupBases = 00036d30: 20 5b 5d 3b 5c 6e 5c 6e 20 20 76 61 72 20 73 20 [];\n\n var s 00036d40: 3d 20 27 27 3b 5c 6e 20 20 76 61 72 20 69 20 3d = '';\n var i = 00036d50: 20 2d 31 3b 5c 6e 20 20 77 68 69 6c 65 20 28 2b -1;\n while (+ 00036d60: 2b 69 20 3c 20 42 4e 2e 77 6f 72 64 53 69 7a 65 +i < BN.wordSize 00036d70: 29 20 7b 5c 6e 20 20 20 20 7a 65 72 6f 73 5b 69 ) {\n zeros[i 00036d80: 5d 20 3d 20 73 3b 5c 6e 20 20 20 20 73 20 2b 3d ] = s;\n s += 00036d90: 20 27 30 27 3b 5c 6e 20 20 7d 5c 6e 20 20 67 72 '0';\n }\n gr 00036da0: 6f 75 70 53 69 7a 65 73 5b 30 5d 20 3d 20 30 3b oupSizes[0] = 0; 00036db0: 5c 6e 20 20 67 72 6f 75 70 53 69 7a 65 73 5b 31 \n groupSizes[1 00036dc0: 5d 20 3d 20 30 3b 5c 6e 20 20 67 72 6f 75 70 42 ] = 0;\n groupB 00036dd0: 61 73 65 73 5b 30 5d 20 3d 20 30 3b 5c 6e 20 20 ases[0] = 0;\n 00036de0: 67 72 6f 75 70 42 61 73 65 73 5b 31 5d 20 3d 20 groupBases[1] = 00036df0: 30 3b 5c 6e 20 20 76 61 72 20 62 61 73 65 20 3d 0;\n var base = 00036e00: 20 32 20 2d 20 31 3b 5c 6e 20 20 77 68 69 6c 65 2 - 1;\n while 00036e10: 20 28 2b 2b 62 61 73 65 20 3c 20 33 36 20 2b 20 (++base < 36 + 00036e20: 31 29 20 7b 5c 6e 20 20 20 20 76 61 72 20 67 72 1) {\n var gr 00036e30: 6f 75 70 53 69 7a 65 20 3d 20 30 3b 5c 6e 20 20 oupSize = 0;\n 00036e40: 20 20 76 61 72 20 67 72 6f 75 70 42 61 73 65 20 var groupBase 00036e50: 3d 20 31 3b 5c 6e 20 20 20 20 77 68 69 6c 65 20 = 1;\n while 00036e60: 28 67 72 6f 75 70 42 61 73 65 20 3c 20 28 31 20 (groupBase < (1 00036e70: 3c 3c 20 42 4e 2e 77 6f 72 64 53 69 7a 65 29 20 << BN.wordSize) 00036e80: 2f 20 62 61 73 65 29 20 7b 5c 6e 20 20 20 20 20 / base) {\n 00036e90: 20 67 72 6f 75 70 42 61 73 65 20 2a 3d 20 62 61 groupBase *= ba 00036ea0: 73 65 3b 5c 6e 20 20 20 20 20 20 67 72 6f 75 70 se;\n group 00036eb0: 53 69 7a 65 20 2b 3d 20 31 3b 5c 6e 20 20 20 20 Size += 1;\n 00036ec0: 7d 5c 6e 20 20 20 20 67 72 6f 75 70 53 69 7a 65 }\n groupSize 00036ed0: 73 5b 62 61 73 65 5d 20 3d 20 67 72 6f 75 70 53 s[base] = groupS 00036ee0: 69 7a 65 3b 5c 6e 20 20 20 20 67 72 6f 75 70 42 ize;\n groupB 00036ef0: 61 73 65 73 5b 62 61 73 65 5d 20 3d 20 67 72 6f ases[base] = gro 00036f00: 75 70 42 61 73 65 3b 5c 6e 20 20 7d 5c 6e 5c 6e upBase;\n }\n\n 00036f10: 20 20 2a 2f 5c 6e 5c 6e 20 20 76 61 72 20 7a 65 */\n\n var ze 00036f20: 72 6f 73 20 3d 20 5b 5c 6e 20 20 20 20 27 27 2c ros = [\n '', 00036f30: 5c 6e 20 20 20 20 27 30 27 2c 5c 6e 20 20 20 20 \n '0',\n 00036f40: 27 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 27 '00',\n '000' 00036f50: 2c 5c 6e 20 20 20 20 27 30 30 30 30 27 2c 5c 6e ,\n '0000',\n 00036f60: 20 20 20 20 27 30 30 30 30 30 27 2c 5c 6e 20 20 '00000',\n 00036f70: 20 20 27 30 30 30 30 30 30 27 2c 5c 6e 20 20 20 '000000',\n 00036f80: 20 27 30 30 30 30 30 30 30 27 2c 5c 6e 20 20 20 '0000000',\n 00036f90: 20 27 30 30 30 30 30 30 30 30 27 2c 5c 6e 20 20 '00000000',\n 00036fa0: 20 20 27 30 30 30 30 30 30 30 30 30 27 2c 5c 6e '000000000',\n 00036fb0: 20 20 20 20 27 30 30 30 30 30 30 30 30 30 30 27 '0000000000' 00036fc0: 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 30 30 30 ,\n '00000000 00036fd0: 30 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 000',\n '0000 00036fe0: 30 30 30 30 30 30 30 30 27 2c 5c 6e 20 20 20 20 00000000',\n 00036ff0: 27 30 30 30 30 30 30 30 30 30 30 30 30 30 27 2c '0000000000000', 00037000: 5c 6e 20 20 20 20 27 30 30 30 30 30 30 30 30 30 \n '000000000 00037010: 30 30 30 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 00000',\n '00 00037020: 30 30 30 30 30 30 30 30 30 30 30 30 30 27 2c 5c 0000000000000',\ 00037030: 6e 20 20 20 20 27 30 30 30 30 30 30 30 30 30 30 n '0000000000 00037040: 30 30 30 30 30 30 27 2c 5c 6e 20 20 20 20 27 30 000000',\n '0 00037050: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 00037060: 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 30 30 ',\n '0000000 00037070: 30 30 30 30 30 30 30 30 30 30 30 27 2c 5c 6e 20 00000000000',\n 00037080: 20 20 20 27 30 30 30 30 30 30 30 30 30 30 30 30 '000000000000 00037090: 30 30 30 30 30 30 30 27 2c 5c 6e 20 20 20 20 27 0000000',\n ' 000370a0: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 000370b0: 30 30 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 0000',\n '000 000370c0: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 000370d0: 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 00',\n '00000 000370e0: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 000370f0: 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 30 0',\n '000000 00037100: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 00037110: 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 30 0',\n '000000 00037120: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 00037130: 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 00',\n '00000 00037140: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 00037150: 30 30 30 30 27 5c 6e 20 20 5d 3b 5c 6e 5c 6e 20 0000'\n ];\n\n 00037160: 20 76 61 72 20 67 72 6f 75 70 53 69 7a 65 73 20 var groupSizes 00037170: 3d 20 5b 5c 6e 20 20 20 20 30 2c 20 30 2c 5c 6e = [\n 0, 0,\n 00037180: 20 20 20 20 32 35 2c 20 31 36 2c 20 31 32 2c 20 25, 16, 12, 00037190: 31 31 2c 20 31 30 2c 20 39 2c 20 38 2c 5c 6e 20 11, 10, 9, 8,\n 000371a0: 20 20 20 38 2c 20 37 2c 20 37 2c 20 37 2c 20 37 8, 7, 7, 7, 7 000371b0: 2c 20 36 2c 20 36 2c 5c 6e 20 20 20 20 36 2c 20 , 6, 6,\n 6, 000371c0: 36 2c 20 36 2c 20 36 2c 20 36 2c 20 35 2c 20 35 6, 6, 6, 6, 5, 5 000371d0: 2c 5c 6e 20 20 20 20 35 2c 20 35 2c 20 35 2c 20 ,\n 5, 5, 5, 000371e0: 35 2c 20 35 2c 20 35 2c 20 35 2c 5c 6e 20 20 20 5, 5, 5, 5,\n 000371f0: 20 35 2c 20 35 2c 20 35 2c 20 35 2c 20 35 2c 20 5, 5, 5, 5, 5, 00037200: 35 2c 20 35 5c 6e 20 20 5d 3b 5c 6e 5c 6e 20 20 5, 5\n ];\n\n 00037210: 76 61 72 20 67 72 6f 75 70 42 61 73 65 73 20 3d var groupBases = 00037220: 20 5b 5c 6e 20 20 20 20 30 2c 20 30 2c 5c 6e 20 [\n 0, 0,\n 00037230: 20 20 20 33 33 35 35 34 34 33 32 2c 20 34 33 30 33554432, 430 00037240: 34 36 37 32 31 2c 20 31 36 37 37 37 32 31 36 2c 46721, 16777216, 00037250: 20 34 38 38 32 38 31 32 35 2c 20 36 30 34 36 36 48828125, 60466 00037260: 31 37 36 2c 20 34 30 33 35 33 36 30 37 2c 20 31 176, 40353607, 1 00037270: 36 37 37 37 32 31 36 2c 5c 6e 20 20 20 20 34 33 6777216,\n 43 00037280: 30 34 36 37 32 31 2c 20 31 30 30 30 30 30 30 30 046721, 10000000 00037290: 2c 20 31 39 34 38 37 31 37 31 2c 20 33 35 38 33 , 19487171, 3583 000372a0: 31 38 30 38 2c 20 36 32 37 34 38 35 31 37 2c 20 1808, 62748517, 000372b0: 37 35 32 39 35 33 36 2c 20 31 31 33 39 30 36 32 7529536, 1139062 000372c0: 35 2c 5c 6e 20 20 20 20 31 36 37 37 37 32 31 36 5,\n 16777216 000372d0: 2c 20 32 34 31 33 37 35 36 39 2c 20 33 34 30 31 , 24137569, 3401 000372e0: 32 32 32 34 2c 20 34 37 30 34 35 38 38 31 2c 20 2224, 47045881, 000372f0: 36 34 30 30 30 30 30 30 2c 20 34 30 38 34 31 30 64000000, 408410 00037300: 31 2c 20 35 31 35 33 36 33 32 2c 5c 6e 20 20 20 1, 5153632,\n 00037310: 20 36 34 33 36 33 34 33 2c 20 37 39 36 32 36 32 6436343, 796262 00037320: 34 2c 20 39 37 36 35 36 32 35 2c 20 31 31 38 38 4, 9765625, 1188 00037330: 31 33 37 36 2c 20 31 34 33 34 38 39 30 37 2c 20 1376, 14348907, 00037340: 31 37 32 31 30 33 36 38 2c 20 32 30 35 31 31 31 17210368, 205111 00037350: 34 39 2c 5c 6e 20 20 20 20 32 34 33 30 30 30 30 49,\n 2430000 00037360: 30 2c 20 32 38 36 32 39 31 35 31 2c 20 33 33 35 0, 28629151, 335 00037370: 35 34 34 33 32 2c 20 33 39 31 33 35 33 39 33 2c 54432, 39135393, 00037380: 20 34 35 34 33 35 34 32 34 2c 20 35 32 35 32 31 45435424, 52521 00037390: 38 37 35 2c 20 36 30 34 36 36 31 37 36 5c 6e 20 875, 60466176\n 000373a0: 20 5d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 ];\n\n BN.prot 000373b0: 6f 74 79 70 65 2e 74 6f 53 74 72 69 6e 67 20 3d otype.toString = 000373c0: 20 66 75 6e 63 74 69 6f 6e 20 74 6f 53 74 72 69 function toStri 000373d0: 6e 67 20 28 62 61 73 65 2c 20 70 61 64 64 69 6e ng (base, paddin 000373e0: 67 29 20 7b 5c 6e 20 20 20 20 62 61 73 65 20 3d g) {\n base = 000373f0: 20 62 61 73 65 20 7c 7c 20 31 30 3b 5c 6e 20 20 base || 10;\n 00037400: 20 20 70 61 64 64 69 6e 67 20 3d 20 70 61 64 64 padding = padd 00037410: 69 6e 67 20 7c 20 30 20 7c 7c 20 31 3b 5c 6e 5c ing | 0 || 1;\n\ 00037420: 6e 20 20 20 20 76 61 72 20 6f 75 74 3b 5c 6e 20 n var out;\n 00037430: 20 20 20 69 66 20 28 62 61 73 65 20 3d 3d 3d 20 if (base === 00037440: 31 36 20 7c 7c 20 62 61 73 65 20 3d 3d 3d 20 27 16 || base === ' 00037450: 68 65 78 27 29 20 7b 5c 6e 20 20 20 20 20 20 6f hex') {\n o 00037460: 75 74 20 3d 20 27 27 3b 5c 6e 20 20 20 20 20 20 ut = '';\n 00037470: 76 61 72 20 6f 66 66 20 3d 20 30 3b 5c 6e 20 20 var off = 0;\n 00037480: 20 20 20 20 76 61 72 20 63 61 72 72 79 20 3d 20 var carry = 00037490: 30 3b 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 76 0;\n for (v 000374a0: 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 74 68 ar i = 0; i < th 000374b0: 69 73 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 20 is.length; i++) 000374c0: 7b 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 77 {\n var w 000374d0: 20 3d 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d = this.words[i] 000374e0: 3b 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 77 ;\n var w 000374f0: 6f 72 64 20 3d 20 28 28 28 77 20 3c 3c 20 6f 66 ord = (((w << of 00037500: 66 29 20 7c 20 63 61 72 72 79 29 20 26 20 30 78 f) | carry) & 0x 00037510: 66 66 66 66 66 66 29 2e 74 6f 53 74 72 69 6e 67 ffffff).toString 00037520: 28 31 36 29 3b 5c 6e 20 20 20 20 20 20 20 20 63 (16);\n c 00037530: 61 72 72 79 20 3d 20 28 77 20 3e 3e 3e 20 28 32 arry = (w >>> (2 00037540: 34 20 2d 20 6f 66 66 29 29 20 26 20 30 78 66 66 4 - off)) & 0xff 00037550: 66 66 66 66 3b 5c 6e 20 20 20 20 20 20 20 20 6f ffff;\n o 00037560: 66 66 20 2b 3d 20 32 3b 5c 6e 20 20 20 20 20 20 ff += 2;\n 00037570: 20 20 69 66 20 28 6f 66 66 20 3e 3d 20 32 36 29 if (off >= 26) 00037580: 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6f 66 {\n of 00037590: 66 20 2d 3d 20 32 36 3b 5c 6e 20 20 20 20 20 20 f -= 26;\n 000375a0: 20 20 20 20 69 2d 2d 3b 5c 6e 20 20 20 20 20 20 i--;\n 000375b0: 20 20 7d 5c 6e 20 20 20 20 20 20 20 20 69 66 20 }\n if 000375c0: 28 63 61 72 72 79 20 21 3d 3d 20 30 20 7c 7c 20 (carry !== 0 || 000375d0: 69 20 21 3d 3d 20 74 68 69 73 2e 6c 65 6e 67 74 i !== this.lengt 000375e0: 68 20 2d 20 31 29 20 7b 5c 6e 20 20 20 20 20 20 h - 1) {\n 000375f0: 20 20 20 20 6f 75 74 20 3d 20 7a 65 72 6f 73 5b out = zeros[ 00037600: 36 20 2d 20 77 6f 72 64 2e 6c 65 6e 67 74 68 5d 6 - word.length] 00037610: 20 2b 20 77 6f 72 64 20 2b 20 6f 75 74 3b 5c 6e + word + out;\n 00037620: 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b } else { 00037630: 5c 6e 20 20 20 20 20 20 20 20 20 20 6f 75 74 20 \n out 00037640: 3d 20 77 6f 72 64 20 2b 20 6f 75 74 3b 5c 6e 20 = word + out;\n 00037650: 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 }\n 00037660: 7d 5c 6e 20 20 20 20 20 20 69 66 20 28 63 61 72 }\n if (car 00037670: 72 79 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 ry !== 0) {\n 00037680: 20 20 20 20 20 6f 75 74 20 3d 20 63 61 72 72 79 out = carry 00037690: 2e 74 6f 53 74 72 69 6e 67 28 31 36 29 20 2b 20 .toString(16) + 000376a0: 6f 75 74 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 out;\n }\n 000376b0: 20 20 20 20 20 77 68 69 6c 65 20 28 6f 75 74 2e while (out. 000376c0: 6c 65 6e 67 74 68 20 25 20 70 61 64 64 69 6e 67 length % padding 000376d0: 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 !== 0) {\n 000376e0: 20 20 20 6f 75 74 20 3d 20 27 30 27 20 2b 20 6f out = '0' + o 000376f0: 75 74 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 ut;\n }\n 00037700: 20 20 20 20 69 66 20 28 74 68 69 73 2e 6e 65 67 if (this.neg 00037710: 61 74 69 76 65 20 21 3d 3d 20 30 29 20 7b 5c 6e ative !== 0) {\n 00037720: 20 20 20 20 20 20 20 20 6f 75 74 20 3d 20 27 2d out = '- 00037730: 27 20 2b 20 6f 75 74 3b 5c 6e 20 20 20 20 20 20 ' + out;\n 00037740: 7d 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 }\n return 00037750: 6f 75 74 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 out;\n }\n\n 00037760: 20 20 20 69 66 20 28 62 61 73 65 20 3d 3d 3d 20 if (base === 00037770: 28 62 61 73 65 20 7c 20 30 29 20 26 26 20 62 61 (base | 0) && ba 00037780: 73 65 20 3e 3d 20 32 20 26 26 20 62 61 73 65 20 se >= 2 && base 00037790: 3c 3d 20 33 36 29 20 7b 5c 6e 20 20 20 20 20 20 <= 36) {\n 000377a0: 2f 2f 20 76 61 72 20 67 72 6f 75 70 53 69 7a 65 // var groupSize 000377b0: 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 28 42 4e = Math.floor(BN 000377c0: 2e 77 6f 72 64 53 69 7a 65 20 2a 20 4d 61 74 68 .wordSize * Math 000377d0: 2e 4c 4e 32 20 2f 20 4d 61 74 68 2e 6c 6f 67 28 .LN2 / Math.log( 000377e0: 62 61 73 65 29 29 3b 5c 6e 20 20 20 20 20 20 76 base));\n v 000377f0: 61 72 20 67 72 6f 75 70 53 69 7a 65 20 3d 20 67 ar groupSize = g 00037800: 72 6f 75 70 53 69 7a 65 73 5b 62 61 73 65 5d 3b roupSizes[base]; 00037810: 5c 6e 20 20 20 20 20 20 2f 2f 20 76 61 72 20 67 \n // var g 00037820: 72 6f 75 70 42 61 73 65 20 3d 20 4d 61 74 68 2e roupBase = Math. 00037830: 70 6f 77 28 62 61 73 65 2c 20 67 72 6f 75 70 53 pow(base, groupS 00037840: 69 7a 65 29 3b 5c 6e 20 20 20 20 20 20 76 61 72 ize);\n var 00037850: 20 67 72 6f 75 70 42 61 73 65 20 3d 20 67 72 6f groupBase = gro 00037860: 75 70 42 61 73 65 73 5b 62 61 73 65 5d 3b 5c 6e upBases[base];\n 00037870: 20 20 20 20 20 20 6f 75 74 20 3d 20 27 27 3b 5c out = '';\ 00037880: 6e 20 20 20 20 20 20 76 61 72 20 63 20 3d 20 74 n var c = t 00037890: 68 69 73 2e 63 6c 6f 6e 65 28 29 3b 5c 6e 20 20 his.clone();\n 000378a0: 20 20 20 20 63 2e 6e 65 67 61 74 69 76 65 20 3d c.negative = 000378b0: 20 30 3b 5c 6e 20 20 20 20 20 20 77 68 69 6c 65 0;\n while 000378c0: 20 28 21 63 2e 69 73 5a 65 72 6f 28 29 29 20 7b (!c.isZero()) { 000378d0: 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 72 20 \n var r 000378e0: 3d 20 63 2e 6d 6f 64 72 6e 28 67 72 6f 75 70 42 = c.modrn(groupB 000378f0: 61 73 65 29 2e 74 6f 53 74 72 69 6e 67 28 62 61 ase).toString(ba 00037900: 73 65 29 3b 5c 6e 20 20 20 20 20 20 20 20 63 20 se);\n c 00037910: 3d 20 63 2e 69 64 69 76 6e 28 67 72 6f 75 70 42 = c.idivn(groupB 00037920: 61 73 65 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 20 ase);\n\n 00037930: 20 69 66 20 28 21 63 2e 69 73 5a 65 72 6f 28 29 if (!c.isZero() 00037940: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6f ) {\n o 00037950: 75 74 20 3d 20 7a 65 72 6f 73 5b 67 72 6f 75 70 ut = zeros[group 00037960: 53 69 7a 65 20 2d 20 72 2e 6c 65 6e 67 74 68 5d Size - r.length] 00037970: 20 2b 20 72 20 2b 20 6f 75 74 3b 5c 6e 20 20 20 + r + out;\n 00037980: 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 } else {\n 00037990: 20 20 20 20 20 20 20 20 20 6f 75 74 20 3d 20 72 out = r 000379a0: 20 2b 20 6f 75 74 3b 5c 6e 20 20 20 20 20 20 20 + out;\n 000379b0: 20 7d 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 }\n }\n 000379c0: 20 20 20 69 66 20 28 74 68 69 73 2e 69 73 5a 65 if (this.isZe 000379d0: 72 6f 28 29 29 20 7b 5c 6e 20 20 20 20 20 20 20 ro()) {\n 000379e0: 20 6f 75 74 20 3d 20 27 30 27 20 2b 20 6f 75 74 out = '0' + out 000379f0: 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 ;\n }\n 00037a00: 20 20 77 68 69 6c 65 20 28 6f 75 74 2e 6c 65 6e while (out.len 00037a10: 67 74 68 20 25 20 70 61 64 64 69 6e 67 20 21 3d gth % padding != 00037a20: 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 = 0) {\n 00037a30: 6f 75 74 20 3d 20 27 30 27 20 2b 20 6f 75 74 3b out = '0' + out; 00037a40: 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 \n }\n 00037a50: 20 69 66 20 28 74 68 69 73 2e 6e 65 67 61 74 69 if (this.negati 00037a60: 76 65 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 ve !== 0) {\n 00037a70: 20 20 20 20 20 6f 75 74 20 3d 20 27 2d 27 20 2b out = '-' + 00037a80: 20 6f 75 74 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e out;\n }\n 00037a90: 20 20 20 20 20 20 72 65 74 75 72 6e 20 6f 75 74 return out 00037aa0: 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 ;\n }\n\n 00037ab0: 61 73 73 65 72 74 28 66 61 6c 73 65 2c 20 27 42 assert(false, 'B 00037ac0: 61 73 65 20 73 68 6f 75 6c 64 20 62 65 20 62 65 ase should be be 00037ad0: 74 77 65 65 6e 20 32 20 61 6e 64 20 33 36 27 29 tween 2 and 36') 00037ae0: 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e ;\n };\n\n BN. 00037af0: 70 72 6f 74 6f 74 79 70 65 2e 74 6f 4e 75 6d 62 prototype.toNumb 00037b00: 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 74 6f er = function to 00037b10: 4e 75 6d 62 65 72 20 28 29 20 7b 5c 6e 20 20 20 Number () {\n 00037b20: 20 76 61 72 20 72 65 74 20 3d 20 74 68 69 73 2e var ret = this. 00037b30: 77 6f 72 64 73 5b 30 5d 3b 5c 6e 20 20 20 20 69 words[0];\n i 00037b40: 66 20 28 74 68 69 73 2e 6c 65 6e 67 74 68 20 3d f (this.length = 00037b50: 3d 3d 20 32 29 20 7b 5c 6e 20 20 20 20 20 20 72 == 2) {\n r 00037b60: 65 74 20 2b 3d 20 74 68 69 73 2e 77 6f 72 64 73 et += this.words 00037b70: 5b 31 5d 20 2a 20 30 78 34 30 30 30 30 30 30 3b [1] * 0x4000000; 00037b80: 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 \n } else if 00037b90: 28 74 68 69 73 2e 6c 65 6e 67 74 68 20 3d 3d 3d (this.length === 00037ba0: 20 33 20 26 26 20 74 68 69 73 2e 77 6f 72 64 73 3 && this.words 00037bb0: 5b 32 5d 20 3d 3d 3d 20 30 78 30 31 29 20 7b 5c [2] === 0x01) {\ 00037bc0: 6e 20 20 20 20 20 20 2f 2f 20 4e 4f 54 45 3a 20 n // NOTE: 00037bd0: 61 74 20 74 68 69 73 20 73 74 61 67 65 20 69 74 at this stage it 00037be0: 20 69 73 20 6b 6e 6f 77 6e 20 74 68 61 74 20 74 is known that t 00037bf0: 68 65 20 74 6f 70 20 62 69 74 20 69 73 20 73 65 he top bit is se 00037c00: 74 5c 6e 20 20 20 20 20 20 72 65 74 20 2b 3d 20 t\n ret += 00037c10: 30 78 31 30 30 30 30 30 30 30 30 30 30 30 30 30 0x10000000000000 00037c20: 20 2b 20 28 74 68 69 73 2e 77 6f 72 64 73 5b 31 + (this.words[1 00037c30: 5d 20 2a 20 30 78 34 30 30 30 30 30 30 29 3b 5c ] * 0x4000000);\ 00037c40: 6e 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 n } else if ( 00037c50: 74 68 69 73 2e 6c 65 6e 67 74 68 20 3e 20 32 29 this.length > 2) 00037c60: 20 7b 5c 6e 20 20 20 20 20 20 61 73 73 65 72 74 {\n assert 00037c70: 28 66 61 6c 73 65 2c 20 27 4e 75 6d 62 65 72 20 (false, 'Number 00037c80: 63 61 6e 20 6f 6e 6c 79 20 73 61 66 65 6c 79 20 can only safely 00037c90: 73 74 6f 72 65 20 75 70 20 74 6f 20 35 33 20 62 store up to 53 b 00037ca0: 69 74 73 27 29 3b 5c 6e 20 20 20 20 7d 5c 6e 20 its');\n }\n 00037cb0: 20 20 20 72 65 74 75 72 6e 20 28 74 68 69 73 2e return (this. 00037cc0: 6e 65 67 61 74 69 76 65 20 21 3d 3d 20 30 29 20 negative !== 0) 00037cd0: 3f 20 2d 72 65 74 20 3a 20 72 65 74 3b 5c 6e 20 ? -ret : ret;\n 00037ce0: 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 };\n\n BN.prot 00037cf0: 6f 74 79 70 65 2e 74 6f 4a 53 4f 4e 20 3d 20 66 otype.toJSON = f 00037d00: 75 6e 63 74 69 6f 6e 20 74 6f 4a 53 4f 4e 20 28 unction toJSON ( 00037d10: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 00037d20: 74 68 69 73 2e 74 6f 53 74 72 69 6e 67 28 31 36 this.toString(16 00037d30: 2c 20 32 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 , 2);\n };\n\n 00037d40: 20 69 66 20 28 42 75 66 66 65 72 29 20 7b 5c 6e if (Buffer) {\n 00037d50: 20 20 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 BN.prototype 00037d60: 2e 74 6f 42 75 66 66 65 72 20 3d 20 66 75 6e 63 .toBuffer = func 00037d70: 74 69 6f 6e 20 74 6f 42 75 66 66 65 72 20 28 65 tion toBuffer (e 00037d80: 6e 64 69 61 6e 2c 20 6c 65 6e 67 74 68 29 20 7b ndian, length) { 00037d90: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 \n return t 00037da0: 68 69 73 2e 74 6f 41 72 72 61 79 4c 69 6b 65 28 his.toArrayLike( 00037db0: 42 75 66 66 65 72 2c 20 65 6e 64 69 61 6e 2c 20 Buffer, endian, 00037dc0: 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 20 20 7d 3b length);\n }; 00037dd0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 42 4e 2e 70 72 \n }\n\n BN.pr 00037de0: 6f 74 6f 74 79 70 65 2e 74 6f 41 72 72 61 79 20 ototype.toArray 00037df0: 3d 20 66 75 6e 63 74 69 6f 6e 20 74 6f 41 72 72 = function toArr 00037e00: 61 79 20 28 65 6e 64 69 61 6e 2c 20 6c 65 6e 67 ay (endian, leng 00037e10: 74 68 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 th) {\n retur 00037e20: 6e 20 74 68 69 73 2e 74 6f 41 72 72 61 79 4c 69 n this.toArrayLi 00037e30: 6b 65 28 41 72 72 61 79 2c 20 65 6e 64 69 61 6e ke(Array, endian 00037e40: 2c 20 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 7d 3b , length);\n }; 00037e50: 5c 6e 5c 6e 20 20 76 61 72 20 61 6c 6c 6f 63 61 \n\n var alloca 00037e60: 74 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 61 6c te = function al 00037e70: 6c 6f 63 61 74 65 20 28 41 72 72 61 79 54 79 70 locate (ArrayTyp 00037e80: 65 2c 20 73 69 7a 65 29 20 7b 5c 6e 20 20 20 20 e, size) {\n 00037e90: 69 66 20 28 41 72 72 61 79 54 79 70 65 2e 61 6c if (ArrayType.al 00037ea0: 6c 6f 63 55 6e 73 61 66 65 29 20 7b 5c 6e 20 20 locUnsafe) {\n 00037eb0: 20 20 20 20 72 65 74 75 72 6e 20 41 72 72 61 79 return Array 00037ec0: 54 79 70 65 2e 61 6c 6c 6f 63 55 6e 73 61 66 65 Type.allocUnsafe 00037ed0: 28 73 69 7a 65 29 3b 5c 6e 20 20 20 20 7d 5c 6e (size);\n }\n 00037ee0: 20 20 20 20 72 65 74 75 72 6e 20 6e 65 77 20 41 return new A 00037ef0: 72 72 61 79 54 79 70 65 28 73 69 7a 65 29 3b 5c rrayType(size);\ 00037f00: 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 n };\n\n BN.pr 00037f10: 6f 74 6f 74 79 70 65 2e 74 6f 41 72 72 61 79 4c ototype.toArrayL 00037f20: 69 6b 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 74 ike = function t 00037f30: 6f 41 72 72 61 79 4c 69 6b 65 20 28 41 72 72 61 oArrayLike (Arra 00037f40: 79 54 79 70 65 2c 20 65 6e 64 69 61 6e 2c 20 6c yType, endian, l 00037f50: 65 6e 67 74 68 29 20 7b 5c 6e 20 20 20 20 74 68 ength) {\n th 00037f60: 69 73 2e 5f 73 74 72 69 70 28 29 3b 5c 6e 5c 6e is._strip();\n\n 00037f70: 20 20 20 20 76 61 72 20 62 79 74 65 4c 65 6e 67 var byteLeng 00037f80: 74 68 20 3d 20 74 68 69 73 2e 62 79 74 65 4c 65 th = this.byteLe 00037f90: 6e 67 74 68 28 29 3b 5c 6e 20 20 20 20 76 61 72 ngth();\n var 00037fa0: 20 72 65 71 4c 65 6e 67 74 68 20 3d 20 6c 65 6e reqLength = len 00037fb0: 67 74 68 20 7c 7c 20 4d 61 74 68 2e 6d 61 78 28 gth || Math.max( 00037fc0: 31 2c 20 62 79 74 65 4c 65 6e 67 74 68 29 3b 5c 1, byteLength);\ 00037fd0: 6e 20 20 20 20 61 73 73 65 72 74 28 62 79 74 65 n assert(byte 00037fe0: 4c 65 6e 67 74 68 20 3c 3d 20 72 65 71 4c 65 6e Length <= reqLen 00037ff0: 67 74 68 2c 20 27 62 79 74 65 20 61 72 72 61 79 gth, 'byte array 00038000: 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 64 65 73 longer than des 00038010: 69 72 65 64 20 6c 65 6e 67 74 68 27 29 3b 5c 6e ired length');\n 00038020: 20 20 20 20 61 73 73 65 72 74 28 72 65 71 4c 65 assert(reqLe 00038030: 6e 67 74 68 20 3e 20 30 2c 20 27 52 65 71 75 65 ngth > 0, 'Reque 00038040: 73 74 65 64 20 61 72 72 61 79 20 6c 65 6e 67 74 sted array lengt 00038050: 68 20 3c 3d 20 30 27 29 3b 5c 6e 5c 6e 20 20 20 h <= 0');\n\n 00038060: 20 76 61 72 20 72 65 73 20 3d 20 61 6c 6c 6f 63 var res = alloc 00038070: 61 74 65 28 41 72 72 61 79 54 79 70 65 2c 20 72 ate(ArrayType, r 00038080: 65 71 4c 65 6e 67 74 68 29 3b 5c 6e 20 20 20 20 eqLength);\n 00038090: 76 61 72 20 70 6f 73 74 66 69 78 20 3d 20 65 6e var postfix = en 000380a0: 64 69 61 6e 20 3d 3d 3d 20 27 6c 65 27 20 3f 20 dian === 'le' ? 000380b0: 27 4c 45 27 20 3a 20 27 42 45 27 3b 5c 6e 20 20 'LE' : 'BE';\n 000380c0: 20 20 74 68 69 73 5b 27 5f 74 6f 41 72 72 61 79 this['_toArray 000380d0: 4c 69 6b 65 27 20 2b 20 70 6f 73 74 66 69 78 5d Like' + postfix] 000380e0: 28 72 65 73 2c 20 62 79 74 65 4c 65 6e 67 74 68 (res, byteLength 000380f0: 29 3b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 72 );\n return r 00038100: 65 73 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 es;\n };\n\n B 00038110: 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 5f 74 6f 41 N.prototype._toA 00038120: 72 72 61 79 4c 69 6b 65 4c 45 20 3d 20 66 75 6e rrayLikeLE = fun 00038130: 63 74 69 6f 6e 20 5f 74 6f 41 72 72 61 79 4c 69 ction _toArrayLi 00038140: 6b 65 4c 45 20 28 72 65 73 2c 20 62 79 74 65 4c keLE (res, byteL 00038150: 65 6e 67 74 68 29 20 7b 5c 6e 20 20 20 20 76 61 ength) {\n va 00038160: 72 20 70 6f 73 69 74 69 6f 6e 20 3d 20 30 3b 5c r position = 0;\ 00038170: 6e 20 20 20 20 76 61 72 20 63 61 72 72 79 20 3d n var carry = 00038180: 20 30 3b 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 0;\n\n for ( 00038190: 76 61 72 20 69 20 3d 20 30 2c 20 73 68 69 66 74 var i = 0, shift 000381a0: 20 3d 20 30 3b 20 69 20 3c 20 74 68 69 73 2e 6c = 0; i < this.l 000381b0: 65 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 ength; i++) {\n 000381c0: 20 20 20 20 20 76 61 72 20 77 6f 72 64 20 3d 20 var word = 000381d0: 28 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 3c (this.words[i] < 000381e0: 3c 20 73 68 69 66 74 29 20 7c 20 63 61 72 72 79 < shift) | carry 000381f0: 3b 5c 6e 5c 6e 20 20 20 20 20 20 72 65 73 5b 70 ;\n\n res[p 00038200: 6f 73 69 74 69 6f 6e 2b 2b 5d 20 3d 20 77 6f 72 osition++] = wor 00038210: 64 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 20 d & 0xff;\n 00038220: 20 69 66 20 28 70 6f 73 69 74 69 6f 6e 20 3c 20 if (position < 00038230: 72 65 73 2e 6c 65 6e 67 74 68 29 20 7b 5c 6e 20 res.length) {\n 00038240: 20 20 20 20 20 20 20 72 65 73 5b 70 6f 73 69 74 res[posit 00038250: 69 6f 6e 2b 2b 5d 20 3d 20 28 77 6f 72 64 20 3e ion++] = (word > 00038260: 3e 20 38 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 8) & 0xff;\n 00038270: 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 69 66 20 }\n if 00038280: 28 70 6f 73 69 74 69 6f 6e 20 3c 20 72 65 73 2e (position < res. 00038290: 6c 65 6e 67 74 68 29 20 7b 5c 6e 20 20 20 20 20 length) {\n 000382a0: 20 20 20 72 65 73 5b 70 6f 73 69 74 69 6f 6e 2b res[position+ 000382b0: 2b 5d 20 3d 20 28 77 6f 72 64 20 3e 3e 20 31 36 +] = (word >> 16 000382c0: 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 20 ) & 0xff;\n 000382d0: 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 }\n\n if ( 000382e0: 73 68 69 66 74 20 3d 3d 3d 20 36 29 20 7b 5c 6e shift === 6) {\n 000382f0: 20 20 20 20 20 20 20 20 69 66 20 28 70 6f 73 69 if (posi 00038300: 74 69 6f 6e 20 3c 20 72 65 73 2e 6c 65 6e 67 74 tion < res.lengt 00038310: 68 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 h) {\n 00038320: 72 65 73 5b 70 6f 73 69 74 69 6f 6e 2b 2b 5d 20 res[position++] 00038330: 3d 20 28 77 6f 72 64 20 3e 3e 20 32 34 29 20 26 = (word >> 24) & 00038340: 20 30 78 66 66 3b 5c 6e 20 20 20 20 20 20 20 20 0xff;\n 00038350: 7d 5c 6e 20 20 20 20 20 20 20 20 63 61 72 72 79 }\n carry 00038360: 20 3d 20 30 3b 5c 6e 20 20 20 20 20 20 20 20 73 = 0;\n s 00038370: 68 69 66 74 20 3d 20 30 3b 5c 6e 20 20 20 20 20 hift = 0;\n 00038380: 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 20 } else {\n 00038390: 20 20 20 63 61 72 72 79 20 3d 20 77 6f 72 64 20 carry = word 000383a0: 3e 3e 3e 20 32 34 3b 5c 6e 20 20 20 20 20 20 20 >>> 24;\n 000383b0: 20 73 68 69 66 74 20 2b 3d 20 32 3b 5c 6e 20 20 shift += 2;\n 000383c0: 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e }\n }\n\n 000383d0: 20 20 20 20 69 66 20 28 70 6f 73 69 74 69 6f 6e if (position 000383e0: 20 3c 20 72 65 73 2e 6c 65 6e 67 74 68 29 20 7b < res.length) { 000383f0: 5c 6e 20 20 20 20 20 20 72 65 73 5b 70 6f 73 69 \n res[posi 00038400: 74 69 6f 6e 2b 2b 5d 20 3d 20 63 61 72 72 79 3b tion++] = carry; 00038410: 5c 6e 5c 6e 20 20 20 20 20 20 77 68 69 6c 65 20 \n\n while 00038420: 28 70 6f 73 69 74 69 6f 6e 20 3c 20 72 65 73 2e (position < res. 00038430: 6c 65 6e 67 74 68 29 20 7b 5c 6e 20 20 20 20 20 length) {\n 00038440: 20 20 20 72 65 73 5b 70 6f 73 69 74 69 6f 6e 2b res[position+ 00038450: 2b 5d 20 3d 20 30 3b 5c 6e 20 20 20 20 20 20 7d +] = 0;\n } 00038460: 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 3b 5c 6e 5c \n }\n };\n\ 00038470: 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e n BN.prototype. 00038480: 5f 74 6f 41 72 72 61 79 4c 69 6b 65 42 45 20 3d _toArrayLikeBE = 00038490: 20 66 75 6e 63 74 69 6f 6e 20 5f 74 6f 41 72 72 function _toArr 000384a0: 61 79 4c 69 6b 65 42 45 20 28 72 65 73 2c 20 62 ayLikeBE (res, b 000384b0: 79 74 65 4c 65 6e 67 74 68 29 20 7b 5c 6e 20 20 yteLength) {\n 000384c0: 20 20 76 61 72 20 70 6f 73 69 74 69 6f 6e 20 3d var position = 000384d0: 20 72 65 73 2e 6c 65 6e 67 74 68 20 2d 20 31 3b res.length - 1; 000384e0: 5c 6e 20 20 20 20 76 61 72 20 63 61 72 72 79 20 \n var carry 000384f0: 3d 20 30 3b 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 = 0;\n\n for 00038500: 28 76 61 72 20 69 20 3d 20 30 2c 20 73 68 69 66 (var i = 0, shif 00038510: 74 20 3d 20 30 3b 20 69 20 3c 20 74 68 69 73 2e t = 0; i < this. 00038520: 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e length; i++) {\n 00038530: 20 20 20 20 20 20 76 61 72 20 77 6f 72 64 20 3d var word = 00038540: 20 28 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 (this.words[i] 00038550: 3c 3c 20 73 68 69 66 74 29 20 7c 20 63 61 72 72 << shift) | carr 00038560: 79 3b 5c 6e 5c 6e 20 20 20 20 20 20 72 65 73 5b y;\n\n res[ 00038570: 70 6f 73 69 74 69 6f 6e 2d 2d 5d 20 3d 20 77 6f position--] = wo 00038580: 72 64 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 rd & 0xff;\n 00038590: 20 20 69 66 20 28 70 6f 73 69 74 69 6f 6e 20 3e if (position > 000385a0: 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 = 0) {\n 000385b0: 72 65 73 5b 70 6f 73 69 74 69 6f 6e 2d 2d 5d 20 res[position--] 000385c0: 3d 20 28 77 6f 72 64 20 3e 3e 20 38 29 20 26 20 = (word >> 8) & 000385d0: 30 78 66 66 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 0xff;\n }\n 000385e0: 20 20 20 20 20 20 69 66 20 28 70 6f 73 69 74 69 if (positi 000385f0: 6f 6e 20 3e 3d 20 30 29 20 7b 5c 6e 20 20 20 20 on >= 0) {\n 00038600: 20 20 20 20 72 65 73 5b 70 6f 73 69 74 69 6f 6e res[position 00038610: 2d 2d 5d 20 3d 20 28 77 6f 72 64 20 3e 3e 20 31 --] = (word >> 1 00038620: 36 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 6) & 0xff;\n 00038630: 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 }\n\n if 00038640: 28 73 68 69 66 74 20 3d 3d 3d 20 36 29 20 7b 5c (shift === 6) {\ 00038650: 6e 20 20 20 20 20 20 20 20 69 66 20 28 70 6f 73 n if (pos 00038660: 69 74 69 6f 6e 20 3e 3d 20 30 29 20 7b 5c 6e 20 ition >= 0) {\n 00038670: 20 20 20 20 20 20 20 20 20 72 65 73 5b 70 6f 73 res[pos 00038680: 69 74 69 6f 6e 2d 2d 5d 20 3d 20 28 77 6f 72 64 ition--] = (word 00038690: 20 3e 3e 20 32 34 29 20 26 20 30 78 66 66 3b 5c >> 24) & 0xff;\ 000386a0: 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 n }\n 000386b0: 20 20 20 20 63 61 72 72 79 20 3d 20 30 3b 5c 6e carry = 0;\n 000386c0: 20 20 20 20 20 20 20 20 73 68 69 66 74 20 3d 20 shift = 000386d0: 30 3b 5c 6e 20 20 20 20 20 20 7d 20 65 6c 73 65 0;\n } else 000386e0: 20 7b 5c 6e 20 20 20 20 20 20 20 20 63 61 72 72 {\n carr 000386f0: 79 20 3d 20 77 6f 72 64 20 3e 3e 3e 20 32 34 3b y = word >>> 24; 00038700: 5c 6e 20 20 20 20 20 20 20 20 73 68 69 66 74 20 \n shift 00038710: 2b 3d 20 32 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e += 2;\n }\n 00038720: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 }\n\n if 00038730: 28 70 6f 73 69 74 69 6f 6e 20 3e 3d 20 30 29 20 (position >= 0) 00038740: 7b 5c 6e 20 20 20 20 20 20 72 65 73 5b 70 6f 73 {\n res[pos 00038750: 69 74 69 6f 6e 2d 2d 5d 20 3d 20 63 61 72 72 79 ition--] = carry 00038760: 3b 5c 6e 5c 6e 20 20 20 20 20 20 77 68 69 6c 65 ;\n\n while 00038770: 20 28 70 6f 73 69 74 69 6f 6e 20 3e 3d 20 30 29 (position >= 0) 00038780: 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 65 73 5b {\n res[ 00038790: 70 6f 73 69 74 69 6f 6e 2d 2d 5d 20 3d 20 30 3b position--] = 0; 000387a0: 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d \n }\n } 000387b0: 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 69 66 20 28 \n };\n\n if ( 000387c0: 4d 61 74 68 2e 63 6c 7a 33 32 29 20 7b 5c 6e 20 Math.clz32) {\n 000387d0: 20 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e BN.prototype. 000387e0: 5f 63 6f 75 6e 74 42 69 74 73 20 3d 20 66 75 6e _countBits = fun 000387f0: 63 74 69 6f 6e 20 5f 63 6f 75 6e 74 42 69 74 73 ction _countBits 00038800: 20 28 77 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 (w) {\n re 00038810: 74 75 72 6e 20 33 32 20 2d 20 4d 61 74 68 2e 63 turn 32 - Math.c 00038820: 6c 7a 33 32 28 77 29 3b 5c 6e 20 20 20 20 7d 3b lz32(w);\n }; 00038830: 5c 6e 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 \n } else {\n 00038840: 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 5f BN.prototype._ 00038850: 63 6f 75 6e 74 42 69 74 73 20 3d 20 66 75 6e 63 countBits = func 00038860: 74 69 6f 6e 20 5f 63 6f 75 6e 74 42 69 74 73 20 tion _countBits 00038870: 28 77 29 20 7b 5c 6e 20 20 20 20 20 20 76 61 72 (w) {\n var 00038880: 20 74 20 3d 20 77 3b 5c 6e 20 20 20 20 20 20 76 t = w;\n v 00038890: 61 72 20 72 20 3d 20 30 3b 5c 6e 20 20 20 20 20 ar r = 0;\n 000388a0: 20 69 66 20 28 74 20 3e 3d 20 30 78 31 30 30 30 if (t >= 0x1000 000388b0: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 20 2b ) {\n r + 000388c0: 3d 20 31 33 3b 5c 6e 20 20 20 20 20 20 20 20 74 = 13;\n t 000388d0: 20 3e 3e 3e 3d 20 31 33 3b 5c 6e 20 20 20 20 20 >>>= 13;\n 000388e0: 20 7d 5c 6e 20 20 20 20 20 20 69 66 20 28 74 20 }\n if (t 000388f0: 3e 3d 20 30 78 34 30 29 20 7b 5c 6e 20 20 20 20 >= 0x40) {\n 00038900: 20 20 20 20 72 20 2b 3d 20 37 3b 5c 6e 20 20 20 r += 7;\n 00038910: 20 20 20 20 20 74 20 3e 3e 3e 3d 20 37 3b 5c 6e t >>>= 7;\n 00038920: 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 69 }\n i 00038930: 66 20 28 74 20 3e 3d 20 30 78 38 29 20 7b 5c 6e f (t >= 0x8) {\n 00038940: 20 20 20 20 20 20 20 20 72 20 2b 3d 20 34 3b 5c r += 4;\ 00038950: 6e 20 20 20 20 20 20 20 20 74 20 3e 3e 3e 3d 20 n t >>>= 00038960: 34 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 4;\n }\n 00038970: 20 20 20 69 66 20 28 74 20 3e 3d 20 30 78 30 32 if (t >= 0x02 00038980: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 20 2b ) {\n r + 00038990: 3d 20 32 3b 5c 6e 20 20 20 20 20 20 20 20 74 20 = 2;\n t 000389a0: 3e 3e 3e 3d 20 32 3b 5c 6e 20 20 20 20 20 20 7d >>>= 2;\n } 000389b0: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 \n return r 000389c0: 20 2b 20 74 3b 5c 6e 20 20 20 20 7d 3b 5c 6e 20 + t;\n };\n 000389d0: 20 7d 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f }\n\n BN.proto 000389e0: 74 79 70 65 2e 5f 7a 65 72 6f 42 69 74 73 20 3d type._zeroBits = 000389f0: 20 66 75 6e 63 74 69 6f 6e 20 5f 7a 65 72 6f 42 function _zeroB 00038a00: 69 74 73 20 28 77 29 20 7b 5c 6e 20 20 20 20 2f its (w) {\n / 00038a10: 2f 20 53 68 6f 72 74 2d 63 75 74 5c 6e 20 20 20 / Short-cut\n 00038a20: 20 69 66 20 28 77 20 3d 3d 3d 20 30 29 20 72 65 if (w === 0) re 00038a30: 74 75 72 6e 20 32 36 3b 5c 6e 5c 6e 20 20 20 20 turn 26;\n\n 00038a40: 76 61 72 20 74 20 3d 20 77 3b 5c 6e 20 20 20 20 var t = w;\n 00038a50: 76 61 72 20 72 20 3d 20 30 3b 5c 6e 20 20 20 20 var r = 0;\n 00038a60: 69 66 20 28 28 74 20 26 20 30 78 31 66 66 66 29 if ((t & 0x1fff) 00038a70: 20 3d 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 === 0) {\n 00038a80: 20 72 20 2b 3d 20 31 33 3b 5c 6e 20 20 20 20 20 r += 13;\n 00038a90: 20 74 20 3e 3e 3e 3d 20 31 33 3b 5c 6e 20 20 20 t >>>= 13;\n 00038aa0: 20 7d 5c 6e 20 20 20 20 69 66 20 28 28 74 20 26 }\n if ((t & 00038ab0: 20 30 78 37 66 29 20 3d 3d 3d 20 30 29 20 7b 5c 0x7f) === 0) {\ 00038ac0: 6e 20 20 20 20 20 20 72 20 2b 3d 20 37 3b 5c 6e n r += 7;\n 00038ad0: 20 20 20 20 20 20 74 20 3e 3e 3e 3d 20 37 3b 5c t >>>= 7;\ 00038ae0: 6e 20 20 20 20 7d 5c 6e 20 20 20 20 69 66 20 28 n }\n if ( 00038af0: 28 74 20 26 20 30 78 66 29 20 3d 3d 3d 20 30 29 (t & 0xf) === 0) 00038b00: 20 7b 5c 6e 20 20 20 20 20 20 72 20 2b 3d 20 34 {\n r += 4 00038b10: 3b 5c 6e 20 20 20 20 20 20 74 20 3e 3e 3e 3d 20 ;\n t >>>= 00038b20: 34 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 69 4;\n }\n i 00038b30: 66 20 28 28 74 20 26 20 30 78 33 29 20 3d 3d 3d f ((t & 0x3) === 00038b40: 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 72 20 2b 0) {\n r + 00038b50: 3d 20 32 3b 5c 6e 20 20 20 20 20 20 74 20 3e 3e = 2;\n t >> 00038b60: 3e 3d 20 32 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 >= 2;\n }\n 00038b70: 20 20 69 66 20 28 28 74 20 26 20 30 78 31 29 20 if ((t & 0x1) 00038b80: 3d 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 === 0) {\n 00038b90: 72 2b 2b 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 r++;\n }\n 00038ba0: 20 72 65 74 75 72 6e 20 72 3b 5c 6e 20 20 7d 3b return r;\n }; 00038bb0: 5c 6e 5c 6e 20 20 2f 2f 20 52 65 74 75 72 6e 20 \n\n // Return 00038bc0: 6e 75 6d 62 65 72 20 6f 66 20 75 73 65 64 20 62 number of used b 00038bd0: 69 74 73 20 69 6e 20 61 20 42 4e 5c 6e 20 20 42 its in a BN\n B 00038be0: 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 62 69 74 4c N.prototype.bitL 00038bf0: 65 6e 67 74 68 20 3d 20 66 75 6e 63 74 69 6f 6e ength = function 00038c00: 20 62 69 74 4c 65 6e 67 74 68 20 28 29 20 7b 5c bitLength () {\ 00038c10: 6e 20 20 20 20 76 61 72 20 77 20 3d 20 74 68 69 n var w = thi 00038c20: 73 2e 77 6f 72 64 73 5b 74 68 69 73 2e 6c 65 6e s.words[this.len 00038c30: 67 74 68 20 2d 20 31 5d 3b 5c 6e 20 20 20 20 76 gth - 1];\n v 00038c40: 61 72 20 68 69 20 3d 20 74 68 69 73 2e 5f 63 6f ar hi = this._co 00038c50: 75 6e 74 42 69 74 73 28 77 29 3b 5c 6e 20 20 20 untBits(w);\n 00038c60: 20 72 65 74 75 72 6e 20 28 74 68 69 73 2e 6c 65 return (this.le 00038c70: 6e 67 74 68 20 2d 20 31 29 20 2a 20 32 36 20 2b ngth - 1) * 26 + 00038c80: 20 68 69 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 hi;\n };\n\n 00038c90: 66 75 6e 63 74 69 6f 6e 20 74 6f 42 69 74 41 72 function toBitAr 00038ca0: 72 61 79 20 28 6e 75 6d 29 20 7b 5c 6e 20 20 20 ray (num) {\n 00038cb0: 20 76 61 72 20 77 20 3d 20 6e 65 77 20 41 72 72 var w = new Arr 00038cc0: 61 79 28 6e 75 6d 2e 62 69 74 4c 65 6e 67 74 68 ay(num.bitLength 00038cd0: 28 29 29 3b 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 ());\n\n for 00038ce0: 28 76 61 72 20 62 69 74 20 3d 20 30 3b 20 62 69 (var bit = 0; bi 00038cf0: 74 20 3c 20 77 2e 6c 65 6e 67 74 68 3b 20 62 69 t < w.length; bi 00038d00: 74 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 76 61 t++) {\n va 00038d10: 72 20 6f 66 66 20 3d 20 28 62 69 74 20 2f 20 32 r off = (bit / 2 00038d20: 36 29 20 7c 20 30 3b 5c 6e 20 20 20 20 20 20 76 6) | 0;\n v 00038d30: 61 72 20 77 62 69 74 20 3d 20 62 69 74 20 25 20 ar wbit = bit % 00038d40: 32 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 77 5b 62 26;\n\n w[b 00038d50: 69 74 5d 20 3d 20 28 6e 75 6d 2e 77 6f 72 64 73 it] = (num.words 00038d60: 5b 6f 66 66 5d 20 3e 3e 3e 20 77 62 69 74 29 20 [off] >>> wbit) 00038d70: 26 20 30 78 30 31 3b 5c 6e 20 20 20 20 7d 5c 6e & 0x01;\n }\n 00038d80: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 77 3b 5c \n return w;\ 00038d90: 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 4e 75 6d n }\n\n // Num 00038da0: 62 65 72 20 6f 66 20 74 72 61 69 6c 69 6e 67 20 ber of trailing 00038db0: 7a 65 72 6f 20 62 69 74 73 5c 6e 20 20 42 4e 2e zero bits\n BN. 00038dc0: 70 72 6f 74 6f 74 79 70 65 2e 7a 65 72 6f 42 69 prototype.zeroBi 00038dd0: 74 73 20 3d 20 66 75 6e 63 74 69 6f 6e 20 7a 65 ts = function ze 00038de0: 72 6f 42 69 74 73 20 28 29 20 7b 5c 6e 20 20 20 roBits () {\n 00038df0: 20 69 66 20 28 74 68 69 73 2e 69 73 5a 65 72 6f if (this.isZero 00038e00: 28 29 29 20 72 65 74 75 72 6e 20 30 3b 5c 6e 5c ()) return 0;\n\ 00038e10: 6e 20 20 20 20 76 61 72 20 72 20 3d 20 30 3b 5c n var r = 0;\ 00038e20: 6e 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 n for (var i 00038e30: 3d 20 30 3b 20 69 20 3c 20 74 68 69 73 2e 6c 65 = 0; i < this.le 00038e40: 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 ngth; i++) {\n 00038e50: 20 20 20 20 76 61 72 20 62 20 3d 20 74 68 69 73 var b = this 00038e60: 2e 5f 7a 65 72 6f 42 69 74 73 28 74 68 69 73 2e ._zeroBits(this. 00038e70: 77 6f 72 64 73 5b 69 5d 29 3b 5c 6e 20 20 20 20 words[i]);\n 00038e80: 20 20 72 20 2b 3d 20 62 3b 5c 6e 20 20 20 20 20 r += b;\n 00038e90: 20 69 66 20 28 62 20 21 3d 3d 20 32 36 29 20 62 if (b !== 26) b 00038ea0: 72 65 61 6b 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 reak;\n }\n 00038eb0: 20 20 72 65 74 75 72 6e 20 72 3b 5c 6e 20 20 7d return r;\n } 00038ec0: 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 ;\n\n BN.protot 00038ed0: 79 70 65 2e 62 79 74 65 4c 65 6e 67 74 68 20 3d ype.byteLength = 00038ee0: 20 66 75 6e 63 74 69 6f 6e 20 62 79 74 65 4c 65 function byteLe 00038ef0: 6e 67 74 68 20 28 29 20 7b 5c 6e 20 20 20 20 72 ngth () {\n r 00038f00: 65 74 75 72 6e 20 4d 61 74 68 2e 63 65 69 6c 28 eturn Math.ceil( 00038f10: 74 68 69 73 2e 62 69 74 4c 65 6e 67 74 68 28 29 this.bitLength() 00038f20: 20 2f 20 38 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e / 8);\n };\n\n 00038f30: 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 74 BN.prototype.t 00038f40: 6f 54 77 6f 73 20 3d 20 66 75 6e 63 74 69 6f 6e oTwos = function 00038f50: 20 74 6f 54 77 6f 73 20 28 77 69 64 74 68 29 20 toTwos (width) 00038f60: 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e {\n if (this. 00038f70: 6e 65 67 61 74 69 76 65 20 21 3d 3d 20 30 29 20 negative !== 0) 00038f80: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 {\n return 00038f90: 74 68 69 73 2e 61 62 73 28 29 2e 69 6e 6f 74 6e this.abs().inotn 00038fa0: 28 77 69 64 74 68 29 2e 69 61 64 64 6e 28 31 29 (width).iaddn(1) 00038fb0: 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 72 65 ;\n }\n re 00038fc0: 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f 6e 65 28 turn this.clone( 00038fd0: 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e );\n };\n\n BN 00038fe0: 2e 70 72 6f 74 6f 74 79 70 65 2e 66 72 6f 6d 54 .prototype.fromT 00038ff0: 77 6f 73 20 3d 20 66 75 6e 63 74 69 6f 6e 20 66 wos = function f 00039000: 72 6f 6d 54 77 6f 73 20 28 77 69 64 74 68 29 20 romTwos (width) 00039010: 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e {\n if (this. 00039020: 74 65 73 74 6e 28 77 69 64 74 68 20 2d 20 31 29 testn(width - 1) 00039030: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 ) {\n retur 00039040: 6e 20 74 68 69 73 2e 6e 6f 74 6e 28 77 69 64 74 n this.notn(widt 00039050: 68 29 2e 69 61 64 64 6e 28 31 29 2e 69 6e 65 67 h).iaddn(1).ineg 00039060: 28 29 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 ();\n }\n 00039070: 72 65 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f 6e return this.clon 00039080: 65 28 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 e();\n };\n\n 00039090: 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 69 73 4e BN.prototype.isN 000390a0: 65 67 20 3d 20 66 75 6e 63 74 69 6f 6e 20 69 73 eg = function is 000390b0: 4e 65 67 20 28 29 20 7b 5c 6e 20 20 20 20 72 65 Neg () {\n re 000390c0: 74 75 72 6e 20 74 68 69 73 2e 6e 65 67 61 74 69 turn this.negati 000390d0: 76 65 20 21 3d 3d 20 30 3b 5c 6e 20 20 7d 3b 5c ve !== 0;\n };\ 000390e0: 6e 5c 6e 20 20 2f 2f 20 52 65 74 75 72 6e 20 6e n\n // Return n 000390f0: 65 67 61 74 69 76 65 20 63 6c 6f 6e 65 20 6f 66 egative clone of 00039100: 20 60 74 68 69 73 60 5c 6e 20 20 42 4e 2e 70 72 `this`\n BN.pr 00039110: 6f 74 6f 74 79 70 65 2e 6e 65 67 20 3d 20 66 75 ototype.neg = fu 00039120: 6e 63 74 69 6f 6e 20 6e 65 67 20 28 29 20 7b 5c nction neg () {\ 00039130: 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 n return this 00039140: 2e 63 6c 6f 6e 65 28 29 2e 69 6e 65 67 28 29 3b .clone().ineg(); 00039150: 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 \n };\n\n BN.p 00039160: 72 6f 74 6f 74 79 70 65 2e 69 6e 65 67 20 3d 20 rototype.ineg = 00039170: 66 75 6e 63 74 69 6f 6e 20 69 6e 65 67 20 28 29 function ineg () 00039180: 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 {\n if (!thi 00039190: 73 2e 69 73 5a 65 72 6f 28 29 29 20 7b 5c 6e 20 s.isZero()) {\n 000391a0: 20 20 20 20 20 74 68 69 73 2e 6e 65 67 61 74 69 this.negati 000391b0: 76 65 20 5e 3d 20 31 3b 5c 6e 20 20 20 20 7d 5c ve ^= 1;\n }\ 000391c0: 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 n\n return th 000391d0: 69 73 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 2f is;\n };\n\n / 000391e0: 2f 20 4f 72 20 60 6e 75 6d 60 20 77 69 74 68 20 / Or `num` with 000391f0: 60 74 68 69 73 60 20 69 6e 2d 70 6c 61 63 65 5c `this` in-place\ 00039200: 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e n BN.prototype. 00039210: 69 75 6f 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 iuor = function 00039220: 69 75 6f 72 20 28 6e 75 6d 29 20 7b 5c 6e 20 20 iuor (num) {\n 00039230: 20 20 77 68 69 6c 65 20 28 74 68 69 73 2e 6c 65 while (this.le 00039240: 6e 67 74 68 20 3c 20 6e 75 6d 2e 6c 65 6e 67 74 ngth < num.lengt 00039250: 68 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 h) {\n this 00039260: 2e 77 6f 72 64 73 5b 74 68 69 73 2e 6c 65 6e 67 .words[this.leng 00039270: 74 68 2b 2b 5d 20 3d 20 30 3b 5c 6e 20 20 20 20 th++] = 0;\n 00039280: 7d 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 76 61 }\n\n for (va 00039290: 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d r i = 0; i < num 000392a0: 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c .length; i++) {\ 000392b0: 6e 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 n this.word 000392c0: 73 5b 69 5d 20 3d 20 74 68 69 73 2e 77 6f 72 64 s[i] = this.word 000392d0: 73 5b 69 5d 20 7c 20 6e 75 6d 2e 77 6f 72 64 73 s[i] | num.words 000392e0: 5b 69 5d 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 [i];\n }\n\n 000392f0: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f return this._ 00039300: 73 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e strip();\n };\n 00039310: 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 \n BN.prototype 00039320: 2e 69 6f 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 .ior = function 00039330: 69 6f 72 20 28 6e 75 6d 29 20 7b 5c 6e 20 20 20 ior (num) {\n 00039340: 20 61 73 73 65 72 74 28 28 74 68 69 73 2e 6e 65 assert((this.ne 00039350: 67 61 74 69 76 65 20 7c 20 6e 75 6d 2e 6e 65 67 gative | num.neg 00039360: 61 74 69 76 65 29 20 3d 3d 3d 20 30 29 3b 5c 6e ative) === 0);\n 00039370: 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e return this. 00039380: 69 75 6f 72 28 6e 75 6d 29 3b 5c 6e 20 20 7d 3b iuor(num);\n }; 00039390: 5c 6e 5c 6e 20 20 2f 2f 20 4f 72 20 60 6e 75 6d \n\n // Or `num 000393a0: 60 20 77 69 74 68 20 60 74 68 69 73 60 5c 6e 20 ` with `this`\n 000393b0: 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 6f 72 BN.prototype.or 000393c0: 20 3d 20 66 75 6e 63 74 69 6f 6e 20 6f 72 20 28 = function or ( 000393d0: 6e 75 6d 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 num) {\n if ( 000393e0: 74 68 69 73 2e 6c 65 6e 67 74 68 20 3e 20 6e 75 this.length > nu 000393f0: 6d 2e 6c 65 6e 67 74 68 29 20 72 65 74 75 72 6e m.length) return 00039400: 20 74 68 69 73 2e 63 6c 6f 6e 65 28 29 2e 69 6f this.clone().io 00039410: 72 28 6e 75 6d 29 3b 5c 6e 20 20 20 20 72 65 74 r(num);\n ret 00039420: 75 72 6e 20 6e 75 6d 2e 63 6c 6f 6e 65 28 29 2e urn num.clone(). 00039430: 69 6f 72 28 74 68 69 73 29 3b 5c 6e 20 20 7d 3b ior(this);\n }; 00039440: 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 \n\n BN.prototy 00039450: 70 65 2e 75 6f 72 20 3d 20 66 75 6e 63 74 69 6f pe.uor = functio 00039460: 6e 20 75 6f 72 20 28 6e 75 6d 29 20 7b 5c 6e 20 n uor (num) {\n 00039470: 20 20 20 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 if (this.leng 00039480: 74 68 20 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 th > num.length) 00039490: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f return this.clo 000394a0: 6e 65 28 29 2e 69 75 6f 72 28 6e 75 6d 29 3b 5c ne().iuor(num);\ 000394b0: 6e 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6d 2e n return num. 000394c0: 63 6c 6f 6e 65 28 29 2e 69 75 6f 72 28 74 68 69 clone().iuor(thi 000394d0: 73 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 2f s);\n };\n\n / 000394e0: 2f 20 41 6e 64 20 60 6e 75 6d 60 20 77 69 74 68 / And `num` with 000394f0: 20 60 74 68 69 73 60 20 69 6e 2d 70 6c 61 63 65 `this` in-place 00039500: 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 \n BN.prototype 00039510: 2e 69 75 61 6e 64 20 3d 20 66 75 6e 63 74 69 6f .iuand = functio 00039520: 6e 20 69 75 61 6e 64 20 28 6e 75 6d 29 20 7b 5c n iuand (num) {\ 00039530: 6e 20 20 20 20 2f 2f 20 62 20 3d 20 6d 69 6e 2d n // b = min- 00039540: 6c 65 6e 67 74 68 28 6e 75 6d 2c 20 74 68 69 73 length(num, this 00039550: 29 5c 6e 20 20 20 20 76 61 72 20 62 3b 5c 6e 20 )\n var b;\n 00039560: 20 20 20 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 if (this.leng 00039570: 74 68 20 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 th > num.length) 00039580: 20 7b 5c 6e 20 20 20 20 20 20 62 20 3d 20 6e 75 {\n b = nu 00039590: 6d 3b 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 7b m;\n } else { 000395a0: 5c 6e 20 20 20 20 20 20 62 20 3d 20 74 68 69 73 \n b = this 000395b0: 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 ;\n }\n\n 000395c0: 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 for (var i = 0; 000395d0: 69 20 3c 20 62 2e 6c 65 6e 67 74 68 3b 20 69 2b i < b.length; i+ 000395e0: 2b 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 +) {\n this 000395f0: 2e 77 6f 72 64 73 5b 69 5d 20 3d 20 74 68 69 73 .words[i] = this 00039600: 2e 77 6f 72 64 73 5b 69 5d 20 26 20 6e 75 6d 2e .words[i] & num. 00039610: 77 6f 72 64 73 5b 69 5d 3b 5c 6e 20 20 20 20 7d words[i];\n } 00039620: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 6e \n\n this.len 00039630: 67 74 68 20 3d 20 62 2e 6c 65 6e 67 74 68 3b 5c gth = b.length;\ 00039640: 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 n\n return th 00039650: 69 73 2e 5f 73 74 72 69 70 28 29 3b 5c 6e 20 20 is._strip();\n 00039660: 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f };\n\n BN.proto 00039670: 74 79 70 65 2e 69 61 6e 64 20 3d 20 66 75 6e 63 type.iand = func 00039680: 74 69 6f 6e 20 69 61 6e 64 20 28 6e 75 6d 29 20 tion iand (num) 00039690: 7b 5c 6e 20 20 20 20 61 73 73 65 72 74 28 28 74 {\n assert((t 000396a0: 68 69 73 2e 6e 65 67 61 74 69 76 65 20 7c 20 6e his.negative | n 000396b0: 75 6d 2e 6e 65 67 61 74 69 76 65 29 20 3d 3d 3d um.negative) === 000396c0: 20 30 29 3b 5c 6e 20 20 20 20 72 65 74 75 72 6e 0);\n return 000396d0: 20 74 68 69 73 2e 69 75 61 6e 64 28 6e 75 6d 29 this.iuand(num) 000396e0: 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 2f 2f 20 ;\n };\n\n // 000396f0: 41 6e 64 20 60 6e 75 6d 60 20 77 69 74 68 20 60 And `num` with ` 00039700: 74 68 69 73 60 5c 6e 20 20 42 4e 2e 70 72 6f 74 this`\n BN.prot 00039710: 6f 74 79 70 65 2e 61 6e 64 20 3d 20 66 75 6e 63 otype.and = func 00039720: 74 69 6f 6e 20 61 6e 64 20 28 6e 75 6d 29 20 7b tion and (num) { 00039730: 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 6c \n if (this.l 00039740: 65 6e 67 74 68 20 3e 20 6e 75 6d 2e 6c 65 6e 67 ength > num.leng 00039750: 74 68 29 20 72 65 74 75 72 6e 20 74 68 69 73 2e th) return this. 00039760: 63 6c 6f 6e 65 28 29 2e 69 61 6e 64 28 6e 75 6d clone().iand(num 00039770: 29 3b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6e );\n return n 00039780: 75 6d 2e 63 6c 6f 6e 65 28 29 2e 69 61 6e 64 28 um.clone().iand( 00039790: 74 68 69 73 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e this);\n };\n\n 000397a0: 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 75 BN.prototype.u 000397b0: 61 6e 64 20 3d 20 66 75 6e 63 74 69 6f 6e 20 75 and = function u 000397c0: 61 6e 64 20 28 6e 75 6d 29 20 7b 5c 6e 20 20 20 and (num) {\n 000397d0: 20 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 74 68 if (this.length 000397e0: 20 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 20 72 > num.length) r 000397f0: 65 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f 6e 65 eturn this.clone 00039800: 28 29 2e 69 75 61 6e 64 28 6e 75 6d 29 3b 5c 6e ().iuand(num);\n 00039810: 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6d 2e 63 return num.c 00039820: 6c 6f 6e 65 28 29 2e 69 75 61 6e 64 28 74 68 69 lone().iuand(thi 00039830: 73 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 2f s);\n };\n\n / 00039840: 2f 20 58 6f 72 20 60 6e 75 6d 60 20 77 69 74 68 / Xor `num` with 00039850: 20 60 74 68 69 73 60 20 69 6e 2d 70 6c 61 63 65 `this` in-place 00039860: 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 \n BN.prototype 00039870: 2e 69 75 78 6f 72 20 3d 20 66 75 6e 63 74 69 6f .iuxor = functio 00039880: 6e 20 69 75 78 6f 72 20 28 6e 75 6d 29 20 7b 5c n iuxor (num) {\ 00039890: 6e 20 20 20 20 2f 2f 20 61 2e 6c 65 6e 67 74 68 n // a.length 000398a0: 20 3e 20 62 2e 6c 65 6e 67 74 68 5c 6e 20 20 20 > b.length\n 000398b0: 20 76 61 72 20 61 3b 5c 6e 20 20 20 20 76 61 72 var a;\n var 000398c0: 20 62 3b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 b;\n if (thi 000398d0: 73 2e 6c 65 6e 67 74 68 20 3e 20 6e 75 6d 2e 6c s.length > num.l 000398e0: 65 6e 67 74 68 29 20 7b 5c 6e 20 20 20 20 20 20 ength) {\n 000398f0: 61 20 3d 20 74 68 69 73 3b 5c 6e 20 20 20 20 20 a = this;\n 00039900: 20 62 20 3d 20 6e 75 6d 3b 5c 6e 20 20 20 20 7d b = num;\n } 00039910: 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 20 20 61 else {\n a 00039920: 20 3d 20 6e 75 6d 3b 5c 6e 20 20 20 20 20 20 62 = num;\n b 00039930: 20 3d 20 74 68 69 73 3b 5c 6e 20 20 20 20 7d 5c = this;\n }\ 00039940: 6e 5c 6e 20 20 20 20 66 6f 72 20 28 76 61 72 20 n\n for (var 00039950: 69 20 3d 20 30 3b 20 69 20 3c 20 62 2e 6c 65 6e i = 0; i < b.len 00039960: 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 gth; i++) {\n 00039970: 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d this.words[i] 00039980: 20 3d 20 61 2e 77 6f 72 64 73 5b 69 5d 20 5e 20 = a.words[i] ^ 00039990: 62 2e 77 6f 72 64 73 5b 69 5d 3b 5c 6e 20 20 20 b.words[i];\n 000399a0: 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 74 68 }\n\n if (th 000399b0: 69 73 20 21 3d 3d 20 61 29 20 7b 5c 6e 20 20 20 is !== a) {\n 000399c0: 20 20 20 66 6f 72 20 28 3b 20 69 20 3c 20 61 2e for (; i < a. 000399d0: 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e length; i++) {\n 000399e0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 this.wor 000399f0: 64 73 5b 69 5d 20 3d 20 61 2e 77 6f 72 64 73 5b ds[i] = a.words[ 00039a00: 69 5d 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 i];\n }\n 00039a10: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 00039a20: 6c 65 6e 67 74 68 20 3d 20 61 2e 6c 65 6e 67 74 length = a.lengt 00039a30: 68 3b 5c 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e h;\n\n return 00039a40: 20 74 68 69 73 2e 5f 73 74 72 69 70 28 29 3b 5c this._strip();\ 00039a50: 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 n };\n\n BN.pr 00039a60: 6f 74 6f 74 79 70 65 2e 69 78 6f 72 20 3d 20 66 ototype.ixor = f 00039a70: 75 6e 63 74 69 6f 6e 20 69 78 6f 72 20 28 6e 75 unction ixor (nu 00039a80: 6d 29 20 7b 5c 6e 20 20 20 20 61 73 73 65 72 74 m) {\n assert 00039a90: 28 28 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 ((this.negative 00039aa0: 7c 20 6e 75 6d 2e 6e 65 67 61 74 69 76 65 29 20 | num.negative) 00039ab0: 3d 3d 3d 20 30 29 3b 5c 6e 20 20 20 20 72 65 74 === 0);\n ret 00039ac0: 75 72 6e 20 74 68 69 73 2e 69 75 78 6f 72 28 6e urn this.iuxor(n 00039ad0: 75 6d 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 um);\n };\n\n 00039ae0: 2f 2f 20 58 6f 72 20 60 6e 75 6d 60 20 77 69 74 // Xor `num` wit 00039af0: 68 20 60 74 68 69 73 60 5c 6e 20 20 42 4e 2e 70 h `this`\n BN.p 00039b00: 72 6f 74 6f 74 79 70 65 2e 78 6f 72 20 3d 20 66 rototype.xor = f 00039b10: 75 6e 63 74 69 6f 6e 20 78 6f 72 20 28 6e 75 6d unction xor (num 00039b20: 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 ) {\n if (thi 00039b30: 73 2e 6c 65 6e 67 74 68 20 3e 20 6e 75 6d 2e 6c s.length > num.l 00039b40: 65 6e 67 74 68 29 20 72 65 74 75 72 6e 20 74 68 ength) return th 00039b50: 69 73 2e 63 6c 6f 6e 65 28 29 2e 69 78 6f 72 28 is.clone().ixor( 00039b60: 6e 75 6d 29 3b 5c 6e 20 20 20 20 72 65 74 75 72 num);\n retur 00039b70: 6e 20 6e 75 6d 2e 63 6c 6f 6e 65 28 29 2e 69 78 n num.clone().ix 00039b80: 6f 72 28 74 68 69 73 29 3b 5c 6e 20 20 7d 3b 5c or(this);\n };\ 00039b90: 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 n\n BN.prototyp 00039ba0: 65 2e 75 78 6f 72 20 3d 20 66 75 6e 63 74 69 6f e.uxor = functio 00039bb0: 6e 20 75 78 6f 72 20 28 6e 75 6d 29 20 7b 5c 6e n uxor (num) {\n 00039bc0: 20 20 20 20 69 66 20 28 74 68 69 73 2e 6c 65 6e if (this.len 00039bd0: 67 74 68 20 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 gth > num.length 00039be0: 29 20 72 65 74 75 72 6e 20 74 68 69 73 2e 63 6c ) return this.cl 00039bf0: 6f 6e 65 28 29 2e 69 75 78 6f 72 28 6e 75 6d 29 one().iuxor(num) 00039c00: 3b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6e 75 ;\n return nu 00039c10: 6d 2e 63 6c 6f 6e 65 28 29 2e 69 75 78 6f 72 28 m.clone().iuxor( 00039c20: 74 68 69 73 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e this);\n };\n\n 00039c30: 20 20 2f 2f 20 4e 6f 74 20 60 60 74 68 69 73 60 // Not ``this` 00039c40: 60 20 77 69 74 68 20 60 60 77 69 64 74 68 60 60 ` with ``width`` 00039c50: 20 62 69 74 77 69 64 74 68 5c 6e 20 20 42 4e 2e bitwidth\n BN. 00039c60: 70 72 6f 74 6f 74 79 70 65 2e 69 6e 6f 74 6e 20 prototype.inotn 00039c70: 3d 20 66 75 6e 63 74 69 6f 6e 20 69 6e 6f 74 6e = function inotn 00039c80: 20 28 77 69 64 74 68 29 20 7b 5c 6e 20 20 20 20 (width) {\n 00039c90: 61 73 73 65 72 74 28 74 79 70 65 6f 66 20 77 69 assert(typeof wi 00039ca0: 64 74 68 20 3d 3d 3d 20 27 6e 75 6d 62 65 72 27 dth === 'number' 00039cb0: 20 26 26 20 77 69 64 74 68 20 3e 3d 20 30 29 3b && width >= 0); 00039cc0: 5c 6e 5c 6e 20 20 20 20 76 61 72 20 62 79 74 65 \n\n var byte 00039cd0: 73 4e 65 65 64 65 64 20 3d 20 4d 61 74 68 2e 63 sNeeded = Math.c 00039ce0: 65 69 6c 28 77 69 64 74 68 20 2f 20 32 36 29 20 eil(width / 26) 00039cf0: 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 62 69 | 0;\n var bi 00039d00: 74 73 4c 65 66 74 20 3d 20 77 69 64 74 68 20 25 tsLeft = width % 00039d10: 20 32 36 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 45 26;\n\n // E 00039d20: 78 74 65 6e 64 20 74 68 65 20 62 75 66 66 65 72 xtend the buffer 00039d30: 20 77 69 74 68 20 6c 65 61 64 69 6e 67 20 7a 65 with leading ze 00039d40: 72 6f 65 73 5c 6e 20 20 20 20 74 68 69 73 2e 5f roes\n this._ 00039d50: 65 78 70 61 6e 64 28 62 79 74 65 73 4e 65 65 64 expand(bytesNeed 00039d60: 65 64 29 3b 5c 6e 5c 6e 20 20 20 20 69 66 20 28 ed);\n\n if ( 00039d70: 62 69 74 73 4c 65 66 74 20 3e 20 30 29 20 7b 5c bitsLeft > 0) {\ 00039d80: 6e 20 20 20 20 20 20 62 79 74 65 73 4e 65 65 64 n bytesNeed 00039d90: 65 64 2d 2d 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e ed--;\n }\n\n 00039da0: 20 20 20 20 2f 2f 20 48 61 6e 64 6c 65 20 63 6f // Handle co 00039db0: 6d 70 6c 65 74 65 20 77 6f 72 64 73 5c 6e 20 20 mplete words\n 00039dc0: 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 for (var i = 0 00039dd0: 3b 20 69 20 3c 20 62 79 74 65 73 4e 65 65 64 65 ; i < bytesNeede 00039de0: 64 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 d; i++) {\n 00039df0: 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 3d this.words[i] = 00039e00: 20 7e 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 ~this.words[i] 00039e10: 26 20 30 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 & 0x3ffffff;\n 00039e20: 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 48 61 }\n\n // Ha 00039e30: 6e 64 6c 65 20 74 68 65 20 72 65 73 69 64 75 65 ndle the residue 00039e40: 5c 6e 20 20 20 20 69 66 20 28 62 69 74 73 4c 65 \n if (bitsLe 00039e50: 66 74 20 3e 20 30 29 20 7b 5c 6e 20 20 20 20 20 ft > 0) {\n 00039e60: 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 3d this.words[i] = 00039e70: 20 7e 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 ~this.words[i] 00039e80: 26 20 28 30 78 33 66 66 66 66 66 66 20 3e 3e 20 & (0x3ffffff >> 00039e90: 28 32 36 20 2d 20 62 69 74 73 4c 65 66 74 29 29 (26 - bitsLeft)) 00039ea0: 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 ;\n }\n\n 00039eb0: 2f 2f 20 41 6e 64 20 72 65 6d 6f 76 65 20 6c 65 // And remove le 00039ec0: 61 64 69 6e 67 20 7a 65 72 6f 65 73 5c 6e 20 20 ading zeroes\n 00039ed0: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 73 return this._s 00039ee0: 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c trip();\n };\n\ 00039ef0: 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e n BN.prototype. 00039f00: 6e 6f 74 6e 20 3d 20 66 75 6e 63 74 69 6f 6e 20 notn = function 00039f10: 6e 6f 74 6e 20 28 77 69 64 74 68 29 20 7b 5c 6e notn (width) {\n 00039f20: 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e return this. 00039f30: 63 6c 6f 6e 65 28 29 2e 69 6e 6f 74 6e 28 77 69 clone().inotn(wi 00039f40: 64 74 68 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 dth);\n };\n\n 00039f50: 20 2f 2f 20 53 65 74 20 60 62 69 74 60 20 6f 66 // Set `bit` of 00039f60: 20 60 74 68 69 73 60 5c 6e 20 20 42 4e 2e 70 72 `this`\n BN.pr 00039f70: 6f 74 6f 74 79 70 65 2e 73 65 74 6e 20 3d 20 66 ototype.setn = f 00039f80: 75 6e 63 74 69 6f 6e 20 73 65 74 6e 20 28 62 69 unction setn (bi 00039f90: 74 2c 20 76 61 6c 29 20 7b 5c 6e 20 20 20 20 61 t, val) {\n a 00039fa0: 73 73 65 72 74 28 74 79 70 65 6f 66 20 62 69 74 ssert(typeof bit 00039fb0: 20 3d 3d 3d 20 27 6e 75 6d 62 65 72 27 20 26 26 === 'number' && 00039fc0: 20 62 69 74 20 3e 3d 20 30 29 3b 5c 6e 5c 6e 20 bit >= 0);\n\n 00039fd0: 20 20 20 76 61 72 20 6f 66 66 20 3d 20 28 62 69 var off = (bi 00039fe0: 74 20 2f 20 32 36 29 20 7c 20 30 3b 5c 6e 20 20 t / 26) | 0;\n 00039ff0: 20 20 76 61 72 20 77 62 69 74 20 3d 20 62 69 74 var wbit = bit 0003a000: 20 25 20 32 36 3b 5c 6e 5c 6e 20 20 20 20 74 68 % 26;\n\n th 0003a010: 69 73 2e 5f 65 78 70 61 6e 64 28 6f 66 66 20 2b is._expand(off + 0003a020: 20 31 29 3b 5c 6e 5c 6e 20 20 20 20 69 66 20 28 1);\n\n if ( 0003a030: 76 61 6c 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 val) {\n th 0003a040: 69 73 2e 77 6f 72 64 73 5b 6f 66 66 5d 20 3d 20 is.words[off] = 0003a050: 74 68 69 73 2e 77 6f 72 64 73 5b 6f 66 66 5d 20 this.words[off] 0003a060: 7c 20 28 31 20 3c 3c 20 77 62 69 74 29 3b 5c 6e | (1 << wbit);\n 0003a070: 20 20 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 } else {\n 0003a080: 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 6f this.words[o 0003a090: 66 66 5d 20 3d 20 74 68 69 73 2e 77 6f 72 64 73 ff] = this.words 0003a0a0: 5b 6f 66 66 5d 20 26 20 7e 28 31 20 3c 3c 20 77 [off] & ~(1 << w 0003a0b0: 62 69 74 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e bit);\n }\n\n 0003a0c0: 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e return this. 0003a0d0: 5f 73 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c _strip();\n };\ 0003a0e0: 6e 5c 6e 20 20 2f 2f 20 41 64 64 20 60 6e 75 6d n\n // Add `num 0003a0f0: 60 20 74 6f 20 60 74 68 69 73 60 20 69 6e 2d 70 ` to `this` in-p 0003a100: 6c 61 63 65 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f lace\n BN.proto 0003a110: 74 79 70 65 2e 69 61 64 64 20 3d 20 66 75 6e 63 type.iadd = func 0003a120: 74 69 6f 6e 20 69 61 64 64 20 28 6e 75 6d 29 20 tion iadd (num) 0003a130: 7b 5c 6e 20 20 20 20 76 61 72 20 72 3b 5c 6e 5c {\n var r;\n\ 0003a140: 6e 20 20 20 20 2f 2f 20 6e 65 67 61 74 69 76 65 n // negative 0003a150: 20 2b 20 70 6f 73 69 74 69 76 65 5c 6e 20 20 20 + positive\n 0003a160: 20 69 66 20 28 74 68 69 73 2e 6e 65 67 61 74 69 if (this.negati 0003a170: 76 65 20 21 3d 3d 20 30 20 26 26 20 6e 75 6d 2e ve !== 0 && num. 0003a180: 6e 65 67 61 74 69 76 65 20 3d 3d 3d 20 30 29 20 negative === 0) 0003a190: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 6e 65 {\n this.ne 0003a1a0: 67 61 74 69 76 65 20 3d 20 30 3b 5c 6e 20 20 20 gative = 0;\n 0003a1b0: 20 20 20 72 20 3d 20 74 68 69 73 2e 69 73 75 62 r = this.isub 0003a1c0: 28 6e 75 6d 29 3b 5c 6e 20 20 20 20 20 20 74 68 (num);\n th 0003a1d0: 69 73 2e 6e 65 67 61 74 69 76 65 20 5e 3d 20 31 is.negative ^= 1 0003a1e0: 3b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 ;\n return 0003a1f0: 74 68 69 73 2e 5f 6e 6f 72 6d 53 69 67 6e 28 29 this._normSign() 0003a200: 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 70 6f 73 69 ;\n\n // posi 0003a210: 74 69 76 65 20 2b 20 6e 65 67 61 74 69 76 65 5c tive + negative\ 0003a220: 6e 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 n } else if ( 0003a230: 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 3d 3d this.negative == 0003a240: 3d 20 30 20 26 26 20 6e 75 6d 2e 6e 65 67 61 74 = 0 && num.negat 0003a250: 69 76 65 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 ive !== 0) {\n 0003a260: 20 20 20 20 6e 75 6d 2e 6e 65 67 61 74 69 76 65 num.negative 0003a270: 20 3d 20 30 3b 5c 6e 20 20 20 20 20 20 72 20 3d = 0;\n r = 0003a280: 20 74 68 69 73 2e 69 73 75 62 28 6e 75 6d 29 3b this.isub(num); 0003a290: 5c 6e 20 20 20 20 20 20 6e 75 6d 2e 6e 65 67 61 \n num.nega 0003a2a0: 74 69 76 65 20 3d 20 31 3b 5c 6e 20 20 20 20 20 tive = 1;\n 0003a2b0: 20 72 65 74 75 72 6e 20 72 2e 5f 6e 6f 72 6d 53 return r._normS 0003a2c0: 69 67 6e 28 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c ign();\n }\n\ 0003a2d0: 6e 20 20 20 20 2f 2f 20 61 2e 6c 65 6e 67 74 68 n // a.length 0003a2e0: 20 3e 20 62 2e 6c 65 6e 67 74 68 5c 6e 20 20 20 > b.length\n 0003a2f0: 20 76 61 72 20 61 2c 20 62 3b 5c 6e 20 20 20 20 var a, b;\n 0003a300: 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 74 68 20 if (this.length 0003a310: 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 20 7b 5c > num.length) {\ 0003a320: 6e 20 20 20 20 20 20 61 20 3d 20 74 68 69 73 3b n a = this; 0003a330: 5c 6e 20 20 20 20 20 20 62 20 3d 20 6e 75 6d 3b \n b = num; 0003a340: 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 7b 5c 6e \n } else {\n 0003a350: 20 20 20 20 20 20 61 20 3d 20 6e 75 6d 3b 5c 6e a = num;\n 0003a360: 20 20 20 20 20 20 62 20 3d 20 74 68 69 73 3b 5c b = this;\ 0003a370: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 76 61 n }\n\n va 0003a380: 72 20 63 61 72 72 79 20 3d 20 30 3b 5c 6e 20 20 r carry = 0;\n 0003a390: 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 for (var i = 0 0003a3a0: 3b 20 69 20 3c 20 62 2e 6c 65 6e 67 74 68 3b 20 ; i < b.length; 0003a3b0: 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 72 20 i++) {\n r 0003a3c0: 3d 20 28 61 2e 77 6f 72 64 73 5b 69 5d 20 7c 20 = (a.words[i] | 0003a3d0: 30 29 20 2b 20 28 62 2e 77 6f 72 64 73 5b 69 5d 0) + (b.words[i] 0003a3e0: 20 7c 20 30 29 20 2b 20 63 61 72 72 79 3b 5c 6e | 0) + carry;\n 0003a3f0: 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 this.words 0003a400: 5b 69 5d 20 3d 20 72 20 26 20 30 78 33 66 66 66 [i] = r & 0x3fff 0003a410: 66 66 66 3b 5c 6e 20 20 20 20 20 20 63 61 72 72 fff;\n carr 0003a420: 79 20 3d 20 72 20 3e 3e 3e 20 32 36 3b 5c 6e 20 y = r >>> 26;\n 0003a430: 20 20 20 7d 5c 6e 20 20 20 20 66 6f 72 20 28 3b }\n for (; 0003a440: 20 63 61 72 72 79 20 21 3d 3d 20 30 20 26 26 20 carry !== 0 && 0003a450: 69 20 3c 20 61 2e 6c 65 6e 67 74 68 3b 20 69 2b i < a.length; i+ 0003a460: 2b 29 20 7b 5c 6e 20 20 20 20 20 20 72 20 3d 20 +) {\n r = 0003a470: 28 61 2e 77 6f 72 64 73 5b 69 5d 20 7c 20 30 29 (a.words[i] | 0) 0003a480: 20 2b 20 63 61 72 72 79 3b 5c 6e 20 20 20 20 20 + carry;\n 0003a490: 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 3d this.words[i] = 0003a4a0: 20 72 20 26 20 30 78 33 66 66 66 66 66 66 3b 5c r & 0x3ffffff;\ 0003a4b0: 6e 20 20 20 20 20 20 63 61 72 72 79 20 3d 20 72 n carry = r 0003a4c0: 20 3e 3e 3e 20 32 36 3b 5c 6e 20 20 20 20 7d 5c >>> 26;\n }\ 0003a4d0: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 6e 67 n\n this.leng 0003a4e0: 74 68 20 3d 20 61 2e 6c 65 6e 67 74 68 3b 5c 6e th = a.length;\n 0003a4f0: 20 20 20 20 69 66 20 28 63 61 72 72 79 20 21 3d if (carry != 0003a500: 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 = 0) {\n th 0003a510: 69 73 2e 77 6f 72 64 73 5b 74 68 69 73 2e 6c 65 is.words[this.le 0003a520: 6e 67 74 68 5d 20 3d 20 63 61 72 72 79 3b 5c 6e ngth] = carry;\n 0003a530: 20 20 20 20 20 20 74 68 69 73 2e 6c 65 6e 67 74 this.lengt 0003a540: 68 2b 2b 3b 5c 6e 20 20 20 20 2f 2f 20 43 6f 70 h++;\n // Cop 0003a550: 79 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 y the rest of th 0003a560: 65 20 77 6f 72 64 73 5c 6e 20 20 20 20 7d 20 65 e words\n } e 0003a570: 6c 73 65 20 69 66 20 28 61 20 21 3d 3d 20 74 68 lse if (a !== th 0003a580: 69 73 29 20 7b 5c 6e 20 20 20 20 20 20 66 6f 72 is) {\n for 0003a590: 20 28 3b 20 69 20 3c 20 61 2e 6c 65 6e 67 74 68 (; i < a.length 0003a5a0: 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 ; i++) {\n 0003a5b0: 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 this.words[i] 0003a5c0: 3d 20 61 2e 77 6f 72 64 73 5b 69 5d 3b 5c 6e 20 = a.words[i];\n 0003a5d0: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c }\n }\n\ 0003a5e0: 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 n return this 0003a5f0: 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 2f 2f 20 ;\n };\n\n // 0003a600: 41 64 64 20 60 6e 75 6d 60 20 74 6f 20 60 74 68 Add `num` to `th 0003a610: 69 73 60 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 is`\n BN.protot 0003a620: 79 70 65 2e 61 64 64 20 3d 20 66 75 6e 63 74 69 ype.add = functi 0003a630: 6f 6e 20 61 64 64 20 28 6e 75 6d 29 20 7b 5c 6e on add (num) {\n 0003a640: 20 20 20 20 76 61 72 20 72 65 73 3b 5c 6e 20 20 var res;\n 0003a650: 20 20 69 66 20 28 6e 75 6d 2e 6e 65 67 61 74 69 if (num.negati 0003a660: 76 65 20 21 3d 3d 20 30 20 26 26 20 74 68 69 73 ve !== 0 && this 0003a670: 2e 6e 65 67 61 74 69 76 65 20 3d 3d 3d 20 30 29 .negative === 0) 0003a680: 20 7b 5c 6e 20 20 20 20 20 20 6e 75 6d 2e 6e 65 {\n num.ne 0003a690: 67 61 74 69 76 65 20 3d 20 30 3b 5c 6e 20 20 20 gative = 0;\n 0003a6a0: 20 20 20 72 65 73 20 3d 20 74 68 69 73 2e 73 75 res = this.su 0003a6b0: 62 28 6e 75 6d 29 3b 5c 6e 20 20 20 20 20 20 6e b(num);\n n 0003a6c0: 75 6d 2e 6e 65 67 61 74 69 76 65 20 5e 3d 20 31 um.negative ^= 1 0003a6d0: 3b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 ;\n return 0003a6e0: 72 65 73 3b 5c 6e 20 20 20 20 7d 20 65 6c 73 65 res;\n } else 0003a6f0: 20 69 66 20 28 6e 75 6d 2e 6e 65 67 61 74 69 76 if (num.negativ 0003a700: 65 20 3d 3d 3d 20 30 20 26 26 20 74 68 69 73 2e e === 0 && this. 0003a710: 6e 65 67 61 74 69 76 65 20 21 3d 3d 20 30 29 20 negative !== 0) 0003a720: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 6e 65 {\n this.ne 0003a730: 67 61 74 69 76 65 20 3d 20 30 3b 5c 6e 20 20 20 gative = 0;\n 0003a740: 20 20 20 72 65 73 20 3d 20 6e 75 6d 2e 73 75 62 res = num.sub 0003a750: 28 74 68 69 73 29 3b 5c 6e 20 20 20 20 20 20 74 (this);\n t 0003a760: 68 69 73 2e 6e 65 67 61 74 69 76 65 20 3d 20 31 his.negative = 1 0003a770: 3b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 ;\n return 0003a780: 72 65 73 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 res;\n }\n\n 0003a790: 20 20 20 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 if (this.leng 0003a7a0: 74 68 20 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 th > num.length) 0003a7b0: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f return this.clo 0003a7c0: 6e 65 28 29 2e 69 61 64 64 28 6e 75 6d 29 3b 5c ne().iadd(num);\ 0003a7d0: 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6e 75 n\n return nu 0003a7e0: 6d 2e 63 6c 6f 6e 65 28 29 2e 69 61 64 64 28 74 m.clone().iadd(t 0003a7f0: 68 69 73 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 his);\n };\n\n 0003a800: 20 2f 2f 20 53 75 62 74 72 61 63 74 20 60 6e 75 // Subtract `nu 0003a810: 6d 60 20 66 72 6f 6d 20 60 74 68 69 73 60 20 69 m` from `this` i 0003a820: 6e 2d 70 6c 61 63 65 5c 6e 20 20 42 4e 2e 70 72 n-place\n BN.pr 0003a830: 6f 74 6f 74 79 70 65 2e 69 73 75 62 20 3d 20 66 ototype.isub = f 0003a840: 75 6e 63 74 69 6f 6e 20 69 73 75 62 20 28 6e 75 unction isub (nu 0003a850: 6d 29 20 7b 5c 6e 20 20 20 20 2f 2f 20 74 68 69 m) {\n // thi 0003a860: 73 20 2d 20 28 2d 6e 75 6d 29 20 3d 20 74 68 69 s - (-num) = thi 0003a870: 73 20 2b 20 6e 75 6d 5c 6e 20 20 20 20 69 66 20 s + num\n if 0003a880: 28 6e 75 6d 2e 6e 65 67 61 74 69 76 65 20 21 3d (num.negative != 0003a890: 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 6e 75 = 0) {\n nu 0003a8a0: 6d 2e 6e 65 67 61 74 69 76 65 20 3d 20 30 3b 5c m.negative = 0;\ 0003a8b0: 6e 20 20 20 20 20 20 76 61 72 20 72 20 3d 20 74 n var r = t 0003a8c0: 68 69 73 2e 69 61 64 64 28 6e 75 6d 29 3b 5c 6e his.iadd(num);\n 0003a8d0: 20 20 20 20 20 20 6e 75 6d 2e 6e 65 67 61 74 69 num.negati 0003a8e0: 76 65 20 3d 20 31 3b 5c 6e 20 20 20 20 20 20 72 ve = 1;\n r 0003a8f0: 65 74 75 72 6e 20 72 2e 5f 6e 6f 72 6d 53 69 67 eturn r._normSig 0003a900: 6e 28 29 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 2d n();\n\n // - 0003a910: 74 68 69 73 20 2d 20 6e 75 6d 20 3d 20 2d 28 74 this - num = -(t 0003a920: 68 69 73 20 2b 20 6e 75 6d 29 5c 6e 20 20 20 20 his + num)\n 0003a930: 7d 20 65 6c 73 65 20 69 66 20 28 74 68 69 73 2e } else if (this. 0003a940: 6e 65 67 61 74 69 76 65 20 21 3d 3d 20 30 29 20 negative !== 0) 0003a950: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 6e 65 {\n this.ne 0003a960: 67 61 74 69 76 65 20 3d 20 30 3b 5c 6e 20 20 20 gative = 0;\n 0003a970: 20 20 20 74 68 69 73 2e 69 61 64 64 28 6e 75 6d this.iadd(num 0003a980: 29 3b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 6e );\n this.n 0003a990: 65 67 61 74 69 76 65 20 3d 20 31 3b 5c 6e 20 20 egative = 1;\n 0003a9a0: 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e return this. 0003a9b0: 5f 6e 6f 72 6d 53 69 67 6e 28 29 3b 5c 6e 20 20 _normSign();\n 0003a9c0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 41 74 }\n\n // At 0003a9d0: 20 74 68 69 73 20 70 6f 69 6e 74 20 62 6f 74 68 this point both 0003a9e0: 20 6e 75 6d 62 65 72 73 20 61 72 65 20 70 6f 73 numbers are pos 0003a9f0: 69 74 69 76 65 5c 6e 20 20 20 20 76 61 72 20 63 itive\n var c 0003aa00: 6d 70 20 3d 20 74 68 69 73 2e 63 6d 70 28 6e 75 mp = this.cmp(nu 0003aa10: 6d 29 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 4f 70 m);\n\n // Op 0003aa20: 74 69 6d 69 7a 61 74 69 6f 6e 20 2d 20 7a 65 72 timization - zer 0003aa30: 6f 69 66 79 5c 6e 20 20 20 20 69 66 20 28 63 6d oify\n if (cm 0003aa40: 70 20 3d 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 p === 0) {\n 0003aa50: 20 20 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 this.negative 0003aa60: 3d 20 30 3b 5c 6e 20 20 20 20 20 20 74 68 69 73 = 0;\n this 0003aa70: 2e 6c 65 6e 67 74 68 20 3d 20 31 3b 5c 6e 20 20 .length = 1;\n 0003aa80: 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 30 this.words[0 0003aa90: 5d 20 3d 20 30 3b 5c 6e 20 20 20 20 20 20 72 65 ] = 0;\n re 0003aaa0: 74 75 72 6e 20 74 68 69 73 3b 5c 6e 20 20 20 20 turn this;\n 0003aab0: 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 61 20 3e 20 }\n\n // a > 0003aac0: 62 5c 6e 20 20 20 20 76 61 72 20 61 2c 20 62 3b b\n var a, b; 0003aad0: 5c 6e 20 20 20 20 69 66 20 28 63 6d 70 20 3e 20 \n if (cmp > 0003aae0: 30 29 20 7b 5c 6e 20 20 20 20 20 20 61 20 3d 20 0) {\n a = 0003aaf0: 74 68 69 73 3b 5c 6e 20 20 20 20 20 20 62 20 3d this;\n b = 0003ab00: 20 6e 75 6d 3b 5c 6e 20 20 20 20 7d 20 65 6c 73 num;\n } els 0003ab10: 65 20 7b 5c 6e 20 20 20 20 20 20 61 20 3d 20 6e e {\n a = n 0003ab20: 75 6d 3b 5c 6e 20 20 20 20 20 20 62 20 3d 20 74 um;\n b = t 0003ab30: 68 69 73 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 his;\n }\n\n 0003ab40: 20 20 20 76 61 72 20 63 61 72 72 79 20 3d 20 30 var carry = 0 0003ab50: 3b 5c 6e 20 20 20 20 66 6f 72 20 28 76 61 72 20 ;\n for (var 0003ab60: 69 20 3d 20 30 3b 20 69 20 3c 20 62 2e 6c 65 6e i = 0; i < b.len 0003ab70: 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 gth; i++) {\n 0003ab80: 20 20 20 72 20 3d 20 28 61 2e 77 6f 72 64 73 5b r = (a.words[ 0003ab90: 69 5d 20 7c 20 30 29 20 2d 20 28 62 2e 77 6f 72 i] | 0) - (b.wor 0003aba0: 64 73 5b 69 5d 20 7c 20 30 29 20 2b 20 63 61 72 ds[i] | 0) + car 0003abb0: 72 79 3b 5c 6e 20 20 20 20 20 20 63 61 72 72 79 ry;\n carry 0003abc0: 20 3d 20 72 20 3e 3e 20 32 36 3b 5c 6e 20 20 20 = r >> 26;\n 0003abd0: 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d this.words[i] 0003abe0: 20 3d 20 72 20 26 20 30 78 33 66 66 66 66 66 66 = r & 0x3ffffff 0003abf0: 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 66 6f ;\n }\n fo 0003ac00: 72 20 28 3b 20 63 61 72 72 79 20 21 3d 3d 20 30 r (; carry !== 0 0003ac10: 20 26 26 20 69 20 3c 20 61 2e 6c 65 6e 67 74 68 && i < a.length 0003ac20: 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 ; i++) {\n 0003ac30: 72 20 3d 20 28 61 2e 77 6f 72 64 73 5b 69 5d 20 r = (a.words[i] 0003ac40: 7c 20 30 29 20 2b 20 63 61 72 72 79 3b 5c 6e 20 | 0) + carry;\n 0003ac50: 20 20 20 20 20 63 61 72 72 79 20 3d 20 72 20 3e carry = r > 0003ac60: 3e 20 32 36 3b 5c 6e 20 20 20 20 20 20 74 68 69 > 26;\n thi 0003ac70: 73 2e 77 6f 72 64 73 5b 69 5d 20 3d 20 72 20 26 s.words[i] = r & 0003ac80: 20 30 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 0x3ffffff;\n 0003ac90: 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 43 6f 70 }\n\n // Cop 0003aca0: 79 20 72 65 73 74 20 6f 66 20 74 68 65 20 77 6f y rest of the wo 0003acb0: 72 64 73 5c 6e 20 20 20 20 69 66 20 28 63 61 72 rds\n if (car 0003acc0: 72 79 20 3d 3d 3d 20 30 20 26 26 20 69 20 3c 20 ry === 0 && i < 0003acd0: 61 2e 6c 65 6e 67 74 68 20 26 26 20 61 20 21 3d a.length && a != 0003ace0: 3d 20 74 68 69 73 29 20 7b 5c 6e 20 20 20 20 20 = this) {\n 0003acf0: 20 66 6f 72 20 28 3b 20 69 20 3c 20 61 2e 6c 65 for (; i < a.le 0003ad00: 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 ngth; i++) {\n 0003ad10: 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 this.words 0003ad20: 5b 69 5d 20 3d 20 61 2e 77 6f 72 64 73 5b 69 5d [i] = a.words[i] 0003ad30: 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 ;\n }\n 0003ad40: 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 }\n\n this.le 0003ad50: 6e 67 74 68 20 3d 20 4d 61 74 68 2e 6d 61 78 28 ngth = Math.max( 0003ad60: 74 68 69 73 2e 6c 65 6e 67 74 68 2c 20 69 29 3b this.length, i); 0003ad70: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 61 20 21 3d \n\n if (a != 0003ad80: 3d 20 74 68 69 73 29 20 7b 5c 6e 20 20 20 20 20 = this) {\n 0003ad90: 20 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 3d this.negative = 0003ada0: 20 31 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 1;\n }\n\n 0003adb0: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 73 return this._s 0003adc0: 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c trip();\n };\n\ 0003add0: 6e 20 20 2f 2f 20 53 75 62 74 72 61 63 74 20 60 n // Subtract ` 0003ade0: 6e 75 6d 60 20 66 72 6f 6d 20 60 74 68 69 73 60 num` from `this` 0003adf0: 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 \n BN.prototype 0003ae00: 2e 73 75 62 20 3d 20 66 75 6e 63 74 69 6f 6e 20 .sub = function 0003ae10: 73 75 62 20 28 6e 75 6d 29 20 7b 5c 6e 20 20 20 sub (num) {\n 0003ae20: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f return this.clo 0003ae30: 6e 65 28 29 2e 69 73 75 62 28 6e 75 6d 29 3b 5c ne().isub(num);\ 0003ae40: 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 66 75 6e 63 74 n };\n\n funct 0003ae50: 69 6f 6e 20 73 6d 61 6c 6c 4d 75 6c 54 6f 20 28 ion smallMulTo ( 0003ae60: 73 65 6c 66 2c 20 6e 75 6d 2c 20 6f 75 74 29 20 self, num, out) 0003ae70: 7b 5c 6e 20 20 20 20 6f 75 74 2e 6e 65 67 61 74 {\n out.negat 0003ae80: 69 76 65 20 3d 20 6e 75 6d 2e 6e 65 67 61 74 69 ive = num.negati 0003ae90: 76 65 20 5e 20 73 65 6c 66 2e 6e 65 67 61 74 69 ve ^ self.negati 0003aea0: 76 65 3b 5c 6e 20 20 20 20 76 61 72 20 6c 65 6e ve;\n var len 0003aeb0: 20 3d 20 28 73 65 6c 66 2e 6c 65 6e 67 74 68 20 = (self.length 0003aec0: 2b 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 20 7c 20 + num.length) | 0003aed0: 30 3b 5c 6e 20 20 20 20 6f 75 74 2e 6c 65 6e 67 0;\n out.leng 0003aee0: 74 68 20 3d 20 6c 65 6e 3b 5c 6e 20 20 20 20 6c th = len;\n l 0003aef0: 65 6e 20 3d 20 28 6c 65 6e 20 2d 20 31 29 20 7c en = (len - 1) | 0003af00: 20 30 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 50 65 0;\n\n // Pe 0003af10: 65 6c 20 6f 6e 65 20 69 74 65 72 61 74 69 6f 6e el one iteration 0003af20: 20 28 63 6f 6d 70 69 6c 65 72 20 63 61 6e 27 74 (compiler can't 0003af30: 20 64 6f 20 69 74 2c 20 62 65 63 61 75 73 65 20 do it, because 0003af40: 6f 66 20 63 6f 64 65 20 63 6f 6d 70 6c 65 78 69 of code complexi 0003af50: 74 79 29 5c 6e 20 20 20 20 76 61 72 20 61 20 3d ty)\n var a = 0003af60: 20 73 65 6c 66 2e 77 6f 72 64 73 5b 30 5d 20 7c self.words[0] | 0003af70: 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 62 20 3d 0;\n var b = 0003af80: 20 6e 75 6d 2e 77 6f 72 64 73 5b 30 5d 20 7c 20 num.words[0] | 0003af90: 30 3b 5c 6e 20 20 20 20 76 61 72 20 72 20 3d 20 0;\n var r = 0003afa0: 61 20 2a 20 62 3b 5c 6e 5c 6e 20 20 20 20 76 61 a * b;\n\n va 0003afb0: 72 20 6c 6f 20 3d 20 72 20 26 20 30 78 33 66 66 r lo = r & 0x3ff 0003afc0: 66 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 63 ffff;\n var c 0003afd0: 61 72 72 79 20 3d 20 28 72 20 2f 20 30 78 34 30 arry = (r / 0x40 0003afe0: 30 30 30 30 30 29 20 7c 20 30 3b 5c 6e 20 20 20 00000) | 0;\n 0003aff0: 20 6f 75 74 2e 77 6f 72 64 73 5b 30 5d 20 3d 20 out.words[0] = 0003b000: 6c 6f 3b 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 lo;\n\n for ( 0003b010: 76 61 72 20 6b 20 3d 20 31 3b 20 6b 20 3c 20 6c var k = 1; k < l 0003b020: 65 6e 3b 20 6b 2b 2b 29 20 7b 5c 6e 20 20 20 20 en; k++) {\n 0003b030: 20 20 2f 2f 20 53 75 6d 20 61 6c 6c 20 77 6f 72 // Sum all wor 0003b040: 64 73 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 ds with the same 0003b050: 20 60 69 20 2b 20 6a 20 3d 20 6b 60 20 61 6e 64 `i + j = k` and 0003b060: 20 61 63 63 75 6d 75 6c 61 74 65 20 60 6e 63 61 accumulate `nca 0003b070: 72 72 79 60 2c 5c 6e 20 20 20 20 20 20 2f 2f 20 rry`,\n // 0003b080: 6e 6f 74 65 20 74 68 61 74 20 6e 63 61 72 72 79 note that ncarry 0003b090: 20 63 6f 75 6c 64 20 62 65 20 3e 3d 20 30 78 33 could be >= 0x3 0003b0a0: 66 66 66 66 66 66 5c 6e 20 20 20 20 20 20 76 61 ffffff\n va 0003b0b0: 72 20 6e 63 61 72 72 79 20 3d 20 63 61 72 72 79 r ncarry = carry 0003b0c0: 20 3e 3e 3e 20 32 36 3b 5c 6e 20 20 20 20 20 20 >>> 26;\n 0003b0d0: 76 61 72 20 72 77 6f 72 64 20 3d 20 63 61 72 72 var rword = carr 0003b0e0: 79 20 26 20 30 78 33 66 66 66 66 66 66 3b 5c 6e y & 0x3ffffff;\n 0003b0f0: 20 20 20 20 20 20 76 61 72 20 6d 61 78 4a 20 3d var maxJ = 0003b100: 20 4d 61 74 68 2e 6d 69 6e 28 6b 2c 20 6e 75 6d Math.min(k, num 0003b110: 2e 6c 65 6e 67 74 68 20 2d 20 31 29 3b 5c 6e 20 .length - 1);\n 0003b120: 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 6a 20 for (var j 0003b130: 3d 20 4d 61 74 68 2e 6d 61 78 28 30 2c 20 6b 20 = Math.max(0, k 0003b140: 2d 20 73 65 6c 66 2e 6c 65 6e 67 74 68 20 2b 20 - self.length + 0003b150: 31 29 3b 20 6a 20 3c 3d 20 6d 61 78 4a 3b 20 6a 1); j <= maxJ; j 0003b160: 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 76 ++) {\n v 0003b170: 61 72 20 69 20 3d 20 28 6b 20 2d 20 6a 29 20 7c ar i = (k - j) | 0003b180: 20 30 3b 5c 6e 20 20 20 20 20 20 20 20 61 20 3d 0;\n a = 0003b190: 20 73 65 6c 66 2e 77 6f 72 64 73 5b 69 5d 20 7c self.words[i] | 0003b1a0: 20 30 3b 5c 6e 20 20 20 20 20 20 20 20 62 20 3d 0;\n b = 0003b1b0: 20 6e 75 6d 2e 77 6f 72 64 73 5b 6a 5d 20 7c 20 num.words[j] | 0003b1c0: 30 3b 5c 6e 20 20 20 20 20 20 20 20 72 20 3d 20 0;\n r = 0003b1d0: 61 20 2a 20 62 20 2b 20 72 77 6f 72 64 3b 5c 6e a * b + rword;\n 0003b1e0: 20 20 20 20 20 20 20 20 6e 63 61 72 72 79 20 2b ncarry + 0003b1f0: 3d 20 28 72 20 2f 20 30 78 34 30 30 30 30 30 30 = (r / 0x4000000 0003b200: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 20 20 20 20 ) | 0;\n 0003b210: 72 77 6f 72 64 20 3d 20 72 20 26 20 30 78 33 66 rword = r & 0x3f 0003b220: 66 66 66 66 66 3b 5c 6e 20 20 20 20 20 20 7d 5c fffff;\n }\ 0003b230: 6e 20 20 20 20 20 20 6f 75 74 2e 77 6f 72 64 73 n out.words 0003b240: 5b 6b 5d 20 3d 20 72 77 6f 72 64 20 7c 20 30 3b [k] = rword | 0; 0003b250: 5c 6e 20 20 20 20 20 20 63 61 72 72 79 20 3d 20 \n carry = 0003b260: 6e 63 61 72 72 79 20 7c 20 30 3b 5c 6e 20 20 20 ncarry | 0;\n 0003b270: 20 7d 5c 6e 20 20 20 20 69 66 20 28 63 61 72 72 }\n if (carr 0003b280: 79 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 y !== 0) {\n 0003b290: 20 20 6f 75 74 2e 77 6f 72 64 73 5b 6b 5d 20 3d out.words[k] = 0003b2a0: 20 63 61 72 72 79 20 7c 20 30 3b 5c 6e 20 20 20 carry | 0;\n 0003b2b0: 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 20 } else {\n 0003b2c0: 20 6f 75 74 2e 6c 65 6e 67 74 68 2d 2d 3b 5c 6e out.length--;\n 0003b2d0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 }\n\n ret 0003b2e0: 75 72 6e 20 6f 75 74 2e 5f 73 74 72 69 70 28 29 urn out._strip() 0003b2f0: 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 54 ;\n }\n\n // T 0003b300: 4f 44 4f 28 69 6e 64 75 74 6e 79 29 3a 20 69 74 ODO(indutny): it 0003b310: 20 6d 61 79 20 62 65 20 72 65 61 73 6f 6e 61 62 may be reasonab 0003b320: 6c 65 20 74 6f 20 6f 6d 69 74 20 69 74 20 66 6f le to omit it fo 0003b330: 72 20 75 73 65 72 73 20 77 68 6f 20 64 6f 6e 27 r users who don' 0003b340: 74 20 6e 65 65 64 5c 6e 20 20 2f 2f 20 74 6f 20 t need\n // to 0003b350: 77 6f 72 6b 20 77 69 74 68 20 32 35 36 2d 62 69 work with 256-bi 0003b360: 74 20 6e 75 6d 62 65 72 73 2c 20 6f 74 68 65 72 t numbers, other 0003b370: 77 69 73 65 20 69 74 20 67 69 76 65 73 20 32 30 wise it gives 20 0003b380: 25 20 69 6d 70 72 6f 76 65 6d 65 6e 74 20 66 6f % improvement fo 0003b390: 72 20 32 35 36 2d 62 69 74 5c 6e 20 20 2f 2f 20 r 256-bit\n // 0003b3a0: 6d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 20 28 multiplication ( 0003b3b0: 6c 69 6b 65 20 65 6c 6c 69 70 74 69 63 20 73 65 like elliptic se 0003b3c0: 63 70 32 35 36 6b 31 29 2e 5c 6e 20 20 76 61 72 cp256k1).\n var 0003b3d0: 20 63 6f 6d 62 31 30 4d 75 6c 54 6f 20 3d 20 66 comb10MulTo = f 0003b3e0: 75 6e 63 74 69 6f 6e 20 63 6f 6d 62 31 30 4d 75 unction comb10Mu 0003b3f0: 6c 54 6f 20 28 73 65 6c 66 2c 20 6e 75 6d 2c 20 lTo (self, num, 0003b400: 6f 75 74 29 20 7b 5c 6e 20 20 20 20 76 61 72 20 out) {\n var 0003b410: 61 20 3d 20 73 65 6c 66 2e 77 6f 72 64 73 3b 5c a = self.words;\ 0003b420: 6e 20 20 20 20 76 61 72 20 62 20 3d 20 6e 75 6d n var b = num 0003b430: 2e 77 6f 72 64 73 3b 5c 6e 20 20 20 20 76 61 72 .words;\n var 0003b440: 20 6f 20 3d 20 6f 75 74 2e 77 6f 72 64 73 3b 5c o = out.words;\ 0003b450: 6e 20 20 20 20 76 61 72 20 63 20 3d 20 30 3b 5c n var c = 0;\ 0003b460: 6e 20 20 20 20 76 61 72 20 6c 6f 3b 5c 6e 20 20 n var lo;\n 0003b470: 20 20 76 61 72 20 6d 69 64 3b 5c 6e 20 20 20 20 var mid;\n 0003b480: 76 61 72 20 68 69 3b 5c 6e 20 20 20 20 76 61 72 var hi;\n var 0003b490: 20 61 30 20 3d 20 61 5b 30 5d 20 7c 20 30 3b 5c a0 = a[0] | 0;\ 0003b4a0: 6e 20 20 20 20 76 61 72 20 61 6c 30 20 3d 20 61 n var al0 = a 0003b4b0: 30 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 0 & 0x1fff;\n 0003b4c0: 20 76 61 72 20 61 68 30 20 3d 20 61 30 20 3e 3e var ah0 = a0 >> 0003b4d0: 3e 20 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 61 > 13;\n var a 0003b4e0: 31 20 3d 20 61 5b 31 5d 20 7c 20 30 3b 5c 6e 20 1 = a[1] | 0;\n 0003b4f0: 20 20 20 76 61 72 20 61 6c 31 20 3d 20 61 31 20 var al1 = a1 0003b500: 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 & 0x1fff;\n v 0003b510: 61 72 20 61 68 31 20 3d 20 61 31 20 3e 3e 3e 20 ar ah1 = a1 >>> 0003b520: 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 61 32 20 13;\n var a2 0003b530: 3d 20 61 5b 32 5d 20 7c 20 30 3b 5c 6e 20 20 20 = a[2] | 0;\n 0003b540: 20 76 61 72 20 61 6c 32 20 3d 20 61 32 20 26 20 var al2 = a2 & 0003b550: 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 0x1fff;\n var 0003b560: 20 61 68 32 20 3d 20 61 32 20 3e 3e 3e 20 31 33 ah2 = a2 >>> 13 0003b570: 3b 5c 6e 20 20 20 20 76 61 72 20 61 33 20 3d 20 ;\n var a3 = 0003b580: 61 5b 33 5d 20 7c 20 30 3b 5c 6e 20 20 20 20 76 a[3] | 0;\n v 0003b590: 61 72 20 61 6c 33 20 3d 20 61 33 20 26 20 30 78 ar al3 = a3 & 0x 0003b5a0: 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 61 1fff;\n var a 0003b5b0: 68 33 20 3d 20 61 33 20 3e 3e 3e 20 31 33 3b 5c h3 = a3 >>> 13;\ 0003b5c0: 6e 20 20 20 20 76 61 72 20 61 34 20 3d 20 61 5b n var a4 = a[ 0003b5d0: 34 5d 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 4] | 0;\n var 0003b5e0: 20 61 6c 34 20 3d 20 61 34 20 26 20 30 78 31 66 al4 = a4 & 0x1f 0003b5f0: 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 61 68 34 ff;\n var ah4 0003b600: 20 3d 20 61 34 20 3e 3e 3e 20 31 33 3b 5c 6e 20 = a4 >>> 13;\n 0003b610: 20 20 20 76 61 72 20 61 35 20 3d 20 61 5b 35 5d var a5 = a[5] 0003b620: 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 61 | 0;\n var a 0003b630: 6c 35 20 3d 20 61 35 20 26 20 30 78 31 66 66 66 l5 = a5 & 0x1fff 0003b640: 3b 5c 6e 20 20 20 20 76 61 72 20 61 68 35 20 3d ;\n var ah5 = 0003b650: 20 61 35 20 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 a5 >>> 13;\n 0003b660: 20 76 61 72 20 61 36 20 3d 20 61 5b 36 5d 20 7c var a6 = a[6] | 0003b670: 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 61 6c 36 0;\n var al6 0003b680: 20 3d 20 61 36 20 26 20 30 78 31 66 66 66 3b 5c = a6 & 0x1fff;\ 0003b690: 6e 20 20 20 20 76 61 72 20 61 68 36 20 3d 20 61 n var ah6 = a 0003b6a0: 36 20 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 20 76 6 >>> 13;\n v 0003b6b0: 61 72 20 61 37 20 3d 20 61 5b 37 5d 20 7c 20 30 ar a7 = a[7] | 0 0003b6c0: 3b 5c 6e 20 20 20 20 76 61 72 20 61 6c 37 20 3d ;\n var al7 = 0003b6d0: 20 61 37 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 a7 & 0x1fff;\n 0003b6e0: 20 20 20 76 61 72 20 61 68 37 20 3d 20 61 37 20 var ah7 = a7 0003b6f0: 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 20 76 61 72 >>> 13;\n var 0003b700: 20 61 38 20 3d 20 61 5b 38 5d 20 7c 20 30 3b 5c a8 = a[8] | 0;\ 0003b710: 6e 20 20 20 20 76 61 72 20 61 6c 38 20 3d 20 61 n var al8 = a 0003b720: 38 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 8 & 0x1fff;\n 0003b730: 20 76 61 72 20 61 68 38 20 3d 20 61 38 20 3e 3e var ah8 = a8 >> 0003b740: 3e 20 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 61 > 13;\n var a 0003b750: 39 20 3d 20 61 5b 39 5d 20 7c 20 30 3b 5c 6e 20 9 = a[9] | 0;\n 0003b760: 20 20 20 76 61 72 20 61 6c 39 20 3d 20 61 39 20 var al9 = a9 0003b770: 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 & 0x1fff;\n v 0003b780: 61 72 20 61 68 39 20 3d 20 61 39 20 3e 3e 3e 20 ar ah9 = a9 >>> 0003b790: 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 62 30 20 13;\n var b0 0003b7a0: 3d 20 62 5b 30 5d 20 7c 20 30 3b 5c 6e 20 20 20 = b[0] | 0;\n 0003b7b0: 20 76 61 72 20 62 6c 30 20 3d 20 62 30 20 26 20 var bl0 = b0 & 0003b7c0: 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 0x1fff;\n var 0003b7d0: 20 62 68 30 20 3d 20 62 30 20 3e 3e 3e 20 31 33 bh0 = b0 >>> 13 0003b7e0: 3b 5c 6e 20 20 20 20 76 61 72 20 62 31 20 3d 20 ;\n var b1 = 0003b7f0: 62 5b 31 5d 20 7c 20 30 3b 5c 6e 20 20 20 20 76 b[1] | 0;\n v 0003b800: 61 72 20 62 6c 31 20 3d 20 62 31 20 26 20 30 78 ar bl1 = b1 & 0x 0003b810: 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 62 1fff;\n var b 0003b820: 68 31 20 3d 20 62 31 20 3e 3e 3e 20 31 33 3b 5c h1 = b1 >>> 13;\ 0003b830: 6e 20 20 20 20 76 61 72 20 62 32 20 3d 20 62 5b n var b2 = b[ 0003b840: 32 5d 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 2] | 0;\n var 0003b850: 20 62 6c 32 20 3d 20 62 32 20 26 20 30 78 31 66 bl2 = b2 & 0x1f 0003b860: 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 62 68 32 ff;\n var bh2 0003b870: 20 3d 20 62 32 20 3e 3e 3e 20 31 33 3b 5c 6e 20 = b2 >>> 13;\n 0003b880: 20 20 20 76 61 72 20 62 33 20 3d 20 62 5b 33 5d var b3 = b[3] 0003b890: 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 62 | 0;\n var b 0003b8a0: 6c 33 20 3d 20 62 33 20 26 20 30 78 31 66 66 66 l3 = b3 & 0x1fff 0003b8b0: 3b 5c 6e 20 20 20 20 76 61 72 20 62 68 33 20 3d ;\n var bh3 = 0003b8c0: 20 62 33 20 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 b3 >>> 13;\n 0003b8d0: 20 76 61 72 20 62 34 20 3d 20 62 5b 34 5d 20 7c var b4 = b[4] | 0003b8e0: 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 62 6c 34 0;\n var bl4 0003b8f0: 20 3d 20 62 34 20 26 20 30 78 31 66 66 66 3b 5c = b4 & 0x1fff;\ 0003b900: 6e 20 20 20 20 76 61 72 20 62 68 34 20 3d 20 62 n var bh4 = b 0003b910: 34 20 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 20 76 4 >>> 13;\n v 0003b920: 61 72 20 62 35 20 3d 20 62 5b 35 5d 20 7c 20 30 ar b5 = b[5] | 0 0003b930: 3b 5c 6e 20 20 20 20 76 61 72 20 62 6c 35 20 3d ;\n var bl5 = 0003b940: 20 62 35 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 b5 & 0x1fff;\n 0003b950: 20 20 20 76 61 72 20 62 68 35 20 3d 20 62 35 20 var bh5 = b5 0003b960: 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 20 76 61 72 >>> 13;\n var 0003b970: 20 62 36 20 3d 20 62 5b 36 5d 20 7c 20 30 3b 5c b6 = b[6] | 0;\ 0003b980: 6e 20 20 20 20 76 61 72 20 62 6c 36 20 3d 20 62 n var bl6 = b 0003b990: 36 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 6 & 0x1fff;\n 0003b9a0: 20 76 61 72 20 62 68 36 20 3d 20 62 36 20 3e 3e var bh6 = b6 >> 0003b9b0: 3e 20 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 62 > 13;\n var b 0003b9c0: 37 20 3d 20 62 5b 37 5d 20 7c 20 30 3b 5c 6e 20 7 = b[7] | 0;\n 0003b9d0: 20 20 20 76 61 72 20 62 6c 37 20 3d 20 62 37 20 var bl7 = b7 0003b9e0: 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 & 0x1fff;\n v 0003b9f0: 61 72 20 62 68 37 20 3d 20 62 37 20 3e 3e 3e 20 ar bh7 = b7 >>> 0003ba00: 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 62 38 20 13;\n var b8 0003ba10: 3d 20 62 5b 38 5d 20 7c 20 30 3b 5c 6e 20 20 20 = b[8] | 0;\n 0003ba20: 20 76 61 72 20 62 6c 38 20 3d 20 62 38 20 26 20 var bl8 = b8 & 0003ba30: 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 0x1fff;\n var 0003ba40: 20 62 68 38 20 3d 20 62 38 20 3e 3e 3e 20 31 33 bh8 = b8 >>> 13 0003ba50: 3b 5c 6e 20 20 20 20 76 61 72 20 62 39 20 3d 20 ;\n var b9 = 0003ba60: 62 5b 39 5d 20 7c 20 30 3b 5c 6e 20 20 20 20 76 b[9] | 0;\n v 0003ba70: 61 72 20 62 6c 39 20 3d 20 62 39 20 26 20 30 78 ar bl9 = b9 & 0x 0003ba80: 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 62 1fff;\n var b 0003ba90: 68 39 20 3d 20 62 39 20 3e 3e 3e 20 31 33 3b 5c h9 = b9 >>> 13;\ 0003baa0: 6e 5c 6e 20 20 20 20 6f 75 74 2e 6e 65 67 61 74 n\n out.negat 0003bab0: 69 76 65 20 3d 20 73 65 6c 66 2e 6e 65 67 61 74 ive = self.negat 0003bac0: 69 76 65 20 5e 20 6e 75 6d 2e 6e 65 67 61 74 69 ive ^ num.negati 0003bad0: 76 65 3b 5c 6e 20 20 20 20 6f 75 74 2e 6c 65 6e ve;\n out.len 0003bae0: 67 74 68 20 3d 20 31 39 3b 5c 6e 20 20 20 20 2f gth = 19;\n / 0003baf0: 2a 20 6b 20 3d 20 30 20 2a 2f 5c 6e 20 20 20 20 * k = 0 */\n 0003bb00: 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo = Math.imul(a 0003bb10: 6c 30 2c 20 62 6c 30 29 3b 5c 6e 20 20 20 20 6d l0, bl0);\n m 0003bb20: 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id = Math.imul(a 0003bb30: 6c 30 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 6d l0, bh0);\n m 0003bb40: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003bb50: 2e 69 6d 75 6c 28 61 68 30 2c 20 62 6c 30 29 29 .imul(ah0, bl0)) 0003bb60: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003bb70: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 2c 20 62 Math.imul(ah0, b 0003bb80: 68 30 29 3b 5c 6e 20 20 20 20 76 61 72 20 77 30 h0);\n var w0 0003bb90: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003bba0: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003bbb0: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003bbc0: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003bbd0: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003bbe0: 20 7c 20 30 29 20 2b 20 28 77 30 20 3e 3e 3e 20 | 0) + (w0 >>> 0003bbf0: 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 77 26)) | 0;\n w 0003bc00: 30 20 26 3d 20 30 78 33 66 66 66 66 66 66 3b 5c 0 &= 0x3ffffff;\ 0003bc10: 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 31 20 2a 2f n /* k = 1 */ 0003bc20: 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e \n lo = Math. 0003bc30: 69 6d 75 6c 28 61 6c 31 2c 20 62 6c 30 29 3b 5c imul(al1, bl0);\ 0003bc40: 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e n mid = Math. 0003bc50: 69 6d 75 6c 28 61 6c 31 2c 20 62 68 30 29 3b 5c imul(al1, bh0);\ 0003bc60: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003bc70: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c + Math.imul(ah1, 0003bc80: 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl0)) | 0;\n 0003bc90: 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 hi = Math.imul( 0003bca0: 61 68 31 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 ah1, bh0);\n 0003bcb0: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003bcc0: 69 6d 75 6c 28 61 6c 30 2c 20 62 6c 31 29 29 20 imul(al0, bl1)) 0003bcd0: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003bce0: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003bcf0: 28 61 6c 30 2c 20 62 68 31 29 29 20 7c 20 30 3b (al0, bh1)) | 0; 0003bd00: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003bd10: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 + Math.imul(ah0 0003bd20: 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl1)) | 0;\n 0003bd30: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003bd40: 68 2e 69 6d 75 6c 28 61 68 30 2c 20 62 68 31 29 h.imul(ah0, bh1) 0003bd50: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 ) | 0;\n var 0003bd60: 77 31 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 w1 = (((c + lo) 0003bd70: 7c 20 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 | 0) + ((mid & 0 0003bd80: 78 31 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c x1fff) << 13)) | 0003bd90: 20 30 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 0;\n c = ((( 0003bda0: 68 69 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 hi + (mid >>> 13 0003bdb0: 29 29 20 7c 20 30 29 20 2b 20 28 77 31 20 3e 3e )) | 0) + (w1 >> 0003bdc0: 3e 20 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 > 26)) | 0;\n 0003bdd0: 20 77 31 20 26 3d 20 30 78 33 66 66 66 66 66 66 w1 &= 0x3ffffff 0003bde0: 3b 5c 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 32 20 ;\n /* k = 2 0003bdf0: 2a 2f 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 */\n lo = Mat 0003be00: 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 6c 30 29 h.imul(al2, bl0) 0003be10: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 ;\n mid = Mat 0003be20: 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 30 29 h.imul(al2, bh0) 0003be30: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003be40: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 d + Math.imul(ah 0003be50: 32 2c 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 2, bl0)) | 0;\n 0003be60: 20 20 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 hi = Math.imu 0003be70: 6c 28 61 68 32 2c 20 62 68 30 29 3b 5c 6e 20 20 l(ah2, bh0);\n 0003be80: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003be90: 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c 31 29 h.imul(al1, bl1) 0003bea0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003beb0: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003bec0: 75 6c 28 61 6c 31 2c 20 62 68 31 29 29 20 7c 20 ul(al1, bh1)) | 0003bed0: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003bee0: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003bef0: 68 31 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e h1, bl1)) | 0;\n 0003bf00: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003bf10: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 68 ath.imul(ah1, bh 0003bf20: 31 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 1)) | 0;\n lo 0003bf30: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003bf40: 75 6c 28 61 6c 30 2c 20 62 6c 32 29 29 20 7c 20 ul(al0, bl2)) | 0003bf50: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003bf60: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003bf70: 6c 30 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e l0, bh2)) | 0;\n 0003bf80: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003bf90: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 2c 20 Math.imul(ah0, 0003bfa0: 62 6c 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl2)) | 0;\n 0003bfb0: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003bfc0: 69 6d 75 6c 28 61 68 30 2c 20 62 68 32 29 29 20 imul(ah0, bh2)) 0003bfd0: 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 77 32 | 0;\n var w2 0003bfe0: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003bff0: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003c000: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003c010: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003c020: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003c030: 20 7c 20 30 29 20 2b 20 28 77 32 20 3e 3e 3e 20 | 0) + (w2 >>> 0003c040: 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 77 26)) | 0;\n w 0003c050: 32 20 26 3d 20 30 78 33 66 66 66 66 66 66 3b 5c 2 &= 0x3ffffff;\ 0003c060: 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 33 20 2a 2f n /* k = 3 */ 0003c070: 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e \n lo = Math. 0003c080: 69 6d 75 6c 28 61 6c 33 2c 20 62 6c 30 29 3b 5c imul(al3, bl0);\ 0003c090: 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e n mid = Math. 0003c0a0: 69 6d 75 6c 28 61 6c 33 2c 20 62 68 30 29 3b 5c imul(al3, bh0);\ 0003c0b0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003c0c0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 33 2c + Math.imul(ah3, 0003c0d0: 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl0)) | 0;\n 0003c0e0: 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 hi = Math.imul( 0003c0f0: 61 68 33 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 ah3, bh0);\n 0003c100: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003c110: 69 6d 75 6c 28 61 6c 32 2c 20 62 6c 31 29 29 20 imul(al2, bl1)) 0003c120: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003c130: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003c140: 28 61 6c 32 2c 20 62 68 31 29 29 20 7c 20 30 3b (al2, bh1)) | 0; 0003c150: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003c160: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 + Math.imul(ah2 0003c170: 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl1)) | 0;\n 0003c180: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003c190: 68 2e 69 6d 75 6c 28 61 68 32 2c 20 62 68 31 29 h.imul(ah2, bh1) 0003c1a0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003c1b0: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003c1c0: 28 61 6c 31 2c 20 62 6c 32 29 29 20 7c 20 30 3b (al1, bl2)) | 0; 0003c1d0: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003c1e0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 31 + Math.imul(al1 0003c1f0: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003c200: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003c210: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 6c ath.imul(ah1, bl 0003c220: 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 2)) | 0;\n hi 0003c230: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003c240: 75 6c 28 61 68 31 2c 20 62 68 32 29 29 20 7c 20 ul(ah1, bh2)) | 0003c250: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003c260: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 30 + Math.imul(al0 0003c270: 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl3)) | 0;\n 0003c280: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003c290: 61 74 68 2e 69 6d 75 6c 28 61 6c 30 2c 20 62 68 ath.imul(al0, bh 0003c2a0: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 3)) | 0;\n mi 0003c2b0: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003c2c0: 69 6d 75 6c 28 61 68 30 2c 20 62 6c 33 29 29 20 imul(ah0, bl3)) 0003c2d0: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003c2e0: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003c2f0: 68 30 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c 6e h0, bh3)) | 0;\n 0003c300: 20 20 20 20 76 61 72 20 77 33 20 3d 20 28 28 28 var w3 = ((( 0003c310: 63 20 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 c + lo) | 0) + ( 0003c320: 28 6d 69 64 20 26 20 30 78 31 66 66 66 29 20 3c (mid & 0x1fff) < 0003c330: 3c 20 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 < 13)) | 0;\n 0003c340: 20 63 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 c = (((hi + (mi 0003c350: 64 20 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 d >>> 13)) | 0) 0003c360: 2b 20 28 77 33 20 3e 3e 3e 20 32 36 29 29 20 7c + (w3 >>> 26)) | 0003c370: 20 30 3b 5c 6e 20 20 20 20 77 33 20 26 3d 20 30 0;\n w3 &= 0 0003c380: 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 20 2f x3ffffff;\n / 0003c390: 2a 20 6b 20 3d 20 34 20 2a 2f 5c 6e 20 20 20 20 * k = 4 */\n 0003c3a0: 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo = Math.imul(a 0003c3b0: 6c 34 2c 20 62 6c 30 29 3b 5c 6e 20 20 20 20 6d l4, bl0);\n m 0003c3c0: 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id = Math.imul(a 0003c3d0: 6c 34 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 6d l4, bh0);\n m 0003c3e0: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003c3f0: 2e 69 6d 75 6c 28 61 68 34 2c 20 62 6c 30 29 29 .imul(ah4, bl0)) 0003c400: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003c410: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 Math.imul(ah4, b 0003c420: 68 30 29 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 h0);\n lo = ( 0003c430: 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo + Math.imul(a 0003c440: 6c 33 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e l3, bl1)) | 0;\n 0003c450: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003c460: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 Math.imul(al3, 0003c470: 62 68 31 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh1)) | 0;\n 0003c480: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003c490: 68 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c 31 29 h.imul(ah3, bl1) 0003c4a0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d ) | 0;\n hi = 0003c4b0: 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (hi + Math.imul 0003c4c0: 28 61 68 33 2c 20 62 68 31 29 29 20 7c 20 30 3b (ah3, bh1)) | 0; 0003c4d0: 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b \n lo = (lo + 0003c4e0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 Math.imul(al2, 0003c4f0: 62 6c 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl2)) | 0;\n 0003c500: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003c510: 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 32 29 h.imul(al2, bh2) 0003c520: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003c530: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003c540: 75 6c 28 61 68 32 2c 20 62 6c 32 29 29 20 7c 20 ul(ah2, bl2)) | 0003c550: 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 0;\n hi = (hi 0003c560: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 + Math.imul(ah2 0003c570: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003c580: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003c590: 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c 33 29 h.imul(al1, bl3) 0003c5a0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003c5b0: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003c5c0: 75 6c 28 61 6c 31 2c 20 62 68 33 29 29 20 7c 20 ul(al1, bh3)) | 0003c5d0: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003c5e0: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003c5f0: 68 31 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e h1, bl3)) | 0;\n 0003c600: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003c610: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 68 ath.imul(ah1, bh 0003c620: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 3)) | 0;\n lo 0003c630: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003c640: 75 6c 28 61 6c 30 2c 20 62 6c 34 29 29 20 7c 20 ul(al0, bl4)) | 0003c650: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003c660: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003c670: 6c 30 2c 20 62 68 34 29 29 20 7c 20 30 3b 5c 6e l0, bh4)) | 0;\n 0003c680: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003c690: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 2c 20 Math.imul(ah0, 0003c6a0: 62 6c 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl4)) | 0;\n 0003c6b0: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003c6c0: 69 6d 75 6c 28 61 68 30 2c 20 62 68 34 29 29 20 imul(ah0, bh4)) 0003c6d0: 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 77 34 | 0;\n var w4 0003c6e0: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003c6f0: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003c700: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003c710: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003c720: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003c730: 20 7c 20 30 29 20 2b 20 28 77 34 20 3e 3e 3e 20 | 0) + (w4 >>> 0003c740: 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 77 26)) | 0;\n w 0003c750: 34 20 26 3d 20 30 78 33 66 66 66 66 66 66 3b 5c 4 &= 0x3ffffff;\ 0003c760: 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 35 20 2a 2f n /* k = 5 */ 0003c770: 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e \n lo = Math. 0003c780: 69 6d 75 6c 28 61 6c 35 2c 20 62 6c 30 29 3b 5c imul(al5, bl0);\ 0003c790: 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e n mid = Math. 0003c7a0: 69 6d 75 6c 28 61 6c 35 2c 20 62 68 30 29 3b 5c imul(al5, bh0);\ 0003c7b0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003c7c0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c + Math.imul(ah5, 0003c7d0: 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl0)) | 0;\n 0003c7e0: 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 hi = Math.imul( 0003c7f0: 61 68 35 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 ah5, bh0);\n 0003c800: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003c810: 69 6d 75 6c 28 61 6c 34 2c 20 62 6c 31 29 29 20 imul(al4, bl1)) 0003c820: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003c830: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003c840: 28 61 6c 34 2c 20 62 68 31 29 29 20 7c 20 30 3b (al4, bh1)) | 0; 0003c850: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003c860: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 + Math.imul(ah4 0003c870: 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl1)) | 0;\n 0003c880: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003c890: 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 68 31 29 h.imul(ah4, bh1) 0003c8a0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003c8b0: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003c8c0: 28 61 6c 33 2c 20 62 6c 32 29 29 20 7c 20 30 3b (al3, bl2)) | 0; 0003c8d0: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003c8e0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 + Math.imul(al3 0003c8f0: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003c900: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003c910: 61 74 68 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c ath.imul(ah3, bl 0003c920: 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 2)) | 0;\n hi 0003c930: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003c940: 75 6c 28 61 68 33 2c 20 62 68 32 29 29 20 7c 20 ul(ah3, bh2)) | 0003c950: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003c960: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 + Math.imul(al2 0003c970: 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl3)) | 0;\n 0003c980: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003c990: 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 ath.imul(al2, bh 0003c9a0: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 3)) | 0;\n mi 0003c9b0: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003c9c0: 69 6d 75 6c 28 61 68 32 2c 20 62 6c 33 29 29 20 imul(ah2, bl3)) 0003c9d0: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003c9e0: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003c9f0: 68 32 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c 6e h2, bh3)) | 0;\n 0003ca00: 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d lo = (lo + M 0003ca10: 61 74 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c ath.imul(al1, bl 0003ca20: 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 4)) | 0;\n mi 0003ca30: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003ca40: 69 6d 75 6c 28 61 6c 31 2c 20 62 68 34 29 29 20 imul(al1, bh4)) 0003ca50: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003ca60: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003ca70: 28 61 68 31 2c 20 62 6c 34 29 29 20 7c 20 30 3b (ah1, bl4)) | 0; 0003ca80: 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b \n hi = (hi + 0003ca90: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 Math.imul(ah1, 0003caa0: 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh4)) | 0;\n 0003cab0: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003cac0: 69 6d 75 6c 28 61 6c 30 2c 20 62 6c 35 29 29 20 imul(al0, bl5)) 0003cad0: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003cae0: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003caf0: 28 61 6c 30 2c 20 62 68 35 29 29 20 7c 20 30 3b (al0, bh5)) | 0; 0003cb00: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003cb10: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 + Math.imul(ah0 0003cb20: 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl5)) | 0;\n 0003cb30: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003cb40: 68 2e 69 6d 75 6c 28 61 68 30 2c 20 62 68 35 29 h.imul(ah0, bh5) 0003cb50: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 ) | 0;\n var 0003cb60: 77 35 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 w5 = (((c + lo) 0003cb70: 7c 20 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 | 0) + ((mid & 0 0003cb80: 78 31 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c x1fff) << 13)) | 0003cb90: 20 30 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 0;\n c = ((( 0003cba0: 68 69 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 hi + (mid >>> 13 0003cbb0: 29 29 20 7c 20 30 29 20 2b 20 28 77 35 20 3e 3e )) | 0) + (w5 >> 0003cbc0: 3e 20 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 > 26)) | 0;\n 0003cbd0: 20 77 35 20 26 3d 20 30 78 33 66 66 66 66 66 66 w5 &= 0x3ffffff 0003cbe0: 3b 5c 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 36 20 ;\n /* k = 6 0003cbf0: 2a 2f 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 */\n lo = Mat 0003cc00: 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 6c 30 29 h.imul(al6, bl0) 0003cc10: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 ;\n mid = Mat 0003cc20: 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 68 30 29 h.imul(al6, bh0) 0003cc30: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003cc40: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 d + Math.imul(ah 0003cc50: 36 2c 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 6, bl0)) | 0;\n 0003cc60: 20 20 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 hi = Math.imu 0003cc70: 6c 28 61 68 36 2c 20 62 68 30 29 3b 5c 6e 20 20 l(ah6, bh0);\n 0003cc80: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003cc90: 68 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 6c 31 29 h.imul(al5, bl1) 0003cca0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003ccb0: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003ccc0: 75 6c 28 61 6c 35 2c 20 62 68 31 29 29 20 7c 20 ul(al5, bh1)) | 0003ccd0: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003cce0: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003ccf0: 68 35 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e h5, bl1)) | 0;\n 0003cd00: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003cd10: 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 62 68 ath.imul(ah5, bh 0003cd20: 31 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 1)) | 0;\n lo 0003cd30: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003cd40: 75 6c 28 61 6c 34 2c 20 62 6c 32 29 29 20 7c 20 ul(al4, bl2)) | 0003cd50: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003cd60: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003cd70: 6c 34 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e l4, bh2)) | 0;\n 0003cd80: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003cd90: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 Math.imul(ah4, 0003cda0: 62 6c 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl2)) | 0;\n 0003cdb0: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003cdc0: 69 6d 75 6c 28 61 68 34 2c 20 62 68 32 29 29 20 imul(ah4, bh2)) 0003cdd0: 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 | 0;\n lo = ( 0003cde0: 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo + Math.imul(a 0003cdf0: 6c 33 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e l3, bl3)) | 0;\n 0003ce00: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003ce10: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 Math.imul(al3, 0003ce20: 62 68 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh3)) | 0;\n 0003ce30: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003ce40: 68 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c 33 29 h.imul(ah3, bl3) 0003ce50: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d ) | 0;\n hi = 0003ce60: 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (hi + Math.imul 0003ce70: 28 61 68 33 2c 20 62 68 33 29 29 20 7c 20 30 3b (ah3, bh3)) | 0; 0003ce80: 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b \n lo = (lo + 0003ce90: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 Math.imul(al2, 0003cea0: 62 6c 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl4)) | 0;\n 0003ceb0: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003cec0: 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 34 29 h.imul(al2, bh4) 0003ced0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003cee0: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003cef0: 75 6c 28 61 68 32 2c 20 62 6c 34 29 29 20 7c 20 ul(ah2, bl4)) | 0003cf00: 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 0;\n hi = (hi 0003cf10: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 + Math.imul(ah2 0003cf20: 2c 20 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh4)) | 0;\n 0003cf30: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003cf40: 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c 35 29 h.imul(al1, bl5) 0003cf50: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003cf60: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003cf70: 75 6c 28 61 6c 31 2c 20 62 68 35 29 29 20 7c 20 ul(al1, bh5)) | 0003cf80: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003cf90: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003cfa0: 68 31 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e h1, bl5)) | 0;\n 0003cfb0: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003cfc0: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 68 ath.imul(ah1, bh 0003cfd0: 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 5)) | 0;\n lo 0003cfe0: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003cff0: 75 6c 28 61 6c 30 2c 20 62 6c 36 29 29 20 7c 20 ul(al0, bl6)) | 0003d000: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003d010: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003d020: 6c 30 2c 20 62 68 36 29 29 20 7c 20 30 3b 5c 6e l0, bh6)) | 0;\n 0003d030: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003d040: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 2c 20 Math.imul(ah0, 0003d050: 62 6c 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl6)) | 0;\n 0003d060: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003d070: 69 6d 75 6c 28 61 68 30 2c 20 62 68 36 29 29 20 imul(ah0, bh6)) 0003d080: 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 77 36 | 0;\n var w6 0003d090: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003d0a0: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003d0b0: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003d0c0: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003d0d0: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003d0e0: 20 7c 20 30 29 20 2b 20 28 77 36 20 3e 3e 3e 20 | 0) + (w6 >>> 0003d0f0: 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 77 26)) | 0;\n w 0003d100: 36 20 26 3d 20 30 78 33 66 66 66 66 66 66 3b 5c 6 &= 0x3ffffff;\ 0003d110: 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 37 20 2a 2f n /* k = 7 */ 0003d120: 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e \n lo = Math. 0003d130: 69 6d 75 6c 28 61 6c 37 2c 20 62 6c 30 29 3b 5c imul(al7, bl0);\ 0003d140: 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e n mid = Math. 0003d150: 69 6d 75 6c 28 61 6c 37 2c 20 62 68 30 29 3b 5c imul(al7, bh0);\ 0003d160: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003d170: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 37 2c + Math.imul(ah7, 0003d180: 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl0)) | 0;\n 0003d190: 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 hi = Math.imul( 0003d1a0: 61 68 37 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 ah7, bh0);\n 0003d1b0: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003d1c0: 69 6d 75 6c 28 61 6c 36 2c 20 62 6c 31 29 29 20 imul(al6, bl1)) 0003d1d0: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003d1e0: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003d1f0: 28 61 6c 36 2c 20 62 68 31 29 29 20 7c 20 30 3b (al6, bh1)) | 0; 0003d200: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003d210: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 36 + Math.imul(ah6 0003d220: 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl1)) | 0;\n 0003d230: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003d240: 68 2e 69 6d 75 6c 28 61 68 36 2c 20 62 68 31 29 h.imul(ah6, bh1) 0003d250: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003d260: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003d270: 28 61 6c 35 2c 20 62 6c 32 29 29 20 7c 20 30 3b (al5, bl2)) | 0; 0003d280: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003d290: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 35 + Math.imul(al5 0003d2a0: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003d2b0: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003d2c0: 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 62 6c ath.imul(ah5, bl 0003d2d0: 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 2)) | 0;\n hi 0003d2e0: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003d2f0: 75 6c 28 61 68 35 2c 20 62 68 32 29 29 20 7c 20 ul(ah5, bh2)) | 0003d300: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003d310: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 34 + Math.imul(al4 0003d320: 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl3)) | 0;\n 0003d330: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003d340: 61 74 68 2e 69 6d 75 6c 28 61 6c 34 2c 20 62 68 ath.imul(al4, bh 0003d350: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 3)) | 0;\n mi 0003d360: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003d370: 69 6d 75 6c 28 61 68 34 2c 20 62 6c 33 29 29 20 imul(ah4, bl3)) 0003d380: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003d390: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003d3a0: 68 34 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c 6e h4, bh3)) | 0;\n 0003d3b0: 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d lo = (lo + M 0003d3c0: 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 62 6c ath.imul(al3, bl 0003d3d0: 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 4)) | 0;\n mi 0003d3e0: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003d3f0: 69 6d 75 6c 28 61 6c 33 2c 20 62 68 34 29 29 20 imul(al3, bh4)) 0003d400: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003d410: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003d420: 28 61 68 33 2c 20 62 6c 34 29 29 20 7c 20 30 3b (ah3, bl4)) | 0; 0003d430: 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b \n hi = (hi + 0003d440: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 33 2c 20 Math.imul(ah3, 0003d450: 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh4)) | 0;\n 0003d460: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003d470: 69 6d 75 6c 28 61 6c 32 2c 20 62 6c 35 29 29 20 imul(al2, bl5)) 0003d480: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003d490: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003d4a0: 28 61 6c 32 2c 20 62 68 35 29 29 20 7c 20 30 3b (al2, bh5)) | 0; 0003d4b0: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003d4c0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 + Math.imul(ah2 0003d4d0: 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl5)) | 0;\n 0003d4e0: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003d4f0: 68 2e 69 6d 75 6c 28 61 68 32 2c 20 62 68 35 29 h.imul(ah2, bh5) 0003d500: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003d510: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003d520: 28 61 6c 31 2c 20 62 6c 36 29 29 20 7c 20 30 3b (al1, bl6)) | 0; 0003d530: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003d540: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 31 + Math.imul(al1 0003d550: 2c 20 62 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh6)) | 0;\n 0003d560: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003d570: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 6c ath.imul(ah1, bl 0003d580: 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 6)) | 0;\n hi 0003d590: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003d5a0: 75 6c 28 61 68 31 2c 20 62 68 36 29 29 20 7c 20 ul(ah1, bh6)) | 0003d5b0: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003d5c0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 30 + Math.imul(al0 0003d5d0: 2c 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl7)) | 0;\n 0003d5e0: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003d5f0: 61 74 68 2e 69 6d 75 6c 28 61 6c 30 2c 20 62 68 ath.imul(al0, bh 0003d600: 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 7)) | 0;\n mi 0003d610: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003d620: 69 6d 75 6c 28 61 68 30 2c 20 62 6c 37 29 29 20 imul(ah0, bl7)) 0003d630: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003d640: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003d650: 68 30 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c 6e h0, bh7)) | 0;\n 0003d660: 20 20 20 20 76 61 72 20 77 37 20 3d 20 28 28 28 var w7 = ((( 0003d670: 63 20 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 c + lo) | 0) + ( 0003d680: 28 6d 69 64 20 26 20 30 78 31 66 66 66 29 20 3c (mid & 0x1fff) < 0003d690: 3c 20 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 < 13)) | 0;\n 0003d6a0: 20 63 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 c = (((hi + (mi 0003d6b0: 64 20 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 d >>> 13)) | 0) 0003d6c0: 2b 20 28 77 37 20 3e 3e 3e 20 32 36 29 29 20 7c + (w7 >>> 26)) | 0003d6d0: 20 30 3b 5c 6e 20 20 20 20 77 37 20 26 3d 20 30 0;\n w7 &= 0 0003d6e0: 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 20 2f x3ffffff;\n / 0003d6f0: 2a 20 6b 20 3d 20 38 20 2a 2f 5c 6e 20 20 20 20 * k = 8 */\n 0003d700: 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo = Math.imul(a 0003d710: 6c 38 2c 20 62 6c 30 29 3b 5c 6e 20 20 20 20 6d l8, bl0);\n m 0003d720: 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id = Math.imul(a 0003d730: 6c 38 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 6d l8, bh0);\n m 0003d740: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003d750: 2e 69 6d 75 6c 28 61 68 38 2c 20 62 6c 30 29 29 .imul(ah8, bl0)) 0003d760: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003d770: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003d780: 68 30 29 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 h0);\n lo = ( 0003d790: 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo + Math.imul(a 0003d7a0: 6c 37 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e l7, bl1)) | 0;\n 0003d7b0: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003d7c0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 37 2c 20 Math.imul(al7, 0003d7d0: 62 68 31 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh1)) | 0;\n 0003d7e0: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003d7f0: 68 2e 69 6d 75 6c 28 61 68 37 2c 20 62 6c 31 29 h.imul(ah7, bl1) 0003d800: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d ) | 0;\n hi = 0003d810: 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (hi + Math.imul 0003d820: 28 61 68 37 2c 20 62 68 31 29 29 20 7c 20 30 3b (ah7, bh1)) | 0; 0003d830: 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b \n lo = (lo + 0003d840: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 Math.imul(al6, 0003d850: 62 6c 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl2)) | 0;\n 0003d860: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003d870: 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 68 32 29 h.imul(al6, bh2) 0003d880: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003d890: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003d8a0: 75 6c 28 61 68 36 2c 20 62 6c 32 29 29 20 7c 20 ul(ah6, bl2)) | 0003d8b0: 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 0;\n hi = (hi 0003d8c0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 36 + Math.imul(ah6 0003d8d0: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003d8e0: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003d8f0: 68 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 6c 33 29 h.imul(al5, bl3) 0003d900: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003d910: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003d920: 75 6c 28 61 6c 35 2c 20 62 68 33 29 29 20 7c 20 ul(al5, bh3)) | 0003d930: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003d940: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003d950: 68 35 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e h5, bl3)) | 0;\n 0003d960: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003d970: 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 62 68 ath.imul(ah5, bh 0003d980: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 3)) | 0;\n lo 0003d990: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003d9a0: 75 6c 28 61 6c 34 2c 20 62 6c 34 29 29 20 7c 20 ul(al4, bl4)) | 0003d9b0: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003d9c0: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003d9d0: 6c 34 2c 20 62 68 34 29 29 20 7c 20 30 3b 5c 6e l4, bh4)) | 0;\n 0003d9e0: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003d9f0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 Math.imul(ah4, 0003da00: 62 6c 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl4)) | 0;\n 0003da10: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003da20: 69 6d 75 6c 28 61 68 34 2c 20 62 68 34 29 29 20 imul(ah4, bh4)) 0003da30: 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 | 0;\n lo = ( 0003da40: 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo + Math.imul(a 0003da50: 6c 33 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e l3, bl5)) | 0;\n 0003da60: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003da70: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 Math.imul(al3, 0003da80: 62 68 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh5)) | 0;\n 0003da90: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003daa0: 68 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c 35 29 h.imul(ah3, bl5) 0003dab0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d ) | 0;\n hi = 0003dac0: 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (hi + Math.imul 0003dad0: 28 61 68 33 2c 20 62 68 35 29 29 20 7c 20 30 3b (ah3, bh5)) | 0; 0003dae0: 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b \n lo = (lo + 0003daf0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 Math.imul(al2, 0003db00: 62 6c 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl6)) | 0;\n 0003db10: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003db20: 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 36 29 h.imul(al2, bh6) 0003db30: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003db40: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003db50: 75 6c 28 61 68 32 2c 20 62 6c 36 29 29 20 7c 20 ul(ah2, bl6)) | 0003db60: 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 0;\n hi = (hi 0003db70: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 + Math.imul(ah2 0003db80: 2c 20 62 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh6)) | 0;\n 0003db90: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003dba0: 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c 37 29 h.imul(al1, bl7) 0003dbb0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003dbc0: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003dbd0: 75 6c 28 61 6c 31 2c 20 62 68 37 29 29 20 7c 20 ul(al1, bh7)) | 0003dbe0: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003dbf0: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003dc00: 68 31 2c 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e h1, bl7)) | 0;\n 0003dc10: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003dc20: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 68 ath.imul(ah1, bh 0003dc30: 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 7)) | 0;\n lo 0003dc40: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003dc50: 75 6c 28 61 6c 30 2c 20 62 6c 38 29 29 20 7c 20 ul(al0, bl8)) | 0003dc60: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003dc70: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003dc80: 6c 30 2c 20 62 68 38 29 29 20 7c 20 30 3b 5c 6e l0, bh8)) | 0;\n 0003dc90: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003dca0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 2c 20 Math.imul(ah0, 0003dcb0: 62 6c 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl8)) | 0;\n 0003dcc0: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003dcd0: 69 6d 75 6c 28 61 68 30 2c 20 62 68 38 29 29 20 imul(ah0, bh8)) 0003dce0: 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 77 38 | 0;\n var w8 0003dcf0: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003dd00: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003dd10: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003dd20: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003dd30: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003dd40: 20 7c 20 30 29 20 2b 20 28 77 38 20 3e 3e 3e 20 | 0) + (w8 >>> 0003dd50: 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 77 26)) | 0;\n w 0003dd60: 38 20 26 3d 20 30 78 33 66 66 66 66 66 66 3b 5c 8 &= 0x3ffffff;\ 0003dd70: 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 39 20 2a 2f n /* k = 9 */ 0003dd80: 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e \n lo = Math. 0003dd90: 69 6d 75 6c 28 61 6c 39 2c 20 62 6c 30 29 3b 5c imul(al9, bl0);\ 0003dda0: 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e n mid = Math. 0003ddb0: 69 6d 75 6c 28 61 6c 39 2c 20 62 68 30 29 3b 5c imul(al9, bh0);\ 0003ddc0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003ddd0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 39 2c + Math.imul(ah9, 0003dde0: 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl0)) | 0;\n 0003ddf0: 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 hi = Math.imul( 0003de00: 61 68 39 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 ah9, bh0);\n 0003de10: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003de20: 69 6d 75 6c 28 61 6c 38 2c 20 62 6c 31 29 29 20 imul(al8, bl1)) 0003de30: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003de40: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003de50: 28 61 6c 38 2c 20 62 68 31 29 29 20 7c 20 30 3b (al8, bh1)) | 0; 0003de60: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003de70: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 + Math.imul(ah8 0003de80: 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl1)) | 0;\n 0003de90: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003dea0: 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 68 31 29 h.imul(ah8, bh1) 0003deb0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003dec0: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003ded0: 28 61 6c 37 2c 20 62 6c 32 29 29 20 7c 20 30 3b (al7, bl2)) | 0; 0003dee0: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003def0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 37 + Math.imul(al7 0003df00: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003df10: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003df20: 61 74 68 2e 69 6d 75 6c 28 61 68 37 2c 20 62 6c ath.imul(ah7, bl 0003df30: 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 2)) | 0;\n hi 0003df40: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003df50: 75 6c 28 61 68 37 2c 20 62 68 32 29 29 20 7c 20 ul(ah7, bh2)) | 0003df60: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003df70: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 + Math.imul(al6 0003df80: 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl3)) | 0;\n 0003df90: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003dfa0: 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 68 ath.imul(al6, bh 0003dfb0: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 3)) | 0;\n mi 0003dfc0: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003dfd0: 69 6d 75 6c 28 61 68 36 2c 20 62 6c 33 29 29 20 imul(ah6, bl3)) 0003dfe0: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003dff0: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003e000: 68 36 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c 6e h6, bh3)) | 0;\n 0003e010: 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d lo = (lo + M 0003e020: 61 74 68 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 6c ath.imul(al5, bl 0003e030: 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 4)) | 0;\n mi 0003e040: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003e050: 69 6d 75 6c 28 61 6c 35 2c 20 62 68 34 29 29 20 imul(al5, bh4)) 0003e060: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003e070: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003e080: 28 61 68 35 2c 20 62 6c 34 29 29 20 7c 20 30 3b (ah5, bl4)) | 0; 0003e090: 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b \n hi = (hi + 0003e0a0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 Math.imul(ah5, 0003e0b0: 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh4)) | 0;\n 0003e0c0: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003e0d0: 69 6d 75 6c 28 61 6c 34 2c 20 62 6c 35 29 29 20 imul(al4, bl5)) 0003e0e0: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003e0f0: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003e100: 28 61 6c 34 2c 20 62 68 35 29 29 20 7c 20 30 3b (al4, bh5)) | 0; 0003e110: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003e120: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 + Math.imul(ah4 0003e130: 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl5)) | 0;\n 0003e140: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003e150: 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 68 35 29 h.imul(ah4, bh5) 0003e160: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003e170: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003e180: 28 61 6c 33 2c 20 62 6c 36 29 29 20 7c 20 30 3b (al3, bl6)) | 0; 0003e190: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003e1a0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 + Math.imul(al3 0003e1b0: 2c 20 62 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh6)) | 0;\n 0003e1c0: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003e1d0: 61 74 68 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c ath.imul(ah3, bl 0003e1e0: 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 6)) | 0;\n hi 0003e1f0: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003e200: 75 6c 28 61 68 33 2c 20 62 68 36 29 29 20 7c 20 ul(ah3, bh6)) | 0003e210: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003e220: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 + Math.imul(al2 0003e230: 2c 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl7)) | 0;\n 0003e240: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003e250: 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 ath.imul(al2, bh 0003e260: 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 7)) | 0;\n mi 0003e270: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003e280: 69 6d 75 6c 28 61 68 32 2c 20 62 6c 37 29 29 20 imul(ah2, bl7)) 0003e290: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003e2a0: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003e2b0: 68 32 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c 6e h2, bh7)) | 0;\n 0003e2c0: 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d lo = (lo + M 0003e2d0: 61 74 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c ath.imul(al1, bl 0003e2e0: 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 8)) | 0;\n mi 0003e2f0: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003e300: 69 6d 75 6c 28 61 6c 31 2c 20 62 68 38 29 29 20 imul(al1, bh8)) 0003e310: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003e320: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003e330: 28 61 68 31 2c 20 62 6c 38 29 29 20 7c 20 30 3b (ah1, bl8)) | 0; 0003e340: 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b \n hi = (hi + 0003e350: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 Math.imul(ah1, 0003e360: 62 68 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh8)) | 0;\n 0003e370: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003e380: 69 6d 75 6c 28 61 6c 30 2c 20 62 6c 39 29 29 20 imul(al0, bl9)) 0003e390: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003e3a0: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003e3b0: 28 61 6c 30 2c 20 62 68 39 29 29 20 7c 20 30 3b (al0, bh9)) | 0; 0003e3c0: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003e3d0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 + Math.imul(ah0 0003e3e0: 2c 20 62 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl9)) | 0;\n 0003e3f0: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003e400: 68 2e 69 6d 75 6c 28 61 68 30 2c 20 62 68 39 29 h.imul(ah0, bh9) 0003e410: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 ) | 0;\n var 0003e420: 77 39 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 w9 = (((c + lo) 0003e430: 7c 20 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 | 0) + ((mid & 0 0003e440: 78 31 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c x1fff) << 13)) | 0003e450: 20 30 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 0;\n c = ((( 0003e460: 68 69 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 hi + (mid >>> 13 0003e470: 29 29 20 7c 20 30 29 20 2b 20 28 77 39 20 3e 3e )) | 0) + (w9 >> 0003e480: 3e 20 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 > 26)) | 0;\n 0003e490: 20 77 39 20 26 3d 20 30 78 33 66 66 66 66 66 66 w9 &= 0x3ffffff 0003e4a0: 3b 5c 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 31 30 ;\n /* k = 10 0003e4b0: 20 2a 2f 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 */\n lo = Ma 0003e4c0: 74 68 2e 69 6d 75 6c 28 61 6c 39 2c 20 62 6c 31 th.imul(al9, bl1 0003e4d0: 29 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 );\n mid = Ma 0003e4e0: 74 68 2e 69 6d 75 6c 28 61 6c 39 2c 20 62 68 31 th.imul(al9, bh1 0003e4f0: 29 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d );\n mid = (m 0003e500: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003e510: 68 39 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e h9, bl1)) | 0;\n 0003e520: 20 20 20 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d hi = Math.im 0003e530: 75 6c 28 61 68 39 2c 20 62 68 31 29 3b 5c 6e 20 ul(ah9, bh1);\n 0003e540: 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 lo = (lo + Ma 0003e550: 74 68 2e 69 6d 75 6c 28 61 6c 38 2c 20 62 6c 32 th.imul(al8, bl2 0003e560: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003e570: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003e580: 6d 75 6c 28 61 6c 38 2c 20 62 68 32 29 29 20 7c mul(al8, bh2)) | 0003e590: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003e5a0: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003e5b0: 61 68 38 2c 20 62 6c 32 29 29 20 7c 20 30 3b 5c ah8, bl2)) | 0;\ 0003e5c0: 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 n hi = (hi + 0003e5d0: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003e5e0: 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c h2)) | 0;\n l 0003e5f0: 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 o = (lo + Math.i 0003e600: 6d 75 6c 28 61 6c 37 2c 20 62 6c 33 29 29 20 7c mul(al7, bl3)) | 0003e610: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003e620: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003e630: 61 6c 37 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c al7, bh3)) | 0;\ 0003e640: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003e650: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 37 2c + Math.imul(ah7, 0003e660: 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl3)) | 0;\n 0003e670: 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 hi = (hi + Math 0003e680: 2e 69 6d 75 6c 28 61 68 37 2c 20 62 68 33 29 29 .imul(ah7, bh3)) 0003e690: 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 | 0;\n lo = 0003e6a0: 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (lo + Math.imul( 0003e6b0: 61 6c 36 2c 20 62 6c 34 29 29 20 7c 20 30 3b 5c al6, bl4)) | 0;\ 0003e6c0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003e6d0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c + Math.imul(al6, 0003e6e0: 20 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh4)) | 0;\n 0003e6f0: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003e700: 74 68 2e 69 6d 75 6c 28 61 68 36 2c 20 62 6c 34 th.imul(ah6, bl4 0003e710: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 )) | 0;\n hi 0003e720: 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 = (hi + Math.imu 0003e730: 6c 28 61 68 36 2c 20 62 68 34 29 29 20 7c 20 30 l(ah6, bh4)) | 0 0003e740: 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 ;\n lo = (lo 0003e750: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 35 2c + Math.imul(al5, 0003e760: 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl5)) | 0;\n 0003e770: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003e780: 74 68 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 68 35 th.imul(al5, bh5 0003e790: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003e7a0: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003e7b0: 6d 75 6c 28 61 68 35 2c 20 62 6c 35 29 29 20 7c mul(ah5, bl5)) | 0003e7c0: 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 0;\n hi = (h 0003e7d0: 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 i + Math.imul(ah 0003e7e0: 35 2c 20 62 68 35 29 29 20 7c 20 30 3b 5c 6e 20 5, bh5)) | 0;\n 0003e7f0: 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 lo = (lo + Ma 0003e800: 74 68 2e 69 6d 75 6c 28 61 6c 34 2c 20 62 6c 36 th.imul(al4, bl6 0003e810: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003e820: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003e830: 6d 75 6c 28 61 6c 34 2c 20 62 68 36 29 29 20 7c mul(al4, bh6)) | 0003e840: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003e850: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003e860: 61 68 34 2c 20 62 6c 36 29 29 20 7c 20 30 3b 5c ah4, bl6)) | 0;\ 0003e870: 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 n hi = (hi + 0003e880: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 Math.imul(ah4, b 0003e890: 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c h6)) | 0;\n l 0003e8a0: 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 o = (lo + Math.i 0003e8b0: 6d 75 6c 28 61 6c 33 2c 20 62 6c 37 29 29 20 7c mul(al3, bl7)) | 0003e8c0: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003e8d0: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003e8e0: 61 6c 33 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c al3, bh7)) | 0;\ 0003e8f0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003e900: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 33 2c + Math.imul(ah3, 0003e910: 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl7)) | 0;\n 0003e920: 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 hi = (hi + Math 0003e930: 2e 69 6d 75 6c 28 61 68 33 2c 20 62 68 37 29 29 .imul(ah3, bh7)) 0003e940: 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 | 0;\n lo = 0003e950: 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (lo + Math.imul( 0003e960: 61 6c 32 2c 20 62 6c 38 29 29 20 7c 20 30 3b 5c al2, bl8)) | 0;\ 0003e970: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003e980: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c + Math.imul(al2, 0003e990: 20 62 68 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh8)) | 0;\n 0003e9a0: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003e9b0: 74 68 2e 69 6d 75 6c 28 61 68 32 2c 20 62 6c 38 th.imul(ah2, bl8 0003e9c0: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 )) | 0;\n hi 0003e9d0: 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 = (hi + Math.imu 0003e9e0: 6c 28 61 68 32 2c 20 62 68 38 29 29 20 7c 20 30 l(ah2, bh8)) | 0 0003e9f0: 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 ;\n lo = (lo 0003ea00: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 31 2c + Math.imul(al1, 0003ea10: 20 62 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl9)) | 0;\n 0003ea20: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003ea30: 74 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 68 39 th.imul(al1, bh9 0003ea40: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003ea50: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003ea60: 6d 75 6c 28 61 68 31 2c 20 62 6c 39 29 29 20 7c mul(ah1, bl9)) | 0003ea70: 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 0;\n hi = (h 0003ea80: 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 i + Math.imul(ah 0003ea90: 31 2c 20 62 68 39 29 29 20 7c 20 30 3b 5c 6e 20 1, bh9)) | 0;\n 0003eaa0: 20 20 20 76 61 72 20 77 31 30 20 3d 20 28 28 28 var w10 = ((( 0003eab0: 63 20 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 c + lo) | 0) + ( 0003eac0: 28 6d 69 64 20 26 20 30 78 31 66 66 66 29 20 3c (mid & 0x1fff) < 0003ead0: 3c 20 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 < 13)) | 0;\n 0003eae0: 20 63 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 c = (((hi + (mi 0003eaf0: 64 20 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 d >>> 13)) | 0) 0003eb00: 2b 20 28 77 31 30 20 3e 3e 3e 20 32 36 29 29 20 + (w10 >>> 26)) 0003eb10: 7c 20 30 3b 5c 6e 20 20 20 20 77 31 30 20 26 3d | 0;\n w10 &= 0003eb20: 20 30 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 0x3ffffff;\n 0003eb30: 20 2f 2a 20 6b 20 3d 20 31 31 20 2a 2f 5c 6e 20 /* k = 11 */\n 0003eb40: 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 lo = Math.imu 0003eb50: 6c 28 61 6c 39 2c 20 62 6c 32 29 3b 5c 6e 20 20 l(al9, bl2);\n 0003eb60: 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 mid = Math.imu 0003eb70: 6c 28 61 6c 39 2c 20 62 68 32 29 3b 5c 6e 20 20 l(al9, bh2);\n 0003eb80: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003eb90: 61 74 68 2e 69 6d 75 6c 28 61 68 39 2c 20 62 6c ath.imul(ah9, bl 0003eba0: 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 2)) | 0;\n hi 0003ebb0: 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 39 = Math.imul(ah9 0003ebc0: 2c 20 62 68 32 29 3b 5c 6e 20 20 20 20 6c 6f 20 , bh2);\n lo 0003ebd0: 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 = (lo + Math.imu 0003ebe0: 6c 28 61 6c 38 2c 20 62 6c 33 29 29 20 7c 20 30 l(al8, bl3)) | 0 0003ebf0: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003ec00: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c d + Math.imul(al 0003ec10: 38 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c 6e 20 8, bh3)) | 0;\n 0003ec20: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003ec30: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003ec40: 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 l3)) | 0;\n h 0003ec50: 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 i = (hi + Math.i 0003ec60: 6d 75 6c 28 61 68 38 2c 20 62 68 33 29 29 20 7c mul(ah8, bh3)) | 0003ec70: 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 0;\n lo = (l 0003ec80: 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c o + Math.imul(al 0003ec90: 37 2c 20 62 6c 34 29 29 20 7c 20 30 3b 5c 6e 20 7, bl4)) | 0;\n 0003eca0: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003ecb0: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 37 2c 20 62 Math.imul(al7, b 0003ecc0: 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d h4)) | 0;\n m 0003ecd0: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003ece0: 2e 69 6d 75 6c 28 61 68 37 2c 20 62 6c 34 29 29 .imul(ah7, bl4)) 0003ecf0: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003ed00: 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (hi + Math.imul( 0003ed10: 61 68 37 2c 20 62 68 34 29 29 20 7c 20 30 3b 5c ah7, bh4)) | 0;\ 0003ed20: 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 n lo = (lo + 0003ed30: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 Math.imul(al6, b 0003ed40: 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d l5)) | 0;\n m 0003ed50: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003ed60: 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 68 35 29 29 .imul(al6, bh5)) 0003ed70: 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d | 0;\n mid = 0003ed80: 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 (mid + Math.imu 0003ed90: 6c 28 61 68 36 2c 20 62 6c 35 29 29 20 7c 20 30 l(ah6, bl5)) | 0 0003eda0: 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 ;\n hi = (hi 0003edb0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 36 2c + Math.imul(ah6, 0003edc0: 20 62 68 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh5)) | 0;\n 0003edd0: 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 lo = (lo + Math 0003ede0: 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 6c 36 29 29 .imul(al5, bl6)) 0003edf0: 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d | 0;\n mid = 0003ee00: 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 (mid + Math.imu 0003ee10: 6c 28 61 6c 35 2c 20 62 68 36 29 29 20 7c 20 30 l(al5, bh6)) | 0 0003ee20: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003ee30: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 d + Math.imul(ah 0003ee40: 35 2c 20 62 6c 36 29 29 20 7c 20 30 3b 5c 6e 20 5, bl6)) | 0;\n 0003ee50: 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 hi = (hi + Ma 0003ee60: 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 62 68 36 th.imul(ah5, bh6 0003ee70: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 )) | 0;\n lo 0003ee80: 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 = (lo + Math.imu 0003ee90: 6c 28 61 6c 34 2c 20 62 6c 37 29 29 20 7c 20 30 l(al4, bl7)) | 0 0003eea0: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003eeb0: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c d + Math.imul(al 0003eec0: 34 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c 6e 20 4, bh7)) | 0;\n 0003eed0: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003eee0: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 Math.imul(ah4, b 0003eef0: 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 l7)) | 0;\n h 0003ef00: 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 i = (hi + Math.i 0003ef10: 6d 75 6c 28 61 68 34 2c 20 62 68 37 29 29 20 7c mul(ah4, bh7)) | 0003ef20: 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 0;\n lo = (l 0003ef30: 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c o + Math.imul(al 0003ef40: 33 2c 20 62 6c 38 29 29 20 7c 20 30 3b 5c 6e 20 3, bl8)) | 0;\n 0003ef50: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003ef60: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 62 Math.imul(al3, b 0003ef70: 68 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d h8)) | 0;\n m 0003ef80: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003ef90: 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c 38 29 29 .imul(ah3, bl8)) 0003efa0: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003efb0: 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (hi + Math.imul( 0003efc0: 61 68 33 2c 20 62 68 38 29 29 20 7c 20 30 3b 5c ah3, bh8)) | 0;\ 0003efd0: 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 n lo = (lo + 0003efe0: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 Math.imul(al2, b 0003eff0: 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d l9)) | 0;\n m 0003f000: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003f010: 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 39 29 29 .imul(al2, bh9)) 0003f020: 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d | 0;\n mid = 0003f030: 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 (mid + Math.imu 0003f040: 6c 28 61 68 32 2c 20 62 6c 39 29 29 20 7c 20 30 l(ah2, bl9)) | 0 0003f050: 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 ;\n hi = (hi 0003f060: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 2c + Math.imul(ah2, 0003f070: 20 62 68 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh9)) | 0;\n 0003f080: 20 76 61 72 20 77 31 31 20 3d 20 28 28 28 63 20 var w11 = (((c 0003f090: 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 28 6d + lo) | 0) + ((m 0003f0a0: 69 64 20 26 20 30 78 31 66 66 66 29 20 3c 3c 20 id & 0x1fff) << 0003f0b0: 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 63 13)) | 0;\n c 0003f0c0: 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 64 20 = (((hi + (mid 0003f0d0: 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 2b 20 >>> 13)) | 0) + 0003f0e0: 28 77 31 31 20 3e 3e 3e 20 32 36 29 29 20 7c 20 (w11 >>> 26)) | 0003f0f0: 30 3b 5c 6e 20 20 20 20 77 31 31 20 26 3d 20 30 0;\n w11 &= 0 0003f100: 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 20 2f x3ffffff;\n / 0003f110: 2a 20 6b 20 3d 20 31 32 20 2a 2f 5c 6e 20 20 20 * k = 12 */\n 0003f120: 20 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 lo = Math.imul( 0003f130: 61 6c 39 2c 20 62 6c 33 29 3b 5c 6e 20 20 20 20 al9, bl3);\n 0003f140: 6d 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 mid = Math.imul( 0003f150: 61 6c 39 2c 20 62 68 33 29 3b 5c 6e 20 20 20 20 al9, bh3);\n 0003f160: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003f170: 68 2e 69 6d 75 6c 28 61 68 39 2c 20 62 6c 33 29 h.imul(ah9, bl3) 0003f180: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d ) | 0;\n hi = 0003f190: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 39 2c 20 Math.imul(ah9, 0003f1a0: 62 68 33 29 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 bh3);\n lo = 0003f1b0: 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (lo + Math.imul( 0003f1c0: 61 6c 38 2c 20 62 6c 34 29 29 20 7c 20 30 3b 5c al8, bl4)) | 0;\ 0003f1d0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003f1e0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 38 2c + Math.imul(al8, 0003f1f0: 20 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh4)) | 0;\n 0003f200: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003f210: 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 6c 34 th.imul(ah8, bl4 0003f220: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 )) | 0;\n hi 0003f230: 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 = (hi + Math.imu 0003f240: 6c 28 61 68 38 2c 20 62 68 34 29 29 20 7c 20 30 l(ah8, bh4)) | 0 0003f250: 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 ;\n lo = (lo 0003f260: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 37 2c + Math.imul(al7, 0003f270: 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl5)) | 0;\n 0003f280: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003f290: 74 68 2e 69 6d 75 6c 28 61 6c 37 2c 20 62 68 35 th.imul(al7, bh5 0003f2a0: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003f2b0: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003f2c0: 6d 75 6c 28 61 68 37 2c 20 62 6c 35 29 29 20 7c mul(ah7, bl5)) | 0003f2d0: 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 0;\n hi = (h 0003f2e0: 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 i + Math.imul(ah 0003f2f0: 37 2c 20 62 68 35 29 29 20 7c 20 30 3b 5c 6e 20 7, bh5)) | 0;\n 0003f300: 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 lo = (lo + Ma 0003f310: 74 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 6c 36 th.imul(al6, bl6 0003f320: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003f330: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003f340: 6d 75 6c 28 61 6c 36 2c 20 62 68 36 29 29 20 7c mul(al6, bh6)) | 0003f350: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003f360: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003f370: 61 68 36 2c 20 62 6c 36 29 29 20 7c 20 30 3b 5c ah6, bl6)) | 0;\ 0003f380: 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 n hi = (hi + 0003f390: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 36 2c 20 62 Math.imul(ah6, b 0003f3a0: 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c h6)) | 0;\n l 0003f3b0: 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 o = (lo + Math.i 0003f3c0: 6d 75 6c 28 61 6c 35 2c 20 62 6c 37 29 29 20 7c mul(al5, bl7)) | 0003f3d0: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003f3e0: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003f3f0: 61 6c 35 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c al5, bh7)) | 0;\ 0003f400: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003f410: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c + Math.imul(ah5, 0003f420: 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl7)) | 0;\n 0003f430: 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 hi = (hi + Math 0003f440: 2e 69 6d 75 6c 28 61 68 35 2c 20 62 68 37 29 29 .imul(ah5, bh7)) 0003f450: 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 | 0;\n lo = 0003f460: 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (lo + Math.imul( 0003f470: 61 6c 34 2c 20 62 6c 38 29 29 20 7c 20 30 3b 5c al4, bl8)) | 0;\ 0003f480: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003f490: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 34 2c + Math.imul(al4, 0003f4a0: 20 62 68 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh8)) | 0;\n 0003f4b0: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003f4c0: 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 6c 38 th.imul(ah4, bl8 0003f4d0: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 )) | 0;\n hi 0003f4e0: 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 = (hi + Math.imu 0003f4f0: 6c 28 61 68 34 2c 20 62 68 38 29 29 20 7c 20 30 l(ah4, bh8)) | 0 0003f500: 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 ;\n lo = (lo 0003f510: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c + Math.imul(al3, 0003f520: 20 62 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl9)) | 0;\n 0003f530: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003f540: 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 62 68 39 th.imul(al3, bh9 0003f550: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003f560: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003f570: 6d 75 6c 28 61 68 33 2c 20 62 6c 39 29 29 20 7c mul(ah3, bl9)) | 0003f580: 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 0;\n hi = (h 0003f590: 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 i + Math.imul(ah 0003f5a0: 33 2c 20 62 68 39 29 29 20 7c 20 30 3b 5c 6e 20 3, bh9)) | 0;\n 0003f5b0: 20 20 20 76 61 72 20 77 31 32 20 3d 20 28 28 28 var w12 = ((( 0003f5c0: 63 20 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 c + lo) | 0) + ( 0003f5d0: 28 6d 69 64 20 26 20 30 78 31 66 66 66 29 20 3c (mid & 0x1fff) < 0003f5e0: 3c 20 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 < 13)) | 0;\n 0003f5f0: 20 63 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 c = (((hi + (mi 0003f600: 64 20 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 d >>> 13)) | 0) 0003f610: 2b 20 28 77 31 32 20 3e 3e 3e 20 32 36 29 29 20 + (w12 >>> 26)) 0003f620: 7c 20 30 3b 5c 6e 20 20 20 20 77 31 32 20 26 3d | 0;\n w12 &= 0003f630: 20 30 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 0x3ffffff;\n 0003f640: 20 2f 2a 20 6b 20 3d 20 31 33 20 2a 2f 5c 6e 20 /* k = 13 */\n 0003f650: 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 lo = Math.imu 0003f660: 6c 28 61 6c 39 2c 20 62 6c 34 29 3b 5c 6e 20 20 l(al9, bl4);\n 0003f670: 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 mid = Math.imu 0003f680: 6c 28 61 6c 39 2c 20 62 68 34 29 3b 5c 6e 20 20 l(al9, bh4);\n 0003f690: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003f6a0: 61 74 68 2e 69 6d 75 6c 28 61 68 39 2c 20 62 6c ath.imul(ah9, bl 0003f6b0: 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 4)) | 0;\n hi 0003f6c0: 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 39 = Math.imul(ah9 0003f6d0: 2c 20 62 68 34 29 3b 5c 6e 20 20 20 20 6c 6f 20 , bh4);\n lo 0003f6e0: 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 = (lo + Math.imu 0003f6f0: 6c 28 61 6c 38 2c 20 62 6c 35 29 29 20 7c 20 30 l(al8, bl5)) | 0 0003f700: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003f710: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c d + Math.imul(al 0003f720: 38 2c 20 62 68 35 29 29 20 7c 20 30 3b 5c 6e 20 8, bh5)) | 0;\n 0003f730: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003f740: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003f750: 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 l5)) | 0;\n h 0003f760: 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 i = (hi + Math.i 0003f770: 6d 75 6c 28 61 68 38 2c 20 62 68 35 29 29 20 7c mul(ah8, bh5)) | 0003f780: 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 0;\n lo = (l 0003f790: 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c o + Math.imul(al 0003f7a0: 37 2c 20 62 6c 36 29 29 20 7c 20 30 3b 5c 6e 20 7, bl6)) | 0;\n 0003f7b0: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003f7c0: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 37 2c 20 62 Math.imul(al7, b 0003f7d0: 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d h6)) | 0;\n m 0003f7e0: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003f7f0: 2e 69 6d 75 6c 28 61 68 37 2c 20 62 6c 36 29 29 .imul(ah7, bl6)) 0003f800: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003f810: 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (hi + Math.imul( 0003f820: 61 68 37 2c 20 62 68 36 29 29 20 7c 20 30 3b 5c ah7, bh6)) | 0;\ 0003f830: 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 n lo = (lo + 0003f840: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 Math.imul(al6, b 0003f850: 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d l7)) | 0;\n m 0003f860: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003f870: 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 68 37 29 29 .imul(al6, bh7)) 0003f880: 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d | 0;\n mid = 0003f890: 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 (mid + Math.imu 0003f8a0: 6c 28 61 68 36 2c 20 62 6c 37 29 29 20 7c 20 30 l(ah6, bl7)) | 0 0003f8b0: 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 ;\n hi = (hi 0003f8c0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 36 2c + Math.imul(ah6, 0003f8d0: 20 62 68 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh7)) | 0;\n 0003f8e0: 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 lo = (lo + Math 0003f8f0: 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 6c 38 29 29 .imul(al5, bl8)) 0003f900: 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d | 0;\n mid = 0003f910: 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 (mid + Math.imu 0003f920: 6c 28 61 6c 35 2c 20 62 68 38 29 29 20 7c 20 30 l(al5, bh8)) | 0 0003f930: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003f940: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 d + Math.imul(ah 0003f950: 35 2c 20 62 6c 38 29 29 20 7c 20 30 3b 5c 6e 20 5, bl8)) | 0;\n 0003f960: 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 hi = (hi + Ma 0003f970: 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 62 68 38 th.imul(ah5, bh8 0003f980: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 )) | 0;\n lo 0003f990: 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 = (lo + Math.imu 0003f9a0: 6c 28 61 6c 34 2c 20 62 6c 39 29 29 20 7c 20 30 l(al4, bl9)) | 0 0003f9b0: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003f9c0: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c d + Math.imul(al 0003f9d0: 34 2c 20 62 68 39 29 29 20 7c 20 30 3b 5c 6e 20 4, bh9)) | 0;\n 0003f9e0: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003f9f0: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 Math.imul(ah4, b 0003fa00: 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 l9)) | 0;\n h 0003fa10: 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 i = (hi + Math.i 0003fa20: 6d 75 6c 28 61 68 34 2c 20 62 68 39 29 29 20 7c mul(ah4, bh9)) | 0003fa30: 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 77 31 33 0;\n var w13 0003fa40: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003fa50: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003fa60: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003fa70: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003fa80: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003fa90: 20 7c 20 30 29 20 2b 20 28 77 31 33 20 3e 3e 3e | 0) + (w13 >>> 0003faa0: 20 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 26)) | 0;\n 0003fab0: 77 31 33 20 26 3d 20 30 78 33 66 66 66 66 66 66 w13 &= 0x3ffffff 0003fac0: 3b 5c 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 31 34 ;\n /* k = 14 0003fad0: 20 2a 2f 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 */\n lo = Ma 0003fae0: 74 68 2e 69 6d 75 6c 28 61 6c 39 2c 20 62 6c 35 th.imul(al9, bl5 0003faf0: 29 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 );\n mid = Ma 0003fb00: 74 68 2e 69 6d 75 6c 28 61 6c 39 2c 20 62 68 35 th.imul(al9, bh5 0003fb10: 29 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d );\n mid = (m 0003fb20: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003fb30: 68 39 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e h9, bl5)) | 0;\n 0003fb40: 20 20 20 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d hi = Math.im 0003fb50: 75 6c 28 61 68 39 2c 20 62 68 35 29 3b 5c 6e 20 ul(ah9, bh5);\n 0003fb60: 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 lo = (lo + Ma 0003fb70: 74 68 2e 69 6d 75 6c 28 61 6c 38 2c 20 62 6c 36 th.imul(al8, bl6 0003fb80: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003fb90: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003fba0: 6d 75 6c 28 61 6c 38 2c 20 62 68 36 29 29 20 7c mul(al8, bh6)) | 0003fbb0: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003fbc0: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003fbd0: 61 68 38 2c 20 62 6c 36 29 29 20 7c 20 30 3b 5c ah8, bl6)) | 0;\ 0003fbe0: 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 n hi = (hi + 0003fbf0: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003fc00: 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c h6)) | 0;\n l 0003fc10: 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 o = (lo + Math.i 0003fc20: 6d 75 6c 28 61 6c 37 2c 20 62 6c 37 29 29 20 7c mul(al7, bl7)) | 0003fc30: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003fc40: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003fc50: 61 6c 37 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c al7, bh7)) | 0;\ 0003fc60: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003fc70: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 37 2c + Math.imul(ah7, 0003fc80: 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl7)) | 0;\n 0003fc90: 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 hi = (hi + Math 0003fca0: 2e 69 6d 75 6c 28 61 68 37 2c 20 62 68 37 29 29 .imul(ah7, bh7)) 0003fcb0: 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 | 0;\n lo = 0003fcc0: 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (lo + Math.imul( 0003fcd0: 61 6c 36 2c 20 62 6c 38 29 29 20 7c 20 30 3b 5c al6, bl8)) | 0;\ 0003fce0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003fcf0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c + Math.imul(al6, 0003fd00: 20 62 68 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh8)) | 0;\n 0003fd10: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003fd20: 74 68 2e 69 6d 75 6c 28 61 68 36 2c 20 62 6c 38 th.imul(ah6, bl8 0003fd30: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 )) | 0;\n hi 0003fd40: 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 = (hi + Math.imu 0003fd50: 6c 28 61 68 36 2c 20 62 68 38 29 29 20 7c 20 30 l(ah6, bh8)) | 0 0003fd60: 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 ;\n lo = (lo 0003fd70: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 35 2c + Math.imul(al5, 0003fd80: 20 62 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl9)) | 0;\n 0003fd90: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003fda0: 74 68 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 68 39 th.imul(al5, bh9 0003fdb0: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003fdc0: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003fdd0: 6d 75 6c 28 61 68 35 2c 20 62 6c 39 29 29 20 7c mul(ah5, bl9)) | 0003fde0: 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 0;\n hi = (h 0003fdf0: 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 i + Math.imul(ah 0003fe00: 35 2c 20 62 68 39 29 29 20 7c 20 30 3b 5c 6e 20 5, bh9)) | 0;\n 0003fe10: 20 20 20 76 61 72 20 77 31 34 20 3d 20 28 28 28 var w14 = ((( 0003fe20: 63 20 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 c + lo) | 0) + ( 0003fe30: 28 6d 69 64 20 26 20 30 78 31 66 66 66 29 20 3c (mid & 0x1fff) < 0003fe40: 3c 20 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 < 13)) | 0;\n 0003fe50: 20 63 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 c = (((hi + (mi 0003fe60: 64 20 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 d >>> 13)) | 0) 0003fe70: 2b 20 28 77 31 34 20 3e 3e 3e 20 32 36 29 29 20 + (w14 >>> 26)) 0003fe80: 7c 20 30 3b 5c 6e 20 20 20 20 77 31 34 20 26 3d | 0;\n w14 &= 0003fe90: 20 30 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 0x3ffffff;\n 0003fea0: 20 2f 2a 20 6b 20 3d 20 31 35 20 2a 2f 5c 6e 20 /* k = 15 */\n 0003feb0: 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 lo = Math.imu 0003fec0: 6c 28 61 6c 39 2c 20 62 6c 36 29 3b 5c 6e 20 20 l(al9, bl6);\n 0003fed0: 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 mid = Math.imu 0003fee0: 6c 28 61 6c 39 2c 20 62 68 36 29 3b 5c 6e 20 20 l(al9, bh6);\n 0003fef0: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003ff00: 61 74 68 2e 69 6d 75 6c 28 61 68 39 2c 20 62 6c ath.imul(ah9, bl 0003ff10: 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 6)) | 0;\n hi 0003ff20: 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 39 = Math.imul(ah9 0003ff30: 2c 20 62 68 36 29 3b 5c 6e 20 20 20 20 6c 6f 20 , bh6);\n lo 0003ff40: 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 = (lo + Math.imu 0003ff50: 6c 28 61 6c 38 2c 20 62 6c 37 29 29 20 7c 20 30 l(al8, bl7)) | 0 0003ff60: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003ff70: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c d + Math.imul(al 0003ff80: 38 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c 6e 20 8, bh7)) | 0;\n 0003ff90: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003ffa0: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003ffb0: 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 l7)) | 0;\n h 0003ffc0: 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 i = (hi + Math.i 0003ffd0: 6d 75 6c 28 61 68 38 2c 20 62 68 37 29 29 20 7c mul(ah8, bh7)) | 0003ffe0: 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 0;\n lo = (l 0003fff0: 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c o + Math.imul(al

Transaction Execution Plan

Convert Transaction To Receipt
Gas Burned:
894 Ggas
Tokens Burned:
0.00009 
Receipt:
Predecessor ID:
Receiver ID:
Gas Burned:
1 Tgas
Tokens Burned:
0.00015 
Called method: 'fs_store' in contract: kiwikiwikiwi.near
Arguments:
00000000: 72 65 6e 74 29 2e 70 6f 73 69 74 69 6f 6e 20 21 rent).position ! 00000010: 3d 3d 20 27 73 74 61 74 69 63 27 20 26 26 20 70 == 'static' && p 00000020: 6f 73 69 74 69 6f 6e 20 3d 3d 3d 20 27 61 62 73 osition === 'abs 00000030: 6f 6c 75 74 65 27 29 20 7b 5c 6e 20 20 20 20 20 olute') {\n 00000040: 20 20 20 68 65 69 67 68 74 50 72 6f 70 20 3d 20 heightProp = 00000050: 27 73 63 72 6f 6c 6c 48 65 69 67 68 74 27 3b 5c 'scrollHeight';\ 00000060: 6e 20 20 20 20 20 20 20 20 77 69 64 74 68 50 72 n widthPr 00000070: 6f 70 20 3d 20 27 73 63 72 6f 6c 6c 57 69 64 74 op = 'scrollWidt 00000080: 68 27 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 h';\n }\n 00000090: 20 20 7d 20 2f 2f 20 24 46 6c 6f 77 46 69 78 4d } // $FlowFixM 000000a0: 65 5b 69 6e 63 6f 6d 70 61 74 69 62 6c 65 2d 63 e[incompatible-c 000000b0: 61 73 74 5d 3a 20 66 6f 72 63 65 20 74 79 70 65 ast]: force type 000000c0: 20 72 65 66 69 6e 65 6d 65 6e 74 2c 20 77 65 20 refinement, we 000000d0: 63 6f 6d 70 61 72 65 20 6f 66 66 73 65 74 50 61 compare offsetPa 000000e0: 72 65 6e 74 20 77 69 74 68 20 77 69 6e 64 6f 77 rent with window 000000f0: 20 61 62 6f 76 65 2c 20 62 75 74 20 46 6c 6f 77 above, but Flow 00000100: 20 64 6f 65 73 6e 27 74 20 64 65 74 65 63 74 20 doesn't detect 00000110: 69 74 5c 6e 5c 6e 5c 6e 20 20 20 20 6f 66 66 73 it\n\n\n offs 00000120: 65 74 50 61 72 65 6e 74 20 3d 20 6f 66 66 73 65 etParent = offse 00000130: 74 50 61 72 65 6e 74 3b 5c 6e 5c 6e 20 20 20 20 tParent;\n\n 00000140: 69 66 20 28 70 6c 61 63 65 6d 65 6e 74 20 3d 3d if (placement == 00000150: 3d 20 74 6f 70 20 7c 7c 20 28 70 6c 61 63 65 6d = top || (placem 00000160: 65 6e 74 20 3d 3d 3d 20 6c 65 66 74 20 7c 7c 20 ent === left || 00000170: 70 6c 61 63 65 6d 65 6e 74 20 3d 3d 3d 20 72 69 placement === ri 00000180: 67 68 74 29 20 26 26 20 76 61 72 69 61 74 69 6f ght) && variatio 00000190: 6e 20 3d 3d 3d 20 65 6e 64 29 20 7b 5c 6e 20 20 n === end) {\n 000001a0: 20 20 20 20 73 69 64 65 59 20 3d 20 62 6f 74 74 sideY = bott 000001b0: 6f 6d 3b 5c 6e 20 20 20 20 20 20 76 61 72 20 6f om;\n var o 000001c0: 66 66 73 65 74 59 20 3d 20 69 73 46 69 78 65 64 ffsetY = isFixed 000001d0: 20 26 26 20 6f 66 66 73 65 74 50 61 72 65 6e 74 && offsetParent 000001e0: 20 3d 3d 3d 20 77 69 6e 20 26 26 20 77 69 6e 2e === win && win. 000001f0: 76 69 73 75 61 6c 56 69 65 77 70 6f 72 74 20 3f visualViewport ? 00000200: 20 77 69 6e 2e 76 69 73 75 61 6c 56 69 65 77 70 win.visualViewp 00000210: 6f 72 74 2e 68 65 69 67 68 74 20 3a 20 2f 2f 20 ort.height : // 00000220: 24 46 6c 6f 77 46 69 78 4d 65 5b 70 72 6f 70 2d $FlowFixMe[prop- 00000230: 6d 69 73 73 69 6e 67 5d 5c 6e 20 20 20 20 20 20 missing]\n 00000240: 6f 66 66 73 65 74 50 61 72 65 6e 74 5b 68 65 69 offsetParent[hei 00000250: 67 68 74 50 72 6f 70 5d 3b 5c 6e 20 20 20 20 20 ghtProp];\n 00000260: 20 79 20 2d 3d 20 6f 66 66 73 65 74 59 20 2d 20 y -= offsetY - 00000270: 70 6f 70 70 65 72 52 65 63 74 2e 68 65 69 67 68 popperRect.heigh 00000280: 74 3b 5c 6e 20 20 20 20 20 20 79 20 2a 3d 20 67 t;\n y *= g 00000290: 70 75 41 63 63 65 6c 65 72 61 74 69 6f 6e 20 3f puAcceleration ? 000002a0: 20 31 20 3a 20 2d 31 3b 5c 6e 20 20 20 20 7d 5c 1 : -1;\n }\ 000002b0: 6e 5c 6e 20 20 20 20 69 66 20 28 70 6c 61 63 65 n\n if (place 000002c0: 6d 65 6e 74 20 3d 3d 3d 20 6c 65 66 74 20 7c 7c ment === left || 000002d0: 20 28 70 6c 61 63 65 6d 65 6e 74 20 3d 3d 3d 20 (placement === 000002e0: 74 6f 70 20 7c 7c 20 70 6c 61 63 65 6d 65 6e 74 top || placement 000002f0: 20 3d 3d 3d 20 62 6f 74 74 6f 6d 29 20 26 26 20 === bottom) && 00000300: 76 61 72 69 61 74 69 6f 6e 20 3d 3d 3d 20 65 6e variation === en 00000310: 64 29 20 7b 5c 6e 20 20 20 20 20 20 73 69 64 65 d) {\n side 00000320: 58 20 3d 20 72 69 67 68 74 3b 5c 6e 20 20 20 20 X = right;\n 00000330: 20 20 76 61 72 20 6f 66 66 73 65 74 58 20 3d 20 var offsetX = 00000340: 69 73 46 69 78 65 64 20 26 26 20 6f 66 66 73 65 isFixed && offse 00000350: 74 50 61 72 65 6e 74 20 3d 3d 3d 20 77 69 6e 20 tParent === win 00000360: 26 26 20 77 69 6e 2e 76 69 73 75 61 6c 56 69 65 && win.visualVie 00000370: 77 70 6f 72 74 20 3f 20 77 69 6e 2e 76 69 73 75 wport ? win.visu 00000380: 61 6c 56 69 65 77 70 6f 72 74 2e 77 69 64 74 68 alViewport.width 00000390: 20 3a 20 2f 2f 20 24 46 6c 6f 77 46 69 78 4d 65 : // $FlowFixMe 000003a0: 5b 70 72 6f 70 2d 6d 69 73 73 69 6e 67 5d 5c 6e [prop-missing]\n 000003b0: 20 20 20 20 20 20 6f 66 66 73 65 74 50 61 72 65 offsetPare 000003c0: 6e 74 5b 77 69 64 74 68 50 72 6f 70 5d 3b 5c 6e nt[widthProp];\n 000003d0: 20 20 20 20 20 20 78 20 2d 3d 20 6f 66 66 73 65 x -= offse 000003e0: 74 58 20 2d 20 70 6f 70 70 65 72 52 65 63 74 2e tX - popperRect. 000003f0: 77 69 64 74 68 3b 5c 6e 20 20 20 20 20 20 78 20 width;\n x 00000400: 2a 3d 20 67 70 75 41 63 63 65 6c 65 72 61 74 69 *= gpuAccelerati 00000410: 6f 6e 20 3f 20 31 20 3a 20 2d 31 3b 5c 6e 20 20 on ? 1 : -1;\n 00000420: 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 76 61 }\n }\n\n va 00000430: 72 20 63 6f 6d 6d 6f 6e 53 74 79 6c 65 73 20 3d r commonStyles = 00000440: 20 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b Object.assign({ 00000450: 5c 6e 20 20 20 20 70 6f 73 69 74 69 6f 6e 3a 20 \n position: 00000460: 70 6f 73 69 74 69 6f 6e 5c 6e 20 20 7d 2c 20 61 position\n }, a 00000470: 64 61 70 74 69 76 65 20 26 26 20 75 6e 73 65 74 daptive && unset 00000480: 53 69 64 65 73 29 3b 5c 6e 5c 6e 20 20 76 61 72 Sides);\n\n var 00000490: 20 5f 72 65 66 34 20 3d 20 72 6f 75 6e 64 4f 66 _ref4 = roundOf 000004a0: 66 73 65 74 73 20 3d 3d 3d 20 74 72 75 65 20 3f fsets === true ? 000004b0: 20 72 6f 75 6e 64 4f 66 66 73 65 74 73 42 79 44 roundOffsetsByD 000004c0: 50 52 28 7b 5c 6e 20 20 20 20 78 3a 20 78 2c 5c PR({\n x: x,\ 000004d0: 6e 20 20 20 20 79 3a 20 79 5c 6e 20 20 7d 2c 20 n y: y\n }, 000004e0: 67 65 74 57 69 6e 64 6f 77 28 70 6f 70 70 65 72 getWindow(popper 000004f0: 29 29 20 3a 20 7b 5c 6e 20 20 20 20 78 3a 20 78 )) : {\n x: x 00000500: 2c 5c 6e 20 20 20 20 79 3a 20 79 5c 6e 20 20 7d ,\n y: y\n } 00000510: 3b 5c 6e 5c 6e 20 20 78 20 3d 20 5f 72 65 66 34 ;\n\n x = _ref4 00000520: 2e 78 3b 5c 6e 20 20 79 20 3d 20 5f 72 65 66 34 .x;\n y = _ref4 00000530: 2e 79 3b 5c 6e 5c 6e 20 20 69 66 20 28 67 70 75 .y;\n\n if (gpu 00000540: 41 63 63 65 6c 65 72 61 74 69 6f 6e 29 20 7b 5c Acceleration) {\ 00000550: 6e 20 20 20 20 76 61 72 20 5f 4f 62 6a 65 63 74 n var _Object 00000560: 24 61 73 73 69 67 6e 3b 5c 6e 5c 6e 20 20 20 20 $assign;\n\n 00000570: 72 65 74 75 72 6e 20 4f 62 6a 65 63 74 2e 61 73 return Object.as 00000580: 73 69 67 6e 28 7b 7d 2c 20 63 6f 6d 6d 6f 6e 53 sign({}, commonS 00000590: 74 79 6c 65 73 2c 20 28 5f 4f 62 6a 65 63 74 24 tyles, (_Object$ 000005a0: 61 73 73 69 67 6e 20 3d 20 7b 7d 2c 20 5f 4f 62 assign = {}, _Ob 000005b0: 6a 65 63 74 24 61 73 73 69 67 6e 5b 73 69 64 65 ject$assign[side 000005c0: 59 5d 20 3d 20 68 61 73 59 20 3f 20 27 30 27 20 Y] = hasY ? '0' 000005d0: 3a 20 27 27 2c 20 5f 4f 62 6a 65 63 74 24 61 73 : '', _Object$as 000005e0: 73 69 67 6e 5b 73 69 64 65 58 5d 20 3d 20 68 61 sign[sideX] = ha 000005f0: 73 58 20 3f 20 27 30 27 20 3a 20 27 27 2c 20 5f sX ? '0' : '', _ 00000600: 4f 62 6a 65 63 74 24 61 73 73 69 67 6e 2e 74 72 Object$assign.tr 00000610: 61 6e 73 66 6f 72 6d 20 3d 20 28 77 69 6e 2e 64 ansform = (win.d 00000620: 65 76 69 63 65 50 69 78 65 6c 52 61 74 69 6f 20 evicePixelRatio 00000630: 7c 7c 20 31 29 20 3c 3d 20 31 20 3f 20 5c 22 74 || 1) <= 1 ? \"t 00000640: 72 61 6e 73 6c 61 74 65 28 5c 22 20 2b 20 78 20 ranslate(\" + x 00000650: 2b 20 5c 22 70 78 2c 20 5c 22 20 2b 20 79 20 2b + \"px, \" + y + 00000660: 20 5c 22 70 78 29 5c 22 20 3a 20 5c 22 74 72 61 \"px)\" : \"tra 00000670: 6e 73 6c 61 74 65 33 64 28 5c 22 20 2b 20 78 20 nslate3d(\" + x 00000680: 2b 20 5c 22 70 78 2c 20 5c 22 20 2b 20 79 20 2b + \"px, \" + y + 00000690: 20 5c 22 70 78 2c 20 30 29 5c 22 2c 20 5f 4f 62 \"px, 0)\", _Ob 000006a0: 6a 65 63 74 24 61 73 73 69 67 6e 29 29 3b 5c 6e ject$assign));\n 000006b0: 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 }\n\n return 000006c0: 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b 7d Object.assign({} 000006d0: 2c 20 63 6f 6d 6d 6f 6e 53 74 79 6c 65 73 2c 20 , commonStyles, 000006e0: 28 5f 4f 62 6a 65 63 74 24 61 73 73 69 67 6e 32 (_Object$assign2 000006f0: 20 3d 20 7b 7d 2c 20 5f 4f 62 6a 65 63 74 24 61 = {}, _Object$a 00000700: 73 73 69 67 6e 32 5b 73 69 64 65 59 5d 20 3d 20 ssign2[sideY] = 00000710: 68 61 73 59 20 3f 20 79 20 2b 20 5c 22 70 78 5c hasY ? y + \"px\ 00000720: 22 20 3a 20 27 27 2c 20 5f 4f 62 6a 65 63 74 24 " : '', _Object$ 00000730: 61 73 73 69 67 6e 32 5b 73 69 64 65 58 5d 20 3d assign2[sideX] = 00000740: 20 68 61 73 58 20 3f 20 78 20 2b 20 5c 22 70 78 hasX ? x + \"px 00000750: 5c 22 20 3a 20 27 27 2c 20 5f 4f 62 6a 65 63 74 \" : '', _Object 00000760: 24 61 73 73 69 67 6e 32 2e 74 72 61 6e 73 66 6f $assign2.transfo 00000770: 72 6d 20 3d 20 27 27 2c 20 5f 4f 62 6a 65 63 74 rm = '', _Object 00000780: 24 61 73 73 69 67 6e 32 29 29 3b 5c 6e 7d 5c 6e $assign2));\n}\n 00000790: 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 6f 6d 70 75 \nfunction compu 000007a0: 74 65 53 74 79 6c 65 73 28 5f 72 65 66 35 29 20 teStyles(_ref5) 000007b0: 7b 5c 6e 20 20 76 61 72 20 73 74 61 74 65 20 3d {\n var state = 000007c0: 20 5f 72 65 66 35 2e 73 74 61 74 65 2c 5c 6e 20 _ref5.state,\n 000007d0: 20 20 20 20 20 6f 70 74 69 6f 6e 73 20 3d 20 5f options = _ 000007e0: 72 65 66 35 2e 6f 70 74 69 6f 6e 73 3b 5c 6e 20 ref5.options;\n 000007f0: 20 76 61 72 20 5f 6f 70 74 69 6f 6e 73 24 67 70 var _options$gp 00000800: 75 41 63 63 65 6c 65 72 61 74 20 3d 20 6f 70 74 uAccelerat = opt 00000810: 69 6f 6e 73 2e 67 70 75 41 63 63 65 6c 65 72 61 ions.gpuAccelera 00000820: 74 69 6f 6e 2c 5c 6e 20 20 20 20 20 20 67 70 75 tion,\n gpu 00000830: 41 63 63 65 6c 65 72 61 74 69 6f 6e 20 3d 20 5f Acceleration = _ 00000840: 6f 70 74 69 6f 6e 73 24 67 70 75 41 63 63 65 6c options$gpuAccel 00000850: 65 72 61 74 20 3d 3d 3d 20 76 6f 69 64 20 30 20 erat === void 0 00000860: 3f 20 74 72 75 65 20 3a 20 5f 6f 70 74 69 6f 6e ? true : _option 00000870: 73 24 67 70 75 41 63 63 65 6c 65 72 61 74 2c 5c s$gpuAccelerat,\ 00000880: 6e 20 20 20 20 20 20 5f 6f 70 74 69 6f 6e 73 24 n _options$ 00000890: 61 64 61 70 74 69 76 65 20 3d 20 6f 70 74 69 6f adaptive = optio 000008a0: 6e 73 2e 61 64 61 70 74 69 76 65 2c 5c 6e 20 20 ns.adaptive,\n 000008b0: 20 20 20 20 61 64 61 70 74 69 76 65 20 3d 20 5f adaptive = _ 000008c0: 6f 70 74 69 6f 6e 73 24 61 64 61 70 74 69 76 65 options$adaptive 000008d0: 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 74 72 === void 0 ? tr 000008e0: 75 65 20 3a 20 5f 6f 70 74 69 6f 6e 73 24 61 64 ue : _options$ad 000008f0: 61 70 74 69 76 65 2c 5c 6e 20 20 20 20 20 20 5f aptive,\n _ 00000900: 6f 70 74 69 6f 6e 73 24 72 6f 75 6e 64 4f 66 66 options$roundOff 00000910: 73 65 74 73 20 3d 20 6f 70 74 69 6f 6e 73 2e 72 sets = options.r 00000920: 6f 75 6e 64 4f 66 66 73 65 74 73 2c 5c 6e 20 20 oundOffsets,\n 00000930: 20 20 20 20 72 6f 75 6e 64 4f 66 66 73 65 74 73 roundOffsets 00000940: 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 72 6f 75 6e = _options$roun 00000950: 64 4f 66 66 73 65 74 73 20 3d 3d 3d 20 76 6f 69 dOffsets === voi 00000960: 64 20 30 20 3f 20 74 72 75 65 20 3a 20 5f 6f 70 d 0 ? true : _op 00000970: 74 69 6f 6e 73 24 72 6f 75 6e 64 4f 66 66 73 65 tions$roundOffse 00000980: 74 73 3b 5c 6e 20 20 76 61 72 20 63 6f 6d 6d 6f ts;\n var commo 00000990: 6e 53 74 79 6c 65 73 20 3d 20 7b 5c 6e 20 20 20 nStyles = {\n 000009a0: 20 70 6c 61 63 65 6d 65 6e 74 3a 20 67 65 74 42 placement: getB 000009b0: 61 73 65 50 6c 61 63 65 6d 65 6e 74 28 73 74 61 asePlacement(sta 000009c0: 74 65 2e 70 6c 61 63 65 6d 65 6e 74 29 2c 5c 6e te.placement),\n 000009d0: 20 20 20 20 76 61 72 69 61 74 69 6f 6e 3a 20 67 variation: g 000009e0: 65 74 56 61 72 69 61 74 69 6f 6e 28 73 74 61 74 etVariation(stat 000009f0: 65 2e 70 6c 61 63 65 6d 65 6e 74 29 2c 5c 6e 20 e.placement),\n 00000a00: 20 20 20 70 6f 70 70 65 72 3a 20 73 74 61 74 65 popper: state 00000a10: 2e 65 6c 65 6d 65 6e 74 73 2e 70 6f 70 70 65 72 .elements.popper 00000a20: 2c 5c 6e 20 20 20 20 70 6f 70 70 65 72 52 65 63 ,\n popperRec 00000a30: 74 3a 20 73 74 61 74 65 2e 72 65 63 74 73 2e 70 t: state.rects.p 00000a40: 6f 70 70 65 72 2c 5c 6e 20 20 20 20 67 70 75 41 opper,\n gpuA 00000a50: 63 63 65 6c 65 72 61 74 69 6f 6e 3a 20 67 70 75 cceleration: gpu 00000a60: 41 63 63 65 6c 65 72 61 74 69 6f 6e 2c 5c 6e 20 Acceleration,\n 00000a70: 20 20 20 69 73 46 69 78 65 64 3a 20 73 74 61 74 isFixed: stat 00000a80: 65 2e 6f 70 74 69 6f 6e 73 2e 73 74 72 61 74 65 e.options.strate 00000a90: 67 79 20 3d 3d 3d 20 27 66 69 78 65 64 27 5c 6e gy === 'fixed'\n 00000aa0: 20 20 7d 3b 5c 6e 5c 6e 20 20 69 66 20 28 73 74 };\n\n if (st 00000ab0: 61 74 65 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 ate.modifiersDat 00000ac0: 61 2e 70 6f 70 70 65 72 4f 66 66 73 65 74 73 20 a.popperOffsets 00000ad0: 21 3d 20 6e 75 6c 6c 29 20 7b 5c 6e 20 20 20 20 != null) {\n 00000ae0: 73 74 61 74 65 2e 73 74 79 6c 65 73 2e 70 6f 70 state.styles.pop 00000af0: 70 65 72 20 3d 20 4f 62 6a 65 63 74 2e 61 73 73 per = Object.ass 00000b00: 69 67 6e 28 7b 7d 2c 20 73 74 61 74 65 2e 73 74 ign({}, state.st 00000b10: 79 6c 65 73 2e 70 6f 70 70 65 72 2c 20 6d 61 70 yles.popper, map 00000b20: 54 6f 53 74 79 6c 65 73 28 4f 62 6a 65 63 74 2e ToStyles(Object. 00000b30: 61 73 73 69 67 6e 28 7b 7d 2c 20 63 6f 6d 6d 6f assign({}, commo 00000b40: 6e 53 74 79 6c 65 73 2c 20 7b 5c 6e 20 20 20 20 nStyles, {\n 00000b50: 20 20 6f 66 66 73 65 74 73 3a 20 73 74 61 74 65 offsets: state 00000b60: 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 2e 70 .modifiersData.p 00000b70: 6f 70 70 65 72 4f 66 66 73 65 74 73 2c 5c 6e 20 opperOffsets,\n 00000b80: 20 20 20 20 20 70 6f 73 69 74 69 6f 6e 3a 20 73 position: s 00000b90: 74 61 74 65 2e 6f 70 74 69 6f 6e 73 2e 73 74 72 tate.options.str 00000ba0: 61 74 65 67 79 2c 5c 6e 20 20 20 20 20 20 61 64 ategy,\n ad 00000bb0: 61 70 74 69 76 65 3a 20 61 64 61 70 74 69 76 65 aptive: adaptive 00000bc0: 2c 5c 6e 20 20 20 20 20 20 72 6f 75 6e 64 4f 66 ,\n roundOf 00000bd0: 66 73 65 74 73 3a 20 72 6f 75 6e 64 4f 66 66 73 fsets: roundOffs 00000be0: 65 74 73 5c 6e 20 20 20 20 7d 29 29 29 3b 5c 6e ets\n })));\n 00000bf0: 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 73 74 61 }\n\n if (sta 00000c00: 74 65 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 te.modifiersData 00000c10: 2e 61 72 72 6f 77 20 21 3d 20 6e 75 6c 6c 29 20 .arrow != null) 00000c20: 7b 5c 6e 20 20 20 20 73 74 61 74 65 2e 73 74 79 {\n state.sty 00000c30: 6c 65 73 2e 61 72 72 6f 77 20 3d 20 4f 62 6a 65 les.arrow = Obje 00000c40: 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c 20 73 74 ct.assign({}, st 00000c50: 61 74 65 2e 73 74 79 6c 65 73 2e 61 72 72 6f 77 ate.styles.arrow 00000c60: 2c 20 6d 61 70 54 6f 53 74 79 6c 65 73 28 4f 62 , mapToStyles(Ob 00000c70: 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c 20 ject.assign({}, 00000c80: 63 6f 6d 6d 6f 6e 53 74 79 6c 65 73 2c 20 7b 5c commonStyles, {\ 00000c90: 6e 20 20 20 20 20 20 6f 66 66 73 65 74 73 3a 20 n offsets: 00000ca0: 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 72 73 44 state.modifiersD 00000cb0: 61 74 61 2e 61 72 72 6f 77 2c 5c 6e 20 20 20 20 ata.arrow,\n 00000cc0: 20 20 70 6f 73 69 74 69 6f 6e 3a 20 27 61 62 73 position: 'abs 00000cd0: 6f 6c 75 74 65 27 2c 5c 6e 20 20 20 20 20 20 61 olute',\n a 00000ce0: 64 61 70 74 69 76 65 3a 20 66 61 6c 73 65 2c 5c daptive: false,\ 00000cf0: 6e 20 20 20 20 20 20 72 6f 75 6e 64 4f 66 66 73 n roundOffs 00000d00: 65 74 73 3a 20 72 6f 75 6e 64 4f 66 66 73 65 74 ets: roundOffset 00000d10: 73 5c 6e 20 20 20 20 7d 29 29 29 3b 5c 6e 20 20 s\n })));\n 00000d20: 7d 5c 6e 5c 6e 20 20 73 74 61 74 65 2e 61 74 74 }\n\n state.att 00000d30: 72 69 62 75 74 65 73 2e 70 6f 70 70 65 72 20 3d ributes.popper = 00000d40: 20 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b Object.assign({ 00000d50: 7d 2c 20 73 74 61 74 65 2e 61 74 74 72 69 62 75 }, state.attribu 00000d60: 74 65 73 2e 70 6f 70 70 65 72 2c 20 7b 5c 6e 20 tes.popper, {\n 00000d70: 20 20 20 27 64 61 74 61 2d 70 6f 70 70 65 72 2d 'data-popper- 00000d80: 70 6c 61 63 65 6d 65 6e 74 27 3a 20 73 74 61 74 placement': stat 00000d90: 65 2e 70 6c 61 63 65 6d 65 6e 74 5c 6e 20 20 7d e.placement\n } 00000da0: 29 3b 5c 6e 7d 20 2f 2f 20 65 73 6c 69 6e 74 2d );\n} // eslint- 00000db0: 64 69 73 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e disable-next-lin 00000dc0: 65 20 69 6d 70 6f 72 74 2f 6e 6f 2d 75 6e 75 73 e import/no-unus 00000dd0: 65 64 2d 6d 6f 64 75 6c 65 73 5c 6e 5c 6e 5c 6e ed-modules\n\n\n 00000de0: 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 7b export default { 00000df0: 5c 6e 20 20 6e 61 6d 65 3a 20 27 63 6f 6d 70 75 \n name: 'compu 00000e00: 74 65 53 74 79 6c 65 73 27 2c 5c 6e 20 20 65 6e teStyles',\n en 00000e10: 61 62 6c 65 64 3a 20 74 72 75 65 2c 5c 6e 20 20 abled: true,\n 00000e20: 70 68 61 73 65 3a 20 27 62 65 66 6f 72 65 57 72 phase: 'beforeWr 00000e30: 69 74 65 27 2c 5c 6e 20 20 66 6e 3a 20 63 6f 6d ite',\n fn: com 00000e40: 70 75 74 65 53 74 79 6c 65 73 2c 5c 6e 20 20 64 puteStyles,\n d 00000e50: 61 74 61 3a 20 7b 7d 5c 6e 7d 3b 22 2c 22 69 6d ata: {}\n};","im 00000e60: 70 6f 72 74 20 67 65 74 57 69 6e 64 6f 77 20 66 port getWindow f 00000e70: 72 6f 6d 20 5c 22 2e 2e 2f 64 6f 6d 2d 75 74 69 rom \"../dom-uti 00000e80: 6c 73 2f 67 65 74 57 69 6e 64 6f 77 2e 6a 73 5c ls/getWindow.js\ 00000e90: 22 3b 20 2f 2f 20 65 73 6c 69 6e 74 2d 64 69 73 "; // eslint-dis 00000ea0: 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 20 69 able-next-line i 00000eb0: 6d 70 6f 72 74 2f 6e 6f 2d 75 6e 75 73 65 64 2d mport/no-unused- 00000ec0: 6d 6f 64 75 6c 65 73 5c 6e 5c 6e 76 61 72 20 70 modules\n\nvar p 00000ed0: 61 73 73 69 76 65 20 3d 20 7b 5c 6e 20 20 70 61 assive = {\n pa 00000ee0: 73 73 69 76 65 3a 20 74 72 75 65 5c 6e 7d 3b 5c ssive: true\n};\ 00000ef0: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 65 66 66 65 n\nfunction effe 00000f00: 63 74 28 5f 72 65 66 29 20 7b 5c 6e 20 20 76 61 ct(_ref) {\n va 00000f10: 72 20 73 74 61 74 65 20 3d 20 5f 72 65 66 2e 73 r state = _ref.s 00000f20: 74 61 74 65 2c 5c 6e 20 20 20 20 20 20 69 6e 73 tate,\n ins 00000f30: 74 61 6e 63 65 20 3d 20 5f 72 65 66 2e 69 6e 73 tance = _ref.ins 00000f40: 74 61 6e 63 65 2c 5c 6e 20 20 20 20 20 20 6f 70 tance,\n op 00000f50: 74 69 6f 6e 73 20 3d 20 5f 72 65 66 2e 6f 70 74 tions = _ref.opt 00000f60: 69 6f 6e 73 3b 5c 6e 20 20 76 61 72 20 5f 6f 70 ions;\n var _op 00000f70: 74 69 6f 6e 73 24 73 63 72 6f 6c 6c 20 3d 20 6f tions$scroll = o 00000f80: 70 74 69 6f 6e 73 2e 73 63 72 6f 6c 6c 2c 5c 6e ptions.scroll,\n 00000f90: 20 20 20 20 20 20 73 63 72 6f 6c 6c 20 3d 20 5f scroll = _ 00000fa0: 6f 70 74 69 6f 6e 73 24 73 63 72 6f 6c 6c 20 3d options$scroll = 00000fb0: 3d 3d 20 76 6f 69 64 20 30 20 3f 20 74 72 75 65 == void 0 ? true 00000fc0: 20 3a 20 5f 6f 70 74 69 6f 6e 73 24 73 63 72 6f : _options$scro 00000fd0: 6c 6c 2c 5c 6e 20 20 20 20 20 20 5f 6f 70 74 69 ll,\n _opti 00000fe0: 6f 6e 73 24 72 65 73 69 7a 65 20 3d 20 6f 70 74 ons$resize = opt 00000ff0: 69 6f 6e 73 2e 72 65 73 69 7a 65 2c 5c 6e 20 20 ions.resize,\n 00001000: 20 20 20 20 72 65 73 69 7a 65 20 3d 20 5f 6f 70 resize = _op 00001010: 74 69 6f 6e 73 24 72 65 73 69 7a 65 20 3d 3d 3d tions$resize === 00001020: 20 76 6f 69 64 20 30 20 3f 20 74 72 75 65 20 3a void 0 ? true : 00001030: 20 5f 6f 70 74 69 6f 6e 73 24 72 65 73 69 7a 65 _options$resize 00001040: 3b 5c 6e 20 20 76 61 72 20 77 69 6e 64 6f 77 20 ;\n var window 00001050: 3d 20 67 65 74 57 69 6e 64 6f 77 28 73 74 61 74 = getWindow(stat 00001060: 65 2e 65 6c 65 6d 65 6e 74 73 2e 70 6f 70 70 65 e.elements.poppe 00001070: 72 29 3b 5c 6e 20 20 76 61 72 20 73 63 72 6f 6c r);\n var scrol 00001080: 6c 50 61 72 65 6e 74 73 20 3d 20 5b 5d 2e 63 6f lParents = [].co 00001090: 6e 63 61 74 28 73 74 61 74 65 2e 73 63 72 6f 6c ncat(state.scrol 000010a0: 6c 50 61 72 65 6e 74 73 2e 72 65 66 65 72 65 6e lParents.referen 000010b0: 63 65 2c 20 73 74 61 74 65 2e 73 63 72 6f 6c 6c ce, state.scroll 000010c0: 50 61 72 65 6e 74 73 2e 70 6f 70 70 65 72 29 3b Parents.popper); 000010d0: 5c 6e 5c 6e 20 20 69 66 20 28 73 63 72 6f 6c 6c \n\n if (scroll 000010e0: 29 20 7b 5c 6e 20 20 20 20 73 63 72 6f 6c 6c 50 ) {\n scrollP 000010f0: 61 72 65 6e 74 73 2e 66 6f 72 45 61 63 68 28 66 arents.forEach(f 00001100: 75 6e 63 74 69 6f 6e 20 28 73 63 72 6f 6c 6c 50 unction (scrollP 00001110: 61 72 65 6e 74 29 20 7b 5c 6e 20 20 20 20 20 20 arent) {\n 00001120: 73 63 72 6f 6c 6c 50 61 72 65 6e 74 2e 61 64 64 scrollParent.add 00001130: 45 76 65 6e 74 4c 69 73 74 65 6e 65 72 28 27 73 EventListener('s 00001140: 63 72 6f 6c 6c 27 2c 20 69 6e 73 74 61 6e 63 65 croll', instance 00001150: 2e 75 70 64 61 74 65 2c 20 70 61 73 73 69 76 65 .update, passive 00001160: 29 3b 5c 6e 20 20 20 20 7d 29 3b 5c 6e 20 20 7d );\n });\n } 00001170: 5c 6e 5c 6e 20 20 69 66 20 28 72 65 73 69 7a 65 \n\n if (resize 00001180: 29 20 7b 5c 6e 20 20 20 20 77 69 6e 64 6f 77 2e ) {\n window. 00001190: 61 64 64 45 76 65 6e 74 4c 69 73 74 65 6e 65 72 addEventListener 000011a0: 28 27 72 65 73 69 7a 65 27 2c 20 69 6e 73 74 61 ('resize', insta 000011b0: 6e 63 65 2e 75 70 64 61 74 65 2c 20 70 61 73 73 nce.update, pass 000011c0: 69 76 65 29 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 ive);\n }\n\n 000011d0: 72 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 return function 000011e0: 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 73 63 () {\n if (sc 000011f0: 72 6f 6c 6c 29 20 7b 5c 6e 20 20 20 20 20 20 73 roll) {\n s 00001200: 63 72 6f 6c 6c 50 61 72 65 6e 74 73 2e 66 6f 72 crollParents.for 00001210: 45 61 63 68 28 66 75 6e 63 74 69 6f 6e 20 28 73 Each(function (s 00001220: 63 72 6f 6c 6c 50 61 72 65 6e 74 29 20 7b 5c 6e crollParent) {\n 00001230: 20 20 20 20 20 20 20 20 73 63 72 6f 6c 6c 50 61 scrollPa 00001240: 72 65 6e 74 2e 72 65 6d 6f 76 65 45 76 65 6e 74 rent.removeEvent 00001250: 4c 69 73 74 65 6e 65 72 28 27 73 63 72 6f 6c 6c Listener('scroll 00001260: 27 2c 20 69 6e 73 74 61 6e 63 65 2e 75 70 64 61 ', instance.upda 00001270: 74 65 2c 20 70 61 73 73 69 76 65 29 3b 5c 6e 20 te, passive);\n 00001280: 20 20 20 20 20 7d 29 3b 5c 6e 20 20 20 20 7d 5c });\n }\ 00001290: 6e 5c 6e 20 20 20 20 69 66 20 28 72 65 73 69 7a n\n if (resiz 000012a0: 65 29 20 7b 5c 6e 20 20 20 20 20 20 77 69 6e 64 e) {\n wind 000012b0: 6f 77 2e 72 65 6d 6f 76 65 45 76 65 6e 74 4c 69 ow.removeEventLi 000012c0: 73 74 65 6e 65 72 28 27 72 65 73 69 7a 65 27 2c stener('resize', 000012d0: 20 69 6e 73 74 61 6e 63 65 2e 75 70 64 61 74 65 instance.update 000012e0: 2c 20 70 61 73 73 69 76 65 29 3b 5c 6e 20 20 20 , passive);\n 000012f0: 20 7d 5c 6e 20 20 7d 3b 5c 6e 7d 20 2f 2f 20 65 }\n };\n} // e 00001300: 73 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 slint-disable-ne 00001310: 78 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e xt-line import/n 00001320: 6f 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 o-unused-modules 00001330: 5c 6e 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 \n\n\nexport def 00001340: 61 75 6c 74 20 7b 5c 6e 20 20 6e 61 6d 65 3a 20 ault {\n name: 00001350: 27 65 76 65 6e 74 4c 69 73 74 65 6e 65 72 73 27 'eventListeners' 00001360: 2c 5c 6e 20 20 65 6e 61 62 6c 65 64 3a 20 74 72 ,\n enabled: tr 00001370: 75 65 2c 5c 6e 20 20 70 68 61 73 65 3a 20 27 77 ue,\n phase: 'w 00001380: 72 69 74 65 27 2c 5c 6e 20 20 66 6e 3a 20 66 75 rite',\n fn: fu 00001390: 6e 63 74 69 6f 6e 20 66 6e 28 29 20 7b 7d 2c 5c nction fn() {},\ 000013a0: 6e 20 20 65 66 66 65 63 74 3a 20 65 66 66 65 63 n effect: effec 000013b0: 74 2c 5c 6e 20 20 64 61 74 61 3a 20 7b 7d 5c 6e t,\n data: {}\n 000013c0: 7d 3b 22 2c 22 76 61 72 20 68 61 73 68 20 3d 20 };","var hash = 000013d0: 7b 5c 6e 20 20 6c 65 66 74 3a 20 27 72 69 67 68 {\n left: 'righ 000013e0: 74 27 2c 5c 6e 20 20 72 69 67 68 74 3a 20 27 6c t',\n right: 'l 000013f0: 65 66 74 27 2c 5c 6e 20 20 62 6f 74 74 6f 6d 3a eft',\n bottom: 00001400: 20 27 74 6f 70 27 2c 5c 6e 20 20 74 6f 70 3a 20 'top',\n top: 00001410: 27 62 6f 74 74 6f 6d 27 5c 6e 7d 3b 5c 6e 65 78 'bottom'\n};\nex 00001420: 70 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e port default fun 00001430: 63 74 69 6f 6e 20 67 65 74 4f 70 70 6f 73 69 74 ction getOpposit 00001440: 65 50 6c 61 63 65 6d 65 6e 74 28 70 6c 61 63 65 ePlacement(place 00001450: 6d 65 6e 74 29 20 7b 5c 6e 20 20 72 65 74 75 72 ment) {\n retur 00001460: 6e 20 70 6c 61 63 65 6d 65 6e 74 2e 72 65 70 6c n placement.repl 00001470: 61 63 65 28 2f 6c 65 66 74 7c 72 69 67 68 74 7c ace(/left|right| 00001480: 62 6f 74 74 6f 6d 7c 74 6f 70 2f 67 2c 20 66 75 bottom|top/g, fu 00001490: 6e 63 74 69 6f 6e 20 28 6d 61 74 63 68 65 64 29 nction (matched) 000014a0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 68 {\n return h 000014b0: 61 73 68 5b 6d 61 74 63 68 65 64 5d 3b 5c 6e 20 ash[matched];\n 000014c0: 20 7d 29 3b 5c 6e 7d 22 2c 22 76 61 72 20 68 61 });\n}","var ha 000014d0: 73 68 20 3d 20 7b 5c 6e 20 20 73 74 61 72 74 3a sh = {\n start: 000014e0: 20 27 65 6e 64 27 2c 5c 6e 20 20 65 6e 64 3a 20 'end',\n end: 000014f0: 27 73 74 61 72 74 27 5c 6e 7d 3b 5c 6e 65 78 70 'start'\n};\nexp 00001500: 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e 63 ort default func 00001510: 74 69 6f 6e 20 67 65 74 4f 70 70 6f 73 69 74 65 tion getOpposite 00001520: 56 61 72 69 61 74 69 6f 6e 50 6c 61 63 65 6d 65 VariationPlaceme 00001530: 6e 74 28 70 6c 61 63 65 6d 65 6e 74 29 20 7b 5c nt(placement) {\ 00001540: 6e 20 20 72 65 74 75 72 6e 20 70 6c 61 63 65 6d n return placem 00001550: 65 6e 74 2e 72 65 70 6c 61 63 65 28 2f 73 74 61 ent.replace(/sta 00001560: 72 74 7c 65 6e 64 2f 67 2c 20 66 75 6e 63 74 69 rt|end/g, functi 00001570: 6f 6e 20 28 6d 61 74 63 68 65 64 29 20 7b 5c 6e on (matched) {\n 00001580: 20 20 20 20 72 65 74 75 72 6e 20 68 61 73 68 5b return hash[ 00001590: 6d 61 74 63 68 65 64 5d 3b 5c 6e 20 20 7d 29 3b matched];\n }); 000015a0: 5c 6e 7d 22 2c 22 69 6d 70 6f 72 74 20 67 65 74 \n}","import get 000015b0: 57 69 6e 64 6f 77 20 66 72 6f 6d 20 5c 22 2e 2f Window from \"./ 000015c0: 67 65 74 57 69 6e 64 6f 77 2e 6a 73 5c 22 3b 5c getWindow.js\";\ 000015d0: 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 nexport default 000015e0: 66 75 6e 63 74 69 6f 6e 20 67 65 74 57 69 6e 64 function getWind 000015f0: 6f 77 53 63 72 6f 6c 6c 28 6e 6f 64 65 29 20 7b owScroll(node) { 00001600: 5c 6e 20 20 76 61 72 20 77 69 6e 20 3d 20 67 65 \n var win = ge 00001610: 74 57 69 6e 64 6f 77 28 6e 6f 64 65 29 3b 5c 6e tWindow(node);\n 00001620: 20 20 76 61 72 20 73 63 72 6f 6c 6c 4c 65 66 74 var scrollLeft 00001630: 20 3d 20 77 69 6e 2e 70 61 67 65 58 4f 66 66 73 = win.pageXOffs 00001640: 65 74 3b 5c 6e 20 20 76 61 72 20 73 63 72 6f 6c et;\n var scrol 00001650: 6c 54 6f 70 20 3d 20 77 69 6e 2e 70 61 67 65 59 lTop = win.pageY 00001660: 4f 66 66 73 65 74 3b 5c 6e 20 20 72 65 74 75 72 Offset;\n retur 00001670: 6e 20 7b 5c 6e 20 20 20 20 73 63 72 6f 6c 6c 4c n {\n scrollL 00001680: 65 66 74 3a 20 73 63 72 6f 6c 6c 4c 65 66 74 2c eft: scrollLeft, 00001690: 5c 6e 20 20 20 20 73 63 72 6f 6c 6c 54 6f 70 3a \n scrollTop: 000016a0: 20 73 63 72 6f 6c 6c 54 6f 70 5c 6e 20 20 7d 3b scrollTop\n }; 000016b0: 5c 6e 7d 22 2c 22 69 6d 70 6f 72 74 20 67 65 74 \n}","import get 000016c0: 42 6f 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 BoundingClientRe 000016d0: 63 74 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 42 ct from \"./getB 000016e0: 6f 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 oundingClientRec 000016f0: 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 t.js\";\nimport 00001700: 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 getDocumentEleme 00001710: 6e 74 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 44 nt from \"./getD 00001720: 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 2e 6a ocumentElement.j 00001730: 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 s\";\nimport get 00001740: 57 69 6e 64 6f 77 53 63 72 6f 6c 6c 20 66 72 6f WindowScroll fro 00001750: 6d 20 5c 22 2e 2f 67 65 74 57 69 6e 64 6f 77 53 m \"./getWindowS 00001760: 63 72 6f 6c 6c 2e 6a 73 5c 22 3b 5c 6e 65 78 70 croll.js\";\nexp 00001770: 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e 63 ort default func 00001780: 74 69 6f 6e 20 67 65 74 57 69 6e 64 6f 77 53 63 tion getWindowSc 00001790: 72 6f 6c 6c 42 61 72 58 28 65 6c 65 6d 65 6e 74 rollBarX(element 000017a0: 29 20 7b 5c 6e 20 20 2f 2f 20 49 66 20 3c 68 74 ) {\n // If <ht 000017b0: 6d 6c 3e 20 68 61 73 20 61 20 43 53 53 20 77 69 ml> has a CSS wi 000017c0: 64 74 68 20 67 72 65 61 74 65 72 20 74 68 61 6e dth greater than 000017d0: 20 74 68 65 20 76 69 65 77 70 6f 72 74 2c 20 74 the viewport, t 000017e0: 68 65 6e 20 74 68 69 73 20 77 69 6c 6c 20 62 65 hen this will be 000017f0: 5c 6e 20 20 2f 2f 20 69 6e 63 6f 72 72 65 63 74 \n // incorrect 00001800: 20 66 6f 72 20 52 54 4c 2e 5c 6e 20 20 2f 2f 20 for RTL.\n // 00001810: 50 6f 70 70 65 72 20 31 20 69 73 20 62 72 6f 6b Popper 1 is brok 00001820: 65 6e 20 69 6e 20 74 68 69 73 20 63 61 73 65 20 en in this case 00001830: 61 6e 64 20 6e 65 76 65 72 20 68 61 64 20 61 20 and never had a 00001840: 62 75 67 20 72 65 70 6f 72 74 20 73 6f 20 6c 65 bug report so le 00001850: 74 27 73 20 61 73 73 75 6d 65 5c 6e 20 20 2f 2f t's assume\n // 00001860: 20 69 74 27 73 20 6e 6f 74 20 61 6e 20 69 73 73 it's not an iss 00001870: 75 65 2e 20 49 20 64 6f 6e 27 74 20 74 68 69 6e ue. I don't thin 00001880: 6b 20 61 6e 79 6f 6e 65 20 65 76 65 72 20 73 70 k anyone ever sp 00001890: 65 63 69 66 69 65 73 20 77 69 64 74 68 20 6f 6e ecifies width on 000018a0: 20 3c 68 74 6d 6c 3e 5c 6e 20 20 2f 2f 20 61 6e <html>\n // an 000018b0: 79 77 61 79 2e 5c 6e 20 20 2f 2f 20 42 72 6f 77 yway.\n // Brow 000018c0: 73 65 72 73 20 77 68 65 72 65 20 74 68 65 20 6c sers where the l 000018d0: 65 66 74 20 73 63 72 6f 6c 6c 62 61 72 20 64 6f eft scrollbar do 000018e0: 65 73 6e 27 74 20 63 61 75 73 65 20 61 6e 20 69 esn't cause an i 000018f0: 73 73 75 65 20 72 65 70 6f 72 74 20 60 30 60 20 ssue report `0` 00001900: 66 6f 72 5c 6e 20 20 2f 2f 20 74 68 69 73 20 28 for\n // this ( 00001910: 65 2e 67 2e 20 45 64 67 65 20 32 30 31 39 2c 20 e.g. Edge 2019, 00001920: 49 45 31 31 2c 20 53 61 66 61 72 69 29 5c 6e 20 IE11, Safari)\n 00001930: 20 72 65 74 75 72 6e 20 67 65 74 42 6f 75 6e 64 return getBound 00001940: 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 28 67 65 ingClientRect(ge 00001950: 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 tDocumentElement 00001960: 28 65 6c 65 6d 65 6e 74 29 29 2e 6c 65 66 74 20 (element)).left 00001970: 2b 20 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c + getWindowScrol 00001980: 6c 28 65 6c 65 6d 65 6e 74 29 2e 73 63 72 6f 6c l(element).scrol 00001990: 6c 4c 65 66 74 3b 5c 6e 7d 22 2c 22 69 6d 70 6f lLeft;\n}","impo 000019a0: 72 74 20 67 65 74 43 6f 6d 70 75 74 65 64 53 74 rt getComputedSt 000019b0: 79 6c 65 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 yle from \"./get 000019c0: 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 2e 6a 73 ComputedStyle.js 000019d0: 5c 22 3b 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 \";\nexport defa 000019e0: 75 6c 74 20 66 75 6e 63 74 69 6f 6e 20 69 73 53 ult function isS 000019f0: 63 72 6f 6c 6c 50 61 72 65 6e 74 28 65 6c 65 6d crollParent(elem 00001a00: 65 6e 74 29 20 7b 5c 6e 20 20 2f 2f 20 46 69 72 ent) {\n // Fir 00001a10: 65 66 6f 78 20 77 61 6e 74 73 20 75 73 20 74 6f efox wants us to 00001a20: 20 63 68 65 63 6b 20 60 2d 78 60 20 61 6e 64 20 check `-x` and 00001a30: 60 2d 79 60 20 76 61 72 69 61 74 69 6f 6e 73 20 `-y` variations 00001a40: 61 73 20 77 65 6c 6c 5c 6e 20 20 76 61 72 20 5f as well\n var _ 00001a50: 67 65 74 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 getComputedStyle 00001a60: 20 3d 20 67 65 74 43 6f 6d 70 75 74 65 64 53 74 = getComputedSt 00001a70: 79 6c 65 28 65 6c 65 6d 65 6e 74 29 2c 5c 6e 20 yle(element),\n 00001a80: 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 20 3d 20 overflow = 00001a90: 5f 67 65 74 43 6f 6d 70 75 74 65 64 53 74 79 6c _getComputedStyl 00001aa0: 65 2e 6f 76 65 72 66 6c 6f 77 2c 5c 6e 20 20 20 e.overflow,\n 00001ab0: 20 20 20 6f 76 65 72 66 6c 6f 77 58 20 3d 20 5f overflowX = _ 00001ac0: 67 65 74 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 getComputedStyle 00001ad0: 2e 6f 76 65 72 66 6c 6f 77 58 2c 5c 6e 20 20 20 .overflowX,\n 00001ae0: 20 20 20 6f 76 65 72 66 6c 6f 77 59 20 3d 20 5f overflowY = _ 00001af0: 67 65 74 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 getComputedStyle 00001b00: 2e 6f 76 65 72 66 6c 6f 77 59 3b 5c 6e 5c 6e 20 .overflowY;\n\n 00001b10: 20 72 65 74 75 72 6e 20 2f 61 75 74 6f 7c 73 63 return /auto|sc 00001b20: 72 6f 6c 6c 7c 6f 76 65 72 6c 61 79 7c 68 69 64 roll|overlay|hid 00001b30: 64 65 6e 2f 2e 74 65 73 74 28 6f 76 65 72 66 6c den/.test(overfl 00001b40: 6f 77 20 2b 20 6f 76 65 72 66 6c 6f 77 59 20 2b ow + overflowY + 00001b50: 20 6f 76 65 72 66 6c 6f 77 58 29 3b 5c 6e 7d 22 overflowX);\n}" 00001b60: 2c 22 69 6d 70 6f 72 74 20 67 65 74 53 63 72 6f ,"import getScro 00001b70: 6c 6c 50 61 72 65 6e 74 20 66 72 6f 6d 20 5c 22 llParent from \" 00001b80: 2e 2f 67 65 74 53 63 72 6f 6c 6c 50 61 72 65 6e ./getScrollParen 00001b90: 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 t.js\";\nimport 00001ba0: 67 65 74 50 61 72 65 6e 74 4e 6f 64 65 20 66 72 getParentNode fr 00001bb0: 6f 6d 20 5c 22 2e 2f 67 65 74 50 61 72 65 6e 74 om \"./getParent 00001bc0: 4e 6f 64 65 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f Node.js\";\nimpo 00001bd0: 72 74 20 67 65 74 57 69 6e 64 6f 77 20 66 72 6f rt getWindow fro 00001be0: 6d 20 5c 22 2e 2f 67 65 74 57 69 6e 64 6f 77 2e m \"./getWindow. 00001bf0: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 69 73 js\";\nimport is 00001c00: 53 63 72 6f 6c 6c 50 61 72 65 6e 74 20 66 72 6f ScrollParent fro 00001c10: 6d 20 5c 22 2e 2f 69 73 53 63 72 6f 6c 6c 50 61 m \"./isScrollPa 00001c20: 72 65 6e 74 2e 6a 73 5c 22 3b 5c 6e 2f 2a 5c 6e rent.js\";\n/*\n 00001c30: 67 69 76 65 6e 20 61 20 44 4f 4d 20 65 6c 65 6d given a DOM elem 00001c40: 65 6e 74 2c 20 72 65 74 75 72 6e 20 74 68 65 20 ent, return the 00001c50: 6c 69 73 74 20 6f 66 20 61 6c 6c 20 73 63 72 6f list of all scro 00001c60: 6c 6c 20 70 61 72 65 6e 74 73 2c 20 75 70 20 74 ll parents, up t 00001c70: 68 65 20 6c 69 73 74 20 6f 66 20 61 6e 63 65 73 he list of ances 00001c80: 6f 72 73 5c 6e 75 6e 74 69 6c 20 77 65 20 67 65 ors\nuntil we ge 00001c90: 74 20 74 6f 20 74 68 65 20 74 6f 70 20 77 69 6e t to the top win 00001ca0: 64 6f 77 20 6f 62 6a 65 63 74 2e 20 54 68 69 73 dow object. This 00001cb0: 20 6c 69 73 74 20 69 73 20 77 68 61 74 20 77 65 list is what we 00001cc0: 20 61 74 74 61 63 68 20 73 63 72 6f 6c 6c 20 6c attach scroll l 00001cd0: 69 73 74 65 6e 65 72 73 5c 6e 74 6f 2c 20 62 65 isteners\nto, be 00001ce0: 63 61 75 73 65 20 69 66 20 61 6e 79 20 6f 66 20 cause if any of 00001cf0: 74 68 65 73 65 20 70 61 72 65 6e 74 20 65 6c 65 these parent ele 00001d00: 6d 65 6e 74 73 20 73 63 72 6f 6c 6c 2c 20 77 65 ments scroll, we 00001d10: 27 6c 6c 20 6e 65 65 64 20 74 6f 20 72 65 2d 63 'll need to re-c 00001d20: 61 6c 63 75 6c 61 74 65 20 74 68 65 5c 6e 72 65 alculate the\nre 00001d30: 66 65 72 65 6e 63 65 20 65 6c 65 6d 65 6e 74 27 ference element' 00001d40: 73 20 70 6f 73 69 74 69 6f 6e 2e 5c 6e 2a 2f 5c s position.\n*/\ 00001d50: 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c n\nexport defaul 00001d60: 74 20 66 75 6e 63 74 69 6f 6e 20 6c 69 73 74 53 t function listS 00001d70: 63 72 6f 6c 6c 50 61 72 65 6e 74 73 28 65 6c 65 crollParents(ele 00001d80: 6d 65 6e 74 2c 20 6c 69 73 74 29 20 7b 5c 6e 20 ment, list) {\n 00001d90: 20 76 61 72 20 5f 65 6c 65 6d 65 6e 74 24 6f 77 var _element$ow 00001da0: 6e 65 72 44 6f 63 75 6d 65 6e 3b 5c 6e 5c 6e 20 nerDocumen;\n\n 00001db0: 20 69 66 20 28 6c 69 73 74 20 3d 3d 3d 20 76 6f if (list === vo 00001dc0: 69 64 20 30 29 20 7b 5c 6e 20 20 20 20 6c 69 73 id 0) {\n lis 00001dd0: 74 20 3d 20 5b 5d 3b 5c 6e 20 20 7d 5c 6e 5c 6e t = [];\n }\n\n 00001de0: 20 20 76 61 72 20 73 63 72 6f 6c 6c 50 61 72 65 var scrollPare 00001df0: 6e 74 20 3d 20 67 65 74 53 63 72 6f 6c 6c 50 61 nt = getScrollPa 00001e00: 72 65 6e 74 28 65 6c 65 6d 65 6e 74 29 3b 5c 6e rent(element);\n 00001e10: 20 20 76 61 72 20 69 73 42 6f 64 79 20 3d 20 73 var isBody = s 00001e20: 63 72 6f 6c 6c 50 61 72 65 6e 74 20 3d 3d 3d 20 crollParent === 00001e30: 28 28 5f 65 6c 65 6d 65 6e 74 24 6f 77 6e 65 72 ((_element$owner 00001e40: 44 6f 63 75 6d 65 6e 20 3d 20 65 6c 65 6d 65 6e Documen = elemen 00001e50: 74 2e 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 74 29 t.ownerDocument) 00001e60: 20 3d 3d 20 6e 75 6c 6c 20 3f 20 76 6f 69 64 20 == null ? void 00001e70: 30 20 3a 20 5f 65 6c 65 6d 65 6e 74 24 6f 77 6e 0 : _element$own 00001e80: 65 72 44 6f 63 75 6d 65 6e 2e 62 6f 64 79 29 3b erDocumen.body); 00001e90: 5c 6e 20 20 76 61 72 20 77 69 6e 20 3d 20 67 65 \n var win = ge 00001ea0: 74 57 69 6e 64 6f 77 28 73 63 72 6f 6c 6c 50 61 tWindow(scrollPa 00001eb0: 72 65 6e 74 29 3b 5c 6e 20 20 76 61 72 20 74 61 rent);\n var ta 00001ec0: 72 67 65 74 20 3d 20 69 73 42 6f 64 79 20 3f 20 rget = isBody ? 00001ed0: 5b 77 69 6e 5d 2e 63 6f 6e 63 61 74 28 77 69 6e [win].concat(win 00001ee0: 2e 76 69 73 75 61 6c 56 69 65 77 70 6f 72 74 20 .visualViewport 00001ef0: 7c 7c 20 5b 5d 2c 20 69 73 53 63 72 6f 6c 6c 50 || [], isScrollP 00001f00: 61 72 65 6e 74 28 73 63 72 6f 6c 6c 50 61 72 65 arent(scrollPare 00001f10: 6e 74 29 20 3f 20 73 63 72 6f 6c 6c 50 61 72 65 nt) ? scrollPare 00001f20: 6e 74 20 3a 20 5b 5d 29 20 3a 20 73 63 72 6f 6c nt : []) : scrol 00001f30: 6c 50 61 72 65 6e 74 3b 5c 6e 20 20 76 61 72 20 lParent;\n var 00001f40: 75 70 64 61 74 65 64 4c 69 73 74 20 3d 20 6c 69 updatedList = li 00001f50: 73 74 2e 63 6f 6e 63 61 74 28 74 61 72 67 65 74 st.concat(target 00001f60: 29 3b 5c 6e 20 20 72 65 74 75 72 6e 20 69 73 42 );\n return isB 00001f70: 6f 64 79 20 3f 20 75 70 64 61 74 65 64 4c 69 73 ody ? updatedLis 00001f80: 74 20 3a 20 2f 2f 20 24 46 6c 6f 77 46 69 78 4d t : // $FlowFixM 00001f90: 65 5b 69 6e 63 6f 6d 70 61 74 69 62 6c 65 2d 63 e[incompatible-c 00001fa0: 61 6c 6c 5d 3a 20 69 73 42 6f 64 79 20 74 65 6c all]: isBody tel 00001fb0: 6c 73 20 75 73 20 74 61 72 67 65 74 20 77 69 6c ls us target wil 00001fc0: 6c 20 62 65 20 61 6e 20 48 54 4d 4c 45 6c 65 6d l be an HTMLElem 00001fd0: 65 6e 74 20 68 65 72 65 5c 6e 20 20 75 70 64 61 ent here\n upda 00001fe0: 74 65 64 4c 69 73 74 2e 63 6f 6e 63 61 74 28 6c tedList.concat(l 00001ff0: 69 73 74 53 63 72 6f 6c 6c 50 61 72 65 6e 74 73 istScrollParents 00002000: 28 67 65 74 50 61 72 65 6e 74 4e 6f 64 65 28 74 (getParentNode(t 00002010: 61 72 67 65 74 29 29 29 3b 5c 6e 7d 22 2c 22 69 arget)));\n}","i 00002020: 6d 70 6f 72 74 20 67 65 74 50 61 72 65 6e 74 4e mport getParentN 00002030: 6f 64 65 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 ode from \"./get 00002040: 50 61 72 65 6e 74 4e 6f 64 65 2e 6a 73 5c 22 3b ParentNode.js\"; 00002050: 5c 6e 69 6d 70 6f 72 74 20 69 73 53 63 72 6f 6c \nimport isScrol 00002060: 6c 50 61 72 65 6e 74 20 66 72 6f 6d 20 5c 22 2e lParent from \". 00002070: 2f 69 73 53 63 72 6f 6c 6c 50 61 72 65 6e 74 2e /isScrollParent. 00002080: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 js\";\nimport ge 00002090: 74 4e 6f 64 65 4e 61 6d 65 20 66 72 6f 6d 20 5c tNodeName from \ 000020a0: 22 2e 2f 67 65 74 4e 6f 64 65 4e 61 6d 65 2e 6a "./getNodeName.j 000020b0: 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 69 s\";\nimport { i 000020c0: 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 20 7d 20 66 sHTMLElement } f 000020d0: 72 6f 6d 20 5c 22 2e 2f 69 6e 73 74 61 6e 63 65 rom \"./instance 000020e0: 4f 66 2e 6a 73 5c 22 3b 5c 6e 65 78 70 6f 72 74 Of.js\";\nexport 000020f0: 20 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f default functio 00002100: 6e 20 67 65 74 53 63 72 6f 6c 6c 50 61 72 65 6e n getScrollParen 00002110: 74 28 6e 6f 64 65 29 20 7b 5c 6e 20 20 69 66 20 t(node) {\n if 00002120: 28 5b 27 68 74 6d 6c 27 2c 20 27 62 6f 64 79 27 (['html', 'body' 00002130: 2c 20 27 23 64 6f 63 75 6d 65 6e 74 27 5d 2e 69 , '#document'].i 00002140: 6e 64 65 78 4f 66 28 67 65 74 4e 6f 64 65 4e 61 ndexOf(getNodeNa 00002150: 6d 65 28 6e 6f 64 65 29 29 20 3e 3d 20 30 29 20 me(node)) >= 0) 00002160: 7b 5c 6e 20 20 20 20 2f 2f 20 24 46 6c 6f 77 46 {\n // $FlowF 00002170: 69 78 4d 65 5b 69 6e 63 6f 6d 70 61 74 69 62 6c ixMe[incompatibl 00002180: 65 2d 72 65 74 75 72 6e 5d 3a 20 61 73 73 75 6d e-return]: assum 00002190: 65 20 62 6f 64 79 20 69 73 20 61 6c 77 61 79 73 e body is always 000021a0: 20 61 76 61 69 6c 61 62 6c 65 5c 6e 20 20 20 20 available\n 000021b0: 72 65 74 75 72 6e 20 6e 6f 64 65 2e 6f 77 6e 65 return node.owne 000021c0: 72 44 6f 63 75 6d 65 6e 74 2e 62 6f 64 79 3b 5c rDocument.body;\ 000021d0: 6e 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 69 73 n }\n\n if (is 000021e0: 48 54 4d 4c 45 6c 65 6d 65 6e 74 28 6e 6f 64 65 HTMLElement(node 000021f0: 29 20 26 26 20 69 73 53 63 72 6f 6c 6c 50 61 72 ) && isScrollPar 00002200: 65 6e 74 28 6e 6f 64 65 29 29 20 7b 5c 6e 20 20 ent(node)) {\n 00002210: 20 20 72 65 74 75 72 6e 20 6e 6f 64 65 3b 5c 6e return node;\n 00002220: 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 }\n\n return 00002230: 67 65 74 53 63 72 6f 6c 6c 50 61 72 65 6e 74 28 getScrollParent( 00002240: 67 65 74 50 61 72 65 6e 74 4e 6f 64 65 28 6e 6f getParentNode(no 00002250: 64 65 29 29 3b 5c 6e 7d 22 2c 22 65 78 70 6f 72 de));\n}","expor 00002260: 74 20 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 t default functi 00002270: 6f 6e 20 72 65 63 74 54 6f 43 6c 69 65 6e 74 52 on rectToClientR 00002280: 65 63 74 28 72 65 63 74 29 20 7b 5c 6e 20 20 72 ect(rect) {\n r 00002290: 65 74 75 72 6e 20 4f 62 6a 65 63 74 2e 61 73 73 eturn Object.ass 000022a0: 69 67 6e 28 7b 7d 2c 20 72 65 63 74 2c 20 7b 5c ign({}, rect, {\ 000022b0: 6e 20 20 20 20 6c 65 66 74 3a 20 72 65 63 74 2e n left: rect. 000022c0: 78 2c 5c 6e 20 20 20 20 74 6f 70 3a 20 72 65 63 x,\n top: rec 000022d0: 74 2e 79 2c 5c 6e 20 20 20 20 72 69 67 68 74 3a t.y,\n right: 000022e0: 20 72 65 63 74 2e 78 20 2b 20 72 65 63 74 2e 77 rect.x + rect.w 000022f0: 69 64 74 68 2c 5c 6e 20 20 20 20 62 6f 74 74 6f idth,\n botto 00002300: 6d 3a 20 72 65 63 74 2e 79 20 2b 20 72 65 63 74 m: rect.y + rect 00002310: 2e 68 65 69 67 68 74 5c 6e 20 20 7d 29 3b 5c 6e .height\n });\n 00002320: 7d 22 2c 22 69 6d 70 6f 72 74 20 7b 20 76 69 65 }","import { vie 00002330: 77 70 6f 72 74 20 7d 20 66 72 6f 6d 20 5c 22 2e wport } from \". 00002340: 2e 2f 65 6e 75 6d 73 2e 6a 73 5c 22 3b 5c 6e 69 ./enums.js\";\ni 00002350: 6d 70 6f 72 74 20 67 65 74 56 69 65 77 70 6f 72 mport getViewpor 00002360: 74 52 65 63 74 20 66 72 6f 6d 20 5c 22 2e 2f 67 tRect from \"./g 00002370: 65 74 56 69 65 77 70 6f 72 74 52 65 63 74 2e 6a etViewportRect.j 00002380: 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 s\";\nimport get 00002390: 44 6f 63 75 6d 65 6e 74 52 65 63 74 20 66 72 6f DocumentRect fro 000023a0: 6d 20 5c 22 2e 2f 67 65 74 44 6f 63 75 6d 65 6e m \"./getDocumen 000023b0: 74 52 65 63 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 tRect.js\";\nimp 000023c0: 6f 72 74 20 6c 69 73 74 53 63 72 6f 6c 6c 50 61 ort listScrollPa 000023d0: 72 65 6e 74 73 20 66 72 6f 6d 20 5c 22 2e 2f 6c rents from \"./l 000023e0: 69 73 74 53 63 72 6f 6c 6c 50 61 72 65 6e 74 73 istScrollParents 000023f0: 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 .js\";\nimport g 00002400: 65 74 4f 66 66 73 65 74 50 61 72 65 6e 74 20 66 etOffsetParent f 00002410: 72 6f 6d 20 5c 22 2e 2f 67 65 74 4f 66 66 73 65 rom \"./getOffse 00002420: 74 50 61 72 65 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 tParent.js\";\ni 00002430: 6d 70 6f 72 74 20 67 65 74 44 6f 63 75 6d 65 6e mport getDocumen 00002440: 74 45 6c 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 tElement from \" 00002450: 2e 2f 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 ./getDocumentEle 00002460: 6d 65 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f ment.js\";\nimpo 00002470: 72 74 20 67 65 74 43 6f 6d 70 75 74 65 64 53 74 rt getComputedSt 00002480: 79 6c 65 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 yle from \"./get 00002490: 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 2e 6a 73 ComputedStyle.js 000024a0: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 69 73 \";\nimport { is 000024b0: 45 6c 65 6d 65 6e 74 2c 20 69 73 48 54 4d 4c 45 Element, isHTMLE 000024c0: 6c 65 6d 65 6e 74 20 7d 20 66 72 6f 6d 20 5c 22 lement } from \" 000024d0: 2e 2f 69 6e 73 74 61 6e 63 65 4f 66 2e 6a 73 5c ./instanceOf.js\ 000024e0: 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 42 6f ";\nimport getBo 000024f0: 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 undingClientRect 00002500: 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 42 6f 75 from \"./getBou 00002510: 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 2e ndingClientRect. 00002520: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 js\";\nimport ge 00002530: 74 50 61 72 65 6e 74 4e 6f 64 65 20 66 72 6f 6d tParentNode from 00002540: 20 5c 22 2e 2f 67 65 74 50 61 72 65 6e 74 4e 6f \"./getParentNo 00002550: 64 65 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 de.js\";\nimport 00002560: 20 63 6f 6e 74 61 69 6e 73 20 66 72 6f 6d 20 5c contains from \ 00002570: 22 2e 2f 63 6f 6e 74 61 69 6e 73 2e 6a 73 5c 22 "./contains.js\" 00002580: 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 4e 6f 64 ;\nimport getNod 00002590: 65 4e 61 6d 65 20 66 72 6f 6d 20 5c 22 2e 2f 67 eName from \"./g 000025a0: 65 74 4e 6f 64 65 4e 61 6d 65 2e 6a 73 5c 22 3b etNodeName.js\"; 000025b0: 5c 6e 69 6d 70 6f 72 74 20 72 65 63 74 54 6f 43 \nimport rectToC 000025c0: 6c 69 65 6e 74 52 65 63 74 20 66 72 6f 6d 20 5c lientRect from \ 000025d0: 22 2e 2e 2f 75 74 69 6c 73 2f 72 65 63 74 54 6f "../utils/rectTo 000025e0: 43 6c 69 65 6e 74 52 65 63 74 2e 6a 73 5c 22 3b ClientRect.js\"; 000025f0: 5c 6e 69 6d 70 6f 72 74 20 7b 20 6d 61 78 2c 20 \nimport { max, 00002600: 6d 69 6e 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e 2f min } from \"../ 00002610: 75 74 69 6c 73 2f 6d 61 74 68 2e 6a 73 5c 22 3b utils/math.js\"; 00002620: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 67 65 74 \n\nfunction get 00002630: 49 6e 6e 65 72 42 6f 75 6e 64 69 6e 67 43 6c 69 InnerBoundingCli 00002640: 65 6e 74 52 65 63 74 28 65 6c 65 6d 65 6e 74 2c entRect(element, 00002650: 20 73 74 72 61 74 65 67 79 29 20 7b 5c 6e 20 20 strategy) {\n 00002660: 76 61 72 20 72 65 63 74 20 3d 20 67 65 74 42 6f var rect = getBo 00002670: 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 undingClientRect 00002680: 28 65 6c 65 6d 65 6e 74 2c 20 66 61 6c 73 65 2c (element, false, 00002690: 20 73 74 72 61 74 65 67 79 20 3d 3d 3d 20 27 66 strategy === 'f 000026a0: 69 78 65 64 27 29 3b 5c 6e 20 20 72 65 63 74 2e ixed');\n rect. 000026b0: 74 6f 70 20 3d 20 72 65 63 74 2e 74 6f 70 20 2b top = rect.top + 000026c0: 20 65 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 54 element.clientT 000026d0: 6f 70 3b 5c 6e 20 20 72 65 63 74 2e 6c 65 66 74 op;\n rect.left 000026e0: 20 3d 20 72 65 63 74 2e 6c 65 66 74 20 2b 20 65 = rect.left + e 000026f0: 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 4c 65 66 lement.clientLef 00002700: 74 3b 5c 6e 20 20 72 65 63 74 2e 62 6f 74 74 6f t;\n rect.botto 00002710: 6d 20 3d 20 72 65 63 74 2e 74 6f 70 20 2b 20 65 m = rect.top + e 00002720: 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 48 65 69 lement.clientHei 00002730: 67 68 74 3b 5c 6e 20 20 72 65 63 74 2e 72 69 67 ght;\n rect.rig 00002740: 68 74 20 3d 20 72 65 63 74 2e 6c 65 66 74 20 2b ht = rect.left + 00002750: 20 65 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 57 element.clientW 00002760: 69 64 74 68 3b 5c 6e 20 20 72 65 63 74 2e 77 69 idth;\n rect.wi 00002770: 64 74 68 20 3d 20 65 6c 65 6d 65 6e 74 2e 63 6c dth = element.cl 00002780: 69 65 6e 74 57 69 64 74 68 3b 5c 6e 20 20 72 65 ientWidth;\n re 00002790: 63 74 2e 68 65 69 67 68 74 20 3d 20 65 6c 65 6d ct.height = elem 000027a0: 65 6e 74 2e 63 6c 69 65 6e 74 48 65 69 67 68 74 ent.clientHeight 000027b0: 3b 5c 6e 20 20 72 65 63 74 2e 78 20 3d 20 72 65 ;\n rect.x = re 000027c0: 63 74 2e 6c 65 66 74 3b 5c 6e 20 20 72 65 63 74 ct.left;\n rect 000027d0: 2e 79 20 3d 20 72 65 63 74 2e 74 6f 70 3b 5c 6e .y = rect.top;\n 000027e0: 20 20 72 65 74 75 72 6e 20 72 65 63 74 3b 5c 6e return rect;\n 000027f0: 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 67 65 }\n\nfunction ge 00002800: 74 43 6c 69 65 6e 74 52 65 63 74 46 72 6f 6d 4d tClientRectFromM 00002810: 69 78 65 64 54 79 70 65 28 65 6c 65 6d 65 6e 74 ixedType(element 00002820: 2c 20 63 6c 69 70 70 69 6e 67 50 61 72 65 6e 74 , clippingParent 00002830: 2c 20 73 74 72 61 74 65 67 79 29 20 7b 5c 6e 20 , strategy) {\n 00002840: 20 72 65 74 75 72 6e 20 63 6c 69 70 70 69 6e 67 return clipping 00002850: 50 61 72 65 6e 74 20 3d 3d 3d 20 76 69 65 77 70 Parent === viewp 00002860: 6f 72 74 20 3f 20 72 65 63 74 54 6f 43 6c 69 65 ort ? rectToClie 00002870: 6e 74 52 65 63 74 28 67 65 74 56 69 65 77 70 6f ntRect(getViewpo 00002880: 72 74 52 65 63 74 28 65 6c 65 6d 65 6e 74 2c 20 rtRect(element, 00002890: 73 74 72 61 74 65 67 79 29 29 20 3a 20 69 73 45 strategy)) : isE 000028a0: 6c 65 6d 65 6e 74 28 63 6c 69 70 70 69 6e 67 50 lement(clippingP 000028b0: 61 72 65 6e 74 29 20 3f 20 67 65 74 49 6e 6e 65 arent) ? getInne 000028c0: 72 42 6f 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 rBoundingClientR 000028d0: 65 63 74 28 63 6c 69 70 70 69 6e 67 50 61 72 65 ect(clippingPare 000028e0: 6e 74 2c 20 73 74 72 61 74 65 67 79 29 20 3a 20 nt, strategy) : 000028f0: 72 65 63 74 54 6f 43 6c 69 65 6e 74 52 65 63 74 rectToClientRect 00002900: 28 67 65 74 44 6f 63 75 6d 65 6e 74 52 65 63 74 (getDocumentRect 00002910: 28 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d (getDocumentElem 00002920: 65 6e 74 28 65 6c 65 6d 65 6e 74 29 29 29 3b 5c ent(element)));\ 00002930: 6e 7d 20 2f 2f 20 41 20 5c 22 63 6c 69 70 70 69 n} // A \"clippi 00002940: 6e 67 20 70 61 72 65 6e 74 5c 22 20 69 73 20 61 ng parent\" is a 00002950: 6e 20 6f 76 65 72 66 6c 6f 77 61 62 6c 65 20 63 n overflowable c 00002960: 6f 6e 74 61 69 6e 65 72 20 77 69 74 68 20 74 68 ontainer with th 00002970: 65 20 63 68 61 72 61 63 74 65 72 69 73 74 69 63 e characteristic 00002980: 20 6f 66 5c 6e 2f 2f 20 63 6c 69 70 70 69 6e 67 of\n// clipping 00002990: 20 28 6f 72 20 68 69 64 69 6e 67 29 20 6f 76 65 (or hiding) ove 000029a0: 72 66 6c 6f 77 69 6e 67 20 65 6c 65 6d 65 6e 74 rflowing element 000029b0: 73 20 77 69 74 68 20 61 20 70 6f 73 69 74 69 6f s with a positio 000029c0: 6e 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f 6d n different from 000029d0: 5c 6e 2f 2f 20 60 69 6e 69 74 69 61 6c 60 5c 6e \n// `initial`\n 000029e0: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 67 65 74 \n\nfunction get 000029f0: 43 6c 69 70 70 69 6e 67 50 61 72 65 6e 74 73 28 ClippingParents( 00002a00: 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 76 61 element) {\n va 00002a10: 72 20 63 6c 69 70 70 69 6e 67 50 61 72 65 6e 74 r clippingParent 00002a20: 73 20 3d 20 6c 69 73 74 53 63 72 6f 6c 6c 50 61 s = listScrollPa 00002a30: 72 65 6e 74 73 28 67 65 74 50 61 72 65 6e 74 4e rents(getParentN 00002a40: 6f 64 65 28 65 6c 65 6d 65 6e 74 29 29 3b 5c 6e ode(element));\n 00002a50: 20 20 76 61 72 20 63 61 6e 45 73 63 61 70 65 43 var canEscapeC 00002a60: 6c 69 70 70 69 6e 67 20 3d 20 5b 27 61 62 73 6f lipping = ['abso 00002a70: 6c 75 74 65 27 2c 20 27 66 69 78 65 64 27 5d 2e lute', 'fixed']. 00002a80: 69 6e 64 65 78 4f 66 28 67 65 74 43 6f 6d 70 75 indexOf(getCompu 00002a90: 74 65 64 53 74 79 6c 65 28 65 6c 65 6d 65 6e 74 tedStyle(element 00002aa0: 29 2e 70 6f 73 69 74 69 6f 6e 29 20 3e 3d 20 30 ).position) >= 0 00002ab0: 3b 5c 6e 20 20 76 61 72 20 63 6c 69 70 70 65 72 ;\n var clipper 00002ac0: 45 6c 65 6d 65 6e 74 20 3d 20 63 61 6e 45 73 63 Element = canEsc 00002ad0: 61 70 65 43 6c 69 70 70 69 6e 67 20 26 26 20 69 apeClipping && i 00002ae0: 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 28 65 6c 65 sHTMLElement(ele 00002af0: 6d 65 6e 74 29 20 3f 20 67 65 74 4f 66 66 73 65 ment) ? getOffse 00002b00: 74 50 61 72 65 6e 74 28 65 6c 65 6d 65 6e 74 29 tParent(element) 00002b10: 20 3a 20 65 6c 65 6d 65 6e 74 3b 5c 6e 5c 6e 20 : element;\n\n 00002b20: 20 69 66 20 28 21 69 73 45 6c 65 6d 65 6e 74 28 if (!isElement( 00002b30: 63 6c 69 70 70 65 72 45 6c 65 6d 65 6e 74 29 29 clipperElement)) 00002b40: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 5b {\n return [ 00002b50: 5d 3b 5c 6e 20 20 7d 20 2f 2f 20 24 46 6c 6f 77 ];\n } // $Flow 00002b60: 46 69 78 4d 65 5b 69 6e 63 6f 6d 70 61 74 69 62 FixMe[incompatib 00002b70: 6c 65 2d 72 65 74 75 72 6e 5d 3a 20 68 74 74 70 le-return]: http 00002b80: 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 66 s://github.com/f 00002b90: 61 63 65 62 6f 6f 6b 2f 66 6c 6f 77 2f 69 73 73 acebook/flow/iss 00002ba0: 75 65 73 2f 31 34 31 34 5c 6e 5c 6e 5c 6e 20 20 ues/1414\n\n\n 00002bb0: 72 65 74 75 72 6e 20 63 6c 69 70 70 69 6e 67 50 return clippingP 00002bc0: 61 72 65 6e 74 73 2e 66 69 6c 74 65 72 28 66 75 arents.filter(fu 00002bd0: 6e 63 74 69 6f 6e 20 28 63 6c 69 70 70 69 6e 67 nction (clipping 00002be0: 50 61 72 65 6e 74 29 20 7b 5c 6e 20 20 20 20 72 Parent) {\n r 00002bf0: 65 74 75 72 6e 20 69 73 45 6c 65 6d 65 6e 74 28 eturn isElement( 00002c00: 63 6c 69 70 70 69 6e 67 50 61 72 65 6e 74 29 20 clippingParent) 00002c10: 26 26 20 63 6f 6e 74 61 69 6e 73 28 63 6c 69 70 && contains(clip 00002c20: 70 69 6e 67 50 61 72 65 6e 74 2c 20 63 6c 69 70 pingParent, clip 00002c30: 70 65 72 45 6c 65 6d 65 6e 74 29 20 26 26 20 67 perElement) && g 00002c40: 65 74 4e 6f 64 65 4e 61 6d 65 28 63 6c 69 70 70 etNodeName(clipp 00002c50: 69 6e 67 50 61 72 65 6e 74 29 20 21 3d 3d 20 27 ingParent) !== ' 00002c60: 62 6f 64 79 27 3b 5c 6e 20 20 7d 29 3b 5c 6e 7d body';\n });\n} 00002c70: 20 2f 2f 20 47 65 74 73 20 74 68 65 20 6d 61 78 // Gets the max 00002c80: 69 6d 75 6d 20 61 72 65 61 20 74 68 61 74 20 74 imum area that t 00002c90: 68 65 20 65 6c 65 6d 65 6e 74 20 69 73 20 76 69 he element is vi 00002ca0: 73 69 62 6c 65 20 69 6e 20 64 75 65 20 74 6f 20 sible in due to 00002cb0: 61 6e 79 20 6e 75 6d 62 65 72 20 6f 66 5c 6e 2f any number of\n/ 00002cc0: 2f 20 63 6c 69 70 70 69 6e 67 20 70 61 72 65 6e / clipping paren 00002cd0: 74 73 5c 6e 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 ts\n\n\nexport d 00002ce0: 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f 6e 20 efault function 00002cf0: 67 65 74 43 6c 69 70 70 69 6e 67 52 65 63 74 28 getClippingRect( 00002d00: 65 6c 65 6d 65 6e 74 2c 20 62 6f 75 6e 64 61 72 element, boundar 00002d10: 79 2c 20 72 6f 6f 74 42 6f 75 6e 64 61 72 79 2c y, rootBoundary, 00002d20: 20 73 74 72 61 74 65 67 79 29 20 7b 5c 6e 20 20 strategy) {\n 00002d30: 76 61 72 20 6d 61 69 6e 43 6c 69 70 70 69 6e 67 var mainClipping 00002d40: 50 61 72 65 6e 74 73 20 3d 20 62 6f 75 6e 64 61 Parents = bounda 00002d50: 72 79 20 3d 3d 3d 20 27 63 6c 69 70 70 69 6e 67 ry === 'clipping 00002d60: 50 61 72 65 6e 74 73 27 20 3f 20 67 65 74 43 6c Parents' ? getCl 00002d70: 69 70 70 69 6e 67 50 61 72 65 6e 74 73 28 65 6c ippingParents(el 00002d80: 65 6d 65 6e 74 29 20 3a 20 5b 5d 2e 63 6f 6e 63 ement) : [].conc 00002d90: 61 74 28 62 6f 75 6e 64 61 72 79 29 3b 5c 6e 20 at(boundary);\n 00002da0: 20 76 61 72 20 63 6c 69 70 70 69 6e 67 50 61 72 var clippingPar 00002db0: 65 6e 74 73 20 3d 20 5b 5d 2e 63 6f 6e 63 61 74 ents = [].concat 00002dc0: 28 6d 61 69 6e 43 6c 69 70 70 69 6e 67 50 61 72 (mainClippingPar 00002dd0: 65 6e 74 73 2c 20 5b 72 6f 6f 74 42 6f 75 6e 64 ents, [rootBound 00002de0: 61 72 79 5d 29 3b 5c 6e 20 20 76 61 72 20 66 69 ary]);\n var fi 00002df0: 72 73 74 43 6c 69 70 70 69 6e 67 50 61 72 65 6e rstClippingParen 00002e00: 74 20 3d 20 63 6c 69 70 70 69 6e 67 50 61 72 65 t = clippingPare 00002e10: 6e 74 73 5b 30 5d 3b 5c 6e 20 20 76 61 72 20 63 nts[0];\n var c 00002e20: 6c 69 70 70 69 6e 67 52 65 63 74 20 3d 20 63 6c lippingRect = cl 00002e30: 69 70 70 69 6e 67 50 61 72 65 6e 74 73 2e 72 65 ippingParents.re 00002e40: 64 75 63 65 28 66 75 6e 63 74 69 6f 6e 20 28 61 duce(function (a 00002e50: 63 63 52 65 63 74 2c 20 63 6c 69 70 70 69 6e 67 ccRect, clipping 00002e60: 50 61 72 65 6e 74 29 20 7b 5c 6e 20 20 20 20 76 Parent) {\n v 00002e70: 61 72 20 72 65 63 74 20 3d 20 67 65 74 43 6c 69 ar rect = getCli 00002e80: 65 6e 74 52 65 63 74 46 72 6f 6d 4d 69 78 65 64 entRectFromMixed 00002e90: 54 79 70 65 28 65 6c 65 6d 65 6e 74 2c 20 63 6c Type(element, cl 00002ea0: 69 70 70 69 6e 67 50 61 72 65 6e 74 2c 20 73 74 ippingParent, st 00002eb0: 72 61 74 65 67 79 29 3b 5c 6e 20 20 20 20 61 63 rategy);\n ac 00002ec0: 63 52 65 63 74 2e 74 6f 70 20 3d 20 6d 61 78 28 cRect.top = max( 00002ed0: 72 65 63 74 2e 74 6f 70 2c 20 61 63 63 52 65 63 rect.top, accRec 00002ee0: 74 2e 74 6f 70 29 3b 5c 6e 20 20 20 20 61 63 63 t.top);\n acc 00002ef0: 52 65 63 74 2e 72 69 67 68 74 20 3d 20 6d 69 6e Rect.right = min 00002f00: 28 72 65 63 74 2e 72 69 67 68 74 2c 20 61 63 63 (rect.right, acc 00002f10: 52 65 63 74 2e 72 69 67 68 74 29 3b 5c 6e 20 20 Rect.right);\n 00002f20: 20 20 61 63 63 52 65 63 74 2e 62 6f 74 74 6f 6d accRect.bottom 00002f30: 20 3d 20 6d 69 6e 28 72 65 63 74 2e 62 6f 74 74 = min(rect.bott 00002f40: 6f 6d 2c 20 61 63 63 52 65 63 74 2e 62 6f 74 74 om, accRect.bott 00002f50: 6f 6d 29 3b 5c 6e 20 20 20 20 61 63 63 52 65 63 om);\n accRec 00002f60: 74 2e 6c 65 66 74 20 3d 20 6d 61 78 28 72 65 63 t.left = max(rec 00002f70: 74 2e 6c 65 66 74 2c 20 61 63 63 52 65 63 74 2e t.left, accRect. 00002f80: 6c 65 66 74 29 3b 5c 6e 20 20 20 20 72 65 74 75 left);\n retu 00002f90: 72 6e 20 61 63 63 52 65 63 74 3b 5c 6e 20 20 7d rn accRect;\n } 00002fa0: 2c 20 67 65 74 43 6c 69 65 6e 74 52 65 63 74 46 , getClientRectF 00002fb0: 72 6f 6d 4d 69 78 65 64 54 79 70 65 28 65 6c 65 romMixedType(ele 00002fc0: 6d 65 6e 74 2c 20 66 69 72 73 74 43 6c 69 70 70 ment, firstClipp 00002fd0: 69 6e 67 50 61 72 65 6e 74 2c 20 73 74 72 61 74 ingParent, strat 00002fe0: 65 67 79 29 29 3b 5c 6e 20 20 63 6c 69 70 70 69 egy));\n clippi 00002ff0: 6e 67 52 65 63 74 2e 77 69 64 74 68 20 3d 20 63 ngRect.width = c 00003000: 6c 69 70 70 69 6e 67 52 65 63 74 2e 72 69 67 68 lippingRect.righ 00003010: 74 20 2d 20 63 6c 69 70 70 69 6e 67 52 65 63 74 t - clippingRect 00003020: 2e 6c 65 66 74 3b 5c 6e 20 20 63 6c 69 70 70 69 .left;\n clippi 00003030: 6e 67 52 65 63 74 2e 68 65 69 67 68 74 20 3d 20 ngRect.height = 00003040: 63 6c 69 70 70 69 6e 67 52 65 63 74 2e 62 6f 74 clippingRect.bot 00003050: 74 6f 6d 20 2d 20 63 6c 69 70 70 69 6e 67 52 65 tom - clippingRe 00003060: 63 74 2e 74 6f 70 3b 5c 6e 20 20 63 6c 69 70 70 ct.top;\n clipp 00003070: 69 6e 67 52 65 63 74 2e 78 20 3d 20 63 6c 69 70 ingRect.x = clip 00003080: 70 69 6e 67 52 65 63 74 2e 6c 65 66 74 3b 5c 6e pingRect.left;\n 00003090: 20 20 63 6c 69 70 70 69 6e 67 52 65 63 74 2e 79 clippingRect.y 000030a0: 20 3d 20 63 6c 69 70 70 69 6e 67 52 65 63 74 2e = clippingRect. 000030b0: 74 6f 70 3b 5c 6e 20 20 72 65 74 75 72 6e 20 63 top;\n return c 000030c0: 6c 69 70 70 69 6e 67 52 65 63 74 3b 5c 6e 7d 22 lippingRect;\n}" 000030d0: 2c 22 69 6d 70 6f 72 74 20 67 65 74 57 69 6e 64 ,"import getWind 000030e0: 6f 77 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 57 ow from \"./getW 000030f0: 69 6e 64 6f 77 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 indow.js\";\nimp 00003100: 6f 72 74 20 67 65 74 44 6f 63 75 6d 65 6e 74 45 ort getDocumentE 00003110: 6c 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e 2f lement from \"./ 00003120: 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 getDocumentEleme 00003130: 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 nt.js\";\nimport 00003140: 20 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c getWindowScroll 00003150: 42 61 72 58 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 BarX from \"./ge 00003160: 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c 42 61 72 tWindowScrollBar 00003170: 58 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 X.js\";\nimport 00003180: 69 73 4c 61 79 6f 75 74 56 69 65 77 70 6f 72 74 isLayoutViewport 00003190: 20 66 72 6f 6d 20 5c 22 2e 2f 69 73 4c 61 79 6f from \"./isLayo 000031a0: 75 74 56 69 65 77 70 6f 72 74 2e 6a 73 5c 22 3b utViewport.js\"; 000031b0: 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 \nexport default 000031c0: 20 66 75 6e 63 74 69 6f 6e 20 67 65 74 56 69 65 function getVie 000031d0: 77 70 6f 72 74 52 65 63 74 28 65 6c 65 6d 65 6e wportRect(elemen 000031e0: 74 2c 20 73 74 72 61 74 65 67 79 29 20 7b 5c 6e t, strategy) {\n 000031f0: 20 20 76 61 72 20 77 69 6e 20 3d 20 67 65 74 57 var win = getW 00003200: 69 6e 64 6f 77 28 65 6c 65 6d 65 6e 74 29 3b 5c indow(element);\ 00003210: 6e 20 20 76 61 72 20 68 74 6d 6c 20 3d 20 67 65 n var html = ge 00003220: 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 tDocumentElement 00003230: 28 65 6c 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 61 (element);\n va 00003240: 72 20 76 69 73 75 61 6c 56 69 65 77 70 6f 72 74 r visualViewport 00003250: 20 3d 20 77 69 6e 2e 76 69 73 75 61 6c 56 69 65 = win.visualVie 00003260: 77 70 6f 72 74 3b 5c 6e 20 20 76 61 72 20 77 69 wport;\n var wi 00003270: 64 74 68 20 3d 20 68 74 6d 6c 2e 63 6c 69 65 6e dth = html.clien 00003280: 74 57 69 64 74 68 3b 5c 6e 20 20 76 61 72 20 68 tWidth;\n var h 00003290: 65 69 67 68 74 20 3d 20 68 74 6d 6c 2e 63 6c 69 eight = html.cli 000032a0: 65 6e 74 48 65 69 67 68 74 3b 5c 6e 20 20 76 61 entHeight;\n va 000032b0: 72 20 78 20 3d 20 30 3b 5c 6e 20 20 76 61 72 20 r x = 0;\n var 000032c0: 79 20 3d 20 30 3b 5c 6e 5c 6e 20 20 69 66 20 28 y = 0;\n\n if ( 000032d0: 76 69 73 75 61 6c 56 69 65 77 70 6f 72 74 29 20 visualViewport) 000032e0: 7b 5c 6e 20 20 20 20 77 69 64 74 68 20 3d 20 76 {\n width = v 000032f0: 69 73 75 61 6c 56 69 65 77 70 6f 72 74 2e 77 69 isualViewport.wi 00003300: 64 74 68 3b 5c 6e 20 20 20 20 68 65 69 67 68 74 dth;\n height 00003310: 20 3d 20 76 69 73 75 61 6c 56 69 65 77 70 6f 72 = visualViewpor 00003320: 74 2e 68 65 69 67 68 74 3b 5c 6e 20 20 20 20 76 t.height;\n v 00003330: 61 72 20 6c 61 79 6f 75 74 56 69 65 77 70 6f 72 ar layoutViewpor 00003340: 74 20 3d 20 69 73 4c 61 79 6f 75 74 56 69 65 77 t = isLayoutView 00003350: 70 6f 72 74 28 29 3b 5c 6e 5c 6e 20 20 20 20 69 port();\n\n i 00003360: 66 20 28 6c 61 79 6f 75 74 56 69 65 77 70 6f 72 f (layoutViewpor 00003370: 74 20 7c 7c 20 21 6c 61 79 6f 75 74 56 69 65 77 t || !layoutView 00003380: 70 6f 72 74 20 26 26 20 73 74 72 61 74 65 67 79 port && strategy 00003390: 20 3d 3d 3d 20 27 66 69 78 65 64 27 29 20 7b 5c === 'fixed') {\ 000033a0: 6e 20 20 20 20 20 20 78 20 3d 20 76 69 73 75 61 n x = visua 000033b0: 6c 56 69 65 77 70 6f 72 74 2e 6f 66 66 73 65 74 lViewport.offset 000033c0: 4c 65 66 74 3b 5c 6e 20 20 20 20 20 20 79 20 3d Left;\n y = 000033d0: 20 76 69 73 75 61 6c 56 69 65 77 70 6f 72 74 2e visualViewport. 000033e0: 6f 66 66 73 65 74 54 6f 70 3b 5c 6e 20 20 20 20 offsetTop;\n 000033f0: 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 }\n }\n\n retu 00003400: 72 6e 20 7b 5c 6e 20 20 20 20 77 69 64 74 68 3a rn {\n width: 00003410: 20 77 69 64 74 68 2c 5c 6e 20 20 20 20 68 65 69 width,\n hei 00003420: 67 68 74 3a 20 68 65 69 67 68 74 2c 5c 6e 20 20 ght: height,\n 00003430: 20 20 78 3a 20 78 20 2b 20 67 65 74 57 69 6e 64 x: x + getWind 00003440: 6f 77 53 63 72 6f 6c 6c 42 61 72 58 28 65 6c 65 owScrollBarX(ele 00003450: 6d 65 6e 74 29 2c 5c 6e 20 20 20 20 79 3a 20 79 ment),\n y: y 00003460: 5c 6e 20 20 7d 3b 5c 6e 7d 22 2c 22 69 6d 70 6f \n };\n}","impo 00003470: 72 74 20 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c rt getDocumentEl 00003480: 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e 2f 67 ement from \"./g 00003490: 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e etDocumentElemen 000034a0: 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 t.js\";\nimport 000034b0: 67 65 74 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 getComputedStyle 000034c0: 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 43 6f 6d from \"./getCom 000034d0: 70 75 74 65 64 53 74 79 6c 65 2e 6a 73 5c 22 3b putedStyle.js\"; 000034e0: 5c 6e 69 6d 70 6f 72 74 20 67 65 74 57 69 6e 64 \nimport getWind 000034f0: 6f 77 53 63 72 6f 6c 6c 42 61 72 58 20 66 72 6f owScrollBarX fro 00003500: 6d 20 5c 22 2e 2f 67 65 74 57 69 6e 64 6f 77 53 m \"./getWindowS 00003510: 63 72 6f 6c 6c 42 61 72 58 2e 6a 73 5c 22 3b 5c crollBarX.js\";\ 00003520: 6e 69 6d 70 6f 72 74 20 67 65 74 57 69 6e 64 6f nimport getWindo 00003530: 77 53 63 72 6f 6c 6c 20 66 72 6f 6d 20 5c 22 2e wScroll from \". 00003540: 2f 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c /getWindowScroll 00003550: 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b .js\";\nimport { 00003560: 20 6d 61 78 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e max } from \".. 00003570: 2f 75 74 69 6c 73 2f 6d 61 74 68 2e 6a 73 5c 22 /utils/math.js\" 00003580: 3b 20 2f 2f 20 47 65 74 73 20 74 68 65 20 65 6e ; // Gets the en 00003590: 74 69 72 65 20 73 69 7a 65 20 6f 66 20 74 68 65 tire size of the 000035a0: 20 73 63 72 6f 6c 6c 61 62 6c 65 20 64 6f 63 75 scrollable docu 000035b0: 6d 65 6e 74 20 61 72 65 61 2c 20 65 76 65 6e 20 ment area, even 000035c0: 65 78 74 65 6e 64 69 6e 67 20 6f 75 74 73 69 64 extending outsid 000035d0: 65 5c 6e 2f 2f 20 6f 66 20 74 68 65 20 60 3c 68 e\n// of the `<h 000035e0: 74 6d 6c 3e 60 20 61 6e 64 20 60 3c 62 6f 64 79 tml>` and `<body 000035f0: 3e 60 20 72 65 63 74 20 62 6f 75 6e 64 73 20 69 >` rect bounds i 00003600: 66 20 68 6f 72 69 7a 6f 6e 74 61 6c 6c 79 20 73 f horizontally s 00003610: 63 72 6f 6c 6c 61 62 6c 65 5c 6e 5c 6e 65 78 70 crollable\n\nexp 00003620: 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e 63 ort default func 00003630: 74 69 6f 6e 20 67 65 74 44 6f 63 75 6d 65 6e 74 tion getDocument 00003640: 52 65 63 74 28 65 6c 65 6d 65 6e 74 29 20 7b 5c Rect(element) {\ 00003650: 6e 20 20 76 61 72 20 5f 65 6c 65 6d 65 6e 74 24 n var _element$ 00003660: 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 3b 5c 6e 5c ownerDocumen;\n\ 00003670: 6e 20 20 76 61 72 20 68 74 6d 6c 20 3d 20 67 65 n var html = ge 00003680: 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 tDocumentElement 00003690: 28 65 6c 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 61 (element);\n va 000036a0: 72 20 77 69 6e 53 63 72 6f 6c 6c 20 3d 20 67 65 r winScroll = ge 000036b0: 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c 28 65 6c tWindowScroll(el 000036c0: 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 61 72 20 62 ement);\n var b 000036d0: 6f 64 79 20 3d 20 28 5f 65 6c 65 6d 65 6e 74 24 ody = (_element$ 000036e0: 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 20 3d 20 65 ownerDocumen = e 000036f0: 6c 65 6d 65 6e 74 2e 6f 77 6e 65 72 44 6f 63 75 lement.ownerDocu 00003700: 6d 65 6e 74 29 20 3d 3d 20 6e 75 6c 6c 20 3f 20 ment) == null ? 00003710: 76 6f 69 64 20 30 20 3a 20 5f 65 6c 65 6d 65 6e void 0 : _elemen 00003720: 74 24 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 2e 62 t$ownerDocumen.b 00003730: 6f 64 79 3b 5c 6e 20 20 76 61 72 20 77 69 64 74 ody;\n var widt 00003740: 68 20 3d 20 6d 61 78 28 68 74 6d 6c 2e 73 63 72 h = max(html.scr 00003750: 6f 6c 6c 57 69 64 74 68 2c 20 68 74 6d 6c 2e 63 ollWidth, html.c 00003760: 6c 69 65 6e 74 57 69 64 74 68 2c 20 62 6f 64 79 lientWidth, body 00003770: 20 3f 20 62 6f 64 79 2e 73 63 72 6f 6c 6c 57 69 ? body.scrollWi 00003780: 64 74 68 20 3a 20 30 2c 20 62 6f 64 79 20 3f 20 dth : 0, body ? 00003790: 62 6f 64 79 2e 63 6c 69 65 6e 74 57 69 64 74 68 body.clientWidth 000037a0: 20 3a 20 30 29 3b 5c 6e 20 20 76 61 72 20 68 65 : 0);\n var he 000037b0: 69 67 68 74 20 3d 20 6d 61 78 28 68 74 6d 6c 2e ight = max(html. 000037c0: 73 63 72 6f 6c 6c 48 65 69 67 68 74 2c 20 68 74 scrollHeight, ht 000037d0: 6d 6c 2e 63 6c 69 65 6e 74 48 65 69 67 68 74 2c ml.clientHeight, 000037e0: 20 62 6f 64 79 20 3f 20 62 6f 64 79 2e 73 63 72 body ? body.scr 000037f0: 6f 6c 6c 48 65 69 67 68 74 20 3a 20 30 2c 20 62 ollHeight : 0, b 00003800: 6f 64 79 20 3f 20 62 6f 64 79 2e 63 6c 69 65 6e ody ? body.clien 00003810: 74 48 65 69 67 68 74 20 3a 20 30 29 3b 5c 6e 20 tHeight : 0);\n 00003820: 20 76 61 72 20 78 20 3d 20 2d 77 69 6e 53 63 72 var x = -winScr 00003830: 6f 6c 6c 2e 73 63 72 6f 6c 6c 4c 65 66 74 20 2b oll.scrollLeft + 00003840: 20 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c getWindowScroll 00003850: 42 61 72 58 28 65 6c 65 6d 65 6e 74 29 3b 5c 6e BarX(element);\n 00003860: 20 20 76 61 72 20 79 20 3d 20 2d 77 69 6e 53 63 var y = -winSc 00003870: 72 6f 6c 6c 2e 73 63 72 6f 6c 6c 54 6f 70 3b 5c roll.scrollTop;\ 00003880: 6e 5c 6e 20 20 69 66 20 28 67 65 74 43 6f 6d 70 n\n if (getComp 00003890: 75 74 65 64 53 74 79 6c 65 28 62 6f 64 79 20 7c utedStyle(body | 000038a0: 7c 20 68 74 6d 6c 29 2e 64 69 72 65 63 74 69 6f | html).directio 000038b0: 6e 20 3d 3d 3d 20 27 72 74 6c 27 29 20 7b 5c 6e n === 'rtl') {\n 000038c0: 20 20 20 20 78 20 2b 3d 20 6d 61 78 28 68 74 6d x += max(htm 000038d0: 6c 2e 63 6c 69 65 6e 74 57 69 64 74 68 2c 20 62 l.clientWidth, b 000038e0: 6f 64 79 20 3f 20 62 6f 64 79 2e 63 6c 69 65 6e ody ? body.clien 000038f0: 74 57 69 64 74 68 20 3a 20 30 29 20 2d 20 77 69 tWidth : 0) - wi 00003900: 64 74 68 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 72 dth;\n }\n\n r 00003910: 65 74 75 72 6e 20 7b 5c 6e 20 20 20 20 77 69 64 eturn {\n wid 00003920: 74 68 3a 20 77 69 64 74 68 2c 5c 6e 20 20 20 20 th: width,\n 00003930: 68 65 69 67 68 74 3a 20 68 65 69 67 68 74 2c 5c height: height,\ 00003940: 6e 20 20 20 20 78 3a 20 78 2c 5c 6e 20 20 20 20 n x: x,\n 00003950: 79 3a 20 79 5c 6e 20 20 7d 3b 5c 6e 7d 22 2c 22 y: y\n };\n}"," 00003960: 69 6d 70 6f 72 74 20 67 65 74 42 61 73 65 50 6c import getBasePl 00003970: 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e acement from \". 00003980: 2f 67 65 74 42 61 73 65 50 6c 61 63 65 6d 65 6e /getBasePlacemen 00003990: 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 t.js\";\nimport 000039a0: 67 65 74 56 61 72 69 61 74 69 6f 6e 20 66 72 6f getVariation fro 000039b0: 6d 20 5c 22 2e 2f 67 65 74 56 61 72 69 61 74 69 m \"./getVariati 000039c0: 6f 6e 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 on.js\";\nimport 000039d0: 20 67 65 74 4d 61 69 6e 41 78 69 73 46 72 6f 6d getMainAxisFrom 000039e0: 50 6c 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c Placement from \ 000039f0: 22 2e 2f 67 65 74 4d 61 69 6e 41 78 69 73 46 72 "./getMainAxisFr 00003a00: 6f 6d 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 5c 22 omPlacement.js\" 00003a10: 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 74 6f 70 2c ;\nimport { top, 00003a20: 20 72 69 67 68 74 2c 20 62 6f 74 74 6f 6d 2c 20 right, bottom, 00003a30: 6c 65 66 74 2c 20 73 74 61 72 74 2c 20 65 6e 64 left, start, end 00003a40: 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e 2f 65 6e 75 } from \"../enu 00003a50: 6d 73 2e 6a 73 5c 22 3b 5c 6e 65 78 70 6f 72 74 ms.js\";\nexport 00003a60: 20 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f default functio 00003a70: 6e 20 63 6f 6d 70 75 74 65 4f 66 66 73 65 74 73 n computeOffsets 00003a80: 28 5f 72 65 66 29 20 7b 5c 6e 20 20 76 61 72 20 (_ref) {\n var 00003a90: 72 65 66 65 72 65 6e 63 65 20 3d 20 5f 72 65 66 reference = _ref 00003aa0: 2e 72 65 66 65 72 65 6e 63 65 2c 5c 6e 20 20 20 .reference,\n 00003ab0: 20 20 20 65 6c 65 6d 65 6e 74 20 3d 20 5f 72 65 element = _re 00003ac0: 66 2e 65 6c 65 6d 65 6e 74 2c 5c 6e 20 20 20 20 f.element,\n 00003ad0: 20 20 70 6c 61 63 65 6d 65 6e 74 20 3d 20 5f 72 placement = _r 00003ae0: 65 66 2e 70 6c 61 63 65 6d 65 6e 74 3b 5c 6e 20 ef.placement;\n 00003af0: 20 76 61 72 20 62 61 73 65 50 6c 61 63 65 6d 65 var basePlaceme 00003b00: 6e 74 20 3d 20 70 6c 61 63 65 6d 65 6e 74 20 3f nt = placement ? 00003b10: 20 67 65 74 42 61 73 65 50 6c 61 63 65 6d 65 6e getBasePlacemen 00003b20: 74 28 70 6c 61 63 65 6d 65 6e 74 29 20 3a 20 6e t(placement) : n 00003b30: 75 6c 6c 3b 5c 6e 20 20 76 61 72 20 76 61 72 69 ull;\n var vari 00003b40: 61 74 69 6f 6e 20 3d 20 70 6c 61 63 65 6d 65 6e ation = placemen 00003b50: 74 20 3f 20 67 65 74 56 61 72 69 61 74 69 6f 6e t ? getVariation 00003b60: 28 70 6c 61 63 65 6d 65 6e 74 29 20 3a 20 6e 75 (placement) : nu 00003b70: 6c 6c 3b 5c 6e 20 20 76 61 72 20 63 6f 6d 6d 6f ll;\n var commo 00003b80: 6e 58 20 3d 20 72 65 66 65 72 65 6e 63 65 2e 78 nX = reference.x 00003b90: 20 2b 20 72 65 66 65 72 65 6e 63 65 2e 77 69 64 + reference.wid 00003ba0: 74 68 20 2f 20 32 20 2d 20 65 6c 65 6d 65 6e 74 th / 2 - element 00003bb0: 2e 77 69 64 74 68 20 2f 20 32 3b 5c 6e 20 20 76 .width / 2;\n v 00003bc0: 61 72 20 63 6f 6d 6d 6f 6e 59 20 3d 20 72 65 66 ar commonY = ref 00003bd0: 65 72 65 6e 63 65 2e 79 20 2b 20 72 65 66 65 72 erence.y + refer 00003be0: 65 6e 63 65 2e 68 65 69 67 68 74 20 2f 20 32 20 ence.height / 2 00003bf0: 2d 20 65 6c 65 6d 65 6e 74 2e 68 65 69 67 68 74 - element.height 00003c00: 20 2f 20 32 3b 5c 6e 20 20 76 61 72 20 6f 66 66 / 2;\n var off 00003c10: 73 65 74 73 3b 5c 6e 5c 6e 20 20 73 77 69 74 63 sets;\n\n switc 00003c20: 68 20 28 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 h (basePlacement 00003c30: 29 20 7b 5c 6e 20 20 20 20 63 61 73 65 20 74 6f ) {\n case to 00003c40: 70 3a 5c 6e 20 20 20 20 20 20 6f 66 66 73 65 74 p:\n offset 00003c50: 73 20 3d 20 7b 5c 6e 20 20 20 20 20 20 20 20 78 s = {\n x 00003c60: 3a 20 63 6f 6d 6d 6f 6e 58 2c 5c 6e 20 20 20 20 : commonX,\n 00003c70: 20 20 20 20 79 3a 20 72 65 66 65 72 65 6e 63 65 y: reference 00003c80: 2e 79 20 2d 20 65 6c 65 6d 65 6e 74 2e 68 65 69 .y - element.hei 00003c90: 67 68 74 5c 6e 20 20 20 20 20 20 7d 3b 5c 6e 20 ght\n };\n 00003ca0: 20 20 20 20 20 62 72 65 61 6b 3b 5c 6e 5c 6e 20 break;\n\n 00003cb0: 20 20 20 63 61 73 65 20 62 6f 74 74 6f 6d 3a 5c case bottom:\ 00003cc0: 6e 20 20 20 20 20 20 6f 66 66 73 65 74 73 20 3d n offsets = 00003cd0: 20 7b 5c 6e 20 20 20 20 20 20 20 20 78 3a 20 63 {\n x: c 00003ce0: 6f 6d 6d 6f 6e 58 2c 5c 6e 20 20 20 20 20 20 20 ommonX,\n 00003cf0: 20 79 3a 20 72 65 66 65 72 65 6e 63 65 2e 79 20 y: reference.y 00003d00: 2b 20 72 65 66 65 72 65 6e 63 65 2e 68 65 69 67 + reference.heig 00003d10: 68 74 5c 6e 20 20 20 20 20 20 7d 3b 5c 6e 20 20 ht\n };\n 00003d20: 20 20 20 20 62 72 65 61 6b 3b 5c 6e 5c 6e 20 20 break;\n\n 00003d30: 20 20 63 61 73 65 20 72 69 67 68 74 3a 5c 6e 20 case right:\n 00003d40: 20 20 20 20 20 6f 66 66 73 65 74 73 20 3d 20 7b offsets = { 00003d50: 5c 6e 20 20 20 20 20 20 20 20 78 3a 20 72 65 66 \n x: ref 00003d60: 65 72 65 6e 63 65 2e 78 20 2b 20 72 65 66 65 72 erence.x + refer 00003d70: 65 6e 63 65 2e 77 69 64 74 68 2c 5c 6e 20 20 20 ence.width,\n 00003d80: 20 20 20 20 20 79 3a 20 63 6f 6d 6d 6f 6e 59 5c y: commonY\ 00003d90: 6e 20 20 20 20 20 20 7d 3b 5c 6e 20 20 20 20 20 n };\n 00003da0: 20 62 72 65 61 6b 3b 5c 6e 5c 6e 20 20 20 20 63 break;\n\n c 00003db0: 61 73 65 20 6c 65 66 74 3a 5c 6e 20 20 20 20 20 ase left:\n 00003dc0: 20 6f 66 66 73 65 74 73 20 3d 20 7b 5c 6e 20 20 offsets = {\n 00003dd0: 20 20 20 20 20 20 78 3a 20 72 65 66 65 72 65 6e x: referen 00003de0: 63 65 2e 78 20 2d 20 65 6c 65 6d 65 6e 74 2e 77 ce.x - element.w 00003df0: 69 64 74 68 2c 5c 6e 20 20 20 20 20 20 20 20 79 idth,\n y 00003e00: 3a 20 63 6f 6d 6d 6f 6e 59 5c 6e 20 20 20 20 20 : commonY\n 00003e10: 20 7d 3b 5c 6e 20 20 20 20 20 20 62 72 65 61 6b };\n break 00003e20: 3b 5c 6e 5c 6e 20 20 20 20 64 65 66 61 75 6c 74 ;\n\n default 00003e30: 3a 5c 6e 20 20 20 20 20 20 6f 66 66 73 65 74 73 :\n offsets 00003e40: 20 3d 20 7b 5c 6e 20 20 20 20 20 20 20 20 78 3a = {\n x: 00003e50: 20 72 65 66 65 72 65 6e 63 65 2e 78 2c 5c 6e 20 reference.x,\n 00003e60: 20 20 20 20 20 20 20 79 3a 20 72 65 66 65 72 65 y: refere 00003e70: 6e 63 65 2e 79 5c 6e 20 20 20 20 20 20 7d 3b 5c nce.y\n };\ 00003e80: 6e 20 20 7d 5c 6e 5c 6e 20 20 76 61 72 20 6d 61 n }\n\n var ma 00003e90: 69 6e 41 78 69 73 20 3d 20 62 61 73 65 50 6c 61 inAxis = basePla 00003ea0: 63 65 6d 65 6e 74 20 3f 20 67 65 74 4d 61 69 6e cement ? getMain 00003eb0: 41 78 69 73 46 72 6f 6d 50 6c 61 63 65 6d 65 6e AxisFromPlacemen 00003ec0: 74 28 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 29 t(basePlacement) 00003ed0: 20 3a 20 6e 75 6c 6c 3b 5c 6e 5c 6e 20 20 69 66 : null;\n\n if 00003ee0: 20 28 6d 61 69 6e 41 78 69 73 20 21 3d 20 6e 75 (mainAxis != nu 00003ef0: 6c 6c 29 20 7b 5c 6e 20 20 20 20 76 61 72 20 6c ll) {\n var l 00003f00: 65 6e 20 3d 20 6d 61 69 6e 41 78 69 73 20 3d 3d en = mainAxis == 00003f10: 3d 20 27 79 27 20 3f 20 27 68 65 69 67 68 74 27 = 'y' ? 'height' 00003f20: 20 3a 20 27 77 69 64 74 68 27 3b 5c 6e 5c 6e 20 : 'width';\n\n 00003f30: 20 20 20 73 77 69 74 63 68 20 28 76 61 72 69 61 switch (varia 00003f40: 74 69 6f 6e 29 20 7b 5c 6e 20 20 20 20 20 20 63 tion) {\n c 00003f50: 61 73 65 20 73 74 61 72 74 3a 5c 6e 20 20 20 20 ase start:\n 00003f60: 20 20 20 20 6f 66 66 73 65 74 73 5b 6d 61 69 6e offsets[main 00003f70: 41 78 69 73 5d 20 3d 20 6f 66 66 73 65 74 73 5b Axis] = offsets[ 00003f80: 6d 61 69 6e 41 78 69 73 5d 20 2d 20 28 72 65 66 mainAxis] - (ref 00003f90: 65 72 65 6e 63 65 5b 6c 65 6e 5d 20 2f 20 32 20 erence[len] / 2 00003fa0: 2d 20 65 6c 65 6d 65 6e 74 5b 6c 65 6e 5d 20 2f - element[len] / 00003fb0: 20 32 29 3b 5c 6e 20 20 20 20 20 20 20 20 62 72 2);\n br 00003fc0: 65 61 6b 3b 5c 6e 5c 6e 20 20 20 20 20 20 63 61 eak;\n\n ca 00003fd0: 73 65 20 65 6e 64 3a 5c 6e 20 20 20 20 20 20 20 se end:\n 00003fe0: 20 6f 66 66 73 65 74 73 5b 6d 61 69 6e 41 78 69 offsets[mainAxi 00003ff0: 73 5d 20 3d 20 6f 66 66 73 65 74 73 5b 6d 61 69 s] = offsets[mai 00004000: 6e 41 78 69 73 5d 20 2b 20 28 72 65 66 65 72 65 nAxis] + (refere 00004010: 6e 63 65 5b 6c 65 6e 5d 20 2f 20 32 20 2d 20 65 nce[len] / 2 - e 00004020: 6c 65 6d 65 6e 74 5b 6c 65 6e 5d 20 2f 20 32 29 lement[len] / 2) 00004030: 3b 5c 6e 20 20 20 20 20 20 20 20 62 72 65 61 6b ;\n break 00004040: 3b 5c 6e 5c 6e 20 20 20 20 20 20 64 65 66 61 75 ;\n\n defau 00004050: 6c 74 3a 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c lt:\n }\n }\ 00004060: 6e 5c 6e 20 20 72 65 74 75 72 6e 20 6f 66 66 73 n\n return offs 00004070: 65 74 73 3b 5c 6e 7d 22 2c 22 69 6d 70 6f 72 74 ets;\n}","import 00004080: 20 67 65 74 43 6c 69 70 70 69 6e 67 52 65 63 74 getClippingRect 00004090: 20 66 72 6f 6d 20 5c 22 2e 2e 2f 64 6f 6d 2d 75 from \"../dom-u 000040a0: 74 69 6c 73 2f 67 65 74 43 6c 69 70 70 69 6e 67 tils/getClipping 000040b0: 52 65 63 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f Rect.js\";\nimpo 000040c0: 72 74 20 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c rt getDocumentEl 000040d0: 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e 2e 2f ement from \"../ 000040e0: 64 6f 6d 2d 75 74 69 6c 73 2f 67 65 74 44 6f 63 dom-utils/getDoc 000040f0: 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 2e 6a 73 5c umentElement.js\ 00004100: 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 42 6f ";\nimport getBo 00004110: 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 undingClientRect 00004120: 20 66 72 6f 6d 20 5c 22 2e 2e 2f 64 6f 6d 2d 75 from \"../dom-u 00004130: 74 69 6c 73 2f 67 65 74 42 6f 75 6e 64 69 6e 67 tils/getBounding 00004140: 43 6c 69 65 6e 74 52 65 63 74 2e 6a 73 5c 22 3b ClientRect.js\"; 00004150: 5c 6e 69 6d 70 6f 72 74 20 63 6f 6d 70 75 74 65 \nimport compute 00004160: 4f 66 66 73 65 74 73 20 66 72 6f 6d 20 5c 22 2e Offsets from \". 00004170: 2f 63 6f 6d 70 75 74 65 4f 66 66 73 65 74 73 2e /computeOffsets. 00004180: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 72 65 js\";\nimport re 00004190: 63 74 54 6f 43 6c 69 65 6e 74 52 65 63 74 20 66 ctToClientRect f 000041a0: 72 6f 6d 20 5c 22 2e 2f 72 65 63 74 54 6f 43 6c rom \"./rectToCl 000041b0: 69 65 6e 74 52 65 63 74 2e 6a 73 5c 22 3b 5c 6e ientRect.js\";\n 000041c0: 69 6d 70 6f 72 74 20 7b 20 63 6c 69 70 70 69 6e import { clippin 000041d0: 67 50 61 72 65 6e 74 73 2c 20 72 65 66 65 72 65 gParents, refere 000041e0: 6e 63 65 2c 20 70 6f 70 70 65 72 2c 20 62 6f 74 nce, popper, bot 000041f0: 74 6f 6d 2c 20 74 6f 70 2c 20 72 69 67 68 74 2c tom, top, right, 00004200: 20 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 73 2c basePlacements, 00004210: 20 76 69 65 77 70 6f 72 74 20 7d 20 66 72 6f 6d viewport } from 00004220: 20 5c 22 2e 2e 2f 65 6e 75 6d 73 2e 6a 73 5c 22 \"../enums.js\" 00004230: 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 69 73 45 6c ;\nimport { isEl 00004240: 65 6d 65 6e 74 20 7d 20 66 72 6f 6d 20 5c 22 2e ement } from \". 00004250: 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 69 6e 73 74 ./dom-utils/inst 00004260: 61 6e 63 65 4f 66 2e 6a 73 5c 22 3b 5c 6e 69 6d anceOf.js\";\nim 00004270: 70 6f 72 74 20 6d 65 72 67 65 50 61 64 64 69 6e port mergePaddin 00004280: 67 4f 62 6a 65 63 74 20 66 72 6f 6d 20 5c 22 2e gObject from \". 00004290: 2f 6d 65 72 67 65 50 61 64 64 69 6e 67 4f 62 6a /mergePaddingObj 000042a0: 65 63 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 ect.js\";\nimpor 000042b0: 74 20 65 78 70 61 6e 64 54 6f 48 61 73 68 4d 61 t expandToHashMa 000042c0: 70 20 66 72 6f 6d 20 5c 22 2e 2f 65 78 70 61 6e p from \"./expan 000042d0: 64 54 6f 48 61 73 68 4d 61 70 2e 6a 73 5c 22 3b dToHashMap.js\"; 000042e0: 20 2f 2f 20 65 73 6c 69 6e 74 2d 64 69 73 61 62 // eslint-disab 000042f0: 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 20 69 6d 70 le-next-line imp 00004300: 6f 72 74 2f 6e 6f 2d 75 6e 75 73 65 64 2d 6d 6f ort/no-unused-mo 00004310: 64 75 6c 65 73 5c 6e 5c 6e 65 78 70 6f 72 74 20 dules\n\nexport 00004320: 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f 6e default function 00004330: 20 64 65 74 65 63 74 4f 76 65 72 66 6c 6f 77 28 detectOverflow( 00004340: 73 74 61 74 65 2c 20 6f 70 74 69 6f 6e 73 29 20 state, options) 00004350: 7b 5c 6e 20 20 69 66 20 28 6f 70 74 69 6f 6e 73 {\n if (options 00004360: 20 3d 3d 3d 20 76 6f 69 64 20 30 29 20 7b 5c 6e === void 0) {\n 00004370: 20 20 20 20 6f 70 74 69 6f 6e 73 20 3d 20 7b 7d options = {} 00004380: 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 76 61 72 20 ;\n }\n\n var 00004390: 5f 6f 70 74 69 6f 6e 73 20 3d 20 6f 70 74 69 6f _options = optio 000043a0: 6e 73 2c 5c 6e 20 20 20 20 20 20 5f 6f 70 74 69 ns,\n _opti 000043b0: 6f 6e 73 24 70 6c 61 63 65 6d 65 6e 74 20 3d 20 ons$placement = 000043c0: 5f 6f 70 74 69 6f 6e 73 2e 70 6c 61 63 65 6d 65 _options.placeme 000043d0: 6e 74 2c 5c 6e 20 20 20 20 20 20 70 6c 61 63 65 nt,\n place 000043e0: 6d 65 6e 74 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 ment = _options$ 000043f0: 70 6c 61 63 65 6d 65 6e 74 20 3d 3d 3d 20 76 6f placement === vo 00004400: 69 64 20 30 20 3f 20 73 74 61 74 65 2e 70 6c 61 id 0 ? state.pla 00004410: 63 65 6d 65 6e 74 20 3a 20 5f 6f 70 74 69 6f 6e cement : _option 00004420: 73 24 70 6c 61 63 65 6d 65 6e 74 2c 5c 6e 20 20 s$placement,\n 00004430: 20 20 20 20 5f 6f 70 74 69 6f 6e 73 24 73 74 72 _options$str 00004440: 61 74 65 67 79 20 3d 20 5f 6f 70 74 69 6f 6e 73 ategy = _options 00004450: 2e 73 74 72 61 74 65 67 79 2c 5c 6e 20 20 20 20 .strategy,\n 00004460: 20 20 73 74 72 61 74 65 67 79 20 3d 20 5f 6f 70 strategy = _op 00004470: 74 69 6f 6e 73 24 73 74 72 61 74 65 67 79 20 3d tions$strategy = 00004480: 3d 3d 20 76 6f 69 64 20 30 20 3f 20 73 74 61 74 == void 0 ? stat 00004490: 65 2e 73 74 72 61 74 65 67 79 20 3a 20 5f 6f 70 e.strategy : _op 000044a0: 74 69 6f 6e 73 24 73 74 72 61 74 65 67 79 2c 5c tions$strategy,\ 000044b0: 6e 20 20 20 20 20 20 5f 6f 70 74 69 6f 6e 73 24 n _options$ 000044c0: 62 6f 75 6e 64 61 72 79 20 3d 20 5f 6f 70 74 69 boundary = _opti 000044d0: 6f 6e 73 2e 62 6f 75 6e 64 61 72 79 2c 5c 6e 20 ons.boundary,\n 000044e0: 20 20 20 20 20 62 6f 75 6e 64 61 72 79 20 3d 20 boundary = 000044f0: 5f 6f 70 74 69 6f 6e 73 24 62 6f 75 6e 64 61 72 _options$boundar 00004500: 79 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 63 y === void 0 ? c 00004510: 6c 69 70 70 69 6e 67 50 61 72 65 6e 74 73 20 3a lippingParents : 00004520: 20 5f 6f 70 74 69 6f 6e 73 24 62 6f 75 6e 64 61 _options$bounda 00004530: 72 79 2c 5c 6e 20 20 20 20 20 20 5f 6f 70 74 69 ry,\n _opti 00004540: 6f 6e 73 24 72 6f 6f 74 42 6f 75 6e 64 61 72 79 ons$rootBoundary 00004550: 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 72 6f 6f 74 = _options.root 00004560: 42 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 20 20 Boundary,\n 00004570: 20 72 6f 6f 74 42 6f 75 6e 64 61 72 79 20 3d 20 rootBoundary = 00004580: 5f 6f 70 74 69 6f 6e 73 24 72 6f 6f 74 42 6f 75 _options$rootBou 00004590: 6e 64 61 72 79 20 3d 3d 3d 20 76 6f 69 64 20 30 ndary === void 0 000045a0: 20 3f 20 76 69 65 77 70 6f 72 74 20 3a 20 5f 6f ? viewport : _o 000045b0: 70 74 69 6f 6e 73 24 72 6f 6f 74 42 6f 75 6e 64 ptions$rootBound 000045c0: 61 72 79 2c 5c 6e 20 20 20 20 20 20 5f 6f 70 74 ary,\n _opt 000045d0: 69 6f 6e 73 24 65 6c 65 6d 65 6e 74 43 6f 6e 74 ions$elementCont 000045e0: 65 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 65 6c 65 e = _options.ele 000045f0: 6d 65 6e 74 43 6f 6e 74 65 78 74 2c 5c 6e 20 20 mentContext,\n 00004600: 20 20 20 20 65 6c 65 6d 65 6e 74 43 6f 6e 74 65 elementConte 00004610: 78 74 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 65 6c xt = _options$el 00004620: 65 6d 65 6e 74 43 6f 6e 74 65 20 3d 3d 3d 20 76 ementConte === v 00004630: 6f 69 64 20 30 20 3f 20 70 6f 70 70 65 72 20 3a oid 0 ? popper : 00004640: 20 5f 6f 70 74 69 6f 6e 73 24 65 6c 65 6d 65 6e _options$elemen 00004650: 74 43 6f 6e 74 65 2c 5c 6e 20 20 20 20 20 20 5f tConte,\n _ 00004660: 6f 70 74 69 6f 6e 73 24 61 6c 74 42 6f 75 6e 64 options$altBound 00004670: 61 72 79 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 61 ary = _options.a 00004680: 6c 74 42 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 ltBoundary,\n 00004690: 20 20 20 61 6c 74 42 6f 75 6e 64 61 72 79 20 3d altBoundary = 000046a0: 20 5f 6f 70 74 69 6f 6e 73 24 61 6c 74 42 6f 75 _options$altBou 000046b0: 6e 64 61 72 79 20 3d 3d 3d 20 76 6f 69 64 20 30 ndary === void 0 000046c0: 20 3f 20 66 61 6c 73 65 20 3a 20 5f 6f 70 74 69 ? false : _opti 000046d0: 6f 6e 73 24 61 6c 74 42 6f 75 6e 64 61 72 79 2c ons$altBoundary, 000046e0: 5c 6e 20 20 20 20 20 20 5f 6f 70 74 69 6f 6e 73 \n _options 000046f0: 24 70 61 64 64 69 6e 67 20 3d 20 5f 6f 70 74 69 $padding = _opti 00004700: 6f 6e 73 2e 70 61 64 64 69 6e 67 2c 5c 6e 20 20 ons.padding,\n 00004710: 20 20 20 20 70 61 64 64 69 6e 67 20 3d 20 5f 6f padding = _o 00004720: 70 74 69 6f 6e 73 24 70 61 64 64 69 6e 67 20 3d ptions$padding = 00004730: 3d 3d 20 76 6f 69 64 20 30 20 3f 20 30 20 3a 20 == void 0 ? 0 : 00004740: 5f 6f 70 74 69 6f 6e 73 24 70 61 64 64 69 6e 67 _options$padding 00004750: 3b 5c 6e 20 20 76 61 72 20 70 61 64 64 69 6e 67 ;\n var padding 00004760: 4f 62 6a 65 63 74 20 3d 20 6d 65 72 67 65 50 61 Object = mergePa 00004770: 64 64 69 6e 67 4f 62 6a 65 63 74 28 74 79 70 65 ddingObject(type 00004780: 6f 66 20 70 61 64 64 69 6e 67 20 21 3d 3d 20 27 of padding !== ' 00004790: 6e 75 6d 62 65 72 27 20 3f 20 70 61 64 64 69 6e number' ? paddin 000047a0: 67 20 3a 20 65 78 70 61 6e 64 54 6f 48 61 73 68 g : expandToHash 000047b0: 4d 61 70 28 70 61 64 64 69 6e 67 2c 20 62 61 73 Map(padding, bas 000047c0: 65 50 6c 61 63 65 6d 65 6e 74 73 29 29 3b 5c 6e ePlacements));\n 000047d0: 20 20 76 61 72 20 61 6c 74 43 6f 6e 74 65 78 74 var altContext 000047e0: 20 3d 20 65 6c 65 6d 65 6e 74 43 6f 6e 74 65 78 = elementContex 000047f0: 74 20 3d 3d 3d 20 70 6f 70 70 65 72 20 3f 20 72 t === popper ? r 00004800: 65 66 65 72 65 6e 63 65 20 3a 20 70 6f 70 70 65 eference : poppe 00004810: 72 3b 5c 6e 20 20 76 61 72 20 70 6f 70 70 65 72 r;\n var popper 00004820: 52 65 63 74 20 3d 20 73 74 61 74 65 2e 72 65 63 Rect = state.rec 00004830: 74 73 2e 70 6f 70 70 65 72 3b 5c 6e 20 20 76 61 ts.popper;\n va 00004840: 72 20 65 6c 65 6d 65 6e 74 20 3d 20 73 74 61 74 r element = stat 00004850: 65 2e 65 6c 65 6d 65 6e 74 73 5b 61 6c 74 42 6f e.elements[altBo 00004860: 75 6e 64 61 72 79 20 3f 20 61 6c 74 43 6f 6e 74 undary ? altCont 00004870: 65 78 74 20 3a 20 65 6c 65 6d 65 6e 74 43 6f 6e ext : elementCon 00004880: 74 65 78 74 5d 3b 5c 6e 20 20 76 61 72 20 63 6c text];\n var cl 00004890: 69 70 70 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 ippingClientRect 000048a0: 20 3d 20 67 65 74 43 6c 69 70 70 69 6e 67 52 65 = getClippingRe 000048b0: 63 74 28 69 73 45 6c 65 6d 65 6e 74 28 65 6c 65 ct(isElement(ele 000048c0: 6d 65 6e 74 29 20 3f 20 65 6c 65 6d 65 6e 74 20 ment) ? element 000048d0: 3a 20 65 6c 65 6d 65 6e 74 2e 63 6f 6e 74 65 78 : element.contex 000048e0: 74 45 6c 65 6d 65 6e 74 20 7c 7c 20 67 65 74 44 tElement || getD 000048f0: 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 28 73 ocumentElement(s 00004900: 74 61 74 65 2e 65 6c 65 6d 65 6e 74 73 2e 70 6f tate.elements.po 00004910: 70 70 65 72 29 2c 20 62 6f 75 6e 64 61 72 79 2c pper), boundary, 00004920: 20 72 6f 6f 74 42 6f 75 6e 64 61 72 79 2c 20 73 rootBoundary, s 00004930: 74 72 61 74 65 67 79 29 3b 5c 6e 20 20 76 61 72 trategy);\n var 00004940: 20 72 65 66 65 72 65 6e 63 65 43 6c 69 65 6e 74 referenceClient 00004950: 52 65 63 74 20 3d 20 67 65 74 42 6f 75 6e 64 69 Rect = getBoundi 00004960: 6e 67 43 6c 69 65 6e 74 52 65 63 74 28 73 74 61 ngClientRect(sta 00004970: 74 65 2e 65 6c 65 6d 65 6e 74 73 2e 72 65 66 65 te.elements.refe 00004980: 72 65 6e 63 65 29 3b 5c 6e 20 20 76 61 72 20 70 rence);\n var p 00004990: 6f 70 70 65 72 4f 66 66 73 65 74 73 20 3d 20 63 opperOffsets = c 000049a0: 6f 6d 70 75 74 65 4f 66 66 73 65 74 73 28 7b 5c omputeOffsets({\ 000049b0: 6e 20 20 20 20 72 65 66 65 72 65 6e 63 65 3a 20 n reference: 000049c0: 72 65 66 65 72 65 6e 63 65 43 6c 69 65 6e 74 52 referenceClientR 000049d0: 65 63 74 2c 5c 6e 20 20 20 20 65 6c 65 6d 65 6e ect,\n elemen 000049e0: 74 3a 20 70 6f 70 70 65 72 52 65 63 74 2c 5c 6e t: popperRect,\n 000049f0: 20 20 20 20 73 74 72 61 74 65 67 79 3a 20 27 61 strategy: 'a 00004a00: 62 73 6f 6c 75 74 65 27 2c 5c 6e 20 20 20 20 70 bsolute',\n p 00004a10: 6c 61 63 65 6d 65 6e 74 3a 20 70 6c 61 63 65 6d lacement: placem 00004a20: 65 6e 74 5c 6e 20 20 7d 29 3b 5c 6e 20 20 76 61 ent\n });\n va 00004a30: 72 20 70 6f 70 70 65 72 43 6c 69 65 6e 74 52 65 r popperClientRe 00004a40: 63 74 20 3d 20 72 65 63 74 54 6f 43 6c 69 65 6e ct = rectToClien 00004a50: 74 52 65 63 74 28 4f 62 6a 65 63 74 2e 61 73 73 tRect(Object.ass 00004a60: 69 67 6e 28 7b 7d 2c 20 70 6f 70 70 65 72 52 65 ign({}, popperRe 00004a70: 63 74 2c 20 70 6f 70 70 65 72 4f 66 66 73 65 74 ct, popperOffset 00004a80: 73 29 29 3b 5c 6e 20 20 76 61 72 20 65 6c 65 6d s));\n var elem 00004a90: 65 6e 74 43 6c 69 65 6e 74 52 65 63 74 20 3d 20 entClientRect = 00004aa0: 65 6c 65 6d 65 6e 74 43 6f 6e 74 65 78 74 20 3d elementContext = 00004ab0: 3d 3d 20 70 6f 70 70 65 72 20 3f 20 70 6f 70 70 == popper ? popp 00004ac0: 65 72 43 6c 69 65 6e 74 52 65 63 74 20 3a 20 72 erClientRect : r 00004ad0: 65 66 65 72 65 6e 63 65 43 6c 69 65 6e 74 52 65 eferenceClientRe 00004ae0: 63 74 3b 20 2f 2f 20 70 6f 73 69 74 69 76 65 20 ct; // positive 00004af0: 3d 20 6f 76 65 72 66 6c 6f 77 69 6e 67 20 74 68 = overflowing th 00004b00: 65 20 63 6c 69 70 70 69 6e 67 20 72 65 63 74 5c e clipping rect\ 00004b10: 6e 20 20 2f 2f 20 30 20 6f 72 20 6e 65 67 61 74 n // 0 or negat 00004b20: 69 76 65 20 3d 20 77 69 74 68 69 6e 20 74 68 65 ive = within the 00004b30: 20 63 6c 69 70 70 69 6e 67 20 72 65 63 74 5c 6e clipping rect\n 00004b40: 5c 6e 20 20 76 61 72 20 6f 76 65 72 66 6c 6f 77 \n var overflow 00004b50: 4f 66 66 73 65 74 73 20 3d 20 7b 5c 6e 20 20 20 Offsets = {\n 00004b60: 20 74 6f 70 3a 20 63 6c 69 70 70 69 6e 67 43 6c top: clippingCl 00004b70: 69 65 6e 74 52 65 63 74 2e 74 6f 70 20 2d 20 65 ientRect.top - e 00004b80: 6c 65 6d 65 6e 74 43 6c 69 65 6e 74 52 65 63 74 lementClientRect 00004b90: 2e 74 6f 70 20 2b 20 70 61 64 64 69 6e 67 4f 62 .top + paddingOb 00004ba0: 6a 65 63 74 2e 74 6f 70 2c 5c 6e 20 20 20 20 62 ject.top,\n b 00004bb0: 6f 74 74 6f 6d 3a 20 65 6c 65 6d 65 6e 74 43 6c ottom: elementCl 00004bc0: 69 65 6e 74 52 65 63 74 2e 62 6f 74 74 6f 6d 20 ientRect.bottom 00004bd0: 2d 20 63 6c 69 70 70 69 6e 67 43 6c 69 65 6e 74 - clippingClient 00004be0: 52 65 63 74 2e 62 6f 74 74 6f 6d 20 2b 20 70 61 Rect.bottom + pa 00004bf0: 64 64 69 6e 67 4f 62 6a 65 63 74 2e 62 6f 74 74 ddingObject.bott 00004c00: 6f 6d 2c 5c 6e 20 20 20 20 6c 65 66 74 3a 20 63 om,\n left: c 00004c10: 6c 69 70 70 69 6e 67 43 6c 69 65 6e 74 52 65 63 lippingClientRec 00004c20: 74 2e 6c 65 66 74 20 2d 20 65 6c 65 6d 65 6e 74 t.left - element 00004c30: 43 6c 69 65 6e 74 52 65 63 74 2e 6c 65 66 74 20 ClientRect.left 00004c40: 2b 20 70 61 64 64 69 6e 67 4f 62 6a 65 63 74 2e + paddingObject. 00004c50: 6c 65 66 74 2c 5c 6e 20 20 20 20 72 69 67 68 74 left,\n right 00004c60: 3a 20 65 6c 65 6d 65 6e 74 43 6c 69 65 6e 74 52 : elementClientR 00004c70: 65 63 74 2e 72 69 67 68 74 20 2d 20 63 6c 69 70 ect.right - clip 00004c80: 70 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 2e 72 pingClientRect.r 00004c90: 69 67 68 74 20 2b 20 70 61 64 64 69 6e 67 4f 62 ight + paddingOb 00004ca0: 6a 65 63 74 2e 72 69 67 68 74 5c 6e 20 20 7d 3b ject.right\n }; 00004cb0: 5c 6e 20 20 76 61 72 20 6f 66 66 73 65 74 44 61 \n var offsetDa 00004cc0: 74 61 20 3d 20 73 74 61 74 65 2e 6d 6f 64 69 66 ta = state.modif 00004cd0: 69 65 72 73 44 61 74 61 2e 6f 66 66 73 65 74 3b iersData.offset; 00004ce0: 20 2f 2f 20 4f 66 66 73 65 74 73 20 63 61 6e 20 // Offsets can 00004cf0: 62 65 20 61 70 70 6c 69 65 64 20 6f 6e 6c 79 20 be applied only 00004d00: 74 6f 20 74 68 65 20 70 6f 70 70 65 72 20 65 6c to the popper el 00004d10: 65 6d 65 6e 74 5c 6e 5c 6e 20 20 69 66 20 28 65 ement\n\n if (e 00004d20: 6c 65 6d 65 6e 74 43 6f 6e 74 65 78 74 20 3d 3d lementContext == 00004d30: 3d 20 70 6f 70 70 65 72 20 26 26 20 6f 66 66 73 = popper && offs 00004d40: 65 74 44 61 74 61 29 20 7b 5c 6e 20 20 20 20 76 etData) {\n v 00004d50: 61 72 20 6f 66 66 73 65 74 20 3d 20 6f 66 66 73 ar offset = offs 00004d60: 65 74 44 61 74 61 5b 70 6c 61 63 65 6d 65 6e 74 etData[placement 00004d70: 5d 3b 5c 6e 20 20 20 20 4f 62 6a 65 63 74 2e 6b ];\n Object.k 00004d80: 65 79 73 28 6f 76 65 72 66 6c 6f 77 4f 66 66 73 eys(overflowOffs 00004d90: 65 74 73 29 2e 66 6f 72 45 61 63 68 28 66 75 6e ets).forEach(fun 00004da0: 63 74 69 6f 6e 20 28 6b 65 79 29 20 7b 5c 6e 20 ction (key) {\n 00004db0: 20 20 20 20 20 76 61 72 20 6d 75 6c 74 69 70 6c var multipl 00004dc0: 79 20 3d 20 5b 72 69 67 68 74 2c 20 62 6f 74 74 y = [right, bott 00004dd0: 6f 6d 5d 2e 69 6e 64 65 78 4f 66 28 6b 65 79 29 om].indexOf(key) 00004de0: 20 3e 3d 20 30 20 3f 20 31 20 3a 20 2d 31 3b 5c >= 0 ? 1 : -1;\ 00004df0: 6e 20 20 20 20 20 20 76 61 72 20 61 78 69 73 20 n var axis 00004e00: 3d 20 5b 74 6f 70 2c 20 62 6f 74 74 6f 6d 5d 2e = [top, bottom]. 00004e10: 69 6e 64 65 78 4f 66 28 6b 65 79 29 20 3e 3d 20 indexOf(key) >= 00004e20: 30 20 3f 20 27 79 27 20 3a 20 27 78 27 3b 5c 6e 0 ? 'y' : 'x';\n 00004e30: 20 20 20 20 20 20 6f 76 65 72 66 6c 6f 77 4f 66 overflowOf 00004e40: 66 73 65 74 73 5b 6b 65 79 5d 20 2b 3d 20 6f 66 fsets[key] += of 00004e50: 66 73 65 74 5b 61 78 69 73 5d 20 2a 20 6d 75 6c fset[axis] * mul 00004e60: 74 69 70 6c 79 3b 5c 6e 20 20 20 20 7d 29 3b 5c tiply;\n });\ 00004e70: 6e 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 72 6e n }\n\n return 00004e80: 20 6f 76 65 72 66 6c 6f 77 4f 66 66 73 65 74 73 overflowOffsets 00004e90: 3b 5c 6e 7d 22 2c 22 69 6d 70 6f 72 74 20 67 65 ;\n}","import ge 00004ea0: 74 56 61 72 69 61 74 69 6f 6e 20 66 72 6f 6d 20 tVariation from 00004eb0: 5c 22 2e 2f 67 65 74 56 61 72 69 61 74 69 6f 6e \"./getVariation 00004ec0: 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b .js\";\nimport { 00004ed0: 20 76 61 72 69 61 74 69 6f 6e 50 6c 61 63 65 6d variationPlacem 00004ee0: 65 6e 74 73 2c 20 62 61 73 65 50 6c 61 63 65 6d ents, basePlacem 00004ef0: 65 6e 74 73 2c 20 70 6c 61 63 65 6d 65 6e 74 73 ents, placements 00004f00: 20 61 73 20 61 6c 6c 50 6c 61 63 65 6d 65 6e 74 as allPlacement 00004f10: 73 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e 2f 65 6e s } from \"../en 00004f20: 75 6d 73 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 ums.js\";\nimpor 00004f30: 74 20 64 65 74 65 63 74 4f 76 65 72 66 6c 6f 77 t detectOverflow 00004f40: 20 66 72 6f 6d 20 5c 22 2e 2f 64 65 74 65 63 74 from \"./detect 00004f50: 4f 76 65 72 66 6c 6f 77 2e 6a 73 5c 22 3b 5c 6e Overflow.js\";\n 00004f60: 69 6d 70 6f 72 74 20 67 65 74 42 61 73 65 50 6c import getBasePl 00004f70: 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e acement from \". 00004f80: 2f 67 65 74 42 61 73 65 50 6c 61 63 65 6d 65 6e /getBasePlacemen 00004f90: 74 2e 6a 73 5c 22 3b 5c 6e 65 78 70 6f 72 74 20 t.js\";\nexport 00004fa0: 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f 6e default function 00004fb0: 20 63 6f 6d 70 75 74 65 41 75 74 6f 50 6c 61 63 computeAutoPlac 00004fc0: 65 6d 65 6e 74 28 73 74 61 74 65 2c 20 6f 70 74 ement(state, opt 00004fd0: 69 6f 6e 73 29 20 7b 5c 6e 20 20 69 66 20 28 6f ions) {\n if (o 00004fe0: 70 74 69 6f 6e 73 20 3d 3d 3d 20 76 6f 69 64 20 ptions === void 00004ff0: 30 29 20 7b 5c 6e 20 20 20 20 6f 70 74 69 6f 6e 0) {\n option 00005000: 73 20 3d 20 7b 7d 3b 5c 6e 20 20 7d 5c 6e 5c 6e s = {};\n }\n\n 00005010: 20 20 76 61 72 20 5f 6f 70 74 69 6f 6e 73 20 3d var _options = 00005020: 20 6f 70 74 69 6f 6e 73 2c 5c 6e 20 20 20 20 20 options,\n 00005030: 20 70 6c 61 63 65 6d 65 6e 74 20 3d 20 5f 6f 70 placement = _op 00005040: 74 69 6f 6e 73 2e 70 6c 61 63 65 6d 65 6e 74 2c tions.placement, 00005050: 5c 6e 20 20 20 20 20 20 62 6f 75 6e 64 61 72 79 \n boundary 00005060: 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 62 6f 75 6e = _options.boun 00005070: 64 61 72 79 2c 5c 6e 20 20 20 20 20 20 72 6f 6f dary,\n roo 00005080: 74 42 6f 75 6e 64 61 72 79 20 3d 20 5f 6f 70 74 tBoundary = _opt 00005090: 69 6f 6e 73 2e 72 6f 6f 74 42 6f 75 6e 64 61 72 ions.rootBoundar 000050a0: 79 2c 5c 6e 20 20 20 20 20 20 70 61 64 64 69 6e y,\n paddin 000050b0: 67 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 70 61 64 g = _options.pad 000050c0: 64 69 6e 67 2c 5c 6e 20 20 20 20 20 20 66 6c 69 ding,\n fli 000050d0: 70 56 61 72 69 61 74 69 6f 6e 73 20 3d 20 5f 6f pVariations = _o 000050e0: 70 74 69 6f 6e 73 2e 66 6c 69 70 56 61 72 69 61 ptions.flipVaria 000050f0: 74 69 6f 6e 73 2c 5c 6e 20 20 20 20 20 20 5f 6f tions,\n _o 00005100: 70 74 69 6f 6e 73 24 61 6c 6c 6f 77 65 64 41 75 ptions$allowedAu 00005110: 74 6f 50 20 3d 20 5f 6f 70 74 69 6f 6e 73 2e 61 toP = _options.a 00005120: 6c 6c 6f 77 65 64 41 75 74 6f 50 6c 61 63 65 6d llowedAutoPlacem 00005130: 65 6e 74 73 2c 5c 6e 20 20 20 20 20 20 61 6c 6c ents,\n all 00005140: 6f 77 65 64 41 75 74 6f 50 6c 61 63 65 6d 65 6e owedAutoPlacemen 00005150: 74 73 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 61 6c ts = _options$al 00005160: 6c 6f 77 65 64 41 75 74 6f 50 20 3d 3d 3d 20 76 lowedAutoP === v 00005170: 6f 69 64 20 30 20 3f 20 61 6c 6c 50 6c 61 63 65 oid 0 ? allPlace 00005180: 6d 65 6e 74 73 20 3a 20 5f 6f 70 74 69 6f 6e 73 ments : _options 00005190: 24 61 6c 6c 6f 77 65 64 41 75 74 6f 50 3b 5c 6e $allowedAutoP;\n 000051a0: 20 20 76 61 72 20 76 61 72 69 61 74 69 6f 6e 20 var variation 000051b0: 3d 20 67 65 74 56 61 72 69 61 74 69 6f 6e 28 70 = getVariation(p 000051c0: 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 61 lacement);\n va 000051d0: 72 20 70 6c 61 63 65 6d 65 6e 74 73 20 3d 20 76 r placements = v 000051e0: 61 72 69 61 74 69 6f 6e 20 3f 20 66 6c 69 70 56 ariation ? flipV 000051f0: 61 72 69 61 74 69 6f 6e 73 20 3f 20 76 61 72 69 ariations ? vari 00005200: 61 74 69 6f 6e 50 6c 61 63 65 6d 65 6e 74 73 20 ationPlacements 00005210: 3a 20 76 61 72 69 61 74 69 6f 6e 50 6c 61 63 65 : variationPlace 00005220: 6d 65 6e 74 73 2e 66 69 6c 74 65 72 28 66 75 6e ments.filter(fun 00005230: 63 74 69 6f 6e 20 28 70 6c 61 63 65 6d 65 6e 74 ction (placement 00005240: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 00005250: 67 65 74 56 61 72 69 61 74 69 6f 6e 28 70 6c 61 getVariation(pla 00005260: 63 65 6d 65 6e 74 29 20 3d 3d 3d 20 76 61 72 69 cement) === vari 00005270: 61 74 69 6f 6e 3b 5c 6e 20 20 7d 29 20 3a 20 62 ation;\n }) : b 00005280: 61 73 65 50 6c 61 63 65 6d 65 6e 74 73 3b 5c 6e asePlacements;\n 00005290: 20 20 76 61 72 20 61 6c 6c 6f 77 65 64 50 6c 61 var allowedPla 000052a0: 63 65 6d 65 6e 74 73 20 3d 20 70 6c 61 63 65 6d cements = placem 000052b0: 65 6e 74 73 2e 66 69 6c 74 65 72 28 66 75 6e 63 ents.filter(func 000052c0: 74 69 6f 6e 20 28 70 6c 61 63 65 6d 65 6e 74 29 tion (placement) 000052d0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 61 {\n return a 000052e0: 6c 6c 6f 77 65 64 41 75 74 6f 50 6c 61 63 65 6d llowedAutoPlacem 000052f0: 65 6e 74 73 2e 69 6e 64 65 78 4f 66 28 70 6c 61 ents.indexOf(pla 00005300: 63 65 6d 65 6e 74 29 20 3e 3d 20 30 3b 5c 6e 20 cement) >= 0;\n 00005310: 20 7d 29 3b 5c 6e 5c 6e 20 20 69 66 20 28 61 6c });\n\n if (al 00005320: 6c 6f 77 65 64 50 6c 61 63 65 6d 65 6e 74 73 2e lowedPlacements. 00005330: 6c 65 6e 67 74 68 20 3d 3d 3d 20 30 29 20 7b 5c length === 0) {\ 00005340: 6e 20 20 20 20 61 6c 6c 6f 77 65 64 50 6c 61 63 n allowedPlac 00005350: 65 6d 65 6e 74 73 20 3d 20 70 6c 61 63 65 6d 65 ements = placeme 00005360: 6e 74 73 3b 5c 6e 20 20 7d 20 2f 2f 20 24 46 6c nts;\n } // $Fl 00005370: 6f 77 46 69 78 4d 65 5b 69 6e 63 6f 6d 70 61 74 owFixMe[incompat 00005380: 69 62 6c 65 2d 74 79 70 65 5d 3a 20 46 6c 6f 77 ible-type]: Flow 00005390: 20 73 65 65 6d 73 20 74 6f 20 68 61 76 65 20 70 seems to have p 000053a0: 72 6f 62 6c 65 6d 73 20 77 69 74 68 20 74 77 6f roblems with two 000053b0: 20 61 72 72 61 79 20 75 6e 69 6f 6e 73 2e 2e 2e array unions... 000053c0: 5c 6e 5c 6e 5c 6e 20 20 76 61 72 20 6f 76 65 72 \n\n\n var over 000053d0: 66 6c 6f 77 73 20 3d 20 61 6c 6c 6f 77 65 64 50 flows = allowedP 000053e0: 6c 61 63 65 6d 65 6e 74 73 2e 72 65 64 75 63 65 lacements.reduce 000053f0: 28 66 75 6e 63 74 69 6f 6e 20 28 61 63 63 2c 20 (function (acc, 00005400: 70 6c 61 63 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 placement) {\n 00005410: 20 20 61 63 63 5b 70 6c 61 63 65 6d 65 6e 74 5d acc[placement] 00005420: 20 3d 20 64 65 74 65 63 74 4f 76 65 72 66 6c 6f = detectOverflo 00005430: 77 28 73 74 61 74 65 2c 20 7b 5c 6e 20 20 20 20 w(state, {\n 00005440: 20 20 70 6c 61 63 65 6d 65 6e 74 3a 20 70 6c 61 placement: pla 00005450: 63 65 6d 65 6e 74 2c 5c 6e 20 20 20 20 20 20 62 cement,\n b 00005460: 6f 75 6e 64 61 72 79 3a 20 62 6f 75 6e 64 61 72 oundary: boundar 00005470: 79 2c 5c 6e 20 20 20 20 20 20 72 6f 6f 74 42 6f y,\n rootBo 00005480: 75 6e 64 61 72 79 3a 20 72 6f 6f 74 42 6f 75 6e undary: rootBoun 00005490: 64 61 72 79 2c 5c 6e 20 20 20 20 20 20 70 61 64 dary,\n pad 000054a0: 64 69 6e 67 3a 20 70 61 64 64 69 6e 67 5c 6e 20 ding: padding\n 000054b0: 20 20 20 7d 29 5b 67 65 74 42 61 73 65 50 6c 61 })[getBasePla 000054c0: 63 65 6d 65 6e 74 28 70 6c 61 63 65 6d 65 6e 74 cement(placement 000054d0: 29 5d 3b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 )];\n return 000054e0: 61 63 63 3b 5c 6e 20 20 7d 2c 20 7b 7d 29 3b 5c acc;\n }, {});\ 000054f0: 6e 20 20 72 65 74 75 72 6e 20 4f 62 6a 65 63 74 n return Object 00005500: 2e 6b 65 79 73 28 6f 76 65 72 66 6c 6f 77 73 29 .keys(overflows) 00005510: 2e 73 6f 72 74 28 66 75 6e 63 74 69 6f 6e 20 28 .sort(function ( 00005520: 61 2c 20 62 29 20 7b 5c 6e 20 20 20 20 72 65 74 a, b) {\n ret 00005530: 75 72 6e 20 6f 76 65 72 66 6c 6f 77 73 5b 61 5d urn overflows[a] 00005540: 20 2d 20 6f 76 65 72 66 6c 6f 77 73 5b 62 5d 3b - overflows[b]; 00005550: 5c 6e 20 20 7d 29 3b 5c 6e 7d 22 2c 22 69 6d 70 \n });\n}","imp 00005560: 6f 72 74 20 67 65 74 4f 70 70 6f 73 69 74 65 50 ort getOppositeP 00005570: 6c 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 lacement from \" 00005580: 2e 2e 2f 75 74 69 6c 73 2f 67 65 74 4f 70 70 6f ../utils/getOppo 00005590: 73 69 74 65 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 sitePlacement.js 000055a0: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 42 \";\nimport getB 000055b0: 61 73 65 50 6c 61 63 65 6d 65 6e 74 20 66 72 6f asePlacement fro 000055c0: 6d 20 5c 22 2e 2e 2f 75 74 69 6c 73 2f 67 65 74 m \"../utils/get 000055d0: 42 61 73 65 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 BasePlacement.js 000055e0: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 4f \";\nimport getO 000055f0: 70 70 6f 73 69 74 65 56 61 72 69 61 74 69 6f 6e ppositeVariation 00005600: 50 6c 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c Placement from \ 00005610: 22 2e 2e 2f 75 74 69 6c 73 2f 67 65 74 4f 70 70 "../utils/getOpp 00005620: 6f 73 69 74 65 56 61 72 69 61 74 69 6f 6e 50 6c ositeVariationPl 00005630: 61 63 65 6d 65 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 acement.js\";\ni 00005640: 6d 70 6f 72 74 20 64 65 74 65 63 74 4f 76 65 72 mport detectOver 00005650: 66 6c 6f 77 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 flow from \"../u 00005660: 74 69 6c 73 2f 64 65 74 65 63 74 4f 76 65 72 66 tils/detectOverf 00005670: 6c 6f 77 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 low.js\";\nimpor 00005680: 74 20 63 6f 6d 70 75 74 65 41 75 74 6f 50 6c 61 t computeAutoPla 00005690: 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 2e 2e cement from \".. 000056a0: 2f 75 74 69 6c 73 2f 63 6f 6d 70 75 74 65 41 75 /utils/computeAu 000056b0: 74 6f 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 5c 22 toPlacement.js\" 000056c0: 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 62 6f 74 74 ;\nimport { bott 000056d0: 6f 6d 2c 20 74 6f 70 2c 20 73 74 61 72 74 2c 20 om, top, start, 000056e0: 72 69 67 68 74 2c 20 6c 65 66 74 2c 20 61 75 74 right, left, aut 000056f0: 6f 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e 2f 65 6e o } from \"../en 00005700: 75 6d 73 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 ums.js\";\nimpor 00005710: 74 20 67 65 74 56 61 72 69 61 74 69 6f 6e 20 66 t getVariation f 00005720: 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 6c 73 2f 67 rom \"../utils/g 00005730: 65 74 56 61 72 69 61 74 69 6f 6e 2e 6a 73 5c 22 etVariation.js\" 00005740: 3b 20 2f 2f 20 65 73 6c 69 6e 74 2d 64 69 73 61 ; // eslint-disa 00005750: 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 20 69 6d ble-next-line im 00005760: 70 6f 72 74 2f 6e 6f 2d 75 6e 75 73 65 64 2d 6d port/no-unused-m 00005770: 6f 64 75 6c 65 73 5c 6e 5c 6e 66 75 6e 63 74 69 odules\n\nfuncti 00005780: 6f 6e 20 67 65 74 45 78 70 61 6e 64 65 64 46 61 on getExpandedFa 00005790: 6c 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e 74 73 llbackPlacements 000057a0: 28 70 6c 61 63 65 6d 65 6e 74 29 20 7b 5c 6e 20 (placement) {\n 000057b0: 20 69 66 20 28 67 65 74 42 61 73 65 50 6c 61 63 if (getBasePlac 000057c0: 65 6d 65 6e 74 28 70 6c 61 63 65 6d 65 6e 74 29 ement(placement) 000057d0: 20 3d 3d 3d 20 61 75 74 6f 29 20 7b 5c 6e 20 20 === auto) {\n 000057e0: 20 20 72 65 74 75 72 6e 20 5b 5d 3b 5c 6e 20 20 return [];\n 000057f0: 7d 5c 6e 5c 6e 20 20 76 61 72 20 6f 70 70 6f 73 }\n\n var oppos 00005800: 69 74 65 50 6c 61 63 65 6d 65 6e 74 20 3d 20 67 itePlacement = g 00005810: 65 74 4f 70 70 6f 73 69 74 65 50 6c 61 63 65 6d etOppositePlacem 00005820: 65 6e 74 28 70 6c 61 63 65 6d 65 6e 74 29 3b 5c ent(placement);\ 00005830: 6e 20 20 72 65 74 75 72 6e 20 5b 67 65 74 4f 70 n return [getOp 00005840: 70 6f 73 69 74 65 56 61 72 69 61 74 69 6f 6e 50 positeVariationP 00005850: 6c 61 63 65 6d 65 6e 74 28 70 6c 61 63 65 6d 65 lacement(placeme 00005860: 6e 74 29 2c 20 6f 70 70 6f 73 69 74 65 50 6c 61 nt), oppositePla 00005870: 63 65 6d 65 6e 74 2c 20 67 65 74 4f 70 70 6f 73 cement, getOppos 00005880: 69 74 65 56 61 72 69 61 74 69 6f 6e 50 6c 61 63 iteVariationPlac 00005890: 65 6d 65 6e 74 28 6f 70 70 6f 73 69 74 65 50 6c ement(oppositePl 000058a0: 61 63 65 6d 65 6e 74 29 5d 3b 5c 6e 7d 5c 6e 5c acement)];\n}\n\ 000058b0: 6e 66 75 6e 63 74 69 6f 6e 20 66 6c 69 70 28 5f nfunction flip(_ 000058c0: 72 65 66 29 20 7b 5c 6e 20 20 76 61 72 20 73 74 ref) {\n var st 000058d0: 61 74 65 20 3d 20 5f 72 65 66 2e 73 74 61 74 65 ate = _ref.state 000058e0: 2c 5c 6e 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 ,\n options 000058f0: 20 3d 20 5f 72 65 66 2e 6f 70 74 69 6f 6e 73 2c = _ref.options, 00005900: 5c 6e 20 20 20 20 20 20 6e 61 6d 65 20 3d 20 5f \n name = _ 00005910: 72 65 66 2e 6e 61 6d 65 3b 5c 6e 5c 6e 20 20 69 ref.name;\n\n i 00005920: 66 20 28 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 f (state.modifie 00005930: 72 73 44 61 74 61 5b 6e 61 6d 65 5d 2e 5f 73 6b rsData[name]._sk 00005940: 69 70 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 ip) {\n retur 00005950: 6e 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 76 61 72 n;\n }\n\n var 00005960: 20 5f 6f 70 74 69 6f 6e 73 24 6d 61 69 6e 41 78 _options$mainAx 00005970: 69 73 20 3d 20 6f 70 74 69 6f 6e 73 2e 6d 61 69 is = options.mai 00005980: 6e 41 78 69 73 2c 5c 6e 20 20 20 20 20 20 63 68 nAxis,\n ch 00005990: 65 63 6b 4d 61 69 6e 41 78 69 73 20 3d 20 5f 6f eckMainAxis = _o 000059a0: 70 74 69 6f 6e 73 24 6d 61 69 6e 41 78 69 73 20 ptions$mainAxis 000059b0: 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 74 72 75 === void 0 ? tru 000059c0: 65 20 3a 20 5f 6f 70 74 69 6f 6e 73 24 6d 61 69 e : _options$mai 000059d0: 6e 41 78 69 73 2c 5c 6e 20 20 20 20 20 20 5f 6f nAxis,\n _o 000059e0: 70 74 69 6f 6e 73 24 61 6c 74 41 78 69 73 20 3d ptions$altAxis = 000059f0: 20 6f 70 74 69 6f 6e 73 2e 61 6c 74 41 78 69 73 options.altAxis 00005a00: 2c 5c 6e 20 20 20 20 20 20 63 68 65 63 6b 41 6c ,\n checkAl 00005a10: 74 41 78 69 73 20 3d 20 5f 6f 70 74 69 6f 6e 73 tAxis = _options 00005a20: 24 61 6c 74 41 78 69 73 20 3d 3d 3d 20 76 6f 69 $altAxis === voi 00005a30: 64 20 30 20 3f 20 74 72 75 65 20 3a 20 5f 6f 70 d 0 ? true : _op 00005a40: 74 69 6f 6e 73 24 61 6c 74 41 78 69 73 2c 5c 6e tions$altAxis,\n 00005a50: 20 20 20 20 20 20 73 70 65 63 69 66 69 65 64 46 specifiedF 00005a60: 61 6c 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e 74 allbackPlacement 00005a70: 73 20 3d 20 6f 70 74 69 6f 6e 73 2e 66 61 6c 6c s = options.fall 00005a80: 62 61 63 6b 50 6c 61 63 65 6d 65 6e 74 73 2c 5c backPlacements,\ 00005a90: 6e 20 20 20 20 20 20 70 61 64 64 69 6e 67 20 3d n padding = 00005aa0: 20 6f 70 74 69 6f 6e 73 2e 70 61 64 64 69 6e 67 options.padding 00005ab0: 2c 5c 6e 20 20 20 20 20 20 62 6f 75 6e 64 61 72 ,\n boundar 00005ac0: 79 20 3d 20 6f 70 74 69 6f 6e 73 2e 62 6f 75 6e y = options.boun 00005ad0: 64 61 72 79 2c 5c 6e 20 20 20 20 20 20 72 6f 6f dary,\n roo 00005ae0: 74 42 6f 75 6e 64 61 72 79 20 3d 20 6f 70 74 69 tBoundary = opti 00005af0: 6f 6e 73 2e 72 6f 6f 74 42 6f 75 6e 64 61 72 79 ons.rootBoundary 00005b00: 2c 5c 6e 20 20 20 20 20 20 61 6c 74 42 6f 75 6e ,\n altBoun 00005b10: 64 61 72 79 20 3d 20 6f 70 74 69 6f 6e 73 2e 61 dary = options.a 00005b20: 6c 74 42 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 ltBoundary,\n 00005b30: 20 20 20 5f 6f 70 74 69 6f 6e 73 24 66 6c 69 70 _options$flip 00005b40: 56 61 72 69 61 74 69 6f 20 3d 20 6f 70 74 69 6f Variatio = optio 00005b50: 6e 73 2e 66 6c 69 70 56 61 72 69 61 74 69 6f 6e ns.flipVariation 00005b60: 73 2c 5c 6e 20 20 20 20 20 20 66 6c 69 70 56 61 s,\n flipVa 00005b70: 72 69 61 74 69 6f 6e 73 20 3d 20 5f 6f 70 74 69 riations = _opti 00005b80: 6f 6e 73 24 66 6c 69 70 56 61 72 69 61 74 69 6f ons$flipVariatio 00005b90: 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 74 72 === void 0 ? tr 00005ba0: 75 65 20 3a 20 5f 6f 70 74 69 6f 6e 73 24 66 6c ue : _options$fl 00005bb0: 69 70 56 61 72 69 61 74 69 6f 2c 5c 6e 20 20 20 ipVariatio,\n 00005bc0: 20 20 20 61 6c 6c 6f 77 65 64 41 75 74 6f 50 6c allowedAutoPl 00005bd0: 61 63 65 6d 65 6e 74 73 20 3d 20 6f 70 74 69 6f acements = optio 00005be0: 6e 73 2e 61 6c 6c 6f 77 65 64 41 75 74 6f 50 6c ns.allowedAutoPl 00005bf0: 61 63 65 6d 65 6e 74 73 3b 5c 6e 20 20 76 61 72 acements;\n var 00005c00: 20 70 72 65 66 65 72 72 65 64 50 6c 61 63 65 6d preferredPlacem 00005c10: 65 6e 74 20 3d 20 73 74 61 74 65 2e 6f 70 74 69 ent = state.opti 00005c20: 6f 6e 73 2e 70 6c 61 63 65 6d 65 6e 74 3b 5c 6e ons.placement;\n 00005c30: 20 20 76 61 72 20 62 61 73 65 50 6c 61 63 65 6d var basePlacem 00005c40: 65 6e 74 20 3d 20 67 65 74 42 61 73 65 50 6c 61 ent = getBasePla 00005c50: 63 65 6d 65 6e 74 28 70 72 65 66 65 72 72 65 64 cement(preferred 00005c60: 50 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 Placement);\n v 00005c70: 61 72 20 69 73 42 61 73 65 50 6c 61 63 65 6d 65 ar isBasePlaceme 00005c80: 6e 74 20 3d 20 62 61 73 65 50 6c 61 63 65 6d 65 nt = basePlaceme 00005c90: 6e 74 20 3d 3d 3d 20 70 72 65 66 65 72 72 65 64 nt === preferred 00005ca0: 50 6c 61 63 65 6d 65 6e 74 3b 5c 6e 20 20 76 61 Placement;\n va 00005cb0: 72 20 66 61 6c 6c 62 61 63 6b 50 6c 61 63 65 6d r fallbackPlacem 00005cc0: 65 6e 74 73 20 3d 20 73 70 65 63 69 66 69 65 64 ents = specified 00005cd0: 46 61 6c 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e FallbackPlacemen 00005ce0: 74 73 20 7c 7c 20 28 69 73 42 61 73 65 50 6c 61 ts || (isBasePla 00005cf0: 63 65 6d 65 6e 74 20 7c 7c 20 21 66 6c 69 70 56 cement || !flipV 00005d00: 61 72 69 61 74 69 6f 6e 73 20 3f 20 5b 67 65 74 ariations ? [get 00005d10: 4f 70 70 6f 73 69 74 65 50 6c 61 63 65 6d 65 6e OppositePlacemen 00005d20: 74 28 70 72 65 66 65 72 72 65 64 50 6c 61 63 65 t(preferredPlace 00005d30: 6d 65 6e 74 29 5d 20 3a 20 67 65 74 45 78 70 61 ment)] : getExpa 00005d40: 6e 64 65 64 46 61 6c 6c 62 61 63 6b 50 6c 61 63 ndedFallbackPlac 00005d50: 65 6d 65 6e 74 73 28 70 72 65 66 65 72 72 65 64 ements(preferred 00005d60: 50 6c 61 63 65 6d 65 6e 74 29 29 3b 5c 6e 20 20 Placement));\n 00005d70: 76 61 72 20 70 6c 61 63 65 6d 65 6e 74 73 20 3d var placements = 00005d80: 20 5b 70 72 65 66 65 72 72 65 64 50 6c 61 63 65 [preferredPlace 00005d90: 6d 65 6e 74 5d 2e 63 6f 6e 63 61 74 28 66 61 6c ment].concat(fal 00005da0: 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e 74 73 29 lbackPlacements) 00005db0: 2e 72 65 64 75 63 65 28 66 75 6e 63 74 69 6f 6e .reduce(function 00005dc0: 20 28 61 63 63 2c 20 70 6c 61 63 65 6d 65 6e 74 (acc, placement 00005dd0: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 00005de0: 61 63 63 2e 63 6f 6e 63 61 74 28 67 65 74 42 61 acc.concat(getBa 00005df0: 73 65 50 6c 61 63 65 6d 65 6e 74 28 70 6c 61 63 sePlacement(plac 00005e00: 65 6d 65 6e 74 29 20 3d 3d 3d 20 61 75 74 6f 20 ement) === auto 00005e10: 3f 20 63 6f 6d 70 75 74 65 41 75 74 6f 50 6c 61 ? computeAutoPla 00005e20: 63 65 6d 65 6e 74 28 73 74 61 74 65 2c 20 7b 5c cement(state, {\ 00005e30: 6e 20 20 20 20 20 20 70 6c 61 63 65 6d 65 6e 74 n placement 00005e40: 3a 20 70 6c 61 63 65 6d 65 6e 74 2c 5c 6e 20 20 : placement,\n 00005e50: 20 20 20 20 62 6f 75 6e 64 61 72 79 3a 20 62 6f boundary: bo 00005e60: 75 6e 64 61 72 79 2c 5c 6e 20 20 20 20 20 20 72 undary,\n r 00005e70: 6f 6f 74 42 6f 75 6e 64 61 72 79 3a 20 72 6f 6f ootBoundary: roo 00005e80: 74 42 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 20 tBoundary,\n 00005e90: 20 20 70 61 64 64 69 6e 67 3a 20 70 61 64 64 69 padding: paddi 00005ea0: 6e 67 2c 5c 6e 20 20 20 20 20 20 66 6c 69 70 56 ng,\n flipV 00005eb0: 61 72 69 61 74 69 6f 6e 73 3a 20 66 6c 69 70 56 ariations: flipV 00005ec0: 61 72 69 61 74 69 6f 6e 73 2c 5c 6e 20 20 20 20 ariations,\n 00005ed0: 20 20 61 6c 6c 6f 77 65 64 41 75 74 6f 50 6c 61 allowedAutoPla 00005ee0: 63 65 6d 65 6e 74 73 3a 20 61 6c 6c 6f 77 65 64 cements: allowed 00005ef0: 41 75 74 6f 50 6c 61 63 65 6d 65 6e 74 73 5c 6e AutoPlacements\n 00005f00: 20 20 20 20 7d 29 20 3a 20 70 6c 61 63 65 6d 65 }) : placeme 00005f10: 6e 74 29 3b 5c 6e 20 20 7d 2c 20 5b 5d 29 3b 5c nt);\n }, []);\ 00005f20: 6e 20 20 76 61 72 20 72 65 66 65 72 65 6e 63 65 n var reference 00005f30: 52 65 63 74 20 3d 20 73 74 61 74 65 2e 72 65 63 Rect = state.rec 00005f40: 74 73 2e 72 65 66 65 72 65 6e 63 65 3b 5c 6e 20 ts.reference;\n 00005f50: 20 76 61 72 20 70 6f 70 70 65 72 52 65 63 74 20 var popperRect 00005f60: 3d 20 73 74 61 74 65 2e 72 65 63 74 73 2e 70 6f = state.rects.po 00005f70: 70 70 65 72 3b 5c 6e 20 20 76 61 72 20 63 68 65 pper;\n var che 00005f80: 63 6b 73 4d 61 70 20 3d 20 6e 65 77 20 4d 61 70 cksMap = new Map 00005f90: 28 29 3b 5c 6e 20 20 76 61 72 20 6d 61 6b 65 46 ();\n var makeF 00005fa0: 61 6c 6c 62 61 63 6b 43 68 65 63 6b 73 20 3d 20 allbackChecks = 00005fb0: 74 72 75 65 3b 5c 6e 20 20 76 61 72 20 66 69 72 true;\n var fir 00005fc0: 73 74 46 69 74 74 69 6e 67 50 6c 61 63 65 6d 65 stFittingPlaceme 00005fd0: 6e 74 20 3d 20 70 6c 61 63 65 6d 65 6e 74 73 5b nt = placements[ 00005fe0: 30 5d 3b 5c 6e 5c 6e 20 20 66 6f 72 20 28 76 61 0];\n\n for (va 00005ff0: 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 70 6c 61 r i = 0; i < pla 00006000: 63 65 6d 65 6e 74 73 2e 6c 65 6e 67 74 68 3b 20 cements.length; 00006010: 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 76 61 72 20 i++) {\n var 00006020: 70 6c 61 63 65 6d 65 6e 74 20 3d 20 70 6c 61 63 placement = plac 00006030: 65 6d 65 6e 74 73 5b 69 5d 3b 5c 6e 5c 6e 20 20 ements[i];\n\n 00006040: 20 20 76 61 72 20 5f 62 61 73 65 50 6c 61 63 65 var _basePlace 00006050: 6d 65 6e 74 20 3d 20 67 65 74 42 61 73 65 50 6c ment = getBasePl 00006060: 61 63 65 6d 65 6e 74 28 70 6c 61 63 65 6d 65 6e acement(placemen 00006070: 74 29 3b 5c 6e 5c 6e 20 20 20 20 76 61 72 20 69 t);\n\n var i 00006080: 73 53 74 61 72 74 56 61 72 69 61 74 69 6f 6e 20 sStartVariation 00006090: 3d 20 67 65 74 56 61 72 69 61 74 69 6f 6e 28 70 = getVariation(p 000060a0: 6c 61 63 65 6d 65 6e 74 29 20 3d 3d 3d 20 73 74 lacement) === st 000060b0: 61 72 74 3b 5c 6e 20 20 20 20 76 61 72 20 69 73 art;\n var is 000060c0: 56 65 72 74 69 63 61 6c 20 3d 20 5b 74 6f 70 2c Vertical = [top, 000060d0: 20 62 6f 74 74 6f 6d 5d 2e 69 6e 64 65 78 4f 66 bottom].indexOf 000060e0: 28 5f 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 29 (_basePlacement) 000060f0: 20 3e 3d 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 >= 0;\n var 00006100: 6c 65 6e 20 3d 20 69 73 56 65 72 74 69 63 61 6c len = isVertical 00006110: 20 3f 20 27 77 69 64 74 68 27 20 3a 20 27 68 65 ? 'width' : 'he 00006120: 69 67 68 74 27 3b 5c 6e 20 20 20 20 76 61 72 20 ight';\n var 00006130: 6f 76 65 72 66 6c 6f 77 20 3d 20 64 65 74 65 63 overflow = detec 00006140: 74 4f 76 65 72 66 6c 6f 77 28 73 74 61 74 65 2c tOverflow(state, 00006150: 20 7b 5c 6e 20 20 20 20 20 20 70 6c 61 63 65 6d {\n placem 00006160: 65 6e 74 3a 20 70 6c 61 63 65 6d 65 6e 74 2c 5c ent: placement,\ 00006170: 6e 20 20 20 20 20 20 62 6f 75 6e 64 61 72 79 3a n boundary: 00006180: 20 62 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 20 boundary,\n 00006190: 20 20 72 6f 6f 74 42 6f 75 6e 64 61 72 79 3a 20 rootBoundary: 000061a0: 72 6f 6f 74 42 6f 75 6e 64 61 72 79 2c 5c 6e 20 rootBoundary,\n 000061b0: 20 20 20 20 20 61 6c 74 42 6f 75 6e 64 61 72 79 altBoundary 000061c0: 3a 20 61 6c 74 42 6f 75 6e 64 61 72 79 2c 5c 6e : altBoundary,\n 000061d0: 20 20 20 20 20 20 70 61 64 64 69 6e 67 3a 20 70 padding: p 000061e0: 61 64 64 69 6e 67 5c 6e 20 20 20 20 7d 29 3b 5c adding\n });\ 000061f0: 6e 20 20 20 20 76 61 72 20 6d 61 69 6e 56 61 72 n var mainVar 00006200: 69 61 74 69 6f 6e 53 69 64 65 20 3d 20 69 73 56 iationSide = isV 00006210: 65 72 74 69 63 61 6c 20 3f 20 69 73 53 74 61 72 ertical ? isStar 00006220: 74 56 61 72 69 61 74 69 6f 6e 20 3f 20 72 69 67 tVariation ? rig 00006230: 68 74 20 3a 20 6c 65 66 74 20 3a 20 69 73 53 74 ht : left : isSt 00006240: 61 72 74 56 61 72 69 61 74 69 6f 6e 20 3f 20 62 artVariation ? b 00006250: 6f 74 74 6f 6d 20 3a 20 74 6f 70 3b 5c 6e 5c 6e ottom : top;\n\n 00006260: 20 20 20 20 69 66 20 28 72 65 66 65 72 65 6e 63 if (referenc 00006270: 65 52 65 63 74 5b 6c 65 6e 5d 20 3e 20 70 6f 70 eRect[len] > pop 00006280: 70 65 72 52 65 63 74 5b 6c 65 6e 5d 29 20 7b 5c perRect[len]) {\ 00006290: 6e 20 20 20 20 20 20 6d 61 69 6e 56 61 72 69 61 n mainVaria 000062a0: 74 69 6f 6e 53 69 64 65 20 3d 20 67 65 74 4f 70 tionSide = getOp 000062b0: 70 6f 73 69 74 65 50 6c 61 63 65 6d 65 6e 74 28 positePlacement( 000062c0: 6d 61 69 6e 56 61 72 69 61 74 69 6f 6e 53 69 64 mainVariationSid 000062d0: 65 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 e);\n }\n\n 000062e0: 20 20 76 61 72 20 61 6c 74 56 61 72 69 61 74 69 var altVariati 000062f0: 6f 6e 53 69 64 65 20 3d 20 67 65 74 4f 70 70 6f onSide = getOppo 00006300: 73 69 74 65 50 6c 61 63 65 6d 65 6e 74 28 6d 61 sitePlacement(ma 00006310: 69 6e 56 61 72 69 61 74 69 6f 6e 53 69 64 65 29 inVariationSide) 00006320: 3b 5c 6e 20 20 20 20 76 61 72 20 63 68 65 63 6b ;\n var check 00006330: 73 20 3d 20 5b 5d 3b 5c 6e 5c 6e 20 20 20 20 69 s = [];\n\n i 00006340: 66 20 28 63 68 65 63 6b 4d 61 69 6e 41 78 69 73 f (checkMainAxis 00006350: 29 20 7b 5c 6e 20 20 20 20 20 20 63 68 65 63 6b ) {\n check 00006360: 73 2e 70 75 73 68 28 6f 76 65 72 66 6c 6f 77 5b s.push(overflow[ 00006370: 5f 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 5d 20 _basePlacement] 00006380: 3c 3d 20 30 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c <= 0);\n }\n\ 00006390: 6e 20 20 20 20 69 66 20 28 63 68 65 63 6b 41 6c n if (checkAl 000063a0: 74 41 78 69 73 29 20 7b 5c 6e 20 20 20 20 20 20 tAxis) {\n 000063b0: 63 68 65 63 6b 73 2e 70 75 73 68 28 6f 76 65 72 checks.push(over 000063c0: 66 6c 6f 77 5b 6d 61 69 6e 56 61 72 69 61 74 69 flow[mainVariati 000063d0: 6f 6e 53 69 64 65 5d 20 3c 3d 20 30 2c 20 6f 76 onSide] <= 0, ov 000063e0: 65 72 66 6c 6f 77 5b 61 6c 74 56 61 72 69 61 74 erflow[altVariat 000063f0: 69 6f 6e 53 69 64 65 5d 20 3c 3d 20 30 29 3b 5c ionSide] <= 0);\ 00006400: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 n }\n\n if 00006410: 20 28 63 68 65 63 6b 73 2e 65 76 65 72 79 28 66 (checks.every(f 00006420: 75 6e 63 74 69 6f 6e 20 28 63 68 65 63 6b 29 20 unction (check) 00006430: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 {\n return 00006440: 63 68 65 63 6b 3b 5c 6e 20 20 20 20 7d 29 29 20 check;\n })) 00006450: 7b 5c 6e 20 20 20 20 20 20 66 69 72 73 74 46 69 {\n firstFi 00006460: 74 74 69 6e 67 50 6c 61 63 65 6d 65 6e 74 20 3d ttingPlacement = 00006470: 20 70 6c 61 63 65 6d 65 6e 74 3b 5c 6e 20 20 20 placement;\n 00006480: 20 20 20 6d 61 6b 65 46 61 6c 6c 62 61 63 6b 43 makeFallbackC 00006490: 68 65 63 6b 73 20 3d 20 66 61 6c 73 65 3b 5c 6e hecks = false;\n 000064a0: 20 20 20 20 20 20 62 72 65 61 6b 3b 5c 6e 20 20 break;\n 000064b0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 68 65 63 6b }\n\n check 000064c0: 73 4d 61 70 2e 73 65 74 28 70 6c 61 63 65 6d 65 sMap.set(placeme 000064d0: 6e 74 2c 20 63 68 65 63 6b 73 29 3b 5c 6e 20 20 nt, checks);\n 000064e0: 7d 5c 6e 5c 6e 20 20 69 66 20 28 6d 61 6b 65 46 }\n\n if (makeF 000064f0: 61 6c 6c 62 61 63 6b 43 68 65 63 6b 73 29 20 7b allbackChecks) { 00006500: 5c 6e 20 20 20 20 2f 2f 20 60 32 60 20 6d 61 79 \n // `2` may 00006510: 20 62 65 20 64 65 73 69 72 65 64 20 69 6e 20 73 be desired in s 00006520: 6f 6d 65 20 63 61 73 65 73 20 e2 80 93 20 72 65 ome cases ... re 00006530: 73 65 61 72 63 68 20 6c 61 74 65 72 5c 6e 20 20 search later\n 00006540: 20 20 76 61 72 20 6e 75 6d 62 65 72 4f 66 43 68 var numberOfCh 00006550: 65 63 6b 73 20 3d 20 66 6c 69 70 56 61 72 69 61 ecks = flipVaria 00006560: 74 69 6f 6e 73 20 3f 20 33 20 3a 20 31 3b 5c 6e tions ? 3 : 1;\n 00006570: 5c 6e 20 20 20 20 76 61 72 20 5f 6c 6f 6f 70 20 \n var _loop 00006580: 3d 20 66 75 6e 63 74 69 6f 6e 20 5f 6c 6f 6f 70 = function _loop 00006590: 28 5f 69 29 20 7b 5c 6e 20 20 20 20 20 20 76 61 (_i) {\n va 000065a0: 72 20 66 69 74 74 69 6e 67 50 6c 61 63 65 6d 65 r fittingPlaceme 000065b0: 6e 74 20 3d 20 70 6c 61 63 65 6d 65 6e 74 73 2e nt = placements. 000065c0: 66 69 6e 64 28 66 75 6e 63 74 69 6f 6e 20 28 70 find(function (p 000065d0: 6c 61 63 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 20 lacement) {\n 000065e0: 20 20 20 20 20 76 61 72 20 63 68 65 63 6b 73 20 var checks 000065f0: 3d 20 63 68 65 63 6b 73 4d 61 70 2e 67 65 74 28 = checksMap.get( 00006600: 70 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 5c 6e 20 placement);\n\n 00006610: 20 20 20 20 20 20 20 69 66 20 28 63 68 65 63 6b if (check 00006620: 73 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 s) {\n 00006630: 72 65 74 75 72 6e 20 63 68 65 63 6b 73 2e 73 6c return checks.sl 00006640: 69 63 65 28 30 2c 20 5f 69 29 2e 65 76 65 72 79 ice(0, _i).every 00006650: 28 66 75 6e 63 74 69 6f 6e 20 28 63 68 65 63 6b (function (check 00006660: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 20 ) {\n 00006670: 20 72 65 74 75 72 6e 20 63 68 65 63 6b 3b 5c 6e return check;\n 00006680: 20 20 20 20 20 20 20 20 20 20 7d 29 3b 5c 6e 20 });\n 00006690: 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 }\n 000066a0: 7d 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 });\n\n if 000066b0: 28 66 69 74 74 69 6e 67 50 6c 61 63 65 6d 65 6e (fittingPlacemen 000066c0: 74 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 66 69 t) {\n fi 000066d0: 72 73 74 46 69 74 74 69 6e 67 50 6c 61 63 65 6d rstFittingPlacem 000066e0: 65 6e 74 20 3d 20 66 69 74 74 69 6e 67 50 6c 61 ent = fittingPla 000066f0: 63 65 6d 65 6e 74 3b 5c 6e 20 20 20 20 20 20 20 cement;\n 00006700: 20 72 65 74 75 72 6e 20 5c 22 62 72 65 61 6b 5c return \"break\ 00006710: 22 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 ";\n }\n 00006720: 20 7d 3b 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 };\n\n for ( 00006730: 76 61 72 20 5f 69 20 3d 20 6e 75 6d 62 65 72 4f var _i = numberO 00006740: 66 43 68 65 63 6b 73 3b 20 5f 69 20 3e 20 30 3b fChecks; _i > 0; 00006750: 20 5f 69 2d 2d 29 20 7b 5c 6e 20 20 20 20 20 20 _i--) {\n 00006760: 76 61 72 20 5f 72 65 74 20 3d 20 5f 6c 6f 6f 70 var _ret = _loop 00006770: 28 5f 69 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 69 (_i);\n\n i 00006780: 66 20 28 5f 72 65 74 20 3d 3d 3d 20 5c 22 62 72 f (_ret === \"br 00006790: 65 61 6b 5c 22 29 20 62 72 65 61 6b 3b 5c 6e 20 eak\") break;\n 000067a0: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 69 }\n }\n\n i 000067b0: 66 20 28 73 74 61 74 65 2e 70 6c 61 63 65 6d 65 f (state.placeme 000067c0: 6e 74 20 21 3d 3d 20 66 69 72 73 74 46 69 74 74 nt !== firstFitt 000067d0: 69 6e 67 50 6c 61 63 65 6d 65 6e 74 29 20 7b 5c ingPlacement) {\ 000067e0: 6e 20 20 20 20 73 74 61 74 65 2e 6d 6f 64 69 66 n state.modif 000067f0: 69 65 72 73 44 61 74 61 5b 6e 61 6d 65 5d 2e 5f iersData[name]._ 00006800: 73 6b 69 70 20 3d 20 74 72 75 65 3b 5c 6e 20 20 skip = true;\n 00006810: 20 20 73 74 61 74 65 2e 70 6c 61 63 65 6d 65 6e state.placemen 00006820: 74 20 3d 20 66 69 72 73 74 46 69 74 74 69 6e 67 t = firstFitting 00006830: 50 6c 61 63 65 6d 65 6e 74 3b 5c 6e 20 20 20 20 Placement;\n 00006840: 73 74 61 74 65 2e 72 65 73 65 74 20 3d 20 74 72 state.reset = tr 00006850: 75 65 3b 5c 6e 20 20 7d 5c 6e 7d 20 2f 2f 20 65 ue;\n }\n} // e 00006860: 73 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 slint-disable-ne 00006870: 78 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e xt-line import/n 00006880: 6f 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 o-unused-modules 00006890: 5c 6e 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 \n\n\nexport def 000068a0: 61 75 6c 74 20 7b 5c 6e 20 20 6e 61 6d 65 3a 20 ault {\n name: 000068b0: 27 66 6c 69 70 27 2c 5c 6e 20 20 65 6e 61 62 6c 'flip',\n enabl 000068c0: 65 64 3a 20 74 72 75 65 2c 5c 6e 20 20 70 68 61 ed: true,\n pha 000068d0: 73 65 3a 20 27 6d 61 69 6e 27 2c 5c 6e 20 20 66 se: 'main',\n f 000068e0: 6e 3a 20 66 6c 69 70 2c 5c 6e 20 20 72 65 71 75 n: flip,\n requ 000068f0: 69 72 65 73 49 66 45 78 69 73 74 73 3a 20 5b 27 iresIfExists: [' 00006900: 6f 66 66 73 65 74 27 5d 2c 5c 6e 20 20 64 61 74 offset'],\n dat 00006910: 61 3a 20 7b 5c 6e 20 20 20 20 5f 73 6b 69 70 3a a: {\n _skip: 00006920: 20 66 61 6c 73 65 5c 6e 20 20 7d 5c 6e 7d 3b 22 false\n }\n};" 00006930: 2c 22 69 6d 70 6f 72 74 20 7b 20 74 6f 70 2c 20 ,"import { top, 00006940: 62 6f 74 74 6f 6d 2c 20 6c 65 66 74 2c 20 72 69 bottom, left, ri 00006950: 67 68 74 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e 2f ght } from \"../ 00006960: 65 6e 75 6d 73 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 enums.js\";\nimp 00006970: 6f 72 74 20 64 65 74 65 63 74 4f 76 65 72 66 6c ort detectOverfl 00006980: 6f 77 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 ow from \"../uti 00006990: 6c 73 2f 64 65 74 65 63 74 4f 76 65 72 66 6c 6f ls/detectOverflo 000069a0: 77 2e 6a 73 5c 22 3b 5c 6e 5c 6e 66 75 6e 63 74 w.js\";\n\nfunct 000069b0: 69 6f 6e 20 67 65 74 53 69 64 65 4f 66 66 73 65 ion getSideOffse 000069c0: 74 73 28 6f 76 65 72 66 6c 6f 77 2c 20 72 65 63 ts(overflow, rec 000069d0: 74 2c 20 70 72 65 76 65 6e 74 65 64 4f 66 66 73 t, preventedOffs 000069e0: 65 74 73 29 20 7b 5c 6e 20 20 69 66 20 28 70 72 ets) {\n if (pr 000069f0: 65 76 65 6e 74 65 64 4f 66 66 73 65 74 73 20 3d eventedOffsets = 00006a00: 3d 3d 20 76 6f 69 64 20 30 29 20 7b 5c 6e 20 20 == void 0) {\n 00006a10: 20 20 70 72 65 76 65 6e 74 65 64 4f 66 66 73 65 preventedOffse 00006a20: 74 73 20 3d 20 7b 5c 6e 20 20 20 20 20 20 78 3a ts = {\n x: 00006a30: 20 30 2c 5c 6e 20 20 20 20 20 20 79 3a 20 30 5c 0,\n y: 0\ 00006a40: 6e 20 20 20 20 7d 3b 5c 6e 20 20 7d 5c 6e 5c 6e n };\n }\n\n 00006a50: 20 20 72 65 74 75 72 6e 20 7b 5c 6e 20 20 20 20 return {\n 00006a60: 74 6f 70 3a 20 6f 76 65 72 66 6c 6f 77 2e 74 6f top: overflow.to 00006a70: 70 20 2d 20 72 65 63 74 2e 68 65 69 67 68 74 20 p - rect.height 00006a80: 2d 20 70 72 65 76 65 6e 74 65 64 4f 66 66 73 65 - preventedOffse 00006a90: 74 73 2e 79 2c 5c 6e 20 20 20 20 72 69 67 68 74 ts.y,\n right 00006aa0: 3a 20 6f 76 65 72 66 6c 6f 77 2e 72 69 67 68 74 : overflow.right 00006ab0: 20 2d 20 72 65 63 74 2e 77 69 64 74 68 20 2b 20 - rect.width + 00006ac0: 70 72 65 76 65 6e 74 65 64 4f 66 66 73 65 74 73 preventedOffsets 00006ad0: 2e 78 2c 5c 6e 20 20 20 20 62 6f 74 74 6f 6d 3a .x,\n bottom: 00006ae0: 20 6f 76 65 72 66 6c 6f 77 2e 62 6f 74 74 6f 6d overflow.bottom 00006af0: 20 2d 20 72 65 63 74 2e 68 65 69 67 68 74 20 2b - rect.height + 00006b00: 20 70 72 65 76 65 6e 74 65 64 4f 66 66 73 65 74 preventedOffset 00006b10: 73 2e 79 2c 5c 6e 20 20 20 20 6c 65 66 74 3a 20 s.y,\n left: 00006b20: 6f 76 65 72 66 6c 6f 77 2e 6c 65 66 74 20 2d 20 overflow.left - 00006b30: 72 65 63 74 2e 77 69 64 74 68 20 2d 20 70 72 65 rect.width - pre 00006b40: 76 65 6e 74 65 64 4f 66 66 73 65 74 73 2e 78 5c ventedOffsets.x\ 00006b50: 6e 20 20 7d 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 n };\n}\n\nfunc 00006b60: 74 69 6f 6e 20 69 73 41 6e 79 53 69 64 65 46 75 tion isAnySideFu 00006b70: 6c 6c 79 43 6c 69 70 70 65 64 28 6f 76 65 72 66 llyClipped(overf 00006b80: 6c 6f 77 29 20 7b 5c 6e 20 20 72 65 74 75 72 6e low) {\n return 00006b90: 20 5b 74 6f 70 2c 20 72 69 67 68 74 2c 20 62 6f [top, right, bo 00006ba0: 74 74 6f 6d 2c 20 6c 65 66 74 5d 2e 73 6f 6d 65 ttom, left].some 00006bb0: 28 66 75 6e 63 74 69 6f 6e 20 28 73 69 64 65 29 (function (side) 00006bc0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6f {\n return o 00006bd0: 76 65 72 66 6c 6f 77 5b 73 69 64 65 5d 20 3e 3d verflow[side] >= 00006be0: 20 30 3b 5c 6e 20 20 7d 29 3b 5c 6e 7d 5c 6e 5c 0;\n });\n}\n\ 00006bf0: 6e 66 75 6e 63 74 69 6f 6e 20 68 69 64 65 28 5f nfunction hide(_ 00006c00: 72 65 66 29 20 7b 5c 6e 20 20 76 61 72 20 73 74 ref) {\n var st 00006c10: 61 74 65 20 3d 20 5f 72 65 66 2e 73 74 61 74 65 ate = _ref.state 00006c20: 2c 5c 6e 20 20 20 20 20 20 6e 61 6d 65 20 3d 20 ,\n name = 00006c30: 5f 72 65 66 2e 6e 61 6d 65 3b 5c 6e 20 20 76 61 _ref.name;\n va 00006c40: 72 20 72 65 66 65 72 65 6e 63 65 52 65 63 74 20 r referenceRect 00006c50: 3d 20 73 74 61 74 65 2e 72 65 63 74 73 2e 72 65 = state.rects.re 00006c60: 66 65 72 65 6e 63 65 3b 5c 6e 20 20 76 61 72 20 ference;\n var 00006c70: 70 6f 70 70 65 72 52 65 63 74 20 3d 20 73 74 61 popperRect = sta 00006c80: 74 65 2e 72 65 63 74 73 2e 70 6f 70 70 65 72 3b te.rects.popper; 00006c90: 5c 6e 20 20 76 61 72 20 70 72 65 76 65 6e 74 65 \n var prevente 00006ca0: 64 4f 66 66 73 65 74 73 20 3d 20 73 74 61 74 65 dOffsets = state 00006cb0: 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 2e 70 .modifiersData.p 00006cc0: 72 65 76 65 6e 74 4f 76 65 72 66 6c 6f 77 3b 5c reventOverflow;\ 00006cd0: 6e 20 20 76 61 72 20 72 65 66 65 72 65 6e 63 65 n var reference 00006ce0: 4f 76 65 72 66 6c 6f 77 20 3d 20 64 65 74 65 63 Overflow = detec 00006cf0: 74 4f 76 65 72 66 6c 6f 77 28 73 74 61 74 65 2c tOverflow(state, 00006d00: 20 7b 5c 6e 20 20 20 20 65 6c 65 6d 65 6e 74 43 {\n elementC 00006d10: 6f 6e 74 65 78 74 3a 20 27 72 65 66 65 72 65 6e ontext: 'referen 00006d20: 63 65 27 5c 6e 20 20 7d 29 3b 5c 6e 20 20 76 61 ce'\n });\n va 00006d30: 72 20 70 6f 70 70 65 72 41 6c 74 4f 76 65 72 66 r popperAltOverf 00006d40: 6c 6f 77 20 3d 20 64 65 74 65 63 74 4f 76 65 72 low = detectOver 00006d50: 66 6c 6f 77 28 73 74 61 74 65 2c 20 7b 5c 6e 20 flow(state, {\n 00006d60: 20 20 20 61 6c 74 42 6f 75 6e 64 61 72 79 3a 20 altBoundary: 00006d70: 74 72 75 65 5c 6e 20 20 7d 29 3b 5c 6e 20 20 76 true\n });\n v 00006d80: 61 72 20 72 65 66 65 72 65 6e 63 65 43 6c 69 70 ar referenceClip 00006d90: 70 69 6e 67 4f 66 66 73 65 74 73 20 3d 20 67 65 pingOffsets = ge 00006da0: 74 53 69 64 65 4f 66 66 73 65 74 73 28 72 65 66 tSideOffsets(ref 00006db0: 65 72 65 6e 63 65 4f 76 65 72 66 6c 6f 77 2c 20 erenceOverflow, 00006dc0: 72 65 66 65 72 65 6e 63 65 52 65 63 74 29 3b 5c referenceRect);\ 00006dd0: 6e 20 20 76 61 72 20 70 6f 70 70 65 72 45 73 63 n var popperEsc 00006de0: 61 70 65 4f 66 66 73 65 74 73 20 3d 20 67 65 74 apeOffsets = get 00006df0: 53 69 64 65 4f 66 66 73 65 74 73 28 70 6f 70 70 SideOffsets(popp 00006e00: 65 72 41 6c 74 4f 76 65 72 66 6c 6f 77 2c 20 70 erAltOverflow, p 00006e10: 6f 70 70 65 72 52 65 63 74 2c 20 70 72 65 76 65 opperRect, preve 00006e20: 6e 74 65 64 4f 66 66 73 65 74 73 29 3b 5c 6e 20 ntedOffsets);\n 00006e30: 20 76 61 72 20 69 73 52 65 66 65 72 65 6e 63 65 var isReference 00006e40: 48 69 64 64 65 6e 20 3d 20 69 73 41 6e 79 53 69 Hidden = isAnySi 00006e50: 64 65 46 75 6c 6c 79 43 6c 69 70 70 65 64 28 72 deFullyClipped(r 00006e60: 65 66 65 72 65 6e 63 65 43 6c 69 70 70 69 6e 67 eferenceClipping 00006e70: 4f 66 66 73 65 74 73 29 3b 5c 6e 20 20 76 61 72 Offsets);\n var 00006e80: 20 68 61 73 50 6f 70 70 65 72 45 73 63 61 70 65 hasPopperEscape 00006e90: 64 20 3d 20 69 73 41 6e 79 53 69 64 65 46 75 6c d = isAnySideFul 00006ea0: 6c 79 43 6c 69 70 70 65 64 28 70 6f 70 70 65 72 lyClipped(popper 00006eb0: 45 73 63 61 70 65 4f 66 66 73 65 74 73 29 3b 5c EscapeOffsets);\ 00006ec0: 6e 20 20 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 n state.modifie 00006ed0: 72 73 44 61 74 61 5b 6e 61 6d 65 5d 20 3d 20 7b rsData[name] = { 00006ee0: 5c 6e 20 20 20 20 72 65 66 65 72 65 6e 63 65 43 \n referenceC 00006ef0: 6c 69 70 70 69 6e 67 4f 66 66 73 65 74 73 3a 20 lippingOffsets: 00006f00: 72 65 66 65 72 65 6e 63 65 43 6c 69 70 70 69 6e referenceClippin 00006f10: 67 4f 66 66 73 65 74 73 2c 5c 6e 20 20 20 20 70 gOffsets,\n p 00006f20: 6f 70 70 65 72 45 73 63 61 70 65 4f 66 66 73 65 opperEscapeOffse 00006f30: 74 73 3a 20 70 6f 70 70 65 72 45 73 63 61 70 65 ts: popperEscape 00006f40: 4f 66 66 73 65 74 73 2c 5c 6e 20 20 20 20 69 73 Offsets,\n is 00006f50: 52 65 66 65 72 65 6e 63 65 48 69 64 64 65 6e 3a ReferenceHidden: 00006f60: 20 69 73 52 65 66 65 72 65 6e 63 65 48 69 64 64 isReferenceHidd 00006f70: 65 6e 2c 5c 6e 20 20 20 20 68 61 73 50 6f 70 70 en,\n hasPopp 00006f80: 65 72 45 73 63 61 70 65 64 3a 20 68 61 73 50 6f erEscaped: hasPo 00006f90: 70 70 65 72 45 73 63 61 70 65 64 5c 6e 20 20 7d pperEscaped\n } 00006fa0: 3b 5c 6e 20 20 73 74 61 74 65 2e 61 74 74 72 69 ;\n state.attri 00006fb0: 62 75 74 65 73 2e 70 6f 70 70 65 72 20 3d 20 4f butes.popper = O 00006fc0: 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c bject.assign({}, 00006fd0: 20 73 74 61 74 65 2e 61 74 74 72 69 62 75 74 65 state.attribute 00006fe0: 73 2e 70 6f 70 70 65 72 2c 20 7b 5c 6e 20 20 20 s.popper, {\n 00006ff0: 20 27 64 61 74 61 2d 70 6f 70 70 65 72 2d 72 65 'data-popper-re 00007000: 66 65 72 65 6e 63 65 2d 68 69 64 64 65 6e 27 3a ference-hidden': 00007010: 20 69 73 52 65 66 65 72 65 6e 63 65 48 69 64 64 isReferenceHidd 00007020: 65 6e 2c 5c 6e 20 20 20 20 27 64 61 74 61 2d 70 en,\n 'data-p 00007030: 6f 70 70 65 72 2d 65 73 63 61 70 65 64 27 3a 20 opper-escaped': 00007040: 68 61 73 50 6f 70 70 65 72 45 73 63 61 70 65 64 hasPopperEscaped 00007050: 5c 6e 20 20 7d 29 3b 5c 6e 7d 20 2f 2f 20 65 73 \n });\n} // es 00007060: 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 78 lint-disable-nex 00007070: 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f t-line import/no 00007080: 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 5c -unused-modules\ 00007090: 6e 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 n\n\nexport defa 000070a0: 75 6c 74 20 7b 5c 6e 20 20 6e 61 6d 65 3a 20 27 ult {\n name: ' 000070b0: 68 69 64 65 27 2c 5c 6e 20 20 65 6e 61 62 6c 65 hide',\n enable 000070c0: 64 3a 20 74 72 75 65 2c 5c 6e 20 20 70 68 61 73 d: true,\n phas 000070d0: 65 3a 20 27 6d 61 69 6e 27 2c 5c 6e 20 20 72 65 e: 'main',\n re 000070e0: 71 75 69 72 65 73 49 66 45 78 69 73 74 73 3a 20 quiresIfExists: 000070f0: 5b 27 70 72 65 76 65 6e 74 4f 76 65 72 66 6c 6f ['preventOverflo 00007100: 77 27 5d 2c 5c 6e 20 20 66 6e 3a 20 68 69 64 65 w'],\n fn: hide 00007110: 5c 6e 7d 3b 22 2c 22 69 6d 70 6f 72 74 20 67 65 \n};","import ge 00007120: 74 42 61 73 65 50 6c 61 63 65 6d 65 6e 74 20 66 tBasePlacement f 00007130: 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 6c 73 2f 67 rom \"../utils/g 00007140: 65 74 42 61 73 65 50 6c 61 63 65 6d 65 6e 74 2e etBasePlacement. 00007150: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 js\";\nimport { 00007160: 74 6f 70 2c 20 6c 65 66 74 2c 20 72 69 67 68 74 top, left, right 00007170: 2c 20 70 6c 61 63 65 6d 65 6e 74 73 20 7d 20 66 , placements } f 00007180: 72 6f 6d 20 5c 22 2e 2e 2f 65 6e 75 6d 73 2e 6a rom \"../enums.j 00007190: 73 5c 22 3b 20 2f 2f 20 65 73 6c 69 6e 74 2d 64 s\"; // eslint-d 000071a0: 69 73 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 isable-next-line 000071b0: 20 69 6d 70 6f 72 74 2f 6e 6f 2d 75 6e 75 73 65 import/no-unuse 000071c0: 64 2d 6d 6f 64 75 6c 65 73 5c 6e 5c 6e 65 78 70 d-modules\n\nexp 000071d0: 6f 72 74 20 66 75 6e 63 74 69 6f 6e 20 64 69 73 ort function dis 000071e0: 74 61 6e 63 65 41 6e 64 53 6b 69 64 64 69 6e 67 tanceAndSkidding 000071f0: 54 6f 58 59 28 70 6c 61 63 65 6d 65 6e 74 2c 20 ToXY(placement, 00007200: 72 65 63 74 73 2c 20 6f 66 66 73 65 74 29 20 7b rects, offset) { 00007210: 5c 6e 20 20 76 61 72 20 62 61 73 65 50 6c 61 63 \n var basePlac 00007220: 65 6d 65 6e 74 20 3d 20 67 65 74 42 61 73 65 50 ement = getBaseP 00007230: 6c 61 63 65 6d 65 6e 74 28 70 6c 61 63 65 6d 65 lacement(placeme 00007240: 6e 74 29 3b 5c 6e 20 20 76 61 72 20 69 6e 76 65 nt);\n var inve 00007250: 72 74 44 69 73 74 61 6e 63 65 20 3d 20 5b 6c 65 rtDistance = [le 00007260: 66 74 2c 20 74 6f 70 5d 2e 69 6e 64 65 78 4f 66 ft, top].indexOf 00007270: 28 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 29 20 (basePlacement) 00007280: 3e 3d 20 30 20 3f 20 2d 31 20 3a 20 31 3b 5c 6e >= 0 ? -1 : 1;\n 00007290: 5c 6e 20 20 76 61 72 20 5f 72 65 66 20 3d 20 74 \n var _ref = t 000072a0: 79 70 65 6f 66 20 6f 66 66 73 65 74 20 3d 3d 3d ypeof offset === 000072b0: 20 27 66 75 6e 63 74 69 6f 6e 27 20 3f 20 6f 66 'function' ? of 000072c0: 66 73 65 74 28 4f 62 6a 65 63 74 2e 61 73 73 69 fset(Object.assi 000072d0: 67 6e 28 7b 7d 2c 20 72 65 63 74 73 2c 20 7b 5c gn({}, rects, {\ 000072e0: 6e 20 20 20 20 70 6c 61 63 65 6d 65 6e 74 3a 20 n placement: 000072f0: 70 6c 61 63 65 6d 65 6e 74 5c 6e 20 20 7d 29 29 placement\n })) 00007300: 20 3a 20 6f 66 66 73 65 74 2c 5c 6e 20 20 20 20 : offset,\n 00007310: 20 20 73 6b 69 64 64 69 6e 67 20 3d 20 5f 72 65 skidding = _re 00007320: 66 5b 30 5d 2c 5c 6e 20 20 20 20 20 20 64 69 73 f[0],\n dis 00007330: 74 61 6e 63 65 20 3d 20 5f 72 65 66 5b 31 5d 3b tance = _ref[1]; 00007340: 5c 6e 5c 6e 20 20 73 6b 69 64 64 69 6e 67 20 3d \n\n skidding = 00007350: 20 73 6b 69 64 64 69 6e 67 20 7c 7c 20 30 3b 5c skidding || 0;\ 00007360: 6e 20 20 64 69 73 74 61 6e 63 65 20 3d 20 28 64 n distance = (d 00007370: 69 73 74 61 6e 63 65 20 7c 7c 20 30 29 20 2a 20 istance || 0) * 00007380: 69 6e 76 65 72 74 44 69 73 74 61 6e 63 65 3b 5c invertDistance;\ 00007390: 6e 20 20 72 65 74 75 72 6e 20 5b 6c 65 66 74 2c n return [left, 000073a0: 20 72 69 67 68 74 5d 2e 69 6e 64 65 78 4f 66 28 right].indexOf( 000073b0: 62 61 73 65 50 6c 61 63 65 6d 65 6e 74 29 20 3e basePlacement) > 000073c0: 3d 20 30 20 3f 20 7b 5c 6e 20 20 20 20 78 3a 20 = 0 ? {\n x: 000073d0: 64 69 73 74 61 6e 63 65 2c 5c 6e 20 20 20 20 79 distance,\n y 000073e0: 3a 20 73 6b 69 64 64 69 6e 67 5c 6e 20 20 7d 20 : skidding\n } 000073f0: 3a 20 7b 5c 6e 20 20 20 20 78 3a 20 73 6b 69 64 : {\n x: skid 00007400: 64 69 6e 67 2c 5c 6e 20 20 20 20 79 3a 20 64 69 ding,\n y: di 00007410: 73 74 61 6e 63 65 5c 6e 20 20 7d 3b 5c 6e 7d 5c stance\n };\n}\ 00007420: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 6f 66 66 73 n\nfunction offs 00007430: 65 74 28 5f 72 65 66 32 29 20 7b 5c 6e 20 20 76 et(_ref2) {\n v 00007440: 61 72 20 73 74 61 74 65 20 3d 20 5f 72 65 66 32 ar state = _ref2 00007450: 2e 73 74 61 74 65 2c 5c 6e 20 20 20 20 20 20 6f .state,\n o 00007460: 70 74 69 6f 6e 73 20 3d 20 5f 72 65 66 32 2e 6f ptions = _ref2.o 00007470: 70 74 69 6f 6e 73 2c 5c 6e 20 20 20 20 20 20 6e ptions,\n n 00007480: 61 6d 65 20 3d 20 5f 72 65 66 32 2e 6e 61 6d 65 ame = _ref2.name 00007490: 3b 5c 6e 20 20 76 61 72 20 5f 6f 70 74 69 6f 6e ;\n var _option 000074a0: 73 24 6f 66 66 73 65 74 20 3d 20 6f 70 74 69 6f s$offset = optio 000074b0: 6e 73 2e 6f 66 66 73 65 74 2c 5c 6e 20 20 20 20 ns.offset,\n 000074c0: 20 20 6f 66 66 73 65 74 20 3d 20 5f 6f 70 74 69 offset = _opti 000074d0: 6f 6e 73 24 6f 66 66 73 65 74 20 3d 3d 3d 20 76 ons$offset === v 000074e0: 6f 69 64 20 30 20 3f 20 5b 30 2c 20 30 5d 20 3a oid 0 ? [0, 0] : 000074f0: 20 5f 6f 70 74 69 6f 6e 73 24 6f 66 66 73 65 74 _options$offset 00007500: 3b 5c 6e 20 20 76 61 72 20 64 61 74 61 20 3d 20 ;\n var data = 00007510: 70 6c 61 63 65 6d 65 6e 74 73 2e 72 65 64 75 63 placements.reduc 00007520: 65 28 66 75 6e 63 74 69 6f 6e 20 28 61 63 63 2c e(function (acc, 00007530: 20 70 6c 61 63 65 6d 65 6e 74 29 20 7b 5c 6e 20 placement) {\n 00007540: 20 20 20 61 63 63 5b 70 6c 61 63 65 6d 65 6e 74 acc[placement 00007550: 5d 20 3d 20 64 69 73 74 61 6e 63 65 41 6e 64 53 ] = distanceAndS 00007560: 6b 69 64 64 69 6e 67 54 6f 58 59 28 70 6c 61 63 kiddingToXY(plac 00007570: 65 6d 65 6e 74 2c 20 73 74 61 74 65 2e 72 65 63 ement, state.rec 00007580: 74 73 2c 20 6f 66 66 73 65 74 29 3b 5c 6e 20 20 ts, offset);\n 00007590: 20 20 72 65 74 75 72 6e 20 61 63 63 3b 5c 6e 20 return acc;\n 000075a0: 20 7d 2c 20 7b 7d 29 3b 5c 6e 20 20 76 61 72 20 }, {});\n var 000075b0: 5f 64 61 74 61 24 73 74 61 74 65 24 70 6c 61 63 _data$state$plac 000075c0: 65 6d 65 6e 74 20 3d 20 64 61 74 61 5b 73 74 61 ement = data[sta 000075d0: 74 65 2e 70 6c 61 63 65 6d 65 6e 74 5d 2c 5c 6e te.placement],\n 000075e0: 20 20 20 20 20 20 78 20 3d 20 5f 64 61 74 61 24 x = _data$ 000075f0: 73 74 61 74 65 24 70 6c 61 63 65 6d 65 6e 74 2e state$placement. 00007600: 78 2c 5c 6e 20 20 20 20 20 20 79 20 3d 20 5f 64 x,\n y = _d 00007610: 61 74 61 24 73 74 61 74 65 24 70 6c 61 63 65 6d ata$state$placem 00007620: 65 6e 74 2e 79 3b 5c 6e 5c 6e 20 20 69 66 20 28 ent.y;\n\n if ( 00007630: 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 72 73 44 state.modifiersD 00007640: 61 74 61 2e 70 6f 70 70 65 72 4f 66 66 73 65 74 ata.popperOffset 00007650: 73 20 21 3d 20 6e 75 6c 6c 29 20 7b 5c 6e 20 20 s != null) {\n 00007660: 20 20 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 72 state.modifier 00007670: 73 44 61 74 61 2e 70 6f 70 70 65 72 4f 66 66 73 sData.popperOffs 00007680: 65 74 73 2e 78 20 2b 3d 20 78 3b 5c 6e 20 20 20 ets.x += x;\n 00007690: 20 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 72 73 state.modifiers 000076a0: 44 61 74 61 2e 70 6f 70 70 65 72 4f 66 66 73 65 Data.popperOffse 000076b0: 74 73 2e 79 20 2b 3d 20 79 3b 5c 6e 20 20 7d 5c ts.y += y;\n }\ 000076c0: 6e 5c 6e 20 20 73 74 61 74 65 2e 6d 6f 64 69 66 n\n state.modif 000076d0: 69 65 72 73 44 61 74 61 5b 6e 61 6d 65 5d 20 3d iersData[name] = 000076e0: 20 64 61 74 61 3b 5c 6e 7d 20 2f 2f 20 65 73 6c data;\n} // esl 000076f0: 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 78 74 int-disable-next 00007700: 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f 2d -line import/no- 00007710: 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 5c 6e unused-modules\n 00007720: 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 \n\nexport defau 00007730: 6c 74 20 7b 5c 6e 20 20 6e 61 6d 65 3a 20 27 6f lt {\n name: 'o 00007740: 66 66 73 65 74 27 2c 5c 6e 20 20 65 6e 61 62 6c ffset',\n enabl 00007750: 65 64 3a 20 74 72 75 65 2c 5c 6e 20 20 70 68 61 ed: true,\n pha 00007760: 73 65 3a 20 27 6d 61 69 6e 27 2c 5c 6e 20 20 72 se: 'main',\n r 00007770: 65 71 75 69 72 65 73 3a 20 5b 27 70 6f 70 70 65 equires: ['poppe 00007780: 72 4f 66 66 73 65 74 73 27 5d 2c 5c 6e 20 20 66 rOffsets'],\n f 00007790: 6e 3a 20 6f 66 66 73 65 74 5c 6e 7d 3b 22 2c 22 n: offset\n};"," 000077a0: 69 6d 70 6f 72 74 20 63 6f 6d 70 75 74 65 4f 66 import computeOf 000077b0: 66 73 65 74 73 20 66 72 6f 6d 20 5c 22 2e 2e 2f fsets from \"../ 000077c0: 75 74 69 6c 73 2f 63 6f 6d 70 75 74 65 4f 66 66 utils/computeOff 000077d0: 73 65 74 73 2e 6a 73 5c 22 3b 5c 6e 5c 6e 66 75 sets.js\";\n\nfu 000077e0: 6e 63 74 69 6f 6e 20 70 6f 70 70 65 72 4f 66 66 nction popperOff 000077f0: 73 65 74 73 28 5f 72 65 66 29 20 7b 5c 6e 20 20 sets(_ref) {\n 00007800: 76 61 72 20 73 74 61 74 65 20 3d 20 5f 72 65 66 var state = _ref 00007810: 2e 73 74 61 74 65 2c 5c 6e 20 20 20 20 20 20 6e .state,\n n 00007820: 61 6d 65 20 3d 20 5f 72 65 66 2e 6e 61 6d 65 3b ame = _ref.name; 00007830: 5c 6e 20 20 2f 2f 20 4f 66 66 73 65 74 73 20 61 \n // Offsets a 00007840: 72 65 20 74 68 65 20 61 63 74 75 61 6c 20 70 6f re the actual po 00007850: 73 69 74 69 6f 6e 20 74 68 65 20 70 6f 70 70 65 sition the poppe 00007860: 72 20 6e 65 65 64 73 20 74 6f 20 68 61 76 65 20 r needs to have 00007870: 74 6f 20 62 65 5c 6e 20 20 2f 2f 20 70 72 6f 70 to be\n // prop 00007880: 65 72 6c 79 20 70 6f 73 69 74 69 6f 6e 65 64 20 erly positioned 00007890: 6e 65 61 72 20 69 74 73 20 72 65 66 65 72 65 6e near its referen 000078a0: 63 65 20 65 6c 65 6d 65 6e 74 5c 6e 20 20 2f 2f ce element\n // 000078b0: 20 54 68 69 73 20 69 73 20 74 68 65 20 6d 6f 73 This is the mos 000078c0: 74 20 62 61 73 69 63 20 70 6c 61 63 65 6d 65 6e t basic placemen 000078d0: 74 2c 20 61 6e 64 20 77 69 6c 6c 20 62 65 20 61 t, and will be a 000078e0: 64 6a 75 73 74 65 64 20 62 79 5c 6e 20 20 2f 2f djusted by\n // 000078f0: 20 74 68 65 20 6d 6f 64 69 66 69 65 72 73 20 69 the modifiers i 00007900: 6e 20 74 68 65 20 6e 65 78 74 20 73 74 65 70 5c n the next step\ 00007910: 6e 20 20 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 n state.modifie 00007920: 72 73 44 61 74 61 5b 6e 61 6d 65 5d 20 3d 20 63 rsData[name] = c 00007930: 6f 6d 70 75 74 65 4f 66 66 73 65 74 73 28 7b 5c omputeOffsets({\ 00007940: 6e 20 20 20 20 72 65 66 65 72 65 6e 63 65 3a 20 n reference: 00007950: 73 74 61 74 65 2e 72 65 63 74 73 2e 72 65 66 65 state.rects.refe 00007960: 72 65 6e 63 65 2c 5c 6e 20 20 20 20 65 6c 65 6d rence,\n elem 00007970: 65 6e 74 3a 20 73 74 61 74 65 2e 72 65 63 74 73 ent: state.rects 00007980: 2e 70 6f 70 70 65 72 2c 5c 6e 20 20 20 20 73 74 .popper,\n st 00007990: 72 61 74 65 67 79 3a 20 27 61 62 73 6f 6c 75 74 rategy: 'absolut 000079a0: 65 27 2c 5c 6e 20 20 20 20 70 6c 61 63 65 6d 65 e',\n placeme 000079b0: 6e 74 3a 20 73 74 61 74 65 2e 70 6c 61 63 65 6d nt: state.placem 000079c0: 65 6e 74 5c 6e 20 20 7d 29 3b 5c 6e 7d 20 2f 2f ent\n });\n} // 000079d0: 20 65 73 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d eslint-disable- 000079e0: 6e 65 78 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 next-line import 000079f0: 2f 6e 6f 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c /no-unused-modul 00007a00: 65 73 5c 6e 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 es\n\n\nexport d 00007a10: 65 66 61 75 6c 74 20 7b 5c 6e 20 20 6e 61 6d 65 efault {\n name 00007a20: 3a 20 27 70 6f 70 70 65 72 4f 66 66 73 65 74 73 : 'popperOffsets 00007a30: 27 2c 5c 6e 20 20 65 6e 61 62 6c 65 64 3a 20 74 ',\n enabled: t 00007a40: 72 75 65 2c 5c 6e 20 20 70 68 61 73 65 3a 20 27 rue,\n phase: ' 00007a50: 72 65 61 64 27 2c 5c 6e 20 20 66 6e 3a 20 70 6f read',\n fn: po 00007a60: 70 70 65 72 4f 66 66 73 65 74 73 2c 5c 6e 20 20 pperOffsets,\n 00007a70: 64 61 74 61 3a 20 7b 7d 5c 6e 7d 3b 22 2c 22 69 data: {}\n};","i 00007a80: 6d 70 6f 72 74 20 7b 20 74 6f 70 2c 20 6c 65 66 mport { top, lef 00007a90: 74 2c 20 72 69 67 68 74 2c 20 62 6f 74 74 6f 6d t, right, bottom 00007aa0: 2c 20 73 74 61 72 74 20 7d 20 66 72 6f 6d 20 5c , start } from \ 00007ab0: 22 2e 2e 2f 65 6e 75 6d 73 2e 6a 73 5c 22 3b 5c "../enums.js\";\ 00007ac0: 6e 69 6d 70 6f 72 74 20 67 65 74 42 61 73 65 50 nimport getBaseP 00007ad0: 6c 61 63 65 6d 65 6e 74 20 66 72 6f 6d 20 5c 22 lacement from \" 00007ae0: 2e 2e 2f 75 74 69 6c 73 2f 67 65 74 42 61 73 65 ../utils/getBase 00007af0: 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 5c 22 3b 5c Placement.js\";\ 00007b00: 6e 69 6d 70 6f 72 74 20 67 65 74 4d 61 69 6e 41 nimport getMainA 00007b10: 78 69 73 46 72 6f 6d 50 6c 61 63 65 6d 65 6e 74 xisFromPlacement 00007b20: 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 6c 73 from \"../utils 00007b30: 2f 67 65 74 4d 61 69 6e 41 78 69 73 46 72 6f 6d /getMainAxisFrom 00007b40: 50 6c 61 63 65 6d 65 6e 74 2e 6a 73 5c 22 3b 5c Placement.js\";\ 00007b50: 6e 69 6d 70 6f 72 74 20 67 65 74 41 6c 74 41 78 nimport getAltAx 00007b60: 69 73 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 is from \"../uti 00007b70: 6c 73 2f 67 65 74 41 6c 74 41 78 69 73 2e 6a 73 ls/getAltAxis.js 00007b80: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 77 69 \";\nimport { wi 00007b90: 74 68 69 6e 2c 20 77 69 74 68 69 6e 4d 61 78 43 thin, withinMaxC 00007ba0: 6c 61 6d 70 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e lamp } from \".. 00007bb0: 2f 75 74 69 6c 73 2f 77 69 74 68 69 6e 2e 6a 73 /utils/within.js 00007bc0: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 4c \";\nimport getL 00007bd0: 61 79 6f 75 74 52 65 63 74 20 66 72 6f 6d 20 5c ayoutRect from \ 00007be0: 22 2e 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 67 65 "../dom-utils/ge 00007bf0: 74 4c 61 79 6f 75 74 52 65 63 74 2e 6a 73 5c 22 tLayoutRect.js\" 00007c00: 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 4f 66 66 ;\nimport getOff 00007c10: 73 65 74 50 61 72 65 6e 74 20 66 72 6f 6d 20 5c setParent from \ 00007c20: 22 2e 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 67 65 "../dom-utils/ge 00007c30: 74 4f 66 66 73 65 74 50 61 72 65 6e 74 2e 6a 73 tOffsetParent.js 00007c40: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 64 65 74 65 \";\nimport dete 00007c50: 63 74 4f 76 65 72 66 6c 6f 77 20 66 72 6f 6d 20 ctOverflow from 00007c60: 5c 22 2e 2e 2f 75 74 69 6c 73 2f 64 65 74 65 63 \"../utils/detec 00007c70: 74 4f 76 65 72 66 6c 6f 77 2e 6a 73 5c 22 3b 5c tOverflow.js\";\ 00007c80: 6e 69 6d 70 6f 72 74 20 67 65 74 56 61 72 69 61 nimport getVaria 00007c90: 74 69 6f 6e 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 tion from \"../u 00007ca0: 74 69 6c 73 2f 67 65 74 56 61 72 69 61 74 69 6f tils/getVariatio 00007cb0: 6e 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 n.js\";\nimport 00007cc0: 67 65 74 46 72 65 73 68 53 69 64 65 4f 62 6a 65 getFreshSideObje 00007cd0: 63 74 20 66 72 6f 6d 20 5c 22 2e 2e 2f 75 74 69 ct from \"../uti 00007ce0: 6c 73 2f 67 65 74 46 72 65 73 68 53 69 64 65 4f ls/getFreshSideO 00007cf0: 62 6a 65 63 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 bject.js\";\nimp 00007d00: 6f 72 74 20 7b 20 6d 69 6e 20 61 73 20 6d 61 74 ort { min as mat 00007d10: 68 4d 69 6e 2c 20 6d 61 78 20 61 73 20 6d 61 74 hMin, max as mat 00007d20: 68 4d 61 78 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e hMax } from \".. 00007d30: 2f 75 74 69 6c 73 2f 6d 61 74 68 2e 6a 73 5c 22 /utils/math.js\" 00007d40: 3b 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 70 72 ;\n\nfunction pr 00007d50: 65 76 65 6e 74 4f 76 65 72 66 6c 6f 77 28 5f 72 eventOverflow(_r 00007d60: 65 66 29 20 7b 5c 6e 20 20 76 61 72 20 73 74 61 ef) {\n var sta 00007d70: 74 65 20 3d 20 5f 72 65 66 2e 73 74 61 74 65 2c te = _ref.state, 00007d80: 5c 6e 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 20 \n options 00007d90: 3d 20 5f 72 65 66 2e 6f 70 74 69 6f 6e 73 2c 5c = _ref.options,\ 00007da0: 6e 20 20 20 20 20 20 6e 61 6d 65 20 3d 20 5f 72 n name = _r 00007db0: 65 66 2e 6e 61 6d 65 3b 5c 6e 20 20 76 61 72 20 ef.name;\n var 00007dc0: 5f 6f 70 74 69 6f 6e 73 24 6d 61 69 6e 41 78 69 _options$mainAxi 00007dd0: 73 20 3d 20 6f 70 74 69 6f 6e 73 2e 6d 61 69 6e s = options.main 00007de0: 41 78 69 73 2c 5c 6e 20 20 20 20 20 20 63 68 65 Axis,\n che 00007df0: 63 6b 4d 61 69 6e 41 78 69 73 20 3d 20 5f 6f 70 ckMainAxis = _op 00007e00: 74 69 6f 6e 73 24 6d 61 69 6e 41 78 69 73 20 3d tions$mainAxis = 00007e10: 3d 3d 20 76 6f 69 64 20 30 20 3f 20 74 72 75 65 == void 0 ? true 00007e20: 20 3a 20 5f 6f 70 74 69 6f 6e 73 24 6d 61 69 6e : _options$main 00007e30: 41 78 69 73 2c 5c 6e 20 20 20 20 20 20 5f 6f 70 Axis,\n _op 00007e40: 74 69 6f 6e 73 24 61 6c 74 41 78 69 73 20 3d 20 tions$altAxis = 00007e50: 6f 70 74 69 6f 6e 73 2e 61 6c 74 41 78 69 73 2c options.altAxis, 00007e60: 5c 6e 20 20 20 20 20 20 63 68 65 63 6b 41 6c 74 \n checkAlt 00007e70: 41 78 69 73 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 Axis = _options$ 00007e80: 61 6c 74 41 78 69 73 20 3d 3d 3d 20 76 6f 69 64 altAxis === void 00007e90: 20 30 20 3f 20 66 61 6c 73 65 20 3a 20 5f 6f 70 0 ? false : _op 00007ea0: 74 69 6f 6e 73 24 61 6c 74 41 78 69 73 2c 5c 6e tions$altAxis,\n 00007eb0: 20 20 20 20 20 20 62 6f 75 6e 64 61 72 79 20 3d boundary = 00007ec0: 20 6f 70 74 69 6f 6e 73 2e 62 6f 75 6e 64 61 72 options.boundar 00007ed0: 79 2c 5c 6e 20 20 20 20 20 20 72 6f 6f 74 42 6f y,\n rootBo 00007ee0: 75 6e 64 61 72 79 20 3d 20 6f 70 74 69 6f 6e 73 undary = options 00007ef0: 2e 72 6f 6f 74 42 6f 75 6e 64 61 72 79 2c 5c 6e .rootBoundary,\n 00007f00: 20 20 20 20 20 20 61 6c 74 42 6f 75 6e 64 61 72 altBoundar 00007f10: 79 20 3d 20 6f 70 74 69 6f 6e 73 2e 61 6c 74 42 y = options.altB 00007f20: 6f 75 6e 64 61 72 79 2c 5c 6e 20 20 20 20 20 20 oundary,\n 00007f30: 70 61 64 64 69 6e 67 20 3d 20 6f 70 74 69 6f 6e padding = option 00007f40: 73 2e 70 61 64 64 69 6e 67 2c 5c 6e 20 20 20 20 s.padding,\n 00007f50: 20 20 5f 6f 70 74 69 6f 6e 73 24 74 65 74 68 65 _options$tethe 00007f60: 72 20 3d 20 6f 70 74 69 6f 6e 73 2e 74 65 74 68 r = options.teth 00007f70: 65 72 2c 5c 6e 20 20 20 20 20 20 74 65 74 68 65 er,\n tethe 00007f80: 72 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 74 65 74 r = _options$tet 00007f90: 68 65 72 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f her === void 0 ? 00007fa0: 20 74 72 75 65 20 3a 20 5f 6f 70 74 69 6f 6e 73 true : _options 00007fb0: 24 74 65 74 68 65 72 2c 5c 6e 20 20 20 20 20 20 $tether,\n 00007fc0: 5f 6f 70 74 69 6f 6e 73 24 74 65 74 68 65 72 4f _options$tetherO 00007fd0: 66 66 73 65 74 20 3d 20 6f 70 74 69 6f 6e 73 2e ffset = options. 00007fe0: 74 65 74 68 65 72 4f 66 66 73 65 74 2c 5c 6e 20 tetherOffset,\n 00007ff0: 20 20 20 20 20 74 65 74 68 65 72 4f 66 66 73 65 tetherOffse 00008000: 74 20 3d 20 5f 6f 70 74 69 6f 6e 73 24 74 65 74 t = _options$tet 00008010: 68 65 72 4f 66 66 73 65 74 20 3d 3d 3d 20 76 6f herOffset === vo 00008020: 69 64 20 30 20 3f 20 30 20 3a 20 5f 6f 70 74 69 id 0 ? 0 : _opti 00008030: 6f 6e 73 24 74 65 74 68 65 72 4f 66 66 73 65 74 ons$tetherOffset 00008040: 3b 5c 6e 20 20 76 61 72 20 6f 76 65 72 66 6c 6f ;\n var overflo 00008050: 77 20 3d 20 64 65 74 65 63 74 4f 76 65 72 66 6c w = detectOverfl 00008060: 6f 77 28 73 74 61 74 65 2c 20 7b 5c 6e 20 20 20 ow(state, {\n 00008070: 20 62 6f 75 6e 64 61 72 79 3a 20 62 6f 75 6e 64 boundary: bound 00008080: 61 72 79 2c 5c 6e 20 20 20 20 72 6f 6f 74 42 6f ary,\n rootBo 00008090: 75 6e 64 61 72 79 3a 20 72 6f 6f 74 42 6f 75 6e undary: rootBoun 000080a0: 64 61 72 79 2c 5c 6e 20 20 20 20 70 61 64 64 69 dary,\n paddi 000080b0: 6e 67 3a 20 70 61 64 64 69 6e 67 2c 5c 6e 20 20 ng: padding,\n 000080c0: 20 20 61 6c 74 42 6f 75 6e 64 61 72 79 3a 20 61 altBoundary: a 000080d0: 6c 74 42 6f 75 6e 64 61 72 79 5c 6e 20 20 7d 29 ltBoundary\n }) 000080e0: 3b 5c 6e 20 20 76 61 72 20 62 61 73 65 50 6c 61 ;\n var basePla 000080f0: 63 65 6d 65 6e 74 20 3d 20 67 65 74 42 61 73 65 cement = getBase 00008100: 50 6c 61 63 65 6d 65 6e 74 28 73 74 61 74 65 2e Placement(state. 00008110: 70 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 20 20 76 placement);\n v 00008120: 61 72 20 76 61 72 69 61 74 69 6f 6e 20 3d 20 67 ar variation = g 00008130: 65 74 56 61 72 69 61 74 69 6f 6e 28 73 74 61 74 etVariation(stat 00008140: 65 2e 70 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 20 e.placement);\n 00008150: 20 76 61 72 20 69 73 42 61 73 65 50 6c 61 63 65 var isBasePlace 00008160: 6d 65 6e 74 20 3d 20 21 76 61 72 69 61 74 69 6f ment = !variatio 00008170: 6e 3b 5c 6e 20 20 76 61 72 20 6d 61 69 6e 41 78 n;\n var mainAx 00008180: 69 73 20 3d 20 67 65 74 4d 61 69 6e 41 78 69 73 is = getMainAxis 00008190: 46 72 6f 6d 50 6c 61 63 65 6d 65 6e 74 28 62 61 FromPlacement(ba 000081a0: 73 65 50 6c 61 63 65 6d 65 6e 74 29 3b 5c 6e 20 sePlacement);\n 000081b0: 20 76 61 72 20 61 6c 74 41 78 69 73 20 3d 20 67 var altAxis = g 000081c0: 65 74 41 6c 74 41 78 69 73 28 6d 61 69 6e 41 78 etAltAxis(mainAx 000081d0: 69 73 29 3b 5c 6e 20 20 76 61 72 20 70 6f 70 70 is);\n var popp 000081e0: 65 72 4f 66 66 73 65 74 73 20 3d 20 73 74 61 74 erOffsets = stat 000081f0: 65 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 2e e.modifiersData. 00008200: 70 6f 70 70 65 72 4f 66 66 73 65 74 73 3b 5c 6e popperOffsets;\n 00008210: 20 20 76 61 72 20 72 65 66 65 72 65 6e 63 65 52 var referenceR 00008220: 65 63 74 20 3d 20 73 74 61 74 65 2e 72 65 63 74 ect = state.rect 00008230: 73 2e 72 65 66 65 72 65 6e 63 65 3b 5c 6e 20 20 s.reference;\n 00008240: 76 61 72 20 70 6f 70 70 65 72 52 65 63 74 20 3d var popperRect = 00008250: 20 73 74 61 74 65 2e 72 65 63 74 73 2e 70 6f 70 state.rects.pop 00008260: 70 65 72 3b 5c 6e 20 20 76 61 72 20 74 65 74 68 per;\n var teth 00008270: 65 72 4f 66 66 73 65 74 56 61 6c 75 65 20 3d 20 erOffsetValue = 00008280: 74 79 70 65 6f 66 20 74 65 74 68 65 72 4f 66 66 typeof tetherOff 00008290: 73 65 74 20 3d 3d 3d 20 27 66 75 6e 63 74 69 6f set === 'functio 000082a0: 6e 27 20 3f 20 74 65 74 68 65 72 4f 66 66 73 65 n' ? tetherOffse 000082b0: 74 28 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 t(Object.assign( 000082c0: 7b 7d 2c 20 73 74 61 74 65 2e 72 65 63 74 73 2c {}, state.rects, 000082d0: 20 7b 5c 6e 20 20 20 20 70 6c 61 63 65 6d 65 6e {\n placemen 000082e0: 74 3a 20 73 74 61 74 65 2e 70 6c 61 63 65 6d 65 t: state.placeme 000082f0: 6e 74 5c 6e 20 20 7d 29 29 20 3a 20 74 65 74 68 nt\n })) : teth 00008300: 65 72 4f 66 66 73 65 74 3b 5c 6e 20 20 76 61 72 erOffset;\n var 00008310: 20 6e 6f 72 6d 61 6c 69 7a 65 64 54 65 74 68 65 normalizedTethe 00008320: 72 4f 66 66 73 65 74 56 61 6c 75 65 20 3d 20 74 rOffsetValue = t 00008330: 79 70 65 6f 66 20 74 65 74 68 65 72 4f 66 66 73 ypeof tetherOffs 00008340: 65 74 56 61 6c 75 65 20 3d 3d 3d 20 27 6e 75 6d etValue === 'num 00008350: 62 65 72 27 20 3f 20 7b 5c 6e 20 20 20 20 6d 61 ber' ? {\n ma 00008360: 69 6e 41 78 69 73 3a 20 74 65 74 68 65 72 4f 66 inAxis: tetherOf 00008370: 66 73 65 74 56 61 6c 75 65 2c 5c 6e 20 20 20 20 fsetValue,\n 00008380: 61 6c 74 41 78 69 73 3a 20 74 65 74 68 65 72 4f altAxis: tetherO 00008390: 66 66 73 65 74 56 61 6c 75 65 5c 6e 20 20 7d 20 ffsetValue\n } 000083a0: 3a 20 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 : Object.assign( 000083b0: 7b 5c 6e 20 20 20 20 6d 61 69 6e 41 78 69 73 3a {\n mainAxis: 000083c0: 20 30 2c 5c 6e 20 20 20 20 61 6c 74 41 78 69 73 0,\n altAxis 000083d0: 3a 20 30 5c 6e 20 20 7d 2c 20 74 65 74 68 65 72 : 0\n }, tether 000083e0: 4f 66 66 73 65 74 56 61 6c 75 65 29 3b 5c 6e 20 OffsetValue);\n 000083f0: 20 76 61 72 20 6f 66 66 73 65 74 4d 6f 64 69 66 var offsetModif 00008400: 69 65 72 53 74 61 74 65 20 3d 20 73 74 61 74 65 ierState = state 00008410: 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 2e 6f .modifiersData.o 00008420: 66 66 73 65 74 20 3f 20 73 74 61 74 65 2e 6d 6f ffset ? state.mo 00008430: 64 69 66 69 65 72 73 44 61 74 61 2e 6f 66 66 73 difiersData.offs 00008440: 65 74 5b 73 74 61 74 65 2e 70 6c 61 63 65 6d 65 et[state.placeme 00008450: 6e 74 5d 20 3a 20 6e 75 6c 6c 3b 5c 6e 20 20 76 nt] : null;\n v 00008460: 61 72 20 64 61 74 61 20 3d 20 7b 5c 6e 20 20 20 ar data = {\n 00008470: 20 78 3a 20 30 2c 5c 6e 20 20 20 20 79 3a 20 30 x: 0,\n y: 0 00008480: 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 69 66 20 28 \n };\n\n if ( 00008490: 21 70 6f 70 70 65 72 4f 66 66 73 65 74 73 29 20 !popperOffsets) 000084a0: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 3b 5c 6e {\n return;\n 000084b0: 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 63 68 65 }\n\n if (che 000084c0: 63 6b 4d 61 69 6e 41 78 69 73 29 20 7b 5c 6e 20 ckMainAxis) {\n 000084d0: 20 20 20 76 61 72 20 5f 6f 66 66 73 65 74 4d 6f var _offsetMo 000084e0: 64 69 66 69 65 72 53 74 61 74 65 24 3b 5c 6e 5c difierState$;\n\ 000084f0: 6e 20 20 20 20 76 61 72 20 6d 61 69 6e 53 69 64 n var mainSid 00008500: 65 20 3d 20 6d 61 69 6e 41 78 69 73 20 3d 3d 3d e = mainAxis === 00008510: 20 27 79 27 20 3f 20 74 6f 70 20 3a 20 6c 65 66 'y' ? top : lef 00008520: 74 3b 5c 6e 20 20 20 20 76 61 72 20 61 6c 74 53 t;\n var altS 00008530: 69 64 65 20 3d 20 6d 61 69 6e 41 78 69 73 20 3d ide = mainAxis = 00008540: 3d 3d 20 27 79 27 20 3f 20 62 6f 74 74 6f 6d 20 == 'y' ? bottom 00008550: 3a 20 72 69 67 68 74 3b 5c 6e 20 20 20 20 76 61 : right;\n va 00008560: 72 20 6c 65 6e 20 3d 20 6d 61 69 6e 41 78 69 73 r len = mainAxis 00008570: 20 3d 3d 3d 20 27 79 27 20 3f 20 27 68 65 69 67 === 'y' ? 'heig 00008580: 68 74 27 20 3a 20 27 77 69 64 74 68 27 3b 5c 6e ht' : 'width';\n 00008590: 20 20 20 20 76 61 72 20 6f 66 66 73 65 74 20 3d var offset = 000085a0: 20 70 6f 70 70 65 72 4f 66 66 73 65 74 73 5b 6d popperOffsets[m 000085b0: 61 69 6e 41 78 69 73 5d 3b 5c 6e 20 20 20 20 76 ainAxis];\n v 000085c0: 61 72 20 6d 69 6e 20 3d 20 6f 66 66 73 65 74 20 ar min = offset 000085d0: 2b 20 6f 76 65 72 66 6c 6f 77 5b 6d 61 69 6e 53 + overflow[mainS 000085e0: 69 64 65 5d 3b 5c 6e 20 20 20 20 76 61 72 20 6d ide];\n var m 000085f0: 61 78 20 3d 20 6f 66 66 73 65 74 20 2d 20 6f 76 ax = offset - ov 00008600: 65 72 66 6c 6f 77 5b 61 6c 74 53 69 64 65 5d 3b erflow[altSide]; 00008610: 5c 6e 20 20 20 20 76 61 72 20 61 64 64 69 74 69 \n var additi 00008620: 76 65 20 3d 20 74 65 74 68 65 72 20 3f 20 2d 70 ve = tether ? -p 00008630: 6f 70 70 65 72 52 65 63 74 5b 6c 65 6e 5d 20 2f opperRect[len] / 00008640: 20 32 20 3a 20 30 3b 5c 6e 20 20 20 20 76 61 72 2 : 0;\n var 00008650: 20 6d 69 6e 4c 65 6e 20 3d 20 76 61 72 69 61 74 minLen = variat 00008660: 69 6f 6e 20 3d 3d 3d 20 73 74 61 72 74 20 3f 20 ion === start ? 00008670: 72 65 66 65 72 65 6e 63 65 52 65 63 74 5b 6c 65 referenceRect[le 00008680: 6e 5d 20 3a 20 70 6f 70 70 65 72 52 65 63 74 5b n] : popperRect[ 00008690: 6c 65 6e 5d 3b 5c 6e 20 20 20 20 76 61 72 20 6d len];\n var m 000086a0: 61 78 4c 65 6e 20 3d 20 76 61 72 69 61 74 69 6f axLen = variatio 000086b0: 6e 20 3d 3d 3d 20 73 74 61 72 74 20 3f 20 2d 70 n === start ? -p 000086c0: 6f 70 70 65 72 52 65 63 74 5b 6c 65 6e 5d 20 3a opperRect[len] : 000086d0: 20 2d 72 65 66 65 72 65 6e 63 65 52 65 63 74 5b -referenceRect[ 000086e0: 6c 65 6e 5d 3b 20 2f 2f 20 57 65 20 6e 65 65 64 len]; // We need 000086f0: 20 74 6f 20 69 6e 63 6c 75 64 65 20 74 68 65 20 to include the 00008700: 61 72 72 6f 77 20 69 6e 20 74 68 65 20 63 61 6c arrow in the cal 00008710: 63 75 6c 61 74 69 6f 6e 20 73 6f 20 74 68 65 20 culation so the 00008720: 61 72 72 6f 77 20 64 6f 65 73 6e 27 74 20 67 6f arrow doesn't go 00008730: 5c 6e 20 20 20 20 2f 2f 20 6f 75 74 73 69 64 65 \n // outside 00008740: 20 74 68 65 20 72 65 66 65 72 65 6e 63 65 20 62 the reference b 00008750: 6f 75 6e 64 73 5c 6e 5c 6e 20 20 20 20 76 61 72 ounds\n\n var 00008760: 20 61 72 72 6f 77 45 6c 65 6d 65 6e 74 20 3d 20 arrowElement = 00008770: 73 74 61 74 65 2e 65 6c 65 6d 65 6e 74 73 2e 61 state.elements.a 00008780: 72 72 6f 77 3b 5c 6e 20 20 20 20 76 61 72 20 61 rrow;\n var a 00008790: 72 72 6f 77 52 65 63 74 20 3d 20 74 65 74 68 65 rrowRect = tethe 000087a0: 72 20 26 26 20 61 72 72 6f 77 45 6c 65 6d 65 6e r && arrowElemen 000087b0: 74 20 3f 20 67 65 74 4c 61 79 6f 75 74 52 65 63 t ? getLayoutRec 000087c0: 74 28 61 72 72 6f 77 45 6c 65 6d 65 6e 74 29 20 t(arrowElement) 000087d0: 3a 20 7b 5c 6e 20 20 20 20 20 20 77 69 64 74 68 : {\n width 000087e0: 3a 20 30 2c 5c 6e 20 20 20 20 20 20 68 65 69 67 : 0,\n heig 000087f0: 68 74 3a 20 30 5c 6e 20 20 20 20 7d 3b 5c 6e 20 ht: 0\n };\n 00008800: 20 20 20 76 61 72 20 61 72 72 6f 77 50 61 64 64 var arrowPadd 00008810: 69 6e 67 4f 62 6a 65 63 74 20 3d 20 73 74 61 74 ingObject = stat 00008820: 65 2e 6d 6f 64 69 66 69 65 72 73 44 61 74 61 5b e.modifiersData[ 00008830: 27 61 72 72 6f 77 23 70 65 72 73 69 73 74 65 6e 'arrow#persisten 00008840: 74 27 5d 20 3f 20 73 74 61 74 65 2e 6d 6f 64 69 t'] ? state.modi 00008850: 66 69 65 72 73 44 61 74 61 5b 27 61 72 72 6f 77 fiersData['arrow 00008860: 23 70 65 72 73 69 73 74 65 6e 74 27 5d 2e 70 61 #persistent'].pa 00008870: 64 64 69 6e 67 20 3a 20 67 65 74 46 72 65 73 68 dding : getFresh 00008880: 53 69 64 65 4f 62 6a 65 63 74 28 29 3b 5c 6e 20 SideObject();\n 00008890: 20 20 20 76 61 72 20 61 72 72 6f 77 50 61 64 64 var arrowPadd 000088a0: 69 6e 67 4d 69 6e 20 3d 20 61 72 72 6f 77 50 61 ingMin = arrowPa 000088b0: 64 64 69 6e 67 4f 62 6a 65 63 74 5b 6d 61 69 6e ddingObject[main 000088c0: 53 69 64 65 5d 3b 5c 6e 20 20 20 20 76 61 72 20 Side];\n var 000088d0: 61 72 72 6f 77 50 61 64 64 69 6e 67 4d 61 78 20 arrowPaddingMax 000088e0: 3d 20 61 72 72 6f 77 50 61 64 64 69 6e 67 4f 62 = arrowPaddingOb 000088f0: 6a 65 63 74 5b 61 6c 74 53 69 64 65 5d 3b 20 2f ject[altSide]; / 00008900: 2f 20 49 66 20 74 68 65 20 72 65 66 65 72 65 6e / If the referen 00008910: 63 65 20 6c 65 6e 67 74 68 20 69 73 20 73 6d 61 ce length is sma 00008920: 6c 6c 65 72 20 74 68 61 6e 20 74 68 65 20 61 72 ller than the ar 00008930: 72 6f 77 20 6c 65 6e 67 74 68 2c 20 77 65 20 64 row length, we d 00008940: 6f 6e 27 74 20 77 61 6e 74 5c 6e 20 20 20 20 2f on't want\n / 00008950: 2f 20 74 6f 20 69 6e 63 6c 75 64 65 20 69 74 73 / to include its 00008960: 20 66 75 6c 6c 20 73 69 7a 65 20 69 6e 20 74 68 full size in th 00008970: 65 20 63 61 6c 63 75 6c 61 74 69 6f 6e 2e 20 49 e calculation. I 00008980: 66 20 74 68 65 20 72 65 66 65 72 65 6e 63 65 20 f the reference 00008990: 69 73 20 73 6d 61 6c 6c 5c 6e 20 20 20 20 2f 2f is small\n // 000089a0: 20 61 6e 64 20 6e 65 61 72 20 74 68 65 20 65 64 and near the ed 000089b0: 67 65 20 6f 66 20 61 20 62 6f 75 6e 64 61 72 79 ge of a boundary 000089c0: 2c 20 74 68 65 20 70 6f 70 70 65 72 20 63 61 6e , the popper can 000089d0: 20 6f 76 65 72 66 6c 6f 77 20 65 76 65 6e 20 69 overflow even i 000089e0: 66 20 74 68 65 5c 6e 20 20 20 20 2f 2f 20 72 65 f the\n // re 000089f0: 66 65 72 65 6e 63 65 20 69 73 20 6e 6f 74 20 6f ference is not o 00008a00: 76 65 72 66 6c 6f 77 69 6e 67 20 61 73 20 77 65 verflowing as we 00008a10: 6c 6c 20 28 65 2e 67 2e 20 76 69 72 74 75 61 6c ll (e.g. virtual 00008a20: 20 65 6c 65 6d 65 6e 74 73 20 77 69 74 68 20 6e elements with n 00008a30: 6f 5c 6e 20 20 20 20 2f 2f 20 77 69 64 74 68 20 o\n // width 00008a40: 6f 72 20 68 65 69 67 68 74 29 5c 6e 5c 6e 20 20 or height)\n\n 00008a50: 20 20 76 61 72 20 61 72 72 6f 77 4c 65 6e 20 3d var arrowLen = 00008a60: 20 77 69 74 68 69 6e 28 30 2c 20 72 65 66 65 72 within(0, refer 00008a70: 65 6e 63 65 52 65 63 74 5b 6c 65 6e 5d 2c 20 61 enceRect[len], a 00008a80: 72 72 6f 77 52 65 63 74 5b 6c 65 6e 5d 29 3b 5c rrowRect[len]);\ 00008a90: 6e 20 20 20 20 76 61 72 20 6d 69 6e 4f 66 66 73 n var minOffs 00008aa0: 65 74 20 3d 20 69 73 42 61 73 65 50 6c 61 63 65 et = isBasePlace 00008ab0: 6d 65 6e 74 20 3f 20 72 65 66 65 72 65 6e 63 65 ment ? reference 00008ac0: 52 65 63 74 5b 6c 65 6e 5d 20 2f 20 32 20 2d 20 Rect[len] / 2 - 00008ad0: 61 64 64 69 74 69 76 65 20 2d 20 61 72 72 6f 77 additive - arrow 00008ae0: 4c 65 6e 20 2d 20 61 72 72 6f 77 50 61 64 64 69 Len - arrowPaddi 00008af0: 6e 67 4d 69 6e 20 2d 20 6e 6f 72 6d 61 6c 69 7a ngMin - normaliz 00008b00: 65 64 54 65 74 68 65 72 4f 66 66 73 65 74 56 61 edTetherOffsetVa 00008b10: 6c 75 65 2e 6d 61 69 6e 41 78 69 73 20 3a 20 6d lue.mainAxis : m 00008b20: 69 6e 4c 65 6e 20 2d 20 61 72 72 6f 77 4c 65 6e inLen - arrowLen 00008b30: 20 2d 20 61 72 72 6f 77 50 61 64 64 69 6e 67 4d - arrowPaddingM 00008b40: 69 6e 20 2d 20 6e 6f 72 6d 61 6c 69 7a 65 64 54 in - normalizedT 00008b50: 65 74 68 65 72 4f 66 66 73 65 74 56 61 6c 75 65 etherOffsetValue 00008b60: 2e 6d 61 69 6e 41 78 69 73 3b 5c 6e 20 20 20 20 .mainAxis;\n 00008b70: 76 61 72 20 6d 61 78 4f 66 66 73 65 74 20 3d 20 var maxOffset = 00008b80: 69 73 42 61 73 65 50 6c 61 63 65 6d 65 6e 74 20 isBasePlacement 00008b90: 3f 20 2d 72 65 66 65 72 65 6e 63 65 52 65 63 74 ? -referenceRect 00008ba0: 5b 6c 65 6e 5d 20 2f 20 32 20 2b 20 61 64 64 69 [len] / 2 + addi 00008bb0: 74 69 76 65 20 2b 20 61 72 72 6f 77 4c 65 6e 20 tive + arrowLen 00008bc0: 2b 20 61 72 72 6f 77 50 61 64 64 69 6e 67 4d 61 + arrowPaddingMa 00008bd0: 78 20 2b 20 6e 6f 72 6d 61 6c 69 7a 65 64 54 65 x + normalizedTe 00008be0: 74 68 65 72 4f 66 66 73 65 74 56 61 6c 75 65 2e therOffsetValue. 00008bf0: 6d 61 69 6e 41 78 69 73 20 3a 20 6d 61 78 4c 65 mainAxis : maxLe 00008c00: 6e 20 2b 20 61 72 72 6f 77 4c 65 6e 20 2b 20 61 n + arrowLen + a 00008c10: 72 72 6f 77 50 61 64 64 69 6e 67 4d 61 78 20 2b rrowPaddingMax + 00008c20: 20 6e 6f 72 6d 61 6c 69 7a 65 64 54 65 74 68 65 normalizedTethe 00008c30: 72 4f 66 66 73 65 74 56 61 6c 75 65 2e 6d 61 69 rOffsetValue.mai 00008c40: 6e 41 78 69 73 3b 5c 6e 20 20 20 20 76 61 72 20 nAxis;\n var 00008c50: 61 72 72 6f 77 4f 66 66 73 65 74 50 61 72 65 6e arrowOffsetParen 00008c60: 74 20 3d 20 73 74 61 74 65 2e 65 6c 65 6d 65 6e t = state.elemen 00008c70: 74 73 2e 61 72 72 6f 77 20 26 26 20 67 65 74 4f ts.arrow && getO 00008c80: 66 66 73 65 74 50 61 72 65 6e 74 28 73 74 61 74 ffsetParent(stat 00008c90: 65 2e 65 6c 65 6d 65 6e 74 73 2e 61 72 72 6f 77 e.elements.arrow 00008ca0: 29 3b 5c 6e 20 20 20 20 76 61 72 20 63 6c 69 65 );\n var clie 00008cb0: 6e 74 4f 66 66 73 65 74 20 3d 20 61 72 72 6f 77 ntOffset = arrow 00008cc0: 4f 66 66 73 65 74 50 61 72 65 6e 74 20 3f 20 6d OffsetParent ? m 00008cd0: 61 69 6e 41 78 69 73 20 3d 3d 3d 20 27 79 27 20 ainAxis === 'y' 00008ce0: 3f 20 61 72 72 6f 77 4f 66 66 73 65 74 50 61 72 ? arrowOffsetPar 00008cf0: 65 6e 74 2e 63 6c 69 65 6e 74 54 6f 70 20 7c 7c ent.clientTop || 00008d00: 20 30 20 3a 20 61 72 72 6f 77 4f 66 66 73 65 74 0 : arrowOffset 00008d10: 50 61 72 65 6e 74 2e 63 6c 69 65 6e 74 4c 65 66 Parent.clientLef 00008d20: 74 20 7c 7c 20 30 20 3a 20 30 3b 5c 6e 20 20 20 t || 0 : 0;\n 00008d30: 20 76 61 72 20 6f 66 66 73 65 74 4d 6f 64 69 66 var offsetModif 00008d40: 69 65 72 56 61 6c 75 65 20 3d 20 28 5f 6f 66 66 ierValue = (_off 00008d50: 73 65 74 4d 6f 64 69 66 69 65 72 53 74 61 74 65 setModifierState 00008d60: 24 20 3d 20 6f 66 66 73 65 74 4d 6f 64 69 66 69 $ = offsetModifi 00008d70: 65 72 53 74 61 74 65 20 3d 3d 20 6e 75 6c 6c 20 erState == null 00008d80: 3f 20 76 6f 69 64 20 30 20 3a 20 6f 66 66 73 65 ? void 0 : offse 00008d90: 74 4d 6f 64 69 66 69 65 72 53 74 61 74 65 5b 6d tModifierState[m 00008da0: 61 69 6e 41 78 69 73 5d 29 20 21 3d 20 6e 75 6c ainAxis]) != nul 00008db0: 6c 20 3f 20 5f 6f 66 66 73 65 74 4d 6f 64 69 66 l ? _offsetModif 00008dc0: 69 65 72 53 74 61 74 65 24 20 3a 20 30 3b 5c 6e ierState$ : 0;\n 00008dd0: 20 20 20 20 76 61 72 20 74 65 74 68 65 72 4d 69 var tetherMi 00008de0: 6e 20 3d 20 6f 66 66 73 65 74 20 2b 20 6d 69 6e n = offset + min 00008df0: 4f 66 66 73 65 74 20 2d 20 6f 66 66 73 65 74 4d Offset - offsetM 00008e00: 6f 64 69 66 69 65 72 56 61 6c 75 65 20 2d 20 63 odifierValue - c 00008e10: 6c 69 65 6e 74 4f 66 66 73 65 74 3b 5c 6e 20 20 lientOffset;\n 00008e20: 20 20 76 61 72 20 74 65 74 68 65 72 4d 61 78 20 var tetherMax 00008e30: 3d 20 6f 66 66 73 65 74 20 2b 20 6d 61 78 4f 66 = offset + maxOf 00008e40: 66 73 65 74 20 2d 20 6f 66 66 73 65 74 4d 6f 64 fset - offsetMod 00008e50: 69 66 69 65 72 56 61 6c 75 65 3b 5c 6e 20 20 20 ifierValue;\n 00008e60: 20 76 61 72 20 70 72 65 76 65 6e 74 65 64 4f 66 var preventedOf 00008e70: 66 73 65 74 20 3d 20 77 69 74 68 69 6e 28 74 65 fset = within(te 00008e80: 74 68 65 72 20 3f 20 6d 61 74 68 4d 69 6e 28 6d ther ? mathMin(m 00008e90: 69 6e 2c 20 74 65 74 68 65 72 4d 69 6e 29 20 3a in, tetherMin) : 00008ea0: 20 6d 69 6e 2c 20 6f 66 66 73 65 74 2c 20 74 65 min, offset, te 00008eb0: 74 68 65 72 20 3f 20 6d 61 74 68 4d 61 78 28 6d ther ? mathMax(m 00008ec0: 61 78 2c 20 74 65 74 68 65 72 4d 61 78 29 20 3a ax, tetherMax) : 00008ed0: 20 6d 61 78 29 3b 5c 6e 20 20 20 20 70 6f 70 70 max);\n popp 00008ee0: 65 72 4f 66 66 73 65 74 73 5b 6d 61 69 6e 41 78 erOffsets[mainAx 00008ef0: 69 73 5d 20 3d 20 70 72 65 76 65 6e 74 65 64 4f is] = preventedO 00008f00: 66 66 73 65 74 3b 5c 6e 20 20 20 20 64 61 74 61 ffset;\n data 00008f10: 5b 6d 61 69 6e 41 78 69 73 5d 20 3d 20 70 72 65 [mainAxis] = pre 00008f20: 76 65 6e 74 65 64 4f 66 66 73 65 74 20 2d 20 6f ventedOffset - o 00008f30: 66 66 73 65 74 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 ffset;\n }\n\n 00008f40: 20 69 66 20 28 63 68 65 63 6b 41 6c 74 41 78 69 if (checkAltAxi 00008f50: 73 29 20 7b 5c 6e 20 20 20 20 76 61 72 20 5f 6f s) {\n var _o 00008f60: 66 66 73 65 74 4d 6f 64 69 66 69 65 72 53 74 61 ffsetModifierSta 00008f70: 74 65 24 32 3b 5c 6e 5c 6e 20 20 20 20 76 61 72 te$2;\n\n var 00008f80: 20 5f 6d 61 69 6e 53 69 64 65 20 3d 20 6d 61 69 _mainSide = mai 00008f90: 6e 41 78 69 73 20 3d 3d 3d 20 27 78 27 20 3f 20 nAxis === 'x' ? 00008fa0: 74 6f 70 20 3a 20 6c 65 66 74 3b 5c 6e 5c 6e 20 top : left;\n\n 00008fb0: 20 20 20 76 61 72 20 5f 61 6c 74 53 69 64 65 20 var _altSide 00008fc0: 3d 20 6d 61 69 6e 41 78 69 73 20 3d 3d 3d 20 27 = mainAxis === ' 00008fd0: 78 27 20 3f 20 62 6f 74 74 6f 6d 20 3a 20 72 69 x' ? bottom : ri 00008fe0: 67 68 74 3b 5c 6e 5c 6e 20 20 20 20 76 61 72 20 ght;\n\n var 00008ff0: 5f 6f 66 66 73 65 74 20 3d 20 70 6f 70 70 65 72 _offset = popper 00009000: 4f 66 66 73 65 74 73 5b 61 6c 74 41 78 69 73 5d Offsets[altAxis] 00009010: 3b 5c 6e 5c 6e 20 20 20 20 76 61 72 20 5f 6c 65 ;\n\n var _le 00009020: 6e 20 3d 20 61 6c 74 41 78 69 73 20 3d 3d 3d 20 n = altAxis === 00009030: 27 79 27 20 3f 20 27 68 65 69 67 68 74 27 20 3a 'y' ? 'height' : 00009040: 20 27 77 69 64 74 68 27 3b 5c 6e 5c 6e 20 20 20 'width';\n\n 00009050: 20 76 61 72 20 5f 6d 69 6e 20 3d 20 5f 6f 66 66 var _min = _off 00009060: 73 65 74 20 2b 20 6f 76 65 72 66 6c 6f 77 5b 5f set + overflow[_ 00009070: 6d 61 69 6e 53 69 64 65 5d 3b 5c 6e 5c 6e 20 20 mainSide];\n\n 00009080: 20 20 76 61 72 20 5f 6d 61 78 20 3d 20 5f 6f 66 var _max = _of 00009090: 66 73 65 74 20 2d 20 6f 76 65 72 66 6c 6f 77 5b fset - overflow[ 000090a0: 5f 61 6c 74 53 69 64 65 5d 3b 5c 6e 5c 6e 20 20 _altSide];\n\n 000090b0: 20 20 76 61 72 20 69 73 4f 72 69 67 69 6e 53 69 var isOriginSi 000090c0: 64 65 20 3d 20 5b 74 6f 70 2c 20 6c 65 66 74 5d de = [top, left] 000090d0: 2e 69 6e 64 65 78 4f 66 28 62 61 73 65 50 6c 61 .indexOf(basePla 000090e0: 63 65 6d 65 6e 74 29 20 21 3d 3d 20 2d 31 3b 5c cement) !== -1;\ 000090f0: 6e 5c 6e 20 20 20 20 76 61 72 20 5f 6f 66 66 73 n\n var _offs 00009100: 65 74 4d 6f 64 69 66 69 65 72 56 61 6c 75 65 20 etModifierValue 00009110: 3d 20 28 5f 6f 66 66 73 65 74 4d 6f 64 69 66 69 = (_offsetModifi 00009120: 65 72 53 74 61 74 65 24 32 20 3d 20 6f 66 66 73 erState$2 = offs 00009130: 65 74 4d 6f 64 69 66 69 65 72 53 74 61 74 65 20 etModifierState 00009140: 3d 3d 20 6e 75 6c 6c 20 3f 20 76 6f 69 64 20 30 == null ? void 0 00009150: 20 3a 20 6f 66 66 73 65 74 4d 6f 64 69 66 69 65 : offsetModifie 00009160: 72 53 74 61 74 65 5b 61 6c 74 41 78 69 73 5d 29 rState[altAxis]) 00009170: 20 21 3d 20 6e 75 6c 6c 20 3f 20 5f 6f 66 66 73 != null ? _offs 00009180: 65 74 4d 6f 64 69 66 69 65 72 53 74 61 74 65 24 etModifierState$ 00009190: 32 20 3a 20 30 3b 5c 6e 5c 6e 20 20 20 20 76 61 2 : 0;\n\n va 000091a0: 72 20 5f 74 65 74 68 65 72 4d 69 6e 20 3d 20 69 r _tetherMin = i 000091b0: 73 4f 72 69 67 69 6e 53 69 64 65 20 3f 20 5f 6d sOriginSide ? _m 000091c0: 69 6e 20 3a 20 5f 6f 66 66 73 65 74 20 2d 20 72 in : _offset - r 000091d0: 65 66 65 72 65 6e 63 65 52 65 63 74 5b 5f 6c 65 eferenceRect[_le 000091e0: 6e 5d 20 2d 20 70 6f 70 70 65 72 52 65 63 74 5b n] - popperRect[ 000091f0: 5f 6c 65 6e 5d 20 2d 20 5f 6f 66 66 73 65 74 4d _len] - _offsetM 00009200: 6f 64 69 66 69 65 72 56 61 6c 75 65 20 2b 20 6e odifierValue + n 00009210: 6f 72 6d 61 6c 69 7a 65 64 54 65 74 68 65 72 4f ormalizedTetherO 00009220: 66 66 73 65 74 56 61 6c 75 65 2e 61 6c 74 41 78 ffsetValue.altAx 00009230: 69 73 3b 5c 6e 5c 6e 20 20 20 20 76 61 72 20 5f is;\n\n var _ 00009240: 74 65 74 68 65 72 4d 61 78 20 3d 20 69 73 4f 72 tetherMax = isOr 00009250: 69 67 69 6e 53 69 64 65 20 3f 20 5f 6f 66 66 73 iginSide ? _offs 00009260: 65 74 20 2b 20 72 65 66 65 72 65 6e 63 65 52 65 et + referenceRe 00009270: 63 74 5b 5f 6c 65 6e 5d 20 2b 20 70 6f 70 70 65 ct[_len] + poppe 00009280: 72 52 65 63 74 5b 5f 6c 65 6e 5d 20 2d 20 5f 6f rRect[_len] - _o 00009290: 66 66 73 65 74 4d 6f 64 69 66 69 65 72 56 61 6c ffsetModifierVal 000092a0: 75 65 20 2d 20 6e 6f 72 6d 61 6c 69 7a 65 64 54 ue - normalizedT 000092b0: 65 74 68 65 72 4f 66 66 73 65 74 56 61 6c 75 65 etherOffsetValue 000092c0: 2e 61 6c 74 41 78 69 73 20 3a 20 5f 6d 61 78 3b .altAxis : _max; 000092d0: 5c 6e 5c 6e 20 20 20 20 76 61 72 20 5f 70 72 65 \n\n var _pre 000092e0: 76 65 6e 74 65 64 4f 66 66 73 65 74 20 3d 20 74 ventedOffset = t 000092f0: 65 74 68 65 72 20 26 26 20 69 73 4f 72 69 67 69 ether && isOrigi 00009300: 6e 53 69 64 65 20 3f 20 77 69 74 68 69 6e 4d 61 nSide ? withinMa 00009310: 78 43 6c 61 6d 70 28 5f 74 65 74 68 65 72 4d 69 xClamp(_tetherMi 00009320: 6e 2c 20 5f 6f 66 66 73 65 74 2c 20 5f 74 65 74 n, _offset, _tet 00009330: 68 65 72 4d 61 78 29 20 3a 20 77 69 74 68 69 6e herMax) : within 00009340: 28 74 65 74 68 65 72 20 3f 20 5f 74 65 74 68 65 (tether ? _tethe 00009350: 72 4d 69 6e 20 3a 20 5f 6d 69 6e 2c 20 5f 6f 66 rMin : _min, _of 00009360: 66 73 65 74 2c 20 74 65 74 68 65 72 20 3f 20 5f fset, tether ? _ 00009370: 74 65 74 68 65 72 4d 61 78 20 3a 20 5f 6d 61 78 tetherMax : _max 00009380: 29 3b 5c 6e 5c 6e 20 20 20 20 70 6f 70 70 65 72 );\n\n popper 00009390: 4f 66 66 73 65 74 73 5b 61 6c 74 41 78 69 73 5d Offsets[altAxis] 000093a0: 20 3d 20 5f 70 72 65 76 65 6e 74 65 64 4f 66 66 = _preventedOff 000093b0: 73 65 74 3b 5c 6e 20 20 20 20 64 61 74 61 5b 61 set;\n data[a 000093c0: 6c 74 41 78 69 73 5d 20 3d 20 5f 70 72 65 76 65 ltAxis] = _preve 000093d0: 6e 74 65 64 4f 66 66 73 65 74 20 2d 20 5f 6f 66 ntedOffset - _of 000093e0: 66 73 65 74 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 fset;\n }\n\n 000093f0: 73 74 61 74 65 2e 6d 6f 64 69 66 69 65 72 73 44 state.modifiersD 00009400: 61 74 61 5b 6e 61 6d 65 5d 20 3d 20 64 61 74 61 ata[name] = data 00009410: 3b 5c 6e 7d 20 2f 2f 20 65 73 6c 69 6e 74 2d 64 ;\n} // eslint-d 00009420: 69 73 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 isable-next-line 00009430: 20 69 6d 70 6f 72 74 2f 6e 6f 2d 75 6e 75 73 65 import/no-unuse 00009440: 64 2d 6d 6f 64 75 6c 65 73 5c 6e 5c 6e 5c 6e 65 d-modules\n\n\ne 00009450: 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 7b 5c xport default {\ 00009460: 6e 20 20 6e 61 6d 65 3a 20 27 70 72 65 76 65 6e n name: 'preven 00009470: 74 4f 76 65 72 66 6c 6f 77 27 2c 5c 6e 20 20 65 tOverflow',\n e 00009480: 6e 61 62 6c 65 64 3a 20 74 72 75 65 2c 5c 6e 20 nabled: true,\n 00009490: 20 70 68 61 73 65 3a 20 27 6d 61 69 6e 27 2c 5c phase: 'main',\ 000094a0: 6e 20 20 66 6e 3a 20 70 72 65 76 65 6e 74 4f 76 n fn: preventOv 000094b0: 65 72 66 6c 6f 77 2c 5c 6e 20 20 72 65 71 75 69 erflow,\n requi 000094c0: 72 65 73 49 66 45 78 69 73 74 73 3a 20 5b 27 6f resIfExists: ['o 000094d0: 66 66 73 65 74 27 5d 5c 6e 7d 3b 22 2c 22 65 78 ffset']\n};","ex 000094e0: 70 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e port default fun 000094f0: 63 74 69 6f 6e 20 67 65 74 41 6c 74 41 78 69 73 ction getAltAxis 00009500: 28 61 78 69 73 29 20 7b 5c 6e 20 20 72 65 74 75 (axis) {\n retu 00009510: 72 6e 20 61 78 69 73 20 3d 3d 3d 20 27 78 27 20 rn axis === 'x' 00009520: 3f 20 27 79 27 20 3a 20 27 78 27 3b 5c 6e 7d 22 ? 'y' : 'x';\n}" 00009530: 2c 22 69 6d 70 6f 72 74 20 67 65 74 42 6f 75 6e ,"import getBoun 00009540: 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 20 66 dingClientRect f 00009550: 72 6f 6d 20 5c 22 2e 2f 67 65 74 42 6f 75 6e 64 rom \"./getBound 00009560: 69 6e 67 43 6c 69 65 6e 74 52 65 63 74 2e 6a 73 ingClientRect.js 00009570: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 74 4e \";\nimport getN 00009580: 6f 64 65 53 63 72 6f 6c 6c 20 66 72 6f 6d 20 5c odeScroll from \ 00009590: 22 2e 2f 67 65 74 4e 6f 64 65 53 63 72 6f 6c 6c "./getNodeScroll 000095a0: 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 .js\";\nimport g 000095b0: 65 74 4e 6f 64 65 4e 61 6d 65 20 66 72 6f 6d 20 etNodeName from 000095c0: 5c 22 2e 2f 67 65 74 4e 6f 64 65 4e 61 6d 65 2e \"./getNodeName. 000095d0: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 js\";\nimport { 000095e0: 69 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 20 7d 20 isHTMLElement } 000095f0: 66 72 6f 6d 20 5c 22 2e 2f 69 6e 73 74 61 6e 63 from \"./instanc 00009600: 65 4f 66 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 eOf.js\";\nimpor 00009610: 74 20 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c t getWindowScrol 00009620: 6c 42 61 72 58 20 66 72 6f 6d 20 5c 22 2e 2f 67 lBarX from \"./g 00009630: 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c 6c 42 61 etWindowScrollBa 00009640: 72 58 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 rX.js\";\nimport 00009650: 20 67 65 74 44 6f 63 75 6d 65 6e 74 45 6c 65 6d getDocumentElem 00009660: 65 6e 74 20 66 72 6f 6d 20 5c 22 2e 2f 67 65 74 ent from \"./get 00009670: 44 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 2e DocumentElement. 00009680: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 69 73 js\";\nimport is 00009690: 53 63 72 6f 6c 6c 50 61 72 65 6e 74 20 66 72 6f ScrollParent fro 000096a0: 6d 20 5c 22 2e 2f 69 73 53 63 72 6f 6c 6c 50 61 m \"./isScrollPa 000096b0: 72 65 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f rent.js\";\nimpo 000096c0: 72 74 20 7b 20 72 6f 75 6e 64 20 7d 20 66 72 6f rt { round } fro 000096d0: 6d 20 5c 22 2e 2e 2f 75 74 69 6c 73 2f 6d 61 74 m \"../utils/mat 000096e0: 68 2e 6a 73 5c 22 3b 5c 6e 5c 6e 66 75 6e 63 74 h.js\";\n\nfunct 000096f0: 69 6f 6e 20 69 73 45 6c 65 6d 65 6e 74 53 63 61 ion isElementSca 00009700: 6c 65 64 28 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e led(element) {\n 00009710: 20 20 76 61 72 20 72 65 63 74 20 3d 20 65 6c 65 var rect = ele 00009720: 6d 65 6e 74 2e 67 65 74 42 6f 75 6e 64 69 6e 67 ment.getBounding 00009730: 43 6c 69 65 6e 74 52 65 63 74 28 29 3b 5c 6e 20 ClientRect();\n 00009740: 20 76 61 72 20 73 63 61 6c 65 58 20 3d 20 72 6f var scaleX = ro 00009750: 75 6e 64 28 72 65 63 74 2e 77 69 64 74 68 29 20 und(rect.width) 00009760: 2f 20 65 6c 65 6d 65 6e 74 2e 6f 66 66 73 65 74 / element.offset 00009770: 57 69 64 74 68 20 7c 7c 20 31 3b 5c 6e 20 20 76 Width || 1;\n v 00009780: 61 72 20 73 63 61 6c 65 59 20 3d 20 72 6f 75 6e ar scaleY = roun 00009790: 64 28 72 65 63 74 2e 68 65 69 67 68 74 29 20 2f d(rect.height) / 000097a0: 20 65 6c 65 6d 65 6e 74 2e 6f 66 66 73 65 74 48 element.offsetH 000097b0: 65 69 67 68 74 20 7c 7c 20 31 3b 5c 6e 20 20 72 eight || 1;\n r 000097c0: 65 74 75 72 6e 20 73 63 61 6c 65 58 20 21 3d 3d eturn scaleX !== 000097d0: 20 31 20 7c 7c 20 73 63 61 6c 65 59 20 21 3d 3d 1 || scaleY !== 000097e0: 20 31 3b 5c 6e 7d 20 2f 2f 20 52 65 74 75 72 6e 1;\n} // Return 000097f0: 73 20 74 68 65 20 63 6f 6d 70 6f 73 69 74 65 20 s the composite 00009800: 72 65 63 74 20 6f 66 20 61 6e 20 65 6c 65 6d 65 rect of an eleme 00009810: 6e 74 20 72 65 6c 61 74 69 76 65 20 74 6f 20 69 nt relative to i 00009820: 74 73 20 6f 66 66 73 65 74 50 61 72 65 6e 74 2e ts offsetParent. 00009830: 5c 6e 2f 2f 20 43 6f 6d 70 6f 73 69 74 65 20 6d \n// Composite m 00009840: 65 61 6e 73 20 69 74 20 74 61 6b 65 73 20 69 6e eans it takes in 00009850: 74 6f 20 61 63 63 6f 75 6e 74 20 74 72 61 6e 73 to account trans 00009860: 66 6f 72 6d 73 20 61 73 20 77 65 6c 6c 20 61 73 forms as well as 00009870: 20 6c 61 79 6f 75 74 2e 5c 6e 5c 6e 5c 6e 65 78 layout.\n\n\nex 00009880: 70 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e port default fun 00009890: 63 74 69 6f 6e 20 67 65 74 43 6f 6d 70 6f 73 69 ction getComposi 000098a0: 74 65 52 65 63 74 28 65 6c 65 6d 65 6e 74 4f 72 teRect(elementOr 000098b0: 56 69 72 74 75 61 6c 45 6c 65 6d 65 6e 74 2c 20 VirtualElement, 000098c0: 6f 66 66 73 65 74 50 61 72 65 6e 74 2c 20 69 73 offsetParent, is 000098d0: 46 69 78 65 64 29 20 7b 5c 6e 20 20 69 66 20 28 Fixed) {\n if ( 000098e0: 69 73 46 69 78 65 64 20 3d 3d 3d 20 76 6f 69 64 isFixed === void 000098f0: 20 30 29 20 7b 5c 6e 20 20 20 20 69 73 46 69 78 0) {\n isFix 00009900: 65 64 20 3d 20 66 61 6c 73 65 3b 5c 6e 20 20 7d ed = false;\n } 00009910: 5c 6e 5c 6e 20 20 76 61 72 20 69 73 4f 66 66 73 \n\n var isOffs 00009920: 65 74 50 61 72 65 6e 74 41 6e 45 6c 65 6d 65 6e etParentAnElemen 00009930: 74 20 3d 20 69 73 48 54 4d 4c 45 6c 65 6d 65 6e t = isHTMLElemen 00009940: 74 28 6f 66 66 73 65 74 50 61 72 65 6e 74 29 3b t(offsetParent); 00009950: 5c 6e 20 20 76 61 72 20 6f 66 66 73 65 74 50 61 \n var offsetPa 00009960: 72 65 6e 74 49 73 53 63 61 6c 65 64 20 3d 20 69 rentIsScaled = i 00009970: 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 28 6f 66 66 sHTMLElement(off 00009980: 73 65 74 50 61 72 65 6e 74 29 20 26 26 20 69 73 setParent) && is 00009990: 45 6c 65 6d 65 6e 74 53 63 61 6c 65 64 28 6f 66 ElementScaled(of 000099a0: 66 73 65 74 50 61 72 65 6e 74 29 3b 5c 6e 20 20 fsetParent);\n 000099b0: 76 61 72 20 64 6f 63 75 6d 65 6e 74 45 6c 65 6d var documentElem 000099c0: 65 6e 74 20 3d 20 67 65 74 44 6f 63 75 6d 65 6e ent = getDocumen 000099d0: 74 45 6c 65 6d 65 6e 74 28 6f 66 66 73 65 74 50 tElement(offsetP 000099e0: 61 72 65 6e 74 29 3b 5c 6e 20 20 76 61 72 20 72 arent);\n var r 000099f0: 65 63 74 20 3d 20 67 65 74 42 6f 75 6e 64 69 6e ect = getBoundin 00009a00: 67 43 6c 69 65 6e 74 52 65 63 74 28 65 6c 65 6d gClientRect(elem 00009a10: 65 6e 74 4f 72 56 69 72 74 75 61 6c 45 6c 65 6d entOrVirtualElem 00009a20: 65 6e 74 2c 20 6f 66 66 73 65 74 50 61 72 65 6e ent, offsetParen 00009a30: 74 49 73 53 63 61 6c 65 64 2c 20 69 73 46 69 78 tIsScaled, isFix 00009a40: 65 64 29 3b 5c 6e 20 20 76 61 72 20 73 63 72 6f ed);\n var scro 00009a50: 6c 6c 20 3d 20 7b 5c 6e 20 20 20 20 73 63 72 6f ll = {\n scro 00009a60: 6c 6c 4c 65 66 74 3a 20 30 2c 5c 6e 20 20 20 20 llLeft: 0,\n 00009a70: 73 63 72 6f 6c 6c 54 6f 70 3a 20 30 5c 6e 20 20 scrollTop: 0\n 00009a80: 7d 3b 5c 6e 20 20 76 61 72 20 6f 66 66 73 65 74 };\n var offset 00009a90: 73 20 3d 20 7b 5c 6e 20 20 20 20 78 3a 20 30 2c s = {\n x: 0, 00009aa0: 5c 6e 20 20 20 20 79 3a 20 30 5c 6e 20 20 7d 3b \n y: 0\n }; 00009ab0: 5c 6e 5c 6e 20 20 69 66 20 28 69 73 4f 66 66 73 \n\n if (isOffs 00009ac0: 65 74 50 61 72 65 6e 74 41 6e 45 6c 65 6d 65 6e etParentAnElemen 00009ad0: 74 20 7c 7c 20 21 69 73 4f 66 66 73 65 74 50 61 t || !isOffsetPa 00009ae0: 72 65 6e 74 41 6e 45 6c 65 6d 65 6e 74 20 26 26 rentAnElement && 00009af0: 20 21 69 73 46 69 78 65 64 29 20 7b 5c 6e 20 20 !isFixed) {\n 00009b00: 20 20 69 66 20 28 67 65 74 4e 6f 64 65 4e 61 6d if (getNodeNam 00009b10: 65 28 6f 66 66 73 65 74 50 61 72 65 6e 74 29 20 e(offsetParent) 00009b20: 21 3d 3d 20 27 62 6f 64 79 27 20 7c 7c 20 2f 2f !== 'body' || // 00009b30: 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e https://github. 00009b40: 63 6f 6d 2f 70 6f 70 70 65 72 6a 73 2f 70 6f 70 com/popperjs/pop 00009b50: 70 65 72 2d 63 6f 72 65 2f 69 73 73 75 65 73 2f per-core/issues/ 00009b60: 31 30 37 38 5c 6e 20 20 20 20 69 73 53 63 72 6f 1078\n isScro 00009b70: 6c 6c 50 61 72 65 6e 74 28 64 6f 63 75 6d 65 6e llParent(documen 00009b80: 74 45 6c 65 6d 65 6e 74 29 29 20 7b 5c 6e 20 20 tElement)) {\n 00009b90: 20 20 20 20 73 63 72 6f 6c 6c 20 3d 20 67 65 74 scroll = get 00009ba0: 4e 6f 64 65 53 63 72 6f 6c 6c 28 6f 66 66 73 65 NodeScroll(offse 00009bb0: 74 50 61 72 65 6e 74 29 3b 5c 6e 20 20 20 20 7d tParent);\n } 00009bc0: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 69 73 48 54 \n\n if (isHT 00009bd0: 4d 4c 45 6c 65 6d 65 6e 74 28 6f 66 66 73 65 74 MLElement(offset 00009be0: 50 61 72 65 6e 74 29 29 20 7b 5c 6e 20 20 20 20 Parent)) {\n 00009bf0: 20 20 6f 66 66 73 65 74 73 20 3d 20 67 65 74 42 offsets = getB 00009c00: 6f 75 6e 64 69 6e 67 43 6c 69 65 6e 74 52 65 63 oundingClientRec 00009c10: 74 28 6f 66 66 73 65 74 50 61 72 65 6e 74 2c 20 t(offsetParent, 00009c20: 74 72 75 65 29 3b 5c 6e 20 20 20 20 20 20 6f 66 true);\n of 00009c30: 66 73 65 74 73 2e 78 20 2b 3d 20 6f 66 66 73 65 fsets.x += offse 00009c40: 74 50 61 72 65 6e 74 2e 63 6c 69 65 6e 74 4c 65 tParent.clientLe 00009c50: 66 74 3b 5c 6e 20 20 20 20 20 20 6f 66 66 73 65 ft;\n offse 00009c60: 74 73 2e 79 20 2b 3d 20 6f 66 66 73 65 74 50 61 ts.y += offsetPa 00009c70: 72 65 6e 74 2e 63 6c 69 65 6e 74 54 6f 70 3b 5c rent.clientTop;\ 00009c80: 6e 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 n } else if ( 00009c90: 64 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 29 documentElement) 00009ca0: 20 7b 5c 6e 20 20 20 20 20 20 6f 66 66 73 65 74 {\n offset 00009cb0: 73 2e 78 20 3d 20 67 65 74 57 69 6e 64 6f 77 53 s.x = getWindowS 00009cc0: 63 72 6f 6c 6c 42 61 72 58 28 64 6f 63 75 6d 65 crollBarX(docume 00009cd0: 6e 74 45 6c 65 6d 65 6e 74 29 3b 5c 6e 20 20 20 ntElement);\n 00009ce0: 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 }\n }\n\n ret 00009cf0: 75 72 6e 20 7b 5c 6e 20 20 20 20 78 3a 20 72 65 urn {\n x: re 00009d00: 63 74 2e 6c 65 66 74 20 2b 20 73 63 72 6f 6c 6c ct.left + scroll 00009d10: 2e 73 63 72 6f 6c 6c 4c 65 66 74 20 2d 20 6f 66 .scrollLeft - of 00009d20: 66 73 65 74 73 2e 78 2c 5c 6e 20 20 20 20 79 3a fsets.x,\n y: 00009d30: 20 72 65 63 74 2e 74 6f 70 20 2b 20 73 63 72 6f rect.top + scro 00009d40: 6c 6c 2e 73 63 72 6f 6c 6c 54 6f 70 20 2d 20 6f ll.scrollTop - o 00009d50: 66 66 73 65 74 73 2e 79 2c 5c 6e 20 20 20 20 77 ffsets.y,\n w 00009d60: 69 64 74 68 3a 20 72 65 63 74 2e 77 69 64 74 68 idth: rect.width 00009d70: 2c 5c 6e 20 20 20 20 68 65 69 67 68 74 3a 20 72 ,\n height: r 00009d80: 65 63 74 2e 68 65 69 67 68 74 5c 6e 20 20 7d 3b ect.height\n }; 00009d90: 5c 6e 7d 22 2c 22 69 6d 70 6f 72 74 20 67 65 74 \n}","import get 00009da0: 57 69 6e 64 6f 77 53 63 72 6f 6c 6c 20 66 72 6f WindowScroll fro 00009db0: 6d 20 5c 22 2e 2f 67 65 74 57 69 6e 64 6f 77 53 m \"./getWindowS 00009dc0: 63 72 6f 6c 6c 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 croll.js\";\nimp 00009dd0: 6f 72 74 20 67 65 74 57 69 6e 64 6f 77 20 66 72 ort getWindow fr 00009de0: 6f 6d 20 5c 22 2e 2f 67 65 74 57 69 6e 64 6f 77 om \"./getWindow 00009df0: 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b .js\";\nimport { 00009e00: 20 69 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 20 7d isHTMLElement } 00009e10: 20 66 72 6f 6d 20 5c 22 2e 2f 69 6e 73 74 61 6e from \"./instan 00009e20: 63 65 4f 66 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f ceOf.js\";\nimpo 00009e30: 72 74 20 67 65 74 48 54 4d 4c 45 6c 65 6d 65 6e rt getHTMLElemen 00009e40: 74 53 63 72 6f 6c 6c 20 66 72 6f 6d 20 5c 22 2e tScroll from \". 00009e50: 2f 67 65 74 48 54 4d 4c 45 6c 65 6d 65 6e 74 53 /getHTMLElementS 00009e60: 63 72 6f 6c 6c 2e 6a 73 5c 22 3b 5c 6e 65 78 70 croll.js\";\nexp 00009e70: 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 6e 63 ort default func 00009e80: 74 69 6f 6e 20 67 65 74 4e 6f 64 65 53 63 72 6f tion getNodeScro 00009e90: 6c 6c 28 6e 6f 64 65 29 20 7b 5c 6e 20 20 69 66 ll(node) {\n if 00009ea0: 20 28 6e 6f 64 65 20 3d 3d 3d 20 67 65 74 57 69 (node === getWi 00009eb0: 6e 64 6f 77 28 6e 6f 64 65 29 20 7c 7c 20 21 69 ndow(node) || !i 00009ec0: 73 48 54 4d 4c 45 6c 65 6d 65 6e 74 28 6e 6f 64 sHTMLElement(nod 00009ed0: 65 29 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 e)) {\n retur 00009ee0: 6e 20 67 65 74 57 69 6e 64 6f 77 53 63 72 6f 6c n getWindowScrol 00009ef0: 6c 28 6e 6f 64 65 29 3b 5c 6e 20 20 7d 20 65 6c l(node);\n } el 00009f00: 73 65 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e se {\n return 00009f10: 20 67 65 74 48 54 4d 4c 45 6c 65 6d 65 6e 74 53 getHTMLElementS 00009f20: 63 72 6f 6c 6c 28 6e 6f 64 65 29 3b 5c 6e 20 20 croll(node);\n 00009f30: 7d 5c 6e 7d 22 2c 22 65 78 70 6f 72 74 20 64 65 }\n}","export de 00009f40: 66 61 75 6c 74 20 66 75 6e 63 74 69 6f 6e 20 67 fault function g 00009f50: 65 74 48 54 4d 4c 45 6c 65 6d 65 6e 74 53 63 72 etHTMLElementScr 00009f60: 6f 6c 6c 28 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e oll(element) {\n 00009f70: 20 20 72 65 74 75 72 6e 20 7b 5c 6e 20 20 20 20 return {\n 00009f80: 73 63 72 6f 6c 6c 4c 65 66 74 3a 20 65 6c 65 6d scrollLeft: elem 00009f90: 65 6e 74 2e 73 63 72 6f 6c 6c 4c 65 66 74 2c 5c ent.scrollLeft,\ 00009fa0: 6e 20 20 20 20 73 63 72 6f 6c 6c 54 6f 70 3a 20 n scrollTop: 00009fb0: 65 6c 65 6d 65 6e 74 2e 73 63 72 6f 6c 6c 54 6f element.scrollTo 00009fc0: 70 5c 6e 20 20 7d 3b 5c 6e 7d 22 2c 22 69 6d 70 p\n };\n}","imp 00009fd0: 6f 72 74 20 7b 20 6d 6f 64 69 66 69 65 72 50 68 ort { modifierPh 00009fe0: 61 73 65 73 20 7d 20 66 72 6f 6d 20 5c 22 2e 2e ases } from \".. 00009ff0: 2f 65 6e 75 6d 73 2e 6a 73 5c 22 3b 20 2f 2f 20 /enums.js\"; // 0000a000: 73 6f 75 72 63 65 3a 20 68 74 74 70 73 3a 2f 2f source: https:// 0000a010: 73 74 61 63 6b 6f 76 65 72 66 6c 6f 77 2e 63 6f stackoverflow.co 0000a020: 6d 2f 71 75 65 73 74 69 6f 6e 73 2f 34 39 38 37 m/questions/4987 0000a030: 35 32 35 35 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 5255\n\nfunction 0000a040: 20 6f 72 64 65 72 28 6d 6f 64 69 66 69 65 72 73 order(modifiers 0000a050: 29 20 7b 5c 6e 20 20 76 61 72 20 6d 61 70 20 3d ) {\n var map = 0000a060: 20 6e 65 77 20 4d 61 70 28 29 3b 5c 6e 20 20 76 new Map();\n v 0000a070: 61 72 20 76 69 73 69 74 65 64 20 3d 20 6e 65 77 ar visited = new 0000a080: 20 53 65 74 28 29 3b 5c 6e 20 20 76 61 72 20 72 Set();\n var r 0000a090: 65 73 75 6c 74 20 3d 20 5b 5d 3b 5c 6e 20 20 6d esult = [];\n m 0000a0a0: 6f 64 69 66 69 65 72 73 2e 66 6f 72 45 61 63 68 odifiers.forEach 0000a0b0: 28 66 75 6e 63 74 69 6f 6e 20 28 6d 6f 64 69 66 (function (modif 0000a0c0: 69 65 72 29 20 7b 5c 6e 20 20 20 20 6d 61 70 2e ier) {\n map. 0000a0d0: 73 65 74 28 6d 6f 64 69 66 69 65 72 2e 6e 61 6d set(modifier.nam 0000a0e0: 65 2c 20 6d 6f 64 69 66 69 65 72 29 3b 5c 6e 20 e, modifier);\n 0000a0f0: 20 7d 29 3b 20 2f 2f 20 4f 6e 20 76 69 73 69 74 }); // On visit 0000a100: 69 6e 67 20 6f 62 6a 65 63 74 2c 20 63 68 65 63 ing object, chec 0000a110: 6b 20 66 6f 72 20 69 74 73 20 64 65 70 65 6e 64 k for its depend 0000a120: 65 6e 63 69 65 73 20 61 6e 64 20 76 69 73 69 74 encies and visit 0000a130: 20 74 68 65 6d 20 72 65 63 75 72 73 69 76 65 6c them recursivel 0000a140: 79 5c 6e 5c 6e 20 20 66 75 6e 63 74 69 6f 6e 20 y\n\n function 0000a150: 73 6f 72 74 28 6d 6f 64 69 66 69 65 72 29 20 7b sort(modifier) { 0000a160: 5c 6e 20 20 20 20 76 69 73 69 74 65 64 2e 61 64 \n visited.ad 0000a170: 64 28 6d 6f 64 69 66 69 65 72 2e 6e 61 6d 65 29 d(modifier.name) 0000a180: 3b 5c 6e 20 20 20 20 76 61 72 20 72 65 71 75 69 ;\n var requi 0000a190: 72 65 73 20 3d 20 5b 5d 2e 63 6f 6e 63 61 74 28 res = [].concat( 0000a1a0: 6d 6f 64 69 66 69 65 72 2e 72 65 71 75 69 72 65 modifier.require 0000a1b0: 73 20 7c 7c 20 5b 5d 2c 20 6d 6f 64 69 66 69 65 s || [], modifie 0000a1c0: 72 2e 72 65 71 75 69 72 65 73 49 66 45 78 69 73 r.requiresIfExis 0000a1d0: 74 73 20 7c 7c 20 5b 5d 29 3b 5c 6e 20 20 20 20 ts || []);\n 0000a1e0: 72 65 71 75 69 72 65 73 2e 66 6f 72 45 61 63 68 requires.forEach 0000a1f0: 28 66 75 6e 63 74 69 6f 6e 20 28 64 65 70 29 20 (function (dep) 0000a200: 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 21 76 69 {\n if (!vi 0000a210: 73 69 74 65 64 2e 68 61 73 28 64 65 70 29 29 20 sited.has(dep)) 0000a220: 7b 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 64 {\n var d 0000a230: 65 70 4d 6f 64 69 66 69 65 72 20 3d 20 6d 61 70 epModifier = map 0000a240: 2e 67 65 74 28 64 65 70 29 3b 5c 6e 5c 6e 20 20 .get(dep);\n\n 0000a250: 20 20 20 20 20 20 69 66 20 28 64 65 70 4d 6f 64 if (depMod 0000a260: 69 66 69 65 72 29 20 7b 5c 6e 20 20 20 20 20 20 ifier) {\n 0000a270: 20 20 20 20 73 6f 72 74 28 64 65 70 4d 6f 64 69 sort(depModi 0000a280: 66 69 65 72 29 3b 5c 6e 20 20 20 20 20 20 20 20 fier);\n 0000a290: 7d 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 }\n }\n 0000a2a0: 7d 29 3b 5c 6e 20 20 20 20 72 65 73 75 6c 74 2e });\n result. 0000a2b0: 70 75 73 68 28 6d 6f 64 69 66 69 65 72 29 3b 5c push(modifier);\ 0000a2c0: 6e 20 20 7d 5c 6e 5c 6e 20 20 6d 6f 64 69 66 69 n }\n\n modifi 0000a2d0: 65 72 73 2e 66 6f 72 45 61 63 68 28 66 75 6e 63 ers.forEach(func 0000a2e0: 74 69 6f 6e 20 28 6d 6f 64 69 66 69 65 72 29 20 tion (modifier) 0000a2f0: 7b 5c 6e 20 20 20 20 69 66 20 28 21 76 69 73 69 {\n if (!visi 0000a300: 74 65 64 2e 68 61 73 28 6d 6f 64 69 66 69 65 72 ted.has(modifier 0000a310: 2e 6e 61 6d 65 29 29 20 7b 5c 6e 20 20 20 20 20 .name)) {\n 0000a320: 20 2f 2f 20 63 68 65 63 6b 20 66 6f 72 20 76 69 // check for vi 0000a330: 73 69 74 65 64 20 6f 62 6a 65 63 74 5c 6e 20 20 sited object\n 0000a340: 20 20 20 20 73 6f 72 74 28 6d 6f 64 69 66 69 65 sort(modifie 0000a350: 72 29 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 29 r);\n }\n }) 0000a360: 3b 5c 6e 20 20 72 65 74 75 72 6e 20 72 65 73 75 ;\n return resu 0000a370: 6c 74 3b 5c 6e 7d 5c 6e 5c 6e 65 78 70 6f 72 74 lt;\n}\n\nexport 0000a380: 20 64 65 66 61 75 6c 74 20 66 75 6e 63 74 69 6f default functio 0000a390: 6e 20 6f 72 64 65 72 4d 6f 64 69 66 69 65 72 73 n orderModifiers 0000a3a0: 28 6d 6f 64 69 66 69 65 72 73 29 20 7b 5c 6e 20 (modifiers) {\n 0000a3b0: 20 2f 2f 20 6f 72 64 65 72 20 62 61 73 65 64 20 // order based 0000a3c0: 6f 6e 20 64 65 70 65 6e 64 65 6e 63 69 65 73 5c on dependencies\ 0000a3d0: 6e 20 20 76 61 72 20 6f 72 64 65 72 65 64 4d 6f n var orderedMo 0000a3e0: 64 69 66 69 65 72 73 20 3d 20 6f 72 64 65 72 28 difiers = order( 0000a3f0: 6d 6f 64 69 66 69 65 72 73 29 3b 20 2f 2f 20 6f modifiers); // o 0000a400: 72 64 65 72 20 62 61 73 65 64 20 6f 6e 20 70 68 rder based on ph 0000a410: 61 73 65 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 ase\n\n return 0000a420: 6d 6f 64 69 66 69 65 72 50 68 61 73 65 73 2e 72 modifierPhases.r 0000a430: 65 64 75 63 65 28 66 75 6e 63 74 69 6f 6e 20 28 educe(function ( 0000a440: 61 63 63 2c 20 70 68 61 73 65 29 20 7b 5c 6e 20 acc, phase) {\n 0000a450: 20 20 20 72 65 74 75 72 6e 20 61 63 63 2e 63 6f return acc.co 0000a460: 6e 63 61 74 28 6f 72 64 65 72 65 64 4d 6f 64 69 ncat(orderedModi 0000a470: 66 69 65 72 73 2e 66 69 6c 74 65 72 28 66 75 6e fiers.filter(fun 0000a480: 63 74 69 6f 6e 20 28 6d 6f 64 69 66 69 65 72 29 ction (modifier) 0000a490: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 0000a4a0: 20 6d 6f 64 69 66 69 65 72 2e 70 68 61 73 65 20 modifier.phase 0000a4b0: 3d 3d 3d 20 70 68 61 73 65 3b 5c 6e 20 20 20 20 === phase;\n 0000a4c0: 7d 29 29 3b 5c 6e 20 20 7d 2c 20 5b 5d 29 3b 5c }));\n }, []);\ 0000a4d0: 6e 7d 22 2c 22 65 78 70 6f 72 74 20 64 65 66 61 n}","export defa 0000a4e0: 75 6c 74 20 66 75 6e 63 74 69 6f 6e 20 64 65 62 ult function deb 0000a4f0: 6f 75 6e 63 65 28 66 6e 29 20 7b 5c 6e 20 20 76 ounce(fn) {\n v 0000a500: 61 72 20 70 65 6e 64 69 6e 67 3b 5c 6e 20 20 72 ar pending;\n r 0000a510: 65 74 75 72 6e 20 66 75 6e 63 74 69 6f 6e 20 28 eturn function ( 0000a520: 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 70 65 ) {\n if (!pe 0000a530: 6e 64 69 6e 67 29 20 7b 5c 6e 20 20 20 20 20 20 nding) {\n 0000a540: 70 65 6e 64 69 6e 67 20 3d 20 6e 65 77 20 50 72 pending = new Pr 0000a550: 6f 6d 69 73 65 28 66 75 6e 63 74 69 6f 6e 20 28 omise(function ( 0000a560: 72 65 73 6f 6c 76 65 29 20 7b 5c 6e 20 20 20 20 resolve) {\n 0000a570: 20 20 20 20 50 72 6f 6d 69 73 65 2e 72 65 73 6f Promise.reso 0000a580: 6c 76 65 28 29 2e 74 68 65 6e 28 66 75 6e 63 74 lve().then(funct 0000a590: 69 6f 6e 20 28 29 20 7b 5c 6e 20 20 20 20 20 20 ion () {\n 0000a5a0: 20 20 20 20 70 65 6e 64 69 6e 67 20 3d 20 75 6e pending = un 0000a5b0: 64 65 66 69 6e 65 64 3b 5c 6e 20 20 20 20 20 20 defined;\n 0000a5c0: 20 20 20 20 72 65 73 6f 6c 76 65 28 66 6e 28 29 resolve(fn() 0000a5d0: 29 3b 5c 6e 20 20 20 20 20 20 20 20 7d 29 3b 5c );\n });\ 0000a5e0: 6e 20 20 20 20 20 20 7d 29 3b 5c 6e 20 20 20 20 n });\n 0000a5f0: 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 }\n\n return 0000a600: 70 65 6e 64 69 6e 67 3b 5c 6e 20 20 7d 3b 5c 6e pending;\n };\n 0000a610: 7d 22 2c 22 69 6d 70 6f 72 74 20 67 65 74 43 6f }","import getCo 0000a620: 6d 70 6f 73 69 74 65 52 65 63 74 20 66 72 6f 6d mpositeRect from 0000a630: 20 5c 22 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 67 \"./dom-utils/g 0000a640: 65 74 43 6f 6d 70 6f 73 69 74 65 52 65 63 74 2e etCompositeRect. 0000a650: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 67 65 js\";\nimport ge 0000a660: 74 4c 61 79 6f 75 74 52 65 63 74 20 66 72 6f 6d tLayoutRect from 0000a670: 20 5c 22 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 67 \"./dom-utils/g 0000a680: 65 74 4c 61 79 6f 75 74 52 65 63 74 2e 6a 73 5c etLayoutRect.js\ 0000a690: 22 3b 5c 6e 69 6d 70 6f 72 74 20 6c 69 73 74 53 ";\nimport listS 0000a6a0: 63 72 6f 6c 6c 50 61 72 65 6e 74 73 20 66 72 6f crollParents fro 0000a6b0: 6d 20 5c 22 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f m \"./dom-utils/ 0000a6c0: 6c 69 73 74 53 63 72 6f 6c 6c 50 61 72 65 6e 74 listScrollParent 0000a6d0: 73 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 s.js\";\nimport 0000a6e0: 67 65 74 4f 66 66 73 65 74 50 61 72 65 6e 74 20 getOffsetParent 0000a6f0: 66 72 6f 6d 20 5c 22 2e 2f 64 6f 6d 2d 75 74 69 from \"./dom-uti 0000a700: 6c 73 2f 67 65 74 4f 66 66 73 65 74 50 61 72 65 ls/getOffsetPare 0000a710: 6e 74 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 nt.js\";\nimport 0000a720: 20 6f 72 64 65 72 4d 6f 64 69 66 69 65 72 73 20 orderModifiers 0000a730: 66 72 6f 6d 20 5c 22 2e 2f 75 74 69 6c 73 2f 6f from \"./utils/o 0000a740: 72 64 65 72 4d 6f 64 69 66 69 65 72 73 2e 6a 73 rderModifiers.js 0000a750: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 64 65 62 6f \";\nimport debo 0000a760: 75 6e 63 65 20 66 72 6f 6d 20 5c 22 2e 2f 75 74 unce from \"./ut 0000a770: 69 6c 73 2f 64 65 62 6f 75 6e 63 65 2e 6a 73 5c ils/debounce.js\ 0000a780: 22 3b 5c 6e 69 6d 70 6f 72 74 20 6d 65 72 67 65 ";\nimport merge 0000a790: 42 79 4e 61 6d 65 20 66 72 6f 6d 20 5c 22 2e 2f ByName from \"./ 0000a7a0: 75 74 69 6c 73 2f 6d 65 72 67 65 42 79 4e 61 6d utils/mergeByNam 0000a7b0: 65 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 e.js\";\nimport 0000a7c0: 64 65 74 65 63 74 4f 76 65 72 66 6c 6f 77 20 66 detectOverflow f 0000a7d0: 72 6f 6d 20 5c 22 2e 2f 75 74 69 6c 73 2f 64 65 rom \"./utils/de 0000a7e0: 74 65 63 74 4f 76 65 72 66 6c 6f 77 2e 6a 73 5c tectOverflow.js\ 0000a7f0: 22 3b 5c 6e 69 6d 70 6f 72 74 20 7b 20 69 73 45 ";\nimport { isE 0000a800: 6c 65 6d 65 6e 74 20 7d 20 66 72 6f 6d 20 5c 22 lement } from \" 0000a810: 2e 2f 64 6f 6d 2d 75 74 69 6c 73 2f 69 6e 73 74 ./dom-utils/inst 0000a820: 61 6e 63 65 4f 66 2e 6a 73 5c 22 3b 5c 6e 76 61 anceOf.js\";\nva 0000a830: 72 20 44 45 46 41 55 4c 54 5f 4f 50 54 49 4f 4e r DEFAULT_OPTION 0000a840: 53 20 3d 20 7b 5c 6e 20 20 70 6c 61 63 65 6d 65 S = {\n placeme 0000a850: 6e 74 3a 20 27 62 6f 74 74 6f 6d 27 2c 5c 6e 20 nt: 'bottom',\n 0000a860: 20 6d 6f 64 69 66 69 65 72 73 3a 20 5b 5d 2c 5c modifiers: [],\ 0000a870: 6e 20 20 73 74 72 61 74 65 67 79 3a 20 27 61 62 n strategy: 'ab 0000a880: 73 6f 6c 75 74 65 27 5c 6e 7d 3b 5c 6e 5c 6e 66 solute'\n};\n\nf 0000a890: 75 6e 63 74 69 6f 6e 20 61 72 65 56 61 6c 69 64 unction areValid 0000a8a0: 45 6c 65 6d 65 6e 74 73 28 29 20 7b 5c 6e 20 20 Elements() {\n 0000a8b0: 66 6f 72 20 28 76 61 72 20 5f 6c 65 6e 20 3d 20 for (var _len = 0000a8c0: 61 72 67 75 6d 65 6e 74 73 2e 6c 65 6e 67 74 68 arguments.length 0000a8d0: 2c 20 61 72 67 73 20 3d 20 6e 65 77 20 41 72 72 , args = new Arr 0000a8e0: 61 79 28 5f 6c 65 6e 29 2c 20 5f 6b 65 79 20 3d ay(_len), _key = 0000a8f0: 20 30 3b 20 5f 6b 65 79 20 3c 20 5f 6c 65 6e 3b 0; _key < _len; 0000a900: 20 5f 6b 65 79 2b 2b 29 20 7b 5c 6e 20 20 20 20 _key++) {\n 0000a910: 61 72 67 73 5b 5f 6b 65 79 5d 20 3d 20 61 72 67 args[_key] = arg 0000a920: 75 6d 65 6e 74 73 5b 5f 6b 65 79 5d 3b 5c 6e 20 uments[_key];\n 0000a930: 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 21 }\n\n return ! 0000a940: 61 72 67 73 2e 73 6f 6d 65 28 66 75 6e 63 74 69 args.some(functi 0000a950: 6f 6e 20 28 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e on (element) {\n 0000a960: 20 20 20 20 72 65 74 75 72 6e 20 21 28 65 6c 65 return !(ele 0000a970: 6d 65 6e 74 20 26 26 20 74 79 70 65 6f 66 20 65 ment && typeof e 0000a980: 6c 65 6d 65 6e 74 2e 67 65 74 42 6f 75 6e 64 69 lement.getBoundi 0000a990: 6e 67 43 6c 69 65 6e 74 52 65 63 74 20 3d 3d 3d ngClientRect === 0000a9a0: 20 27 66 75 6e 63 74 69 6f 6e 27 29 3b 5c 6e 20 'function');\n 0000a9b0: 20 7d 29 3b 5c 6e 7d 5c 6e 5c 6e 65 78 70 6f 72 });\n}\n\nexpor 0000a9c0: 74 20 66 75 6e 63 74 69 6f 6e 20 70 6f 70 70 65 t function poppe 0000a9d0: 72 47 65 6e 65 72 61 74 6f 72 28 67 65 6e 65 72 rGenerator(gener 0000a9e0: 61 74 6f 72 4f 70 74 69 6f 6e 73 29 20 7b 5c 6e atorOptions) {\n 0000a9f0: 20 20 69 66 20 28 67 65 6e 65 72 61 74 6f 72 4f if (generatorO 0000aa00: 70 74 69 6f 6e 73 20 3d 3d 3d 20 76 6f 69 64 20 ptions === void 0000aa10: 30 29 20 7b 5c 6e 20 20 20 20 67 65 6e 65 72 61 0) {\n genera 0000aa20: 74 6f 72 4f 70 74 69 6f 6e 73 20 3d 20 7b 7d 3b torOptions = {}; 0000aa30: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 76 61 72 20 5f \n }\n\n var _ 0000aa40: 67 65 6e 65 72 61 74 6f 72 4f 70 74 69 6f 6e 73 generatorOptions 0000aa50: 20 3d 20 67 65 6e 65 72 61 74 6f 72 4f 70 74 69 = generatorOpti 0000aa60: 6f 6e 73 2c 5c 6e 20 20 20 20 20 20 5f 67 65 6e ons,\n _gen 0000aa70: 65 72 61 74 6f 72 4f 70 74 69 6f 6e 73 24 64 65 eratorOptions$de 0000aa80: 66 20 3d 20 5f 67 65 6e 65 72 61 74 6f 72 4f 70 f = _generatorOp 0000aa90: 74 69 6f 6e 73 2e 64 65 66 61 75 6c 74 4d 6f 64 tions.defaultMod 0000aaa0: 69 66 69 65 72 73 2c 5c 6e 20 20 20 20 20 20 64 ifiers,\n d 0000aab0: 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 73 20 efaultModifiers 0000aac0: 3d 20 5f 67 65 6e 65 72 61 74 6f 72 4f 70 74 69 = _generatorOpti 0000aad0: 6f 6e 73 24 64 65 66 20 3d 3d 3d 20 76 6f 69 64 ons$def === void 0000aae0: 20 30 20 3f 20 5b 5d 20 3a 20 5f 67 65 6e 65 72 0 ? [] : _gener 0000aaf0: 61 74 6f 72 4f 70 74 69 6f 6e 73 24 64 65 66 2c atorOptions$def, 0000ab00: 5c 6e 20 20 20 20 20 20 5f 67 65 6e 65 72 61 74 \n _generat 0000ab10: 6f 72 4f 70 74 69 6f 6e 73 24 64 65 66 32 20 3d orOptions$def2 = 0000ab20: 20 5f 67 65 6e 65 72 61 74 6f 72 4f 70 74 69 6f _generatorOptio 0000ab30: 6e 73 2e 64 65 66 61 75 6c 74 4f 70 74 69 6f 6e ns.defaultOption 0000ab40: 73 2c 5c 6e 20 20 20 20 20 20 64 65 66 61 75 6c s,\n defaul 0000ab50: 74 4f 70 74 69 6f 6e 73 20 3d 20 5f 67 65 6e 65 tOptions = _gene 0000ab60: 72 61 74 6f 72 4f 70 74 69 6f 6e 73 24 64 65 66 ratorOptions$def 0000ab70: 32 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 44 2 === void 0 ? D 0000ab80: 45 46 41 55 4c 54 5f 4f 50 54 49 4f 4e 53 20 3a EFAULT_OPTIONS : 0000ab90: 20 5f 67 65 6e 65 72 61 74 6f 72 4f 70 74 69 6f _generatorOptio 0000aba0: 6e 73 24 64 65 66 32 3b 5c 6e 20 20 72 65 74 75 ns$def2;\n retu 0000abb0: 72 6e 20 66 75 6e 63 74 69 6f 6e 20 63 72 65 61 rn function crea 0000abc0: 74 65 50 6f 70 70 65 72 28 72 65 66 65 72 65 6e tePopper(referen 0000abd0: 63 65 2c 20 70 6f 70 70 65 72 2c 20 6f 70 74 69 ce, popper, opti 0000abe0: 6f 6e 73 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 ons) {\n if ( 0000abf0: 6f 70 74 69 6f 6e 73 20 3d 3d 3d 20 76 6f 69 64 options === void 0000ac00: 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 6f 70 74 0) {\n opt 0000ac10: 69 6f 6e 73 20 3d 20 64 65 66 61 75 6c 74 4f 70 ions = defaultOp 0000ac20: 74 69 6f 6e 73 3b 5c 6e 20 20 20 20 7d 5c 6e 5c tions;\n }\n\ 0000ac30: 6e 20 20 20 20 76 61 72 20 73 74 61 74 65 20 3d n var state = 0000ac40: 20 7b 5c 6e 20 20 20 20 20 20 70 6c 61 63 65 6d {\n placem 0000ac50: 65 6e 74 3a 20 27 62 6f 74 74 6f 6d 27 2c 5c 6e ent: 'bottom',\n 0000ac60: 20 20 20 20 20 20 6f 72 64 65 72 65 64 4d 6f 64 orderedMod 0000ac70: 69 66 69 65 72 73 3a 20 5b 5d 2c 5c 6e 20 20 20 ifiers: [],\n 0000ac80: 20 20 20 6f 70 74 69 6f 6e 73 3a 20 4f 62 6a 65 options: Obje 0000ac90: 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c 20 44 45 ct.assign({}, DE 0000aca0: 46 41 55 4c 54 5f 4f 50 54 49 4f 4e 53 2c 20 64 FAULT_OPTIONS, d 0000acb0: 65 66 61 75 6c 74 4f 70 74 69 6f 6e 73 29 2c 5c efaultOptions),\ 0000acc0: 6e 20 20 20 20 20 20 6d 6f 64 69 66 69 65 72 73 n modifiers 0000acd0: 44 61 74 61 3a 20 7b 7d 2c 5c 6e 20 20 20 20 20 Data: {},\n 0000ace0: 20 65 6c 65 6d 65 6e 74 73 3a 20 7b 5c 6e 20 20 elements: {\n 0000acf0: 20 20 20 20 20 20 72 65 66 65 72 65 6e 63 65 3a reference: 0000ad00: 20 72 65 66 65 72 65 6e 63 65 2c 5c 6e 20 20 20 reference,\n 0000ad10: 20 20 20 20 20 70 6f 70 70 65 72 3a 20 70 6f 70 popper: pop 0000ad20: 70 65 72 5c 6e 20 20 20 20 20 20 7d 2c 5c 6e 20 per\n },\n 0000ad30: 20 20 20 20 20 61 74 74 72 69 62 75 74 65 73 3a attributes: 0000ad40: 20 7b 7d 2c 5c 6e 20 20 20 20 20 20 73 74 79 6c {},\n styl 0000ad50: 65 73 3a 20 7b 7d 5c 6e 20 20 20 20 7d 3b 5c 6e es: {}\n };\n 0000ad60: 20 20 20 20 76 61 72 20 65 66 66 65 63 74 43 6c var effectCl 0000ad70: 65 61 6e 75 70 46 6e 73 20 3d 20 5b 5d 3b 5c 6e eanupFns = [];\n 0000ad80: 20 20 20 20 76 61 72 20 69 73 44 65 73 74 72 6f var isDestro 0000ad90: 79 65 64 20 3d 20 66 61 6c 73 65 3b 5c 6e 20 20 yed = false;\n 0000ada0: 20 20 76 61 72 20 69 6e 73 74 61 6e 63 65 20 3d var instance = 0000adb0: 20 7b 5c 6e 20 20 20 20 20 20 73 74 61 74 65 3a {\n state: 0000adc0: 20 73 74 61 74 65 2c 5c 6e 20 20 20 20 20 20 73 state,\n s 0000add0: 65 74 4f 70 74 69 6f 6e 73 3a 20 66 75 6e 63 74 etOptions: funct 0000ade0: 69 6f 6e 20 73 65 74 4f 70 74 69 6f 6e 73 28 73 ion setOptions(s 0000adf0: 65 74 4f 70 74 69 6f 6e 73 41 63 74 69 6f 6e 29 etOptionsAction) 0000ae00: 20 7b 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 {\n var 0000ae10: 6f 70 74 69 6f 6e 73 20 3d 20 74 79 70 65 6f 66 options = typeof 0000ae20: 20 73 65 74 4f 70 74 69 6f 6e 73 41 63 74 69 6f setOptionsActio 0000ae30: 6e 20 3d 3d 3d 20 27 66 75 6e 63 74 69 6f 6e 27 n === 'function' 0000ae40: 20 3f 20 73 65 74 4f 70 74 69 6f 6e 73 41 63 74 ? setOptionsAct 0000ae50: 69 6f 6e 28 73 74 61 74 65 2e 6f 70 74 69 6f 6e ion(state.option 0000ae60: 73 29 20 3a 20 73 65 74 4f 70 74 69 6f 6e 73 41 s) : setOptionsA 0000ae70: 63 74 69 6f 6e 3b 5c 6e 20 20 20 20 20 20 20 20 ction;\n 0000ae80: 63 6c 65 61 6e 75 70 4d 6f 64 69 66 69 65 72 45 cleanupModifierE 0000ae90: 66 66 65 63 74 73 28 29 3b 5c 6e 20 20 20 20 20 ffects();\n 0000aea0: 20 20 20 73 74 61 74 65 2e 6f 70 74 69 6f 6e 73 state.options 0000aeb0: 20 3d 20 4f 62 6a 65 63 74 2e 61 73 73 69 67 6e = Object.assign 0000aec0: 28 7b 7d 2c 20 64 65 66 61 75 6c 74 4f 70 74 69 ({}, defaultOpti 0000aed0: 6f 6e 73 2c 20 73 74 61 74 65 2e 6f 70 74 69 6f ons, state.optio 0000aee0: 6e 73 2c 20 6f 70 74 69 6f 6e 73 29 3b 5c 6e 20 ns, options);\n 0000aef0: 20 20 20 20 20 20 20 73 74 61 74 65 2e 73 63 72 state.scr 0000af00: 6f 6c 6c 50 61 72 65 6e 74 73 20 3d 20 7b 5c 6e ollParents = {\n 0000af10: 20 20 20 20 20 20 20 20 20 20 72 65 66 65 72 65 refere 0000af20: 6e 63 65 3a 20 69 73 45 6c 65 6d 65 6e 74 28 72 nce: isElement(r 0000af30: 65 66 65 72 65 6e 63 65 29 20 3f 20 6c 69 73 74 eference) ? list 0000af40: 53 63 72 6f 6c 6c 50 61 72 65 6e 74 73 28 72 65 ScrollParents(re 0000af50: 66 65 72 65 6e 63 65 29 20 3a 20 72 65 66 65 72 ference) : refer 0000af60: 65 6e 63 65 2e 63 6f 6e 74 65 78 74 45 6c 65 6d ence.contextElem 0000af70: 65 6e 74 20 3f 20 6c 69 73 74 53 63 72 6f 6c 6c ent ? listScroll 0000af80: 50 61 72 65 6e 74 73 28 72 65 66 65 72 65 6e 63 Parents(referenc 0000af90: 65 2e 63 6f 6e 74 65 78 74 45 6c 65 6d 65 6e 74 e.contextElement 0000afa0: 29 20 3a 20 5b 5d 2c 5c 6e 20 20 20 20 20 20 20 ) : [],\n 0000afb0: 20 20 20 70 6f 70 70 65 72 3a 20 6c 69 73 74 53 popper: listS 0000afc0: 63 72 6f 6c 6c 50 61 72 65 6e 74 73 28 70 6f 70 crollParents(pop 0000afd0: 70 65 72 29 5c 6e 20 20 20 20 20 20 20 20 7d 3b per)\n }; 0000afe0: 20 2f 2f 20 4f 72 64 65 72 73 20 74 68 65 20 6d // Orders the m 0000aff0: 6f 64 69 66 69 65 72 73 20 62 61 73 65 64 20 6f odifiers based o 0000b000: 6e 20 74 68 65 69 72 20 64 65 70 65 6e 64 65 6e n their dependen 0000b010: 63 69 65 73 20 61 6e 64 20 60 70 68 61 73 65 60 cies and `phase` 0000b020: 5c 6e 20 20 20 20 20 20 20 20 2f 2f 20 70 72 6f \n // pro 0000b030: 70 65 72 74 69 65 73 5c 6e 5c 6e 20 20 20 20 20 perties\n\n 0000b040: 20 20 20 76 61 72 20 6f 72 64 65 72 65 64 4d 6f var orderedMo 0000b050: 64 69 66 69 65 72 73 20 3d 20 6f 72 64 65 72 4d difiers = orderM 0000b060: 6f 64 69 66 69 65 72 73 28 6d 65 72 67 65 42 79 odifiers(mergeBy 0000b070: 4e 61 6d 65 28 5b 5d 2e 63 6f 6e 63 61 74 28 64 Name([].concat(d 0000b080: 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 73 2c efaultModifiers, 0000b090: 20 73 74 61 74 65 2e 6f 70 74 69 6f 6e 73 2e 6d state.options.m 0000b0a0: 6f 64 69 66 69 65 72 73 29 29 29 3b 20 2f 2f 20 odifiers))); // 0000b0b0: 53 74 72 69 70 20 6f 75 74 20 64 69 73 61 62 6c Strip out disabl 0000b0c0: 65 64 20 6d 6f 64 69 66 69 65 72 73 5c 6e 5c 6e ed modifiers\n\n 0000b0d0: 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 6f 72 state.or 0000b0e0: 64 65 72 65 64 4d 6f 64 69 66 69 65 72 73 20 3d deredModifiers = 0000b0f0: 20 6f 72 64 65 72 65 64 4d 6f 64 69 66 69 65 72 orderedModifier 0000b100: 73 2e 66 69 6c 74 65 72 28 66 75 6e 63 74 69 6f s.filter(functio 0000b110: 6e 20 28 6d 29 20 7b 5c 6e 20 20 20 20 20 20 20 n (m) {\n 0000b120: 20 20 20 72 65 74 75 72 6e 20 6d 2e 65 6e 61 62 return m.enab 0000b130: 6c 65 64 3b 5c 6e 20 20 20 20 20 20 20 20 7d 29 led;\n }) 0000b140: 3b 5c 6e 20 20 20 20 20 20 20 20 72 75 6e 4d 6f ;\n runMo 0000b150: 64 69 66 69 65 72 45 66 66 65 63 74 73 28 29 3b difierEffects(); 0000b160: 5c 6e 20 20 20 20 20 20 20 20 72 65 74 75 72 6e \n return 0000b170: 20 69 6e 73 74 61 6e 63 65 2e 75 70 64 61 74 65 instance.update 0000b180: 28 29 3b 5c 6e 20 20 20 20 20 20 7d 2c 5c 6e 20 ();\n },\n 0000b190: 20 20 20 20 20 2f 2f 20 53 79 6e 63 20 75 70 64 // Sync upd 0000b1a0: 61 74 65 20 e2 80 93 20 69 74 20 77 69 6c 6c 20 ate ... it will 0000b1b0: 61 6c 77 61 79 73 20 62 65 20 65 78 65 63 75 74 always be execut 0000b1c0: 65 64 2c 20 65 76 65 6e 20 69 66 20 6e 6f 74 20 ed, even if not 0000b1d0: 6e 65 63 65 73 73 61 72 79 2e 20 54 68 69 73 5c necessary. This\ 0000b1e0: 6e 20 20 20 20 20 20 2f 2f 20 69 73 20 75 73 65 n // is use 0000b1f0: 66 75 6c 20 66 6f 72 20 6c 6f 77 20 66 72 65 71 ful for low freq 0000b200: 75 65 6e 63 79 20 75 70 64 61 74 65 73 20 77 68 uency updates wh 0000b210: 65 72 65 20 73 79 6e 63 20 62 65 68 61 76 69 6f ere sync behavio 0000b220: 72 20 73 69 6d 70 6c 69 66 69 65 73 20 74 68 65 r simplifies the 0000b230: 5c 6e 20 20 20 20 20 20 2f 2f 20 6c 6f 67 69 63 \n // logic 0000b240: 2e 5c 6e 20 20 20 20 20 20 2f 2f 20 46 6f 72 20 .\n // For 0000b250: 68 69 67 68 20 66 72 65 71 75 65 6e 63 79 20 75 high frequency u 0000b260: 70 64 61 74 65 73 20 28 65 2e 67 2e 20 60 72 65 pdates (e.g. `re 0000b270: 73 69 7a 65 60 20 61 6e 64 20 60 73 63 72 6f 6c size` and `scrol 0000b280: 6c 60 20 65 76 65 6e 74 73 29 2c 20 61 6c 77 61 l` events), alwa 0000b290: 79 73 5c 6e 20 20 20 20 20 20 2f 2f 20 70 72 65 ys\n // pre 0000b2a0: 66 65 72 20 74 68 65 20 61 73 79 6e 63 20 50 6f fer the async Po 0000b2b0: 70 70 65 72 23 75 70 64 61 74 65 20 6d 65 74 68 pper#update meth 0000b2c0: 6f 64 5c 6e 20 20 20 20 20 20 66 6f 72 63 65 55 od\n forceU 0000b2d0: 70 64 61 74 65 3a 20 66 75 6e 63 74 69 6f 6e 20 pdate: function 0000b2e0: 66 6f 72 63 65 55 70 64 61 74 65 28 29 20 7b 5c forceUpdate() {\ 0000b2f0: 6e 20 20 20 20 20 20 20 20 69 66 20 28 69 73 44 n if (isD 0000b300: 65 73 74 72 6f 79 65 64 29 20 7b 5c 6e 20 20 20 estroyed) {\n 0000b310: 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 5c 6e return;\n 0000b320: 20 20 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 }\n\n 0000b330: 20 20 20 20 20 76 61 72 20 5f 73 74 61 74 65 24 var _state$ 0000b340: 65 6c 65 6d 65 6e 74 73 20 3d 20 73 74 61 74 65 elements = state 0000b350: 2e 65 6c 65 6d 65 6e 74 73 2c 5c 6e 20 20 20 20 .elements,\n 0000b360: 20 20 20 20 20 20 20 20 72 65 66 65 72 65 6e 63 referenc 0000b370: 65 20 3d 20 5f 73 74 61 74 65 24 65 6c 65 6d 65 e = _state$eleme 0000b380: 6e 74 73 2e 72 65 66 65 72 65 6e 63 65 2c 5c 6e nts.reference,\n 0000b390: 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 70 70 popp 0000b3a0: 65 72 20 3d 20 5f 73 74 61 74 65 24 65 6c 65 6d er = _state$elem 0000b3b0: 65 6e 74 73 2e 70 6f 70 70 65 72 3b 20 2f 2f 20 ents.popper; // 0000b3c0: 44 6f 6e 27 74 20 70 72 6f 63 65 65 64 20 69 66 Don't proceed if 0000b3d0: 20 60 72 65 66 65 72 65 6e 63 65 60 20 6f 72 20 `reference` or 0000b3e0: 60 70 6f 70 70 65 72 60 20 61 72 65 20 6e 6f 74 `popper` are not 0000b3f0: 20 76 61 6c 69 64 20 65 6c 65 6d 65 6e 74 73 5c valid elements\ 0000b400: 6e 20 20 20 20 20 20 20 20 2f 2f 20 61 6e 79 6d n // anym 0000b410: 6f 72 65 5c 6e 5c 6e 20 20 20 20 20 20 20 20 69 ore\n\n i 0000b420: 66 20 28 21 61 72 65 56 61 6c 69 64 45 6c 65 6d f (!areValidElem 0000b430: 65 6e 74 73 28 72 65 66 65 72 65 6e 63 65 2c 20 ents(reference, 0000b440: 70 6f 70 70 65 72 29 29 20 7b 5c 6e 20 20 20 20 popper)) {\n 0000b450: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 5c 6e 20 return;\n 0000b460: 20 20 20 20 20 20 20 7d 20 2f 2f 20 53 74 6f 72 } // Stor 0000b470: 65 20 74 68 65 20 72 65 66 65 72 65 6e 63 65 20 e the reference 0000b480: 61 6e 64 20 70 6f 70 70 65 72 20 72 65 63 74 73 and popper rects 0000b490: 20 74 6f 20 62 65 20 72 65 61 64 20 62 79 20 6d to be read by m 0000b4a0: 6f 64 69 66 69 65 72 73 5c 6e 5c 6e 5c 6e 20 20 odifiers\n\n\n 0000b4b0: 20 20 20 20 20 20 73 74 61 74 65 2e 72 65 63 74 state.rect 0000b4c0: 73 20 3d 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 s = {\n 0000b4d0: 20 72 65 66 65 72 65 6e 63 65 3a 20 67 65 74 43 reference: getC 0000b4e0: 6f 6d 70 6f 73 69 74 65 52 65 63 74 28 72 65 66 ompositeRect(ref 0000b4f0: 65 72 65 6e 63 65 2c 20 67 65 74 4f 66 66 73 65 erence, getOffse 0000b500: 74 50 61 72 65 6e 74 28 70 6f 70 70 65 72 29 2c tParent(popper), 0000b510: 20 73 74 61 74 65 2e 6f 70 74 69 6f 6e 73 2e 73 state.options.s 0000b520: 74 72 61 74 65 67 79 20 3d 3d 3d 20 27 66 69 78 trategy === 'fix 0000b530: 65 64 27 29 2c 5c 6e 20 20 20 20 20 20 20 20 20 ed'),\n 0000b540: 20 70 6f 70 70 65 72 3a 20 67 65 74 4c 61 79 6f popper: getLayo 0000b550: 75 74 52 65 63 74 28 70 6f 70 70 65 72 29 5c 6e utRect(popper)\n 0000b560: 20 20 20 20 20 20 20 20 7d 3b 20 2f 2f 20 4d 6f }; // Mo 0000b570: 64 69 66 69 65 72 73 20 68 61 76 65 20 74 68 65 difiers have the 0000b580: 20 61 62 69 6c 69 74 79 20 74 6f 20 72 65 73 65 ability to rese 0000b590: 74 20 74 68 65 20 63 75 72 72 65 6e 74 20 75 70 t the current up 0000b5a0: 64 61 74 65 20 63 79 63 6c 65 2e 20 54 68 65 5c date cycle. The\ 0000b5b0: 6e 20 20 20 20 20 20 20 20 2f 2f 20 6d 6f 73 74 n // most 0000b5c0: 20 63 6f 6d 6d 6f 6e 20 75 73 65 20 63 61 73 65 common use case 0000b5d0: 20 66 6f 72 20 74 68 69 73 20 69 73 20 74 68 65 for this is the 0000b5e0: 20 60 66 6c 69 70 60 20 6d 6f 64 69 66 69 65 72 `flip` modifier 0000b5f0: 20 63 68 61 6e 67 69 6e 67 20 74 68 65 5c 6e 20 changing the\n 0000b600: 20 20 20 20 20 20 20 2f 2f 20 70 6c 61 63 65 6d // placem 0000b610: 65 6e 74 2c 20 77 68 69 63 68 20 74 68 65 6e 20 ent, which then 0000b620: 6e 65 65 64 73 20 74 6f 20 72 65 2d 72 75 6e 20 needs to re-run 0000b630: 61 6c 6c 20 74 68 65 20 6d 6f 64 69 66 69 65 72 all the modifier 0000b640: 73 2c 20 62 65 63 61 75 73 65 20 74 68 65 5c 6e s, because the\n 0000b650: 20 20 20 20 20 20 20 20 2f 2f 20 6c 6f 67 69 63 // logic 0000b660: 20 77 61 73 20 70 72 65 76 69 6f 75 73 6c 79 20 was previously 0000b670: 72 61 6e 20 66 6f 72 20 74 68 65 20 70 72 65 76 ran for the prev 0000b680: 69 6f 75 73 20 70 6c 61 63 65 6d 65 6e 74 20 61 ious placement a 0000b690: 6e 64 20 69 73 20 74 68 65 72 65 66 6f 72 65 5c nd is therefore\ 0000b6a0: 6e 20 20 20 20 20 20 20 20 2f 2f 20 73 74 61 6c n // stal 0000b6b0: 65 2f 69 6e 63 6f 72 72 65 63 74 5c 6e 5c 6e 20 e/incorrect\n\n 0000b6c0: 20 20 20 20 20 20 20 73 74 61 74 65 2e 72 65 73 state.res 0000b6d0: 65 74 20 3d 20 66 61 6c 73 65 3b 5c 6e 20 20 20 et = false;\n 0000b6e0: 20 20 20 20 20 73 74 61 74 65 2e 70 6c 61 63 65 state.place 0000b6f0: 6d 65 6e 74 20 3d 20 73 74 61 74 65 2e 6f 70 74 ment = state.opt 0000b700: 69 6f 6e 73 2e 70 6c 61 63 65 6d 65 6e 74 3b 20 ions.placement; 0000b710: 2f 2f 20 4f 6e 20 65 61 63 68 20 75 70 64 61 74 // On each updat 0000b720: 65 20 63 79 63 6c 65 2c 20 74 68 65 20 60 6d 6f e cycle, the `mo 0000b730: 64 69 66 69 65 72 73 44 61 74 61 60 20 70 72 6f difiersData` pro 0000b740: 70 65 72 74 79 20 66 6f 72 20 65 61 63 68 20 6d perty for each m 0000b750: 6f 64 69 66 69 65 72 5c 6e 20 20 20 20 20 20 20 odifier\n 0000b760: 20 2f 2f 20 69 73 20 66 69 6c 6c 65 64 20 77 69 // is filled wi 0000b770: 74 68 20 74 68 65 20 69 6e 69 74 69 61 6c 20 64 th the initial d 0000b780: 61 74 61 20 73 70 65 63 69 66 69 65 64 20 62 79 ata specified by 0000b790: 20 74 68 65 20 6d 6f 64 69 66 69 65 72 2e 20 54 the modifier. T 0000b7a0: 68 69 73 20 6d 65 61 6e 73 5c 6e 20 20 20 20 20 his means\n 0000b7b0: 20 20 20 2f 2f 20 69 74 20 64 6f 65 73 6e 27 74 // it doesn't 0000b7c0: 20 70 65 72 73 69 73 74 20 61 6e 64 20 69 73 20 persist and is 0000b7d0: 66 72 65 73 68 20 6f 6e 20 65 61 63 68 20 75 70 fresh on each up 0000b7e0: 64 61 74 65 2e 5c 6e 20 20 20 20 20 20 20 20 2f date.\n / 0000b7f0: 2f 20 54 6f 20 65 6e 73 75 72 65 20 70 65 72 73 / To ensure pers 0000b800: 69 73 74 65 6e 74 20 64 61 74 61 2c 20 75 73 65 istent data, use 0000b810: 20 60 24 7b 6e 61 6d 65 7d 23 70 65 72 73 69 73 `${name}#persis 0000b820: 74 65 6e 74 60 5c 6e 5c 6e 20 20 20 20 20 20 20 tent`\n\n 0000b830: 20 73 74 61 74 65 2e 6f 72 64 65 72 65 64 4d 6f state.orderedMo 0000b840: 64 69 66 69 65 72 73 2e 66 6f 72 45 61 63 68 28 difiers.forEach( 0000b850: 66 75 6e 63 74 69 6f 6e 20 28 6d 6f 64 69 66 69 function (modifi 0000b860: 65 72 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 er) {\n 0000b870: 20 72 65 74 75 72 6e 20 73 74 61 74 65 2e 6d 6f return state.mo 0000b880: 64 69 66 69 65 72 73 44 61 74 61 5b 6d 6f 64 69 difiersData[modi 0000b890: 66 69 65 72 2e 6e 61 6d 65 5d 20 3d 20 4f 62 6a fier.name] = Obj 0000b8a0: 65 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c 20 6d ect.assign({}, m 0000b8b0: 6f 64 69 66 69 65 72 2e 64 61 74 61 29 3b 5c 6e odifier.data);\n 0000b8c0: 20 20 20 20 20 20 20 20 7d 29 3b 5c 6e 5c 6e 20 });\n\n 0000b8d0: 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 for (var 0000b8e0: 69 6e 64 65 78 20 3d 20 30 3b 20 69 6e 64 65 78 index = 0; index 0000b8f0: 20 3c 20 73 74 61 74 65 2e 6f 72 64 65 72 65 64 < state.ordered 0000b900: 4d 6f 64 69 66 69 65 72 73 2e 6c 65 6e 67 74 68 Modifiers.length 0000b910: 3b 20 69 6e 64 65 78 2b 2b 29 20 7b 5c 6e 20 20 ; index++) {\n 0000b920: 20 20 20 20 20 20 20 20 69 66 20 28 73 74 61 74 if (stat 0000b930: 65 2e 72 65 73 65 74 20 3d 3d 3d 20 74 72 75 65 e.reset === true 0000b940: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 20 ) {\n 0000b950: 20 73 74 61 74 65 2e 72 65 73 65 74 20 3d 20 66 state.reset = f 0000b960: 61 6c 73 65 3b 5c 6e 20 20 20 20 20 20 20 20 20 alse;\n 0000b970: 20 20 20 69 6e 64 65 78 20 3d 20 2d 31 3b 5c 6e index = -1;\n 0000b980: 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 cont 0000b990: 69 6e 75 65 3b 5c 6e 20 20 20 20 20 20 20 20 20 inue;\n 0000b9a0: 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 20 20 20 20 }\n\n 0000b9b0: 76 61 72 20 5f 73 74 61 74 65 24 6f 72 64 65 72 var _state$order 0000b9c0: 65 64 4d 6f 64 69 66 69 65 20 3d 20 73 74 61 74 edModifie = stat 0000b9d0: 65 2e 6f 72 64 65 72 65 64 4d 6f 64 69 66 69 65 e.orderedModifie 0000b9e0: 72 73 5b 69 6e 64 65 78 5d 2c 5c 6e 20 20 20 20 rs[index],\n 0000b9f0: 20 20 20 20 20 20 20 20 20 20 66 6e 20 3d 20 5f fn = _ 0000ba00: 73 74 61 74 65 24 6f 72 64 65 72 65 64 4d 6f 64 state$orderedMod 0000ba10: 69 66 69 65 2e 66 6e 2c 5c 6e 20 20 20 20 20 20 ifie.fn,\n 0000ba20: 20 20 20 20 20 20 20 20 5f 73 74 61 74 65 24 6f _state$o 0000ba30: 72 64 65 72 65 64 4d 6f 64 69 66 69 65 32 20 3d rderedModifie2 = 0000ba40: 20 5f 73 74 61 74 65 24 6f 72 64 65 72 65 64 4d _state$orderedM 0000ba50: 6f 64 69 66 69 65 2e 6f 70 74 69 6f 6e 73 2c 5c odifie.options,\ 0000ba60: 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5f n _ 0000ba70: 6f 70 74 69 6f 6e 73 20 3d 20 5f 73 74 61 74 65 options = _state 0000ba80: 24 6f 72 64 65 72 65 64 4d 6f 64 69 66 69 65 32 $orderedModifie2 0000ba90: 20 3d 3d 3d 20 76 6f 69 64 20 30 20 3f 20 7b 7d === void 0 ? {} 0000baa0: 20 3a 20 5f 73 74 61 74 65 24 6f 72 64 65 72 65 : _state$ordere 0000bab0: 64 4d 6f 64 69 66 69 65 32 2c 5c 6e 20 20 20 20 dModifie2,\n 0000bac0: 20 20 20 20 20 20 20 20 20 20 6e 61 6d 65 20 3d name = 0000bad0: 20 5f 73 74 61 74 65 24 6f 72 64 65 72 65 64 4d _state$orderedM 0000bae0: 6f 64 69 66 69 65 2e 6e 61 6d 65 3b 5c 6e 5c 6e odifie.name;\n\n 0000baf0: 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74 79 if (ty 0000bb00: 70 65 6f 66 20 66 6e 20 3d 3d 3d 20 27 66 75 6e peof fn === 'fun 0000bb10: 63 74 69 6f 6e 27 29 20 7b 5c 6e 20 20 20 20 20 ction') {\n 0000bb20: 20 20 20 20 20 20 20 73 74 61 74 65 20 3d 20 66 state = f 0000bb30: 6e 28 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 20 n({\n 0000bb40: 20 20 20 73 74 61 74 65 3a 20 73 74 61 74 65 2c state: state, 0000bb50: 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 20 20 \n 0000bb60: 6f 70 74 69 6f 6e 73 3a 20 5f 6f 70 74 69 6f 6e options: _option 0000bb70: 73 2c 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 s,\n 0000bb80: 20 20 6e 61 6d 65 3a 20 6e 61 6d 65 2c 5c 6e 20 name: name,\n 0000bb90: 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 73 ins 0000bba0: 74 61 6e 63 65 3a 20 69 6e 73 74 61 6e 63 65 5c tance: instance\ 0000bbb0: 6e 20 20 20 20 20 20 20 20 20 20 20 20 7d 29 20 n }) 0000bbc0: 7c 7c 20 73 74 61 74 65 3b 5c 6e 20 20 20 20 20 || state;\n 0000bbd0: 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 20 20 }\n 0000bbe0: 7d 5c 6e 20 20 20 20 20 20 7d 2c 5c 6e 20 20 20 }\n },\n 0000bbf0: 20 20 20 2f 2f 20 41 73 79 6e 63 20 61 6e 64 20 // Async and 0000bc00: 6f 70 74 69 6d 69 73 74 69 63 61 6c 6c 79 20 6f optimistically o 0000bc10: 70 74 69 6d 69 7a 65 64 20 75 70 64 61 74 65 20 ptimized update 0000bc20: e2 80 93 20 69 74 20 77 69 6c 6c 20 6e 6f 74 20 ... it will not 0000bc30: 62 65 20 65 78 65 63 75 74 65 64 20 69 66 5c 6e be executed if\n 0000bc40: 20 20 20 20 20 20 2f 2f 20 6e 6f 74 20 6e 65 63 // not nec 0000bc50: 65 73 73 61 72 79 20 28 64 65 62 6f 75 6e 63 65 essary (debounce 0000bc60: 64 20 74 6f 20 72 75 6e 20 61 74 20 6d 6f 73 74 d to run at most 0000bc70: 20 6f 6e 63 65 2d 70 65 72 2d 74 69 63 6b 29 5c once-per-tick)\ 0000bc80: 6e 20 20 20 20 20 20 75 70 64 61 74 65 3a 20 64 n update: d 0000bc90: 65 62 6f 75 6e 63 65 28 66 75 6e 63 74 69 6f 6e ebounce(function 0000bca0: 20 28 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 () {\n r 0000bcb0: 65 74 75 72 6e 20 6e 65 77 20 50 72 6f 6d 69 73 eturn new Promis 0000bcc0: 65 28 66 75 6e 63 74 69 6f 6e 20 28 72 65 73 6f e(function (reso 0000bcd0: 6c 76 65 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 lve) {\n 0000bce0: 20 20 69 6e 73 74 61 6e 63 65 2e 66 6f 72 63 65 instance.force 0000bcf0: 55 70 64 61 74 65 28 29 3b 5c 6e 20 20 20 20 20 Update();\n 0000bd00: 20 20 20 20 20 72 65 73 6f 6c 76 65 28 73 74 61 resolve(sta 0000bd10: 74 65 29 3b 5c 6e 20 20 20 20 20 20 20 20 7d 29 te);\n }) 0000bd20: 3b 5c 6e 20 20 20 20 20 20 7d 29 2c 5c 6e 20 20 ;\n }),\n 0000bd30: 20 20 20 20 64 65 73 74 72 6f 79 3a 20 66 75 6e destroy: fun 0000bd40: 63 74 69 6f 6e 20 64 65 73 74 72 6f 79 28 29 20 ction destroy() 0000bd50: 7b 5c 6e 20 20 20 20 20 20 20 20 63 6c 65 61 6e {\n clean 0000bd60: 75 70 4d 6f 64 69 66 69 65 72 45 66 66 65 63 74 upModifierEffect 0000bd70: 73 28 29 3b 5c 6e 20 20 20 20 20 20 20 20 69 73 s();\n is 0000bd80: 44 65 73 74 72 6f 79 65 64 20 3d 20 74 72 75 65 Destroyed = true 0000bd90: 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 ;\n }\n 0000bda0: 7d 3b 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 61 };\n\n if (!a 0000bdb0: 72 65 56 61 6c 69 64 45 6c 65 6d 65 6e 74 73 28 reValidElements( 0000bdc0: 72 65 66 65 72 65 6e 63 65 2c 20 70 6f 70 70 65 reference, poppe 0000bdd0: 72 29 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 r)) {\n ret 0000bde0: 75 72 6e 20 69 6e 73 74 61 6e 63 65 3b 5c 6e 20 urn instance;\n 0000bdf0: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 69 6e 73 74 }\n\n inst 0000be00: 61 6e 63 65 2e 73 65 74 4f 70 74 69 6f 6e 73 28 ance.setOptions( 0000be10: 6f 70 74 69 6f 6e 73 29 2e 74 68 65 6e 28 66 75 options).then(fu 0000be20: 6e 63 74 69 6f 6e 20 28 73 74 61 74 65 29 20 7b nction (state) { 0000be30: 5c 6e 20 20 20 20 20 20 69 66 20 28 21 69 73 44 \n if (!isD 0000be40: 65 73 74 72 6f 79 65 64 20 26 26 20 6f 70 74 69 estroyed && opti 0000be50: 6f 6e 73 2e 6f 6e 46 69 72 73 74 55 70 64 61 74 ons.onFirstUpdat 0000be60: 65 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 6f 70 e) {\n op 0000be70: 74 69 6f 6e 73 2e 6f 6e 46 69 72 73 74 55 70 64 tions.onFirstUpd 0000be80: 61 74 65 28 73 74 61 74 65 29 3b 5c 6e 20 20 20 ate(state);\n 0000be90: 20 20 20 7d 5c 6e 20 20 20 20 7d 29 3b 20 2f 2f }\n }); // 0000bea0: 20 4d 6f 64 69 66 69 65 72 73 20 68 61 76 65 20 Modifiers have 0000beb0: 74 68 65 20 61 62 69 6c 69 74 79 20 74 6f 20 65 the ability to e 0000bec0: 78 65 63 75 74 65 20 61 72 62 69 74 72 61 72 79 xecute arbitrary 0000bed0: 20 63 6f 64 65 20 62 65 66 6f 72 65 20 74 68 65 code before the 0000bee0: 20 66 69 72 73 74 5c 6e 20 20 20 20 2f 2f 20 75 first\n // u 0000bef0: 70 64 61 74 65 20 63 79 63 6c 65 20 72 75 6e 73 pdate cycle runs 0000bf00: 2e 20 54 68 65 79 20 77 69 6c 6c 20 62 65 20 65 . They will be e 0000bf10: 78 65 63 75 74 65 64 20 69 6e 20 74 68 65 20 73 xecuted in the s 0000bf20: 61 6d 65 20 6f 72 64 65 72 20 61 73 20 74 68 65 ame order as the 0000bf30: 20 75 70 64 61 74 65 5c 6e 20 20 20 20 2f 2f 20 update\n // 0000bf40: 63 79 63 6c 65 2e 20 54 68 69 73 20 69 73 20 75 cycle. This is u 0000bf50: 73 65 66 75 6c 20 77 68 65 6e 20 61 20 6d 6f 64 seful when a mod 0000bf60: 69 66 69 65 72 20 61 64 64 73 20 73 6f 6d 65 20 ifier adds some 0000bf70: 70 65 72 73 69 73 74 65 6e 74 20 64 61 74 61 20 persistent data 0000bf80: 74 68 61 74 5c 6e 20 20 20 20 2f 2f 20 6f 74 68 that\n // oth 0000bf90: 65 72 20 6d 6f 64 69 66 69 65 72 73 20 6e 65 65 er modifiers nee 0000bfa0: 64 20 74 6f 20 75 73 65 2c 20 62 75 74 20 74 68 d to use, but th 0000bfb0: 65 20 6d 6f 64 69 66 69 65 72 20 69 73 20 72 75 e modifier is ru 0000bfc0: 6e 20 61 66 74 65 72 20 74 68 65 20 64 65 70 65 n after the depe 0000bfd0: 6e 64 65 6e 74 5c 6e 20 20 20 20 2f 2f 20 6f 6e ndent\n // on 0000bfe0: 65 2e 5c 6e 5c 6e 20 20 20 20 66 75 6e 63 74 69 e.\n\n functi 0000bff0: 6f 6e 20 72 75 6e 4d 6f 64 69 66 69 65 72 45 66 on runModifierEf 0000c000: 66 65 63 74 73 28 29 20 7b 5c 6e 20 20 20 20 20 fects() {\n 0000c010: 20 73 74 61 74 65 2e 6f 72 64 65 72 65 64 4d 6f state.orderedMo 0000c020: 64 69 66 69 65 72 73 2e 66 6f 72 45 61 63 68 28 difiers.forEach( 0000c030: 66 75 6e 63 74 69 6f 6e 20 28 5f 72 65 66 29 20 function (_ref) 0000c040: 7b 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 6e {\n var n 0000c050: 61 6d 65 20 3d 20 5f 72 65 66 2e 6e 61 6d 65 2c ame = _ref.name, 0000c060: 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 5f 72 \n _r 0000c070: 65 66 24 6f 70 74 69 6f 6e 73 20 3d 20 5f 72 65 ef$options = _re 0000c080: 66 2e 6f 70 74 69 6f 6e 73 2c 5c 6e 20 20 20 20 f.options,\n 0000c090: 20 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 20 options 0000c0a0: 3d 20 5f 72 65 66 24 6f 70 74 69 6f 6e 73 20 3d = _ref$options = 0000c0b0: 3d 3d 20 76 6f 69 64 20 30 20 3f 20 7b 7d 20 3a == void 0 ? {} : 0000c0c0: 20 5f 72 65 66 24 6f 70 74 69 6f 6e 73 2c 5c 6e _ref$options,\n 0000c0d0: 20 20 20 20 20 20 20 20 20 20 20 20 65 66 66 65 effe 0000c0e0: 63 74 20 3d 20 5f 72 65 66 2e 65 66 66 65 63 74 ct = _ref.effect 0000c0f0: 3b 5c 6e 5c 6e 20 20 20 20 20 20 20 20 69 66 20 ;\n\n if 0000c100: 28 74 79 70 65 6f 66 20 65 66 66 65 63 74 20 3d (typeof effect = 0000c110: 3d 3d 20 27 66 75 6e 63 74 69 6f 6e 27 29 20 7b == 'function') { 0000c120: 5c 6e 20 20 20 20 20 20 20 20 20 20 76 61 72 20 \n var 0000c130: 63 6c 65 61 6e 75 70 46 6e 20 3d 20 65 66 66 65 cleanupFn = effe 0000c140: 63 74 28 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 ct({\n 0000c150: 20 20 73 74 61 74 65 3a 20 73 74 61 74 65 2c 5c state: state,\ 0000c160: 6e 20 20 20 20 20 20 20 20 20 20 20 20 6e 61 6d n nam 0000c170: 65 3a 20 6e 61 6d 65 2c 5c 6e 20 20 20 20 20 20 e: name,\n 0000c180: 20 20 20 20 20 20 69 6e 73 74 61 6e 63 65 3a 20 instance: 0000c190: 69 6e 73 74 61 6e 63 65 2c 5c 6e 20 20 20 20 20 instance,\n 0000c1a0: 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 3a 20 options: 0000c1b0: 6f 70 74 69 6f 6e 73 5c 6e 20 20 20 20 20 20 20 options\n 0000c1c0: 20 20 20 7d 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 });\n\n 0000c1d0: 20 20 20 20 76 61 72 20 6e 6f 6f 70 46 6e 20 3d var noopFn = 0000c1e0: 20 66 75 6e 63 74 69 6f 6e 20 6e 6f 6f 70 46 6e function noopFn 0000c1f0: 28 29 20 7b 7d 3b 5c 6e 5c 6e 20 20 20 20 20 20 () {};\n\n 0000c200: 20 20 20 20 65 66 66 65 63 74 43 6c 65 61 6e 75 effectCleanu 0000c210: 70 46 6e 73 2e 70 75 73 68 28 63 6c 65 61 6e 75 pFns.push(cleanu 0000c220: 70 46 6e 20 7c 7c 20 6e 6f 6f 70 46 6e 29 3b 5c pFn || noopFn);\ 0000c230: 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 n }\n 0000c240: 20 20 7d 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e });\n }\n\n 0000c250: 20 20 20 20 66 75 6e 63 74 69 6f 6e 20 63 6c 65 function cle 0000c260: 61 6e 75 70 4d 6f 64 69 66 69 65 72 45 66 66 65 anupModifierEffe 0000c270: 63 74 73 28 29 20 7b 5c 6e 20 20 20 20 20 20 65 cts() {\n e 0000c280: 66 66 65 63 74 43 6c 65 61 6e 75 70 46 6e 73 2e ffectCleanupFns. 0000c290: 66 6f 72 45 61 63 68 28 66 75 6e 63 74 69 6f 6e forEach(function 0000c2a0: 20 28 66 6e 29 20 7b 5c 6e 20 20 20 20 20 20 20 (fn) {\n 0000c2b0: 20 72 65 74 75 72 6e 20 66 6e 28 29 3b 5c 6e 20 return fn();\n 0000c2c0: 20 20 20 20 20 7d 29 3b 5c 6e 20 20 20 20 20 20 });\n 0000c2d0: 65 66 66 65 63 74 43 6c 65 61 6e 75 70 46 6e 73 effectCleanupFns 0000c2e0: 20 3d 20 5b 5d 3b 5c 6e 20 20 20 20 7d 5c 6e 5c = [];\n }\n\ 0000c2f0: 6e 20 20 20 20 72 65 74 75 72 6e 20 69 6e 73 74 n return inst 0000c300: 61 6e 63 65 3b 5c 6e 20 20 7d 3b 5c 6e 7d 5c 6e ance;\n };\n}\n 0000c310: 65 78 70 6f 72 74 20 76 61 72 20 63 72 65 61 74 export var creat 0000c320: 65 50 6f 70 70 65 72 20 3d 20 2f 2a 23 5f 5f 50 ePopper = /*#__P 0000c330: 55 52 45 5f 5f 2a 2f 70 6f 70 70 65 72 47 65 6e URE__*/popperGen 0000c340: 65 72 61 74 6f 72 28 29 3b 20 2f 2f 20 65 73 6c erator(); // esl 0000c350: 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 78 74 int-disable-next 0000c360: 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f 2d -line import/no- 0000c370: 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 5c 6e unused-modules\n 0000c380: 5c 6e 65 78 70 6f 72 74 20 7b 20 64 65 74 65 63 \nexport { detec 0000c390: 74 4f 76 65 72 66 6c 6f 77 20 7d 3b 22 2c 22 65 tOverflow };","e 0000c3a0: 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 66 75 xport default fu 0000c3b0: 6e 63 74 69 6f 6e 20 6d 65 72 67 65 42 79 4e 61 nction mergeByNa 0000c3c0: 6d 65 28 6d 6f 64 69 66 69 65 72 73 29 20 7b 5c me(modifiers) {\ 0000c3d0: 6e 20 20 76 61 72 20 6d 65 72 67 65 64 20 3d 20 n var merged = 0000c3e0: 6d 6f 64 69 66 69 65 72 73 2e 72 65 64 75 63 65 modifiers.reduce 0000c3f0: 28 66 75 6e 63 74 69 6f 6e 20 28 6d 65 72 67 65 (function (merge 0000c400: 64 2c 20 63 75 72 72 65 6e 74 29 20 7b 5c 6e 20 d, current) {\n 0000c410: 20 20 20 76 61 72 20 65 78 69 73 74 69 6e 67 20 var existing 0000c420: 3d 20 6d 65 72 67 65 64 5b 63 75 72 72 65 6e 74 = merged[current 0000c430: 2e 6e 61 6d 65 5d 3b 5c 6e 20 20 20 20 6d 65 72 .name];\n mer 0000c440: 67 65 64 5b 63 75 72 72 65 6e 74 2e 6e 61 6d 65 ged[current.name 0000c450: 5d 20 3d 20 65 78 69 73 74 69 6e 67 20 3f 20 4f ] = existing ? O 0000c460: 62 6a 65 63 74 2e 61 73 73 69 67 6e 28 7b 7d 2c bject.assign({}, 0000c470: 20 65 78 69 73 74 69 6e 67 2c 20 63 75 72 72 65 existing, curre 0000c480: 6e 74 2c 20 7b 5c 6e 20 20 20 20 20 20 6f 70 74 nt, {\n opt 0000c490: 69 6f 6e 73 3a 20 4f 62 6a 65 63 74 2e 61 73 73 ions: Object.ass 0000c4a0: 69 67 6e 28 7b 7d 2c 20 65 78 69 73 74 69 6e 67 ign({}, existing 0000c4b0: 2e 6f 70 74 69 6f 6e 73 2c 20 63 75 72 72 65 6e .options, curren 0000c4c0: 74 2e 6f 70 74 69 6f 6e 73 29 2c 5c 6e 20 20 20 t.options),\n 0000c4d0: 20 20 20 64 61 74 61 3a 20 4f 62 6a 65 63 74 2e data: Object. 0000c4e0: 61 73 73 69 67 6e 28 7b 7d 2c 20 65 78 69 73 74 assign({}, exist 0000c4f0: 69 6e 67 2e 64 61 74 61 2c 20 63 75 72 72 65 6e ing.data, curren 0000c500: 74 2e 64 61 74 61 29 5c 6e 20 20 20 20 7d 29 20 t.data)\n }) 0000c510: 3a 20 63 75 72 72 65 6e 74 3b 5c 6e 20 20 20 20 : current;\n 0000c520: 72 65 74 75 72 6e 20 6d 65 72 67 65 64 3b 5c 6e return merged;\n 0000c530: 20 20 7d 2c 20 7b 7d 29 3b 20 2f 2f 20 49 45 31 }, {}); // IE1 0000c540: 31 20 64 6f 65 73 20 6e 6f 74 20 73 75 70 70 6f 1 does not suppo 0000c550: 72 74 20 4f 62 6a 65 63 74 2e 76 61 6c 75 65 73 rt Object.values 0000c560: 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 4f 62 6a \n\n return Obj 0000c570: 65 63 74 2e 6b 65 79 73 28 6d 65 72 67 65 64 29 ect.keys(merged) 0000c580: 2e 6d 61 70 28 66 75 6e 63 74 69 6f 6e 20 28 6b .map(function (k 0000c590: 65 79 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 ey) {\n retur 0000c5a0: 6e 20 6d 65 72 67 65 64 5b 6b 65 79 5d 3b 5c 6e n merged[key];\n 0000c5b0: 20 20 7d 29 3b 5c 6e 7d 22 2c 22 69 6d 70 6f 72 });\n}","impor 0000c5c0: 74 20 7b 20 70 6f 70 70 65 72 47 65 6e 65 72 61 t { popperGenera 0000c5d0: 74 6f 72 2c 20 64 65 74 65 63 74 4f 76 65 72 66 tor, detectOverf 0000c5e0: 6c 6f 77 20 7d 20 66 72 6f 6d 20 5c 22 2e 2f 63 low } from \"./c 0000c5f0: 72 65 61 74 65 50 6f 70 70 65 72 2e 6a 73 5c 22 reatePopper.js\" 0000c600: 3b 5c 6e 69 6d 70 6f 72 74 20 65 76 65 6e 74 4c ;\nimport eventL 0000c610: 69 73 74 65 6e 65 72 73 20 66 72 6f 6d 20 5c 22 isteners from \" 0000c620: 2e 2f 6d 6f 64 69 66 69 65 72 73 2f 65 76 65 6e ./modifiers/even 0000c630: 74 4c 69 73 74 65 6e 65 72 73 2e 6a 73 5c 22 3b tListeners.js\"; 0000c640: 5c 6e 69 6d 70 6f 72 74 20 70 6f 70 70 65 72 4f \nimport popperO 0000c650: 66 66 73 65 74 73 20 66 72 6f 6d 20 5c 22 2e 2f ffsets from \"./ 0000c660: 6d 6f 64 69 66 69 65 72 73 2f 70 6f 70 70 65 72 modifiers/popper 0000c670: 4f 66 66 73 65 74 73 2e 6a 73 5c 22 3b 5c 6e 69 Offsets.js\";\ni 0000c680: 6d 70 6f 72 74 20 63 6f 6d 70 75 74 65 53 74 79 mport computeSty 0000c690: 6c 65 73 20 66 72 6f 6d 20 5c 22 2e 2f 6d 6f 64 les from \"./mod 0000c6a0: 69 66 69 65 72 73 2f 63 6f 6d 70 75 74 65 53 74 ifiers/computeSt 0000c6b0: 79 6c 65 73 2e 6a 73 5c 22 3b 5c 6e 69 6d 70 6f yles.js\";\nimpo 0000c6c0: 72 74 20 61 70 70 6c 79 53 74 79 6c 65 73 20 66 rt applyStyles f 0000c6d0: 72 6f 6d 20 5c 22 2e 2f 6d 6f 64 69 66 69 65 72 rom \"./modifier 0000c6e0: 73 2f 61 70 70 6c 79 53 74 79 6c 65 73 2e 6a 73 s/applyStyles.js 0000c6f0: 5c 22 3b 5c 6e 76 61 72 20 64 65 66 61 75 6c 74 \";\nvar default 0000c700: 4d 6f 64 69 66 69 65 72 73 20 3d 20 5b 65 76 65 Modifiers = [eve 0000c710: 6e 74 4c 69 73 74 65 6e 65 72 73 2c 20 70 6f 70 ntListeners, pop 0000c720: 70 65 72 4f 66 66 73 65 74 73 2c 20 63 6f 6d 70 perOffsets, comp 0000c730: 75 74 65 53 74 79 6c 65 73 2c 20 61 70 70 6c 79 uteStyles, apply 0000c740: 53 74 79 6c 65 73 5d 3b 5c 6e 76 61 72 20 63 72 Styles];\nvar cr 0000c750: 65 61 74 65 50 6f 70 70 65 72 20 3d 20 2f 2a 23 eatePopper = /*# 0000c760: 5f 5f 50 55 52 45 5f 5f 2a 2f 70 6f 70 70 65 72 __PURE__*/popper 0000c770: 47 65 6e 65 72 61 74 6f 72 28 7b 5c 6e 20 20 64 Generator({\n d 0000c780: 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 73 3a efaultModifiers: 0000c790: 20 64 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 defaultModifier 0000c7a0: 73 5c 6e 7d 29 3b 20 2f 2f 20 65 73 6c 69 6e 74 s\n}); // eslint 0000c7b0: 2d 64 69 73 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 -disable-next-li 0000c7c0: 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f 2d 75 6e 75 ne import/no-unu 0000c7d0: 73 65 64 2d 6d 6f 64 75 6c 65 73 5c 6e 5c 6e 65 sed-modules\n\ne 0000c7e0: 78 70 6f 72 74 20 7b 20 63 72 65 61 74 65 50 6f xport { createPo 0000c7f0: 70 70 65 72 2c 20 70 6f 70 70 65 72 47 65 6e 65 pper, popperGene 0000c800: 72 61 74 6f 72 2c 20 64 65 66 61 75 6c 74 4d 6f rator, defaultMo 0000c810: 64 69 66 69 65 72 73 2c 20 64 65 74 65 63 74 4f difiers, detectO 0000c820: 76 65 72 66 6c 6f 77 20 7d 3b 22 2c 22 69 6d 70 verflow };","imp 0000c830: 6f 72 74 20 7b 20 70 6f 70 70 65 72 47 65 6e 65 ort { popperGene 0000c840: 72 61 74 6f 72 2c 20 64 65 74 65 63 74 4f 76 65 rator, detectOve 0000c850: 72 66 6c 6f 77 20 7d 20 66 72 6f 6d 20 5c 22 2e rflow } from \". 0000c860: 2f 63 72 65 61 74 65 50 6f 70 70 65 72 2e 6a 73 /createPopper.js 0000c870: 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 65 76 65 6e \";\nimport even 0000c880: 74 4c 69 73 74 65 6e 65 72 73 20 66 72 6f 6d 20 tListeners from 0000c890: 5c 22 2e 2f 6d 6f 64 69 66 69 65 72 73 2f 65 76 \"./modifiers/ev 0000c8a0: 65 6e 74 4c 69 73 74 65 6e 65 72 73 2e 6a 73 5c entListeners.js\ 0000c8b0: 22 3b 5c 6e 69 6d 70 6f 72 74 20 70 6f 70 70 65 ";\nimport poppe 0000c8c0: 72 4f 66 66 73 65 74 73 20 66 72 6f 6d 20 5c 22 rOffsets from \" 0000c8d0: 2e 2f 6d 6f 64 69 66 69 65 72 73 2f 70 6f 70 70 ./modifiers/popp 0000c8e0: 65 72 4f 66 66 73 65 74 73 2e 6a 73 5c 22 3b 5c erOffsets.js\";\ 0000c8f0: 6e 69 6d 70 6f 72 74 20 63 6f 6d 70 75 74 65 53 nimport computeS 0000c900: 74 79 6c 65 73 20 66 72 6f 6d 20 5c 22 2e 2f 6d tyles from \"./m 0000c910: 6f 64 69 66 69 65 72 73 2f 63 6f 6d 70 75 74 65 odifiers/compute 0000c920: 53 74 79 6c 65 73 2e 6a 73 5c 22 3b 5c 6e 69 6d Styles.js\";\nim 0000c930: 70 6f 72 74 20 61 70 70 6c 79 53 74 79 6c 65 73 port applyStyles 0000c940: 20 66 72 6f 6d 20 5c 22 2e 2f 6d 6f 64 69 66 69 from \"./modifi 0000c950: 65 72 73 2f 61 70 70 6c 79 53 74 79 6c 65 73 2e ers/applyStyles. 0000c960: 6a 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 6f 66 js\";\nimport of 0000c970: 66 73 65 74 20 66 72 6f 6d 20 5c 22 2e 2f 6d 6f fset from \"./mo 0000c980: 64 69 66 69 65 72 73 2f 6f 66 66 73 65 74 2e 6a difiers/offset.j 0000c990: 73 5c 22 3b 5c 6e 69 6d 70 6f 72 74 20 66 6c 69 s\";\nimport fli 0000c9a0: 70 20 66 72 6f 6d 20 5c 22 2e 2f 6d 6f 64 69 66 p from \"./modif 0000c9b0: 69 65 72 73 2f 66 6c 69 70 2e 6a 73 5c 22 3b 5c iers/flip.js\";\ 0000c9c0: 6e 69 6d 70 6f 72 74 20 70 72 65 76 65 6e 74 4f nimport preventO 0000c9d0: 76 65 72 66 6c 6f 77 20 66 72 6f 6d 20 5c 22 2e verflow from \". 0000c9e0: 2f 6d 6f 64 69 66 69 65 72 73 2f 70 72 65 76 65 /modifiers/preve 0000c9f0: 6e 74 4f 76 65 72 66 6c 6f 77 2e 6a 73 5c 22 3b ntOverflow.js\"; 0000ca00: 5c 6e 69 6d 70 6f 72 74 20 61 72 72 6f 77 20 66 \nimport arrow f 0000ca10: 72 6f 6d 20 5c 22 2e 2f 6d 6f 64 69 66 69 65 72 rom \"./modifier 0000ca20: 73 2f 61 72 72 6f 77 2e 6a 73 5c 22 3b 5c 6e 69 s/arrow.js\";\ni 0000ca30: 6d 70 6f 72 74 20 68 69 64 65 20 66 72 6f 6d 20 mport hide from 0000ca40: 5c 22 2e 2f 6d 6f 64 69 66 69 65 72 73 2f 68 69 \"./modifiers/hi 0000ca50: 64 65 2e 6a 73 5c 22 3b 5c 6e 76 61 72 20 64 65 de.js\";\nvar de 0000ca60: 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 73 20 3d faultModifiers = 0000ca70: 20 5b 65 76 65 6e 74 4c 69 73 74 65 6e 65 72 73 [eventListeners 0000ca80: 2c 20 70 6f 70 70 65 72 4f 66 66 73 65 74 73 2c , popperOffsets, 0000ca90: 20 63 6f 6d 70 75 74 65 53 74 79 6c 65 73 2c 20 computeStyles, 0000caa0: 61 70 70 6c 79 53 74 79 6c 65 73 2c 20 6f 66 66 applyStyles, off 0000cab0: 73 65 74 2c 20 66 6c 69 70 2c 20 70 72 65 76 65 set, flip, preve 0000cac0: 6e 74 4f 76 65 72 66 6c 6f 77 2c 20 61 72 72 6f ntOverflow, arro 0000cad0: 77 2c 20 68 69 64 65 5d 3b 5c 6e 76 61 72 20 63 w, hide];\nvar c 0000cae0: 72 65 61 74 65 50 6f 70 70 65 72 20 3d 20 2f 2a reatePopper = /* 0000caf0: 23 5f 5f 50 55 52 45 5f 5f 2a 2f 70 6f 70 70 65 #__PURE__*/poppe 0000cb00: 72 47 65 6e 65 72 61 74 6f 72 28 7b 5c 6e 20 20 rGenerator({\n 0000cb10: 64 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 72 73 defaultModifiers 0000cb20: 3a 20 64 65 66 61 75 6c 74 4d 6f 64 69 66 69 65 : defaultModifie 0000cb30: 72 73 5c 6e 7d 29 3b 20 2f 2f 20 65 73 6c 69 6e rs\n}); // eslin 0000cb40: 74 2d 64 69 73 61 62 6c 65 2d 6e 65 78 74 2d 6c t-disable-next-l 0000cb50: 69 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f 2d 75 6e ine import/no-un 0000cb60: 75 73 65 64 2d 6d 6f 64 75 6c 65 73 5c 6e 5c 6e used-modules\n\n 0000cb70: 65 78 70 6f 72 74 20 7b 20 63 72 65 61 74 65 50 export { createP 0000cb80: 6f 70 70 65 72 2c 20 70 6f 70 70 65 72 47 65 6e opper, popperGen 0000cb90: 65 72 61 74 6f 72 2c 20 64 65 66 61 75 6c 74 4d erator, defaultM 0000cba0: 6f 64 69 66 69 65 72 73 2c 20 64 65 74 65 63 74 odifiers, detect 0000cbb0: 4f 76 65 72 66 6c 6f 77 20 7d 3b 20 2f 2f 20 65 Overflow }; // e 0000cbc0: 73 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 slint-disable-ne 0000cbd0: 78 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e xt-line import/n 0000cbe0: 6f 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 o-unused-modules 0000cbf0: 5c 6e 5c 6e 65 78 70 6f 72 74 20 7b 20 63 72 65 \n\nexport { cre 0000cc00: 61 74 65 50 6f 70 70 65 72 20 61 73 20 63 72 65 atePopper as cre 0000cc10: 61 74 65 50 6f 70 70 65 72 4c 69 74 65 20 7d 20 atePopperLite } 0000cc20: 66 72 6f 6d 20 5c 22 2e 2f 70 6f 70 70 65 72 2d from \"./popper- 0000cc30: 6c 69 74 65 2e 6a 73 5c 22 3b 20 2f 2f 20 65 73 lite.js\"; // es 0000cc40: 6c 69 6e 74 2d 64 69 73 61 62 6c 65 2d 6e 65 78 lint-disable-nex 0000cc50: 74 2d 6c 69 6e 65 20 69 6d 70 6f 72 74 2f 6e 6f t-line import/no 0000cc60: 2d 75 6e 75 73 65 64 2d 6d 6f 64 75 6c 65 73 5c -unused-modules\ 0000cc70: 6e 5c 6e 65 78 70 6f 72 74 20 2a 20 66 72 6f 6d n\nexport * from 0000cc80: 20 5c 22 2e 2f 6d 6f 64 69 66 69 65 72 73 2f 69 \"./modifiers/i 0000cc90: 6e 64 65 78 2e 6a 73 5c 22 3b 22 2c 22 2f 2a 2a ndex.js\";","/** 0000cca0: 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d \n * ----------- 0000ccb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000ccc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000ccd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000cce0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c ---------------\ 0000ccf0: 6e 20 2a 20 42 6f 6f 74 73 74 72 61 70 20 64 72 n * Bootstrap dr 0000cd00: 6f 70 64 6f 77 6e 2e 6a 73 5c 6e 20 2a 20 4c 69 opdown.js\n * Li 0000cd10: 63 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 censed under MIT 0000cd20: 20 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 (https://github 0000cd30: 2e 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 .com/twbs/bootst 0000cd40: 72 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 rap/blob/main/LI 0000cd50: 43 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d CENSE)\n * ----- 0000cd60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000cd70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000cd80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000cd90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0000cda0: 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d -----\n */\n\nim 0000cdb0: 70 6f 72 74 20 2a 20 61 73 20 50 6f 70 70 65 72 port * as Popper 0000cdc0: 20 66 72 6f 6d 20 27 40 70 6f 70 70 65 72 6a 73 from '@popperjs 0000cdd0: 2f 63 6f 72 65 27 5c 6e 69 6d 70 6f 72 74 20 42 /core'\nimport B 0000cde0: 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 20 66 72 6f aseComponent fro 0000cdf0: 6d 20 27 2e 2f 62 61 73 65 2d 63 6f 6d 70 6f 6e m './base-compon 0000ce00: 65 6e 74 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 ent.js'\nimport 0000ce10: 45 76 65 6e 74 48 61 6e 64 6c 65 72 20 66 72 6f EventHandler fro 0000ce20: 6d 20 27 2e 2f 64 6f 6d 2f 65 76 65 6e 74 2d 68 m './dom/event-h 0000ce30: 61 6e 64 6c 65 72 2e 6a 73 27 5c 6e 69 6d 70 6f andler.js'\nimpo 0000ce40: 72 74 20 4d 61 6e 69 70 75 6c 61 74 6f 72 20 66 rt Manipulator f 0000ce50: 72 6f 6d 20 27 2e 2f 64 6f 6d 2f 6d 61 6e 69 70 rom './dom/manip 0000ce60: 75 6c 61 74 6f 72 2e 6a 73 27 5c 6e 69 6d 70 6f ulator.js'\nimpo 0000ce70: 72 74 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e rt SelectorEngin 0000ce80: 65 20 66 72 6f 6d 20 27 2e 2f 64 6f 6d 2f 73 65 e from './dom/se 0000ce90: 6c 65 63 74 6f 72 2d 65 6e 67 69 6e 65 2e 6a 73 lector-engine.js 0000cea0: 27 5c 6e 69 6d 70 6f 72 74 20 7b 5c 6e 20 20 64 '\nimport {\n d 0000ceb0: 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 efineJQueryPlugi 0000cec0: 6e 2c 5c 6e 20 20 65 78 65 63 75 74 65 2c 5c 6e n,\n execute,\n 0000ced0: 20 20 67 65 74 45 6c 65 6d 65 6e 74 2c 5c 6e 20 getElement,\n 0000cee0: 20 67 65 74 4e 65 78 74 41 63 74 69 76 65 45 6c getNextActiveEl 0000cef0: 65 6d 65 6e 74 2c 5c 6e 20 20 69 73 44 69 73 61 ement,\n isDisa 0000cf00: 62 6c 65 64 2c 5c 6e 20 20 69 73 45 6c 65 6d 65 bled,\n isEleme 0000cf10: 6e 74 2c 5c 6e 20 20 69 73 52 54 4c 2c 5c 6e 20 nt,\n isRTL,\n 0000cf20: 20 69 73 56 69 73 69 62 6c 65 2c 5c 6e 20 20 6e isVisible,\n n 0000cf30: 6f 6f 70 5c 6e 7d 20 66 72 6f 6d 20 27 2e 2f 75 oop\n} from './u 0000cf40: 74 69 6c 2f 69 6e 64 65 78 2e 6a 73 27 5c 6e 5c til/index.js'\n\ 0000cf50: 6e 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e 73 74 61 6e n/**\n * Constan 0000cf60: 74 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 ts\n */\n\nconst 0000cf70: 20 4e 41 4d 45 20 3d 20 27 64 72 6f 70 64 6f 77 NAME = 'dropdow 0000cf80: 6e 27 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f 4b n'\nconst DATA_K 0000cf90: 45 59 20 3d 20 27 62 73 2e 64 72 6f 70 64 6f 77 EY = 'bs.dropdow 0000cfa0: 6e 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f n'\nconst EVENT_ 0000cfb0: 4b 45 59 20 3d 20 60 2e 24 7b 44 41 54 41 5f 4b KEY = `.${DATA_K 0000cfc0: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 44 41 54 41 EY}`\nconst DATA 0000cfd0: 5f 41 50 49 5f 4b 45 59 20 3d 20 27 2e 64 61 74 _API_KEY = '.dat 0000cfe0: 61 2d 61 70 69 27 5c 6e 5c 6e 63 6f 6e 73 74 20 a-api'\n\nconst 0000cff0: 45 53 43 41 50 45 5f 4b 45 59 20 3d 20 27 45 73 ESCAPE_KEY = 'Es 0000d000: 63 61 70 65 27 5c 6e 63 6f 6e 73 74 20 54 41 42 cape'\nconst TAB 0000d010: 5f 4b 45 59 20 3d 20 27 54 61 62 27 5c 6e 63 6f _KEY = 'Tab'\nco 0000d020: 6e 73 74 20 41 52 52 4f 57 5f 55 50 5f 4b 45 59 nst ARROW_UP_KEY 0000d030: 20 3d 20 27 41 72 72 6f 77 55 70 27 5c 6e 63 6f = 'ArrowUp'\nco 0000d040: 6e 73 74 20 41 52 52 4f 57 5f 44 4f 57 4e 5f 4b nst ARROW_DOWN_K 0000d050: 45 59 20 3d 20 27 41 72 72 6f 77 44 6f 77 6e 27 EY = 'ArrowDown' 0000d060: 5c 6e 63 6f 6e 73 74 20 52 49 47 48 54 5f 4d 4f \nconst RIGHT_MO 0000d070: 55 53 45 5f 42 55 54 54 4f 4e 20 3d 20 32 20 2f USE_BUTTON = 2 / 0000d080: 2f 20 4d 6f 75 73 65 45 76 65 6e 74 2e 62 75 74 / MouseEvent.but 0000d090: 74 6f 6e 20 76 61 6c 75 65 20 66 6f 72 20 74 68 ton value for th 0000d0a0: 65 20 73 65 63 6f 6e 64 61 72 79 20 62 75 74 74 e secondary butt 0000d0b0: 6f 6e 2c 20 75 73 75 61 6c 6c 79 20 74 68 65 20 on, usually the 0000d0c0: 72 69 67 68 74 20 62 75 74 74 6f 6e 5c 6e 5c 6e right button\n\n 0000d0d0: 63 6f 6e 73 74 20 45 56 45 4e 54 5f 48 49 44 45 const EVENT_HIDE 0000d0e0: 20 3d 20 60 68 69 64 65 24 7b 45 56 45 4e 54 5f = `hide${EVENT_ 0000d0f0: 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 KEY}`\nconst EVE 0000d100: 4e 54 5f 48 49 44 44 45 4e 20 3d 20 60 68 69 64 NT_HIDDEN = `hid 0000d110: 64 65 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 den${EVENT_KEY}` 0000d120: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 53 48 \nconst EVENT_SH 0000d130: 4f 57 20 3d 20 60 73 68 6f 77 24 7b 45 56 45 4e OW = `show${EVEN 0000d140: 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 T_KEY}`\nconst E 0000d150: 56 45 4e 54 5f 53 48 4f 57 4e 20 3d 20 60 73 68 VENT_SHOWN = `sh 0000d160: 6f 77 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 own${EVENT_KEY}` 0000d170: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 43 4c \nconst EVENT_CL 0000d180: 49 43 4b 5f 44 41 54 41 5f 41 50 49 20 3d 20 60 ICK_DATA_API = ` 0000d190: 63 6c 69 63 6b 24 7b 45 56 45 4e 54 5f 4b 45 59 click${EVENT_KEY 0000d1a0: 7d 24 7b 44 41 54 41 5f 41 50 49 5f 4b 45 59 7d }${DATA_API_KEY} 0000d1b0: 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4b `\nconst EVENT_K 0000d1c0: 45 59 44 4f 57 4e 5f 44 41 54 41 5f 41 50 49 20 EYDOWN_DATA_API 0000d1d0: 3d 20 60 6b 65 79 64 6f 77 6e 24 7b 45 56 45 4e = `keydown${EVEN 0000d1e0: 54 5f 4b 45 59 7d 24 7b 44 41 54 41 5f 41 50 49 T_KEY}${DATA_API 0000d1f0: 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 _KEY}`\nconst EV 0000d200: 45 4e 54 5f 4b 45 59 55 50 5f 44 41 54 41 5f 41 ENT_KEYUP_DATA_A 0000d210: 50 49 20 3d 20 60 6b 65 79 75 70 24 7b 45 56 45 PI = `keyup${EVE 0000d220: 4e 54 5f 4b 45 59 7d 24 7b 44 41 54 41 5f 41 50 NT_KEY}${DATA_AP 0000d230: 49 5f 4b 45 59 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 I_KEY}`\n\nconst 0000d240: 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 CLASS_NAME_SHOW 0000d250: 20 3d 20 27 73 68 6f 77 27 5c 6e 63 6f 6e 73 74 = 'show'\nconst 0000d260: 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 44 52 4f 50 CLASS_NAME_DROP 0000d270: 55 50 20 3d 20 27 64 72 6f 70 75 70 27 5c 6e 63 UP = 'dropup'\nc 0000d280: 6f 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f onst CLASS_NAME_ 0000d290: 44 52 4f 50 45 4e 44 20 3d 20 27 64 72 6f 70 65 DROPEND = 'drope 0000d2a0: 6e 64 27 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 nd'\nconst CLASS 0000d2b0: 5f 4e 41 4d 45 5f 44 52 4f 50 53 54 41 52 54 20 _NAME_DROPSTART 0000d2c0: 3d 20 27 64 72 6f 70 73 74 61 72 74 27 5c 6e 63 = 'dropstart'\nc 0000d2d0: 6f 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f onst CLASS_NAME_ 0000d2e0: 44 52 4f 50 55 50 5f 43 45 4e 54 45 52 20 3d 20 DROPUP_CENTER = 0000d2f0: 27 64 72 6f 70 75 70 2d 63 65 6e 74 65 72 27 5c 'dropup-center'\ 0000d300: 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d nconst CLASS_NAM 0000d310: 45 5f 44 52 4f 50 44 4f 57 4e 5f 43 45 4e 54 45 E_DROPDOWN_CENTE 0000d320: 52 20 3d 20 27 64 72 6f 70 64 6f 77 6e 2d 63 65 R = 'dropdown-ce 0000d330: 6e 74 65 72 27 5c 6e 5c 6e 63 6f 6e 73 74 20 53 nter'\n\nconst S 0000d340: 45 4c 45 43 54 4f 52 5f 44 41 54 41 5f 54 4f 47 ELECTOR_DATA_TOG 0000d350: 47 4c 45 20 3d 20 27 5b 64 61 74 61 2d 62 73 2d GLE = '[data-bs- 0000d360: 74 6f 67 67 6c 65 3d 5c 22 64 72 6f 70 64 6f 77 toggle=\"dropdow 0000d370: 6e 5c 22 5d 3a 6e 6f 74 28 2e 64 69 73 61 62 6c n\"]:not(.disabl 0000d380: 65 64 29 3a 6e 6f 74 28 3a 64 69 73 61 62 6c 65 ed):not(:disable 0000d390: 64 29 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 d)'\nconst SELEC 0000d3a0: 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 5f TOR_DATA_TOGGLE_ 0000d3b0: 53 48 4f 57 4e 20 3d 20 60 24 7b 53 45 4c 45 43 SHOWN = `${SELEC 0000d3c0: 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 7d TOR_DATA_TOGGLE} 0000d3d0: 2e 24 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 .${CLASS_NAME_SH 0000d3e0: 4f 57 7d 60 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 OW}`\nconst SELE 0000d3f0: 43 54 4f 52 5f 4d 45 4e 55 20 3d 20 27 2e 64 72 CTOR_MENU = '.dr 0000d400: 6f 70 64 6f 77 6e 2d 6d 65 6e 75 27 5c 6e 63 6f opdown-menu'\nco 0000d410: 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 4e 41 56 nst SELECTOR_NAV 0000d420: 42 41 52 20 3d 20 27 2e 6e 61 76 62 61 72 27 5c BAR = '.navbar'\ 0000d430: 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f nconst SELECTOR_ 0000d440: 4e 41 56 42 41 52 5f 4e 41 56 20 3d 20 27 2e 6e NAVBAR_NAV = '.n 0000d450: 61 76 62 61 72 2d 6e 61 76 27 5c 6e 63 6f 6e 73 avbar-nav'\ncons 0000d460: 74 20 53 45 4c 45 43 54 4f 52 5f 56 49 53 49 42 t SELECTOR_VISIB 0000d470: 4c 45 5f 49 54 45 4d 53 20 3d 20 27 2e 64 72 6f LE_ITEMS = '.dro 0000d480: 70 64 6f 77 6e 2d 6d 65 6e 75 20 2e 64 72 6f 70 pdown-menu .drop 0000d490: 64 6f 77 6e 2d 69 74 65 6d 3a 6e 6f 74 28 2e 64 down-item:not(.d 0000d4a0: 69 73 61 62 6c 65 64 29 3a 6e 6f 74 28 3a 64 69 isabled):not(:di 0000d4b0: 73 61 62 6c 65 64 29 27 5c 6e 5c 6e 63 6f 6e 73 sabled)'\n\ncons 0000d4c0: 74 20 50 4c 41 43 45 4d 45 4e 54 5f 54 4f 50 20 t PLACEMENT_TOP 0000d4d0: 3d 20 69 73 52 54 4c 28 29 20 3f 20 27 74 6f 70 = isRTL() ? 'top 0000d4e0: 2d 65 6e 64 27 20 3a 20 27 74 6f 70 2d 73 74 61 -end' : 'top-sta 0000d4f0: 72 74 27 5c 6e 63 6f 6e 73 74 20 50 4c 41 43 45 rt'\nconst PLACE 0000d500: 4d 45 4e 54 5f 54 4f 50 45 4e 44 20 3d 20 69 73 MENT_TOPEND = is 0000d510: 52 54 4c 28 29 20 3f 20 27 74 6f 70 2d 73 74 61 RTL() ? 'top-sta 0000d520: 72 74 27 20 3a 20 27 74 6f 70 2d 65 6e 64 27 5c rt' : 'top-end'\ 0000d530: 6e 63 6f 6e 73 74 20 50 4c 41 43 45 4d 45 4e 54 nconst PLACEMENT 0000d540: 5f 42 4f 54 54 4f 4d 20 3d 20 69 73 52 54 4c 28 _BOTTOM = isRTL( 0000d550: 29 20 3f 20 27 62 6f 74 74 6f 6d 2d 65 6e 64 27 ) ? 'bottom-end' 0000d560: 20 3a 20 27 62 6f 74 74 6f 6d 2d 73 74 61 72 74 : 'bottom-start 0000d570: 27 5c 6e 63 6f 6e 73 74 20 50 4c 41 43 45 4d 45 '\nconst PLACEME 0000d580: 4e 54 5f 42 4f 54 54 4f 4d 45 4e 44 20 3d 20 69 NT_BOTTOMEND = i 0000d590: 73 52 54 4c 28 29 20 3f 20 27 62 6f 74 74 6f 6d sRTL() ? 'bottom 0000d5a0: 2d 73 74 61 72 74 27 20 3a 20 27 62 6f 74 74 6f -start' : 'botto 0000d5b0: 6d 2d 65 6e 64 27 5c 6e 63 6f 6e 73 74 20 50 4c m-end'\nconst PL 0000d5c0: 41 43 45 4d 45 4e 54 5f 52 49 47 48 54 20 3d 20 ACEMENT_RIGHT = 0000d5d0: 69 73 52 54 4c 28 29 20 3f 20 27 6c 65 66 74 2d isRTL() ? 'left- 0000d5e0: 73 74 61 72 74 27 20 3a 20 27 72 69 67 68 74 2d start' : 'right- 0000d5f0: 73 74 61 72 74 27 5c 6e 63 6f 6e 73 74 20 50 4c start'\nconst PL 0000d600: 41 43 45 4d 45 4e 54 5f 4c 45 46 54 20 3d 20 69 ACEMENT_LEFT = i 0000d610: 73 52 54 4c 28 29 20 3f 20 27 72 69 67 68 74 2d sRTL() ? 'right- 0000d620: 73 74 61 72 74 27 20 3a 20 27 6c 65 66 74 2d 73 start' : 'left-s 0000d630: 74 61 72 74 27 5c 6e 63 6f 6e 73 74 20 50 4c 41 tart'\nconst PLA 0000d640: 43 45 4d 45 4e 54 5f 54 4f 50 43 45 4e 54 45 52 CEMENT_TOPCENTER 0000d650: 20 3d 20 27 74 6f 70 27 5c 6e 63 6f 6e 73 74 20 = 'top'\nconst 0000d660: 50 4c 41 43 45 4d 45 4e 54 5f 42 4f 54 54 4f 4d PLACEMENT_BOTTOM 0000d670: 43 45 4e 54 45 52 20 3d 20 27 62 6f 74 74 6f 6d CENTER = 'bottom 0000d680: 27 5c 6e 5c 6e 63 6f 6e 73 74 20 44 65 66 61 75 '\n\nconst Defau 0000d690: 6c 74 20 3d 20 7b 5c 6e 20 20 61 75 74 6f 43 6c lt = {\n autoCl 0000d6a0: 6f 73 65 3a 20 74 72 75 65 2c 5c 6e 20 20 62 6f ose: true,\n bo 0000d6b0: 75 6e 64 61 72 79 3a 20 27 63 6c 69 70 70 69 6e undary: 'clippin 0000d6c0: 67 50 61 72 65 6e 74 73 27 2c 5c 6e 20 20 64 69 gParents',\n di 0000d6d0: 73 70 6c 61 79 3a 20 27 64 79 6e 61 6d 69 63 27 splay: 'dynamic' 0000d6e0: 2c 5c 6e 20 20 6f 66 66 73 65 74 3a 20 5b 30 2c ,\n offset: [0, 0000d6f0: 20 32 5d 2c 5c 6e 20 20 70 6f 70 70 65 72 43 6f 2],\n popperCo 0000d700: 6e 66 69 67 3a 20 6e 75 6c 6c 2c 5c 6e 20 20 72 nfig: null,\n r 0000d710: 65 66 65 72 65 6e 63 65 3a 20 27 74 6f 67 67 6c eference: 'toggl 0000d720: 65 27 5c 6e 7d 5c 6e 5c 6e 63 6f 6e 73 74 20 44 e'\n}\n\nconst D 0000d730: 65 66 61 75 6c 74 54 79 70 65 20 3d 20 7b 5c 6e efaultType = {\n 0000d740: 20 20 61 75 74 6f 43 6c 6f 73 65 3a 20 27 28 62 autoClose: '(b 0000d750: 6f 6f 6c 65 61 6e 7c 73 74 72 69 6e 67 29 27 2c oolean|string)', 0000d760: 5c 6e 20 20 62 6f 75 6e 64 61 72 79 3a 20 27 28 \n boundary: '( 0000d770: 73 74 72 69 6e 67 7c 65 6c 65 6d 65 6e 74 29 27 string|element)' 0000d780: 2c 5c 6e 20 20 64 69 73 70 6c 61 79 3a 20 27 73 ,\n display: 's 0000d790: 74 72 69 6e 67 27 2c 5c 6e 20 20 6f 66 66 73 65 tring',\n offse 0000d7a0: 74 3a 20 27 28 61 72 72 61 79 7c 73 74 72 69 6e t: '(array|strin 0000d7b0: 67 7c 66 75 6e 63 74 69 6f 6e 29 27 2c 5c 6e 20 g|function)',\n 0000d7c0: 20 70 6f 70 70 65 72 43 6f 6e 66 69 67 3a 20 27 popperConfig: ' 0000d7d0: 28 6e 75 6c 6c 7c 6f 62 6a 65 63 74 7c 66 75 6e (null|object|fun 0000d7e0: 63 74 69 6f 6e 29 27 2c 5c 6e 20 20 72 65 66 65 ction)',\n refe 0000d7f0: 72 65 6e 63 65 3a 20 27 28 73 74 72 69 6e 67 7c rence: '(string| 0000d800: 65 6c 65 6d 65 6e 74 7c 6f 62 6a 65 63 74 29 27 element|object)' 0000d810: 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 \n}\n\n/**\n * C 0000d820: 6c 61 73 73 20 64 65 66 69 6e 69 74 69 6f 6e 5c lass definition\ 0000d830: 6e 20 2a 2f 5c 6e 5c 6e 63 6c 61 73 73 20 44 72 n */\n\nclass Dr 0000d840: 6f 70 64 6f 77 6e 20 65 78 74 65 6e 64 73 20 42 opdown extends B 0000d850: 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 20 7b 5c 6e aseComponent {\n 0000d860: 20 20 63 6f 6e 73 74 72 75 63 74 6f 72 28 65 6c constructor(el 0000d870: 65 6d 65 6e 74 2c 20 63 6f 6e 66 69 67 29 20 7b ement, config) { 0000d880: 5c 6e 20 20 20 20 73 75 70 65 72 28 65 6c 65 6d \n super(elem 0000d890: 65 6e 74 2c 20 63 6f 6e 66 69 67 29 5c 6e 5c 6e ent, config)\n\n 0000d8a0: 20 20 20 20 74 68 69 73 2e 5f 70 6f 70 70 65 72 this._popper 0000d8b0: 20 3d 20 6e 75 6c 6c 5c 6e 20 20 20 20 74 68 69 = null\n thi 0000d8c0: 73 2e 5f 70 61 72 65 6e 74 20 3d 20 74 68 69 73 s._parent = this 0000d8d0: 2e 5f 65 6c 65 6d 65 6e 74 2e 70 61 72 65 6e 74 ._element.parent 0000d8e0: 4e 6f 64 65 20 2f 2f 20 64 72 6f 70 64 6f 77 6e Node // dropdown 0000d8f0: 20 77 72 61 70 70 65 72 5c 6e 20 20 20 20 2f 2f wrapper\n // 0000d900: 20 54 4f 44 4f 3a 20 76 36 20 72 65 76 65 72 74 TODO: v6 revert 0000d910: 20 23 33 37 30 31 31 20 26 20 63 68 61 6e 67 65 #37011 & change 0000d920: 20 6d 61 72 6b 75 70 20 68 74 74 70 73 3a 2f 2f markup https:// 0000d930: 67 65 74 62 6f 6f 74 73 74 72 61 70 2e 63 6f 6d getbootstrap.com 0000d940: 2f 64 6f 63 73 2f 35 2e 33 2f 66 6f 72 6d 73 2f /docs/5.3/forms/ 0000d950: 69 6e 70 75 74 2d 67 72 6f 75 70 2f 5c 6e 20 20 input-group/\n 0000d960: 20 20 74 68 69 73 2e 5f 6d 65 6e 75 20 3d 20 53 this._menu = S 0000d970: 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e 6e 65 electorEngine.ne 0000d980: 78 74 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 xt(this._element 0000d990: 2c 20 53 45 4c 45 43 54 4f 52 5f 4d 45 4e 55 29 , SELECTOR_MENU) 0000d9a0: 5b 30 5d 20 7c 7c 5c 6e 20 20 20 20 20 20 53 65 [0] ||\n Se 0000d9b0: 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e 70 72 65 lectorEngine.pre 0000d9c0: 76 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c v(this._element, 0000d9d0: 20 53 45 4c 45 43 54 4f 52 5f 4d 45 4e 55 29 5b SELECTOR_MENU)[ 0000d9e0: 30 5d 20 7c 7c 5c 6e 20 20 20 20 20 20 53 65 6c 0] ||\n Sel 0000d9f0: 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 ectorEngine.find 0000da00: 4f 6e 65 28 53 45 4c 45 43 54 4f 52 5f 4d 45 4e One(SELECTOR_MEN 0000da10: 55 2c 20 74 68 69 73 2e 5f 70 61 72 65 6e 74 29 U, this._parent) 0000da20: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 6e 4e 61 \n this._inNa 0000da30: 76 62 61 72 20 3d 20 74 68 69 73 2e 5f 64 65 74 vbar = this._det 0000da40: 65 63 74 4e 61 76 62 61 72 28 29 5c 6e 20 20 7d ectNavbar()\n } 0000da50: 5c 6e 5c 6e 20 20 2f 2f 20 47 65 74 74 65 72 73 \n\n // Getters 0000da60: 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 20 44 \n static get D 0000da70: 65 66 61 75 6c 74 28 29 20 7b 5c 6e 20 20 20 20 efault() {\n 0000da80: 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 5c 6e return Default\n 0000da90: 20 20 7d 5c 6e 5c 6e 20 20 73 74 61 74 69 63 20 }\n\n static 0000daa0: 67 65 74 20 44 65 66 61 75 6c 74 54 79 70 65 28 get DefaultType( 0000dab0: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 0000dac0: 44 65 66 61 75 6c 74 54 79 70 65 5c 6e 20 20 7d DefaultType\n } 0000dad0: 5c 6e 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 \n\n static get 0000dae0: 20 4e 41 4d 45 28 29 20 7b 5c 6e 20 20 20 20 72 NAME() {\n r 0000daf0: 65 74 75 72 6e 20 4e 41 4d 45 5c 6e 20 20 7d 5c eturn NAME\n }\ 0000db00: 6e 5c 6e 20 20 2f 2f 20 50 75 62 6c 69 63 5c 6e n\n // Public\n 0000db10: 20 20 74 6f 67 67 6c 65 28 29 20 7b 5c 6e 20 20 toggle() {\n 0000db20: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 69 return this._i 0000db30: 73 53 68 6f 77 6e 28 29 20 3f 20 74 68 69 73 2e sShown() ? this. 0000db40: 68 69 64 65 28 29 20 3a 20 74 68 69 73 2e 73 68 hide() : this.sh 0000db50: 6f 77 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 ow()\n }\n\n s 0000db60: 68 6f 77 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 how() {\n if 0000db70: 28 69 73 44 69 73 61 62 6c 65 64 28 74 68 69 73 (isDisabled(this 0000db80: 2e 5f 65 6c 65 6d 65 6e 74 29 20 7c 7c 20 74 68 ._element) || th 0000db90: 69 73 2e 5f 69 73 53 68 6f 77 6e 28 29 29 20 7b is._isShown()) { 0000dba0: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 0000dbb0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e }\n\n con 0000dbc0: 73 74 20 72 65 6c 61 74 65 64 54 61 72 67 65 74 st relatedTarget 0000dbd0: 20 3d 20 7b 5c 6e 20 20 20 20 20 20 72 65 6c 61 = {\n rela 0000dbe0: 74 65 64 54 61 72 67 65 74 3a 20 74 68 69 73 2e tedTarget: this. 0000dbf0: 5f 65 6c 65 6d 65 6e 74 5c 6e 20 20 20 20 7d 5c _element\n }\ 0000dc00: 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 73 68 6f n\n const sho 0000dc10: 77 45 76 65 6e 74 20 3d 20 45 76 65 6e 74 48 61 wEvent = EventHa 0000dc20: 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 ndler.trigger(th 0000dc30: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 is._element, EVE 0000dc40: 4e 54 5f 53 48 4f 57 2c 20 72 65 6c 61 74 65 64 NT_SHOW, related 0000dc50: 54 61 72 67 65 74 29 5c 6e 5c 6e 20 20 20 20 69 Target)\n\n i 0000dc60: 66 20 28 73 68 6f 77 45 76 65 6e 74 2e 64 65 66 f (showEvent.def 0000dc70: 61 75 6c 74 50 72 65 76 65 6e 74 65 64 29 20 7b aultPrevented) { 0000dc80: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 0000dc90: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 }\n\n thi 0000dca0: 73 2e 5f 63 72 65 61 74 65 50 6f 70 70 65 72 28 s._createPopper( 0000dcb0: 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 49 66 20 74 )\n\n // If t 0000dcc0: 68 69 73 20 69 73 20 61 20 74 6f 75 63 68 2d 65 his is a touch-e 0000dcd0: 6e 61 62 6c 65 64 20 64 65 76 69 63 65 20 77 65 nabled device we 0000dce0: 20 61 64 64 20 65 78 74 72 61 5c 6e 20 20 20 20 add extra\n 0000dcf0: 2f 2f 20 65 6d 70 74 79 20 6d 6f 75 73 65 6f 76 // empty mouseov 0000dd00: 65 72 20 6c 69 73 74 65 6e 65 72 73 20 74 6f 20 er listeners to 0000dd10: 74 68 65 20 62 6f 64 79 27 73 20 69 6d 6d 65 64 the body's immed 0000dd20: 69 61 74 65 20 63 68 69 6c 64 72 65 6e 3b 5c 6e iate children;\n 0000dd30: 20 20 20 20 2f 2f 20 6f 6e 6c 79 20 6e 65 65 64 // only need 0000dd40: 65 64 20 62 65 63 61 75 73 65 20 6f 66 20 62 72 ed because of br 0000dd50: 6f 6b 65 6e 20 65 76 65 6e 74 20 64 65 6c 65 67 oken event deleg 0000dd60: 61 74 69 6f 6e 20 6f 6e 20 69 4f 53 5c 6e 20 20 ation on iOS\n 0000dd70: 20 20 2f 2f 20 68 74 74 70 73 3a 2f 2f 77 77 77 // https://www 0000dd80: 2e 71 75 69 72 6b 73 6d 6f 64 65 2e 6f 72 67 2f .quirksmode.org/ 0000dd90: 62 6c 6f 67 2f 61 72 63 68 69 76 65 73 2f 32 30 blog/archives/20 0000dda0: 31 34 2f 30 32 2f 6d 6f 75 73 65 5f 65 76 65 6e 14/02/mouse_even 0000ddb0: 74 5f 62 75 62 2e 68 74 6d 6c 5c 6e 20 20 20 20 t_bub.html\n 0000ddc0: 69 66 20 28 27 6f 6e 74 6f 75 63 68 73 74 61 72 if ('ontouchstar 0000ddd0: 74 27 20 69 6e 20 64 6f 63 75 6d 65 6e 74 2e 64 t' in document.d 0000dde0: 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 20 26 ocumentElement & 0000ddf0: 26 20 21 74 68 69 73 2e 5f 70 61 72 65 6e 74 2e & !this._parent. 0000de00: 63 6c 6f 73 65 73 74 28 53 45 4c 45 43 54 4f 52 closest(SELECTOR 0000de10: 5f 4e 41 56 42 41 52 5f 4e 41 56 29 29 20 7b 5c _NAVBAR_NAV)) {\ 0000de20: 6e 20 20 20 20 20 20 66 6f 72 20 28 63 6f 6e 73 n for (cons 0000de30: 74 20 65 6c 65 6d 65 6e 74 20 6f 66 20 5b 5d 2e t element of []. 0000de40: 63 6f 6e 63 61 74 28 2e 2e 2e 64 6f 63 75 6d 65 concat(...docume 0000de50: 6e 74 2e 62 6f 64 79 2e 63 68 69 6c 64 72 65 6e nt.body.children 0000de60: 29 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 45 76 )) {\n Ev 0000de70: 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 65 6c entHandler.on(el 0000de80: 65 6d 65 6e 74 2c 20 27 6d 6f 75 73 65 6f 76 65 ement, 'mouseove 0000de90: 72 27 2c 20 6e 6f 6f 70 29 5c 6e 20 20 20 20 20 r', noop)\n 0000dea0: 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 }\n }\n\n 0000deb0: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 66 this._element.f 0000dec0: 6f 63 75 73 28 29 5c 6e 20 20 20 20 74 68 69 73 ocus()\n this 0000ded0: 2e 5f 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 ._element.setAtt 0000dee0: 72 69 62 75 74 65 28 27 61 72 69 61 2d 65 78 70 ribute('aria-exp 0000def0: 61 6e 64 65 64 27 2c 20 74 72 75 65 29 5c 6e 5c anded', true)\n\ 0000df00: 6e 20 20 20 20 74 68 69 73 2e 5f 6d 65 6e 75 2e n this._menu. 0000df10: 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c classList.add(CL 0000df20: 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e ASS_NAME_SHOW)\n 0000df30: 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e this._elemen 0000df40: 74 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 t.classList.add( 0000df50: 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 CLASS_NAME_SHOW) 0000df60: 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c \n EventHandl 0000df70: 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e er.trigger(this. 0000df80: 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f _element, EVENT_ 0000df90: 53 48 4f 57 4e 2c 20 72 65 6c 61 74 65 64 54 61 SHOWN, relatedTa 0000dfa0: 72 67 65 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 rget)\n }\n\n 0000dfb0: 68 69 64 65 28 29 20 7b 5c 6e 20 20 20 20 69 66 hide() {\n if 0000dfc0: 20 28 69 73 44 69 73 61 62 6c 65 64 28 74 68 69 (isDisabled(thi 0000dfd0: 73 2e 5f 65 6c 65 6d 65 6e 74 29 20 7c 7c 20 21 s._element) || ! 0000dfe0: 74 68 69 73 2e 5f 69 73 53 68 6f 77 6e 28 29 29 this._isShown()) 0000dff0: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 0000e000: 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 \n }\n\n c 0000e010: 6f 6e 73 74 20 72 65 6c 61 74 65 64 54 61 72 67 onst relatedTarg 0000e020: 65 74 20 3d 20 7b 5c 6e 20 20 20 20 20 20 72 65 et = {\n re 0000e030: 6c 61 74 65 64 54 61 72 67 65 74 3a 20 74 68 69 latedTarget: thi 0000e040: 73 2e 5f 65 6c 65 6d 65 6e 74 5c 6e 20 20 20 20 s._element\n 0000e050: 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 63 }\n\n this._c 0000e060: 6f 6d 70 6c 65 74 65 48 69 64 65 28 72 65 6c 61 ompleteHide(rela 0000e070: 74 65 64 54 61 72 67 65 74 29 5c 6e 20 20 7d 5c tedTarget)\n }\ 0000e080: 6e 5c 6e 20 20 64 69 73 70 6f 73 65 28 29 20 7b n\n dispose() { 0000e090: 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f \n if (this._ 0000e0a0: 70 6f 70 70 65 72 29 20 7b 5c 6e 20 20 20 20 20 popper) {\n 0000e0b0: 20 74 68 69 73 2e 5f 70 6f 70 70 65 72 2e 64 65 this._popper.de 0000e0c0: 73 74 72 6f 79 28 29 5c 6e 20 20 20 20 7d 5c 6e stroy()\n }\n 0000e0d0: 5c 6e 20 20 20 20 73 75 70 65 72 2e 64 69 73 70 \n super.disp 0000e0e0: 6f 73 65 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 ose()\n }\n\n 0000e0f0: 75 70 64 61 74 65 28 29 20 7b 5c 6e 20 20 20 20 update() {\n 0000e100: 74 68 69 73 2e 5f 69 6e 4e 61 76 62 61 72 20 3d this._inNavbar = 0000e110: 20 74 68 69 73 2e 5f 64 65 74 65 63 74 4e 61 76 this._detectNav 0000e120: 62 61 72 28 29 5c 6e 20 20 20 20 69 66 20 28 74 bar()\n if (t 0000e130: 68 69 73 2e 5f 70 6f 70 70 65 72 29 20 7b 5c 6e his._popper) {\n 0000e140: 20 20 20 20 20 20 74 68 69 73 2e 5f 70 6f 70 70 this._popp 0000e150: 65 72 2e 75 70 64 61 74 65 28 29 5c 6e 20 20 20 er.update()\n 0000e160: 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 }\n }\n\n // 0000e170: 50 72 69 76 61 74 65 5c 6e 20 20 5f 63 6f 6d 70 Private\n _comp 0000e180: 6c 65 74 65 48 69 64 65 28 72 65 6c 61 74 65 64 leteHide(related 0000e190: 54 61 72 67 65 74 29 20 7b 5c 6e 20 20 20 20 63 Target) {\n c 0000e1a0: 6f 6e 73 74 20 68 69 64 65 45 76 65 6e 74 20 3d onst hideEvent = 0000e1b0: 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 74 72 EventHandler.tr 0000e1c0: 69 67 67 65 72 28 74 68 69 73 2e 5f 65 6c 65 6d igger(this._elem 0000e1d0: 65 6e 74 2c 20 45 56 45 4e 54 5f 48 49 44 45 2c ent, EVENT_HIDE, 0000e1e0: 20 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 5c relatedTarget)\ 0000e1f0: 6e 20 20 20 20 69 66 20 28 68 69 64 65 45 76 65 n if (hideEve 0000e200: 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 76 65 6e nt.defaultPreven 0000e210: 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 ted) {\n re 0000e220: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 0000e230: 20 20 20 2f 2f 20 49 66 20 74 68 69 73 20 69 73 // If this is 0000e240: 20 61 20 74 6f 75 63 68 2d 65 6e 61 62 6c 65 64 a touch-enabled 0000e250: 20 64 65 76 69 63 65 20 77 65 20 72 65 6d 6f 76 device we remov 0000e260: 65 20 74 68 65 20 65 78 74 72 61 5c 6e 20 20 20 e the extra\n 0000e270: 20 2f 2f 20 65 6d 70 74 79 20 6d 6f 75 73 65 6f // empty mouseo 0000e280: 76 65 72 20 6c 69 73 74 65 6e 65 72 73 20 77 65 ver listeners we 0000e290: 20 61 64 64 65 64 20 66 6f 72 20 69 4f 53 20 73 added for iOS s 0000e2a0: 75 70 70 6f 72 74 5c 6e 20 20 20 20 69 66 20 28 upport\n if ( 0000e2b0: 27 6f 6e 74 6f 75 63 68 73 74 61 72 74 27 20 69 'ontouchstart' i 0000e2c0: 6e 20 64 6f 63 75 6d 65 6e 74 2e 64 6f 63 75 6d n document.docum 0000e2d0: 65 6e 74 45 6c 65 6d 65 6e 74 29 20 7b 5c 6e 20 entElement) {\n 0000e2e0: 20 20 20 20 20 66 6f 72 20 28 63 6f 6e 73 74 20 for (const 0000e2f0: 65 6c 65 6d 65 6e 74 20 6f 66 20 5b 5d 2e 63 6f element of [].co 0000e300: 6e 63 61 74 28 2e 2e 2e 64 6f 63 75 6d 65 6e 74 ncat(...document 0000e310: 2e 62 6f 64 79 2e 63 68 69 6c 64 72 65 6e 29 29 .body.children)) 0000e320: 20 7b 5c 6e 20 20 20 20 20 20 20 20 45 76 65 6e {\n Even 0000e330: 74 48 61 6e 64 6c 65 72 2e 6f 66 66 28 65 6c 65 tHandler.off(ele 0000e340: 6d 65 6e 74 2c 20 27 6d 6f 75 73 65 6f 76 65 72 ment, 'mouseover 0000e350: 27 2c 20 6e 6f 6f 70 29 5c 6e 20 20 20 20 20 20 ', noop)\n 0000e360: 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 }\n }\n\n 0000e370: 69 66 20 28 74 68 69 73 2e 5f 70 6f 70 70 65 72 if (this._popper 0000e380: 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e ) {\n this. 0000e390: 5f 70 6f 70 70 65 72 2e 64 65 73 74 72 6f 79 28 _popper.destroy( 0000e3a0: 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 )\n }\n\n 0000e3b0: 74 68 69 73 2e 5f 6d 65 6e 75 2e 63 6c 61 73 73 this._menu.class 0000e3c0: 4c 69 73 74 2e 72 65 6d 6f 76 65 28 43 4c 41 53 List.remove(CLAS 0000e3d0: 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 20 20 S_NAME_SHOW)\n 0000e3e0: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e this._element. 0000e3f0: 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 65 classList.remove 0000e400: 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 (CLASS_NAME_SHOW 0000e410: 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 )\n this._ele 0000e420: 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 75 74 ment.setAttribut 0000e430: 65 28 27 61 72 69 61 2d 65 78 70 61 6e 64 65 64 e('aria-expanded 0000e440: 27 2c 20 27 66 61 6c 73 65 27 29 5c 6e 20 20 20 ', 'false')\n 0000e450: 20 4d 61 6e 69 70 75 6c 61 74 6f 72 2e 72 65 6d Manipulator.rem 0000e460: 6f 76 65 44 61 74 61 41 74 74 72 69 62 75 74 65 oveDataAttribute 0000e470: 28 74 68 69 73 2e 5f 6d 65 6e 75 2c 20 27 70 6f (this._menu, 'po 0000e480: 70 70 65 72 27 29 5c 6e 20 20 20 20 45 76 65 6e pper')\n Even 0000e490: 74 48 61 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 tHandler.trigger 0000e4a0: 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 (this._element, 0000e4b0: 45 56 45 4e 54 5f 48 49 44 44 45 4e 2c 20 72 65 EVENT_HIDDEN, re 0000e4c0: 6c 61 74 65 64 54 61 72 67 65 74 29 5c 6e 20 20 latedTarget)\n 0000e4d0: 7d 5c 6e 5c 6e 20 20 5f 67 65 74 43 6f 6e 66 69 }\n\n _getConfi 0000e4e0: 67 28 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 g(config) {\n 0000e4f0: 20 63 6f 6e 66 69 67 20 3d 20 73 75 70 65 72 2e config = super. 0000e500: 5f 67 65 74 43 6f 6e 66 69 67 28 63 6f 6e 66 69 _getConfig(confi 0000e510: 67 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 74 79 g)\n\n if (ty 0000e520: 70 65 6f 66 20 63 6f 6e 66 69 67 2e 72 65 66 65 peof config.refe 0000e530: 72 65 6e 63 65 20 3d 3d 3d 20 27 6f 62 6a 65 63 rence === 'objec 0000e540: 74 27 20 26 26 20 21 69 73 45 6c 65 6d 65 6e 74 t' && !isElement 0000e550: 28 63 6f 6e 66 69 67 2e 72 65 66 65 72 65 6e 63 (config.referenc 0000e560: 65 29 20 26 26 5c 6e 20 20 20 20 20 20 74 79 70 e) &&\n typ 0000e570: 65 6f 66 20 63 6f 6e 66 69 67 2e 72 65 66 65 72 eof config.refer 0000e580: 65 6e 63 65 2e 67 65 74 42 6f 75 6e 64 69 6e 67 ence.getBounding 0000e590: 43 6c 69 65 6e 74 52 65 63 74 20 21 3d 3d 20 27 ClientRect !== ' 0000e5a0: 66 75 6e 63 74 69 6f 6e 27 5c 6e 20 20 20 20 29 function'\n ) 0000e5b0: 20 7b 5c 6e 20 20 20 20 20 20 2f 2f 20 50 6f 70 {\n // Pop 0000e5c0: 70 65 72 20 76 69 72 74 75 61 6c 20 65 6c 65 6d per virtual elem 0000e5d0: 65 6e 74 73 20 72 65 71 75 69 72 65 20 61 20 67 ents require a g 0000e5e0: 65 74 42 6f 75 6e 64 69 6e 67 43 6c 69 65 6e 74 etBoundingClient 0000e5f0: 52 65 63 74 20 6d 65 74 68 6f 64 5c 6e 20 20 20 Rect method\n 0000e600: 20 20 20 74 68 72 6f 77 20 6e 65 77 20 54 79 70 throw new Typ 0000e610: 65 45 72 72 6f 72 28 60 24 7b 4e 41 4d 45 2e 74 eError(`${NAME.t 0000e620: 6f 55 70 70 65 72 43 61 73 65 28 29 7d 3a 20 4f oUpperCase()}: O 0000e630: 70 74 69 6f 6e 20 5c 22 72 65 66 65 72 65 6e 63 ption \"referenc 0000e640: 65 5c 22 20 70 72 6f 76 69 64 65 64 20 74 79 70 e\" provided typ 0000e650: 65 20 5c 22 6f 62 6a 65 63 74 5c 22 20 77 69 74 e \"object\" wit 0000e660: 68 6f 75 74 20 61 20 72 65 71 75 69 72 65 64 20 hout a required 0000e670: 5c 22 67 65 74 42 6f 75 6e 64 69 6e 67 43 6c 69 \"getBoundingCli 0000e680: 65 6e 74 52 65 63 74 5c 22 20 6d 65 74 68 6f 64 entRect\" method 0000e690: 2e 60 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 .`)\n }\n\n 0000e6a0: 20 20 72 65 74 75 72 6e 20 63 6f 6e 66 69 67 5c return config\ 0000e6b0: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 72 65 61 74 n }\n\n _creat 0000e6c0: 65 50 6f 70 70 65 72 28 29 20 7b 5c 6e 20 20 20 ePopper() {\n 0000e6d0: 20 69 66 20 28 74 79 70 65 6f 66 20 50 6f 70 70 if (typeof Popp 0000e6e0: 65 72 20 3d 3d 3d 20 27 75 6e 64 65 66 69 6e 65 er === 'undefine 0000e6f0: 64 27 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 72 d') {\n thr 0000e700: 6f 77 20 6e 65 77 20 54 79 70 65 45 72 72 6f 72 ow new TypeError 0000e710: 28 27 42 6f 6f 74 73 74 72 61 70 5c 5c 27 73 20 ('Bootstrap\\'s 0000e720: 64 72 6f 70 64 6f 77 6e 73 20 72 65 71 75 69 72 dropdowns requir 0000e730: 65 20 50 6f 70 70 65 72 20 28 68 74 74 70 73 3a e Popper (https: 0000e740: 2f 2f 70 6f 70 70 65 72 2e 6a 73 2e 6f 72 67 29 //popper.js.org) 0000e750: 27 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 ')\n }\n\n 0000e760: 20 6c 65 74 20 72 65 66 65 72 65 6e 63 65 45 6c let referenceEl 0000e770: 65 6d 65 6e 74 20 3d 20 74 68 69 73 2e 5f 65 6c ement = this._el 0000e780: 65 6d 65 6e 74 5c 6e 5c 6e 20 20 20 20 69 66 20 ement\n\n if 0000e790: 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 72 65 (this._config.re 0000e7a0: 66 65 72 65 6e 63 65 20 3d 3d 3d 20 27 70 61 72 ference === 'par 0000e7b0: 65 6e 74 27 29 20 7b 5c 6e 20 20 20 20 20 20 72 ent') {\n r 0000e7c0: 65 66 65 72 65 6e 63 65 45 6c 65 6d 65 6e 74 20 eferenceElement 0000e7d0: 3d 20 74 68 69 73 2e 5f 70 61 72 65 6e 74 5c 6e = this._parent\n 0000e7e0: 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 69 } else if (i 0000e7f0: 73 45 6c 65 6d 65 6e 74 28 74 68 69 73 2e 5f 63 sElement(this._c 0000e800: 6f 6e 66 69 67 2e 72 65 66 65 72 65 6e 63 65 29 onfig.reference) 0000e810: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 66 65 72 ) {\n refer 0000e820: 65 6e 63 65 45 6c 65 6d 65 6e 74 20 3d 20 67 65 enceElement = ge 0000e830: 74 45 6c 65 6d 65 6e 74 28 74 68 69 73 2e 5f 63 tElement(this._c 0000e840: 6f 6e 66 69 67 2e 72 65 66 65 72 65 6e 63 65 29 onfig.reference) 0000e850: 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 \n } else if 0000e860: 28 74 79 70 65 6f 66 20 74 68 69 73 2e 5f 63 6f (typeof this._co 0000e870: 6e 66 69 67 2e 72 65 66 65 72 65 6e 63 65 20 3d nfig.reference = 0000e880: 3d 3d 20 27 6f 62 6a 65 63 74 27 29 20 7b 5c 6e == 'object') {\n 0000e890: 20 20 20 20 20 20 72 65 66 65 72 65 6e 63 65 45 referenceE 0000e8a0: 6c 65 6d 65 6e 74 20 3d 20 74 68 69 73 2e 5f 63 lement = this._c 0000e8b0: 6f 6e 66 69 67 2e 72 65 66 65 72 65 6e 63 65 5c onfig.reference\ 0000e8c0: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f n }\n\n co 0000e8d0: 6e 73 74 20 70 6f 70 70 65 72 43 6f 6e 66 69 67 nst popperConfig 0000e8e0: 20 3d 20 74 68 69 73 2e 5f 67 65 74 50 6f 70 70 = this._getPopp 0000e8f0: 65 72 43 6f 6e 66 69 67 28 29 5c 6e 20 20 20 20 erConfig()\n 0000e900: 74 68 69 73 2e 5f 70 6f 70 70 65 72 20 3d 20 50 this._popper = P 0000e910: 6f 70 70 65 72 2e 63 72 65 61 74 65 50 6f 70 70 opper.createPopp 0000e920: 65 72 28 72 65 66 65 72 65 6e 63 65 45 6c 65 6d er(referenceElem 0000e930: 65 6e 74 2c 20 74 68 69 73 2e 5f 6d 65 6e 75 2c ent, this._menu, 0000e940: 20 70 6f 70 70 65 72 43 6f 6e 66 69 67 29 5c 6e popperConfig)\n 0000e950: 20 20 7d 5c 6e 5c 6e 20 20 5f 69 73 53 68 6f 77 }\n\n _isShow 0000e960: 6e 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 n() {\n retur 0000e970: 6e 20 74 68 69 73 2e 5f 6d 65 6e 75 2e 63 6c 61 n this._menu.cla 0000e980: 73 73 4c 69 73 74 2e 63 6f 6e 74 61 69 6e 73 28 ssList.contains( 0000e990: 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 CLASS_NAME_SHOW) 0000e9a0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 74 50 \n }\n\n _getP 0000e9b0: 6c 61 63 65 6d 65 6e 74 28 29 20 7b 5c 6e 20 20 lacement() {\n 0000e9c0: 20 20 63 6f 6e 73 74 20 70 61 72 65 6e 74 44 72 const parentDr 0000e9d0: 6f 70 64 6f 77 6e 20 3d 20 74 68 69 73 2e 5f 70 opdown = this._p 0000e9e0: 61 72 65 6e 74 5c 6e 5c 6e 20 20 20 20 69 66 20 arent\n\n if 0000e9f0: 28 70 61 72 65 6e 74 44 72 6f 70 64 6f 77 6e 2e (parentDropdown. 0000ea00: 63 6c 61 73 73 4c 69 73 74 2e 63 6f 6e 74 61 69 classList.contai 0000ea10: 6e 73 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 44 52 ns(CLASS_NAME_DR 0000ea20: 4f 50 45 4e 44 29 29 20 7b 5c 6e 20 20 20 20 20 OPEND)) {\n 0000ea30: 20 72 65 74 75 72 6e 20 50 4c 41 43 45 4d 45 4e return PLACEMEN 0000ea40: 54 5f 52 49 47 48 54 5c 6e 20 20 20 20 7d 5c 6e T_RIGHT\n }\n 0000ea50: 5c 6e 20 20 20 20 69 66 20 28 70 61 72 65 6e 74 \n if (parent 0000ea60: 44 72 6f 70 64 6f 77 6e 2e 63 6c 61 73 73 4c 69 Dropdown.classLi 0000ea70: 73 74 2e 63 6f 6e 74 61 69 6e 73 28 43 4c 41 53 st.contains(CLAS 0000ea80: 53 5f 4e 41 4d 45 5f 44 52 4f 50 53 54 41 52 54 S_NAME_DROPSTART 0000ea90: 29 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 )) {\n retu 0000eaa0: 72 6e 20 50 4c 41 43 45 4d 45 4e 54 5f 4c 45 46 rn PLACEMENT_LEF 0000eab0: 54 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 T\n }\n\n 0000eac0: 69 66 20 28 70 61 72 65 6e 74 44 72 6f 70 64 6f if (parentDropdo 0000ead0: 77 6e 2e 63 6c 61 73 73 4c 69 73 74 2e 63 6f 6e wn.classList.con 0000eae0: 74 61 69 6e 73 28 43 4c 41 53 53 5f 4e 41 4d 45 tains(CLASS_NAME 0000eaf0: 5f 44 52 4f 50 55 50 5f 43 45 4e 54 45 52 29 29 _DROPUP_CENTER)) 0000eb00: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 0000eb10: 20 50 4c 41 43 45 4d 45 4e 54 5f 54 4f 50 43 45 PLACEMENT_TOPCE 0000eb20: 4e 54 45 52 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 NTER\n }\n\n 0000eb30: 20 20 20 69 66 20 28 70 61 72 65 6e 74 44 72 6f if (parentDro 0000eb40: 70 64 6f 77 6e 2e 63 6c 61 73 73 4c 69 73 74 2e pdown.classList. 0000eb50: 63 6f 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f 4e contains(CLASS_N 0000eb60: 41 4d 45 5f 44 52 4f 50 44 4f 57 4e 5f 43 45 4e AME_DROPDOWN_CEN 0000eb70: 54 45 52 29 29 20 7b 5c 6e 20 20 20 20 20 20 72 TER)) {\n r 0000eb80: 65 74 75 72 6e 20 50 4c 41 43 45 4d 45 4e 54 5f eturn PLACEMENT_ 0000eb90: 42 4f 54 54 4f 4d 43 45 4e 54 45 52 5c 6e 20 20 BOTTOMCENTER\n 0000eba0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 57 65 }\n\n // We 0000ebb0: 20 6e 65 65 64 20 74 6f 20 74 72 69 6d 20 74 68 need to trim th 0000ebc0: 65 20 76 61 6c 75 65 20 62 65 63 61 75 73 65 20 e value because 0000ebd0: 63 75 73 74 6f 6d 20 70 72 6f 70 65 72 74 69 65 custom propertie 0000ebe0: 73 20 63 61 6e 20 61 6c 73 6f 20 69 6e 63 6c 75 s can also inclu 0000ebf0: 64 65 20 73 70 61 63 65 73 5c 6e 20 20 20 20 63 de spaces\n c 0000ec00: 6f 6e 73 74 20 69 73 45 6e 64 20 3d 20 67 65 74 onst isEnd = get 0000ec10: 43 6f 6d 70 75 74 65 64 53 74 79 6c 65 28 74 68 ComputedStyle(th 0000ec20: 69 73 2e 5f 6d 65 6e 75 29 2e 67 65 74 50 72 6f is._menu).getPro 0000ec30: 70 65 72 74 79 56 61 6c 75 65 28 27 2d 2d 62 73 pertyValue('--bs 0000ec40: 2d 70 6f 73 69 74 69 6f 6e 27 29 2e 74 72 69 6d -position').trim 0000ec50: 28 29 20 3d 3d 3d 20 27 65 6e 64 27 5c 6e 5c 6e () === 'end'\n\n 0000ec60: 20 20 20 20 69 66 20 28 70 61 72 65 6e 74 44 72 if (parentDr 0000ec70: 6f 70 64 6f 77 6e 2e 63 6c 61 73 73 4c 69 73 74 opdown.classList 0000ec80: 2e 63 6f 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f .contains(CLASS_ 0000ec90: 4e 41 4d 45 5f 44 52 4f 50 55 50 29 29 20 7b 5c NAME_DROPUP)) {\ 0000eca0: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 73 n return is 0000ecb0: 45 6e 64 20 3f 20 50 4c 41 43 45 4d 45 4e 54 5f End ? PLACEMENT_ 0000ecc0: 54 4f 50 45 4e 44 20 3a 20 50 4c 41 43 45 4d 45 TOPEND : PLACEME 0000ecd0: 4e 54 5f 54 4f 50 5c 6e 20 20 20 20 7d 5c 6e 5c NT_TOP\n }\n\ 0000ece0: 6e 20 20 20 20 72 65 74 75 72 6e 20 69 73 45 6e n return isEn 0000ecf0: 64 20 3f 20 50 4c 41 43 45 4d 45 4e 54 5f 42 4f d ? PLACEMENT_BO 0000ed00: 54 54 4f 4d 45 4e 44 20 3a 20 50 4c 41 43 45 4d TTOMEND : PLACEM 0000ed10: 45 4e 54 5f 42 4f 54 54 4f 4d 5c 6e 20 20 7d 5c ENT_BOTTOM\n }\ 0000ed20: 6e 5c 6e 20 20 5f 64 65 74 65 63 74 4e 61 76 62 n\n _detectNavb 0000ed30: 61 72 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 ar() {\n retu 0000ed40: 72 6e 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 rn this._element 0000ed50: 2e 63 6c 6f 73 65 73 74 28 53 45 4c 45 43 54 4f .closest(SELECTO 0000ed60: 52 5f 4e 41 56 42 41 52 29 20 21 3d 3d 20 6e 75 R_NAVBAR) !== nu 0000ed70: 6c 6c 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 ll\n }\n\n _ge 0000ed80: 74 4f 66 66 73 65 74 28 29 20 7b 5c 6e 20 20 20 tOffset() {\n 0000ed90: 20 63 6f 6e 73 74 20 7b 20 6f 66 66 73 65 74 20 const { offset 0000eda0: 7d 20 3d 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 } = this._config 0000edb0: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 74 79 70 65 \n\n if (type 0000edc0: 6f 66 20 6f 66 66 73 65 74 20 3d 3d 3d 20 27 73 of offset === 's 0000edd0: 74 72 69 6e 67 27 29 20 7b 5c 6e 20 20 20 20 20 tring') {\n 0000ede0: 20 72 65 74 75 72 6e 20 6f 66 66 73 65 74 2e 73 return offset.s 0000edf0: 70 6c 69 74 28 27 2c 27 29 2e 6d 61 70 28 76 61 plit(',').map(va 0000ee00: 6c 75 65 20 3d 3e 20 4e 75 6d 62 65 72 2e 70 61 lue => Number.pa 0000ee10: 72 73 65 49 6e 74 28 76 61 6c 75 65 2c 20 31 30 rseInt(value, 10 0000ee20: 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 ))\n }\n\n 0000ee30: 20 69 66 20 28 74 79 70 65 6f 66 20 6f 66 66 73 if (typeof offs 0000ee40: 65 74 20 3d 3d 3d 20 27 66 75 6e 63 74 69 6f 6e et === 'function 0000ee50: 27 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 ') {\n retu 0000ee60: 72 6e 20 70 6f 70 70 65 72 44 61 74 61 20 3d 3e rn popperData => 0000ee70: 20 6f 66 66 73 65 74 28 70 6f 70 70 65 72 44 61 offset(popperDa 0000ee80: 74 61 2c 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e ta, this._elemen 0000ee90: 74 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 t)\n }\n\n 0000eea0: 20 72 65 74 75 72 6e 20 6f 66 66 73 65 74 5c 6e return offset\n 0000eeb0: 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 74 50 6f 70 }\n\n _getPop 0000eec0: 70 65 72 43 6f 6e 66 69 67 28 29 20 7b 5c 6e 20 perConfig() {\n 0000eed0: 20 20 20 63 6f 6e 73 74 20 64 65 66 61 75 6c 74 const default 0000eee0: 42 73 50 6f 70 70 65 72 43 6f 6e 66 69 67 20 3d BsPopperConfig = 0000eef0: 20 7b 5c 6e 20 20 20 20 20 20 70 6c 61 63 65 6d {\n placem 0000ef00: 65 6e 74 3a 20 74 68 69 73 2e 5f 67 65 74 50 6c ent: this._getPl 0000ef10: 61 63 65 6d 65 6e 74 28 29 2c 5c 6e 20 20 20 20 acement(),\n 0000ef20: 20 20 6d 6f 64 69 66 69 65 72 73 3a 20 5b 7b 5c modifiers: [{\ 0000ef30: 6e 20 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 27 n name: ' 0000ef40: 70 72 65 76 65 6e 74 4f 76 65 72 66 6c 6f 77 27 preventOverflow' 0000ef50: 2c 5c 6e 20 20 20 20 20 20 20 20 6f 70 74 69 6f ,\n optio 0000ef60: 6e 73 3a 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 ns: {\n 0000ef70: 20 62 6f 75 6e 64 61 72 79 3a 20 74 68 69 73 2e boundary: this. 0000ef80: 5f 63 6f 6e 66 69 67 2e 62 6f 75 6e 64 61 72 79 _config.boundary 0000ef90: 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 \n }\n 0000efa0: 20 20 20 7d 2c 5c 6e 20 20 20 20 20 20 7b 5c 6e },\n {\n 0000efb0: 20 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 27 6f name: 'o 0000efc0: 66 66 73 65 74 27 2c 5c 6e 20 20 20 20 20 20 20 ffset',\n 0000efd0: 20 6f 70 74 69 6f 6e 73 3a 20 7b 5c 6e 20 20 20 options: {\n 0000efe0: 20 20 20 20 20 20 20 6f 66 66 73 65 74 3a 20 74 offset: t 0000eff0: 68 69 73 2e 5f 67 65 74 4f 66 66 73 65 74 28 29 his._getOffset() 0000f000: 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 \n }\n 0000f010: 20 20 20 7d 5d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e }]\n }\n\n 0000f020: 20 20 20 20 2f 2f 20 44 69 73 61 62 6c 65 20 50 // Disable P 0000f030: 6f 70 70 65 72 20 69 66 20 77 65 20 68 61 76 65 opper if we have 0000f040: 20 61 20 73 74 61 74 69 63 20 64 69 73 70 6c 61 a static displa 0000f050: 79 20 6f 72 20 44 72 6f 70 64 6f 77 6e 20 69 73 y or Dropdown is 0000f060: 20 69 6e 20 4e 61 76 62 61 72 5c 6e 20 20 20 20 in Navbar\n 0000f070: 69 66 20 28 74 68 69 73 2e 5f 69 6e 4e 61 76 62 if (this._inNavb 0000f080: 61 72 20 7c 7c 20 74 68 69 73 2e 5f 63 6f 6e 66 ar || this._conf 0000f090: 69 67 2e 64 69 73 70 6c 61 79 20 3d 3d 3d 20 27 ig.display === ' 0000f0a0: 73 74 61 74 69 63 27 29 20 7b 5c 6e 20 20 20 20 static') {\n 0000f0b0: 20 20 4d 61 6e 69 70 75 6c 61 74 6f 72 2e 73 65 Manipulator.se 0000f0c0: 74 44 61 74 61 41 74 74 72 69 62 75 74 65 28 74 tDataAttribute(t 0000f0d0: 68 69 73 2e 5f 6d 65 6e 75 2c 20 27 70 6f 70 70 his._menu, 'popp 0000f0e0: 65 72 27 2c 20 27 73 74 61 74 69 63 27 29 20 2f er', 'static') / 0000f0f0: 2f 20 54 4f 44 4f 3a 20 76 36 20 72 65 6d 6f 76 / TODO: v6 remov 0000f100: 65 5c 6e 20 20 20 20 20 20 64 65 66 61 75 6c 74 e\n default 0000f110: 42 73 50 6f 70 70 65 72 43 6f 6e 66 69 67 2e 6d BsPopperConfig.m 0000f120: 6f 64 69 66 69 65 72 73 20 3d 20 5b 7b 5c 6e 20 odifiers = [{\n 0000f130: 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 27 61 70 name: 'ap 0000f140: 70 6c 79 53 74 79 6c 65 73 27 2c 5c 6e 20 20 20 plyStyles',\n 0000f150: 20 20 20 20 20 65 6e 61 62 6c 65 64 3a 20 66 61 enabled: fa 0000f160: 6c 73 65 5c 6e 20 20 20 20 20 20 7d 5d 5c 6e 20 lse\n }]\n 0000f170: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 75 }\n\n retu 0000f180: 72 6e 20 7b 5c 6e 20 20 20 20 20 20 2e 2e 2e 64 rn {\n ...d 0000f190: 65 66 61 75 6c 74 42 73 50 6f 70 70 65 72 43 6f efaultBsPopperCo 0000f1a0: 6e 66 69 67 2c 5c 6e 20 20 20 20 20 20 2e 2e 2e nfig,\n ... 0000f1b0: 65 78 65 63 75 74 65 28 74 68 69 73 2e 5f 63 6f execute(this._co 0000f1c0: 6e 66 69 67 2e 70 6f 70 70 65 72 43 6f 6e 66 69 nfig.popperConfi 0000f1d0: 67 2c 20 5b 64 65 66 61 75 6c 74 42 73 50 6f 70 g, [defaultBsPop 0000f1e0: 70 65 72 43 6f 6e 66 69 67 5d 29 5c 6e 20 20 20 perConfig])\n 0000f1f0: 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 73 65 }\n }\n\n _se 0000f200: 6c 65 63 74 4d 65 6e 75 49 74 65 6d 28 7b 20 6b lectMenuItem({ k 0000f210: 65 79 2c 20 74 61 72 67 65 74 20 7d 29 20 7b 5c ey, target }) {\ 0000f220: 6e 20 20 20 20 63 6f 6e 73 74 20 69 74 65 6d 73 n const items 0000f230: 20 3d 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e = SelectorEngin 0000f240: 65 2e 66 69 6e 64 28 53 45 4c 45 43 54 4f 52 5f e.find(SELECTOR_ 0000f250: 56 49 53 49 42 4c 45 5f 49 54 45 4d 53 2c 20 74 VISIBLE_ITEMS, t 0000f260: 68 69 73 2e 5f 6d 65 6e 75 29 2e 66 69 6c 74 65 his._menu).filte 0000f270: 72 28 65 6c 65 6d 65 6e 74 20 3d 3e 20 69 73 56 r(element => isV 0000f280: 69 73 69 62 6c 65 28 65 6c 65 6d 65 6e 74 29 29 isible(element)) 0000f290: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 69 74 65 \n\n if (!ite 0000f2a0: 6d 73 2e 6c 65 6e 67 74 68 29 20 7b 5c 6e 20 20 ms.length) {\n 0000f2b0: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 0000f2c0: 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 69 66 20 74 }\n\n // if t 0000f2d0: 61 72 67 65 74 20 69 73 6e 27 74 20 69 6e 63 6c arget isn't incl 0000f2e0: 75 64 65 64 20 69 6e 20 69 74 65 6d 73 20 28 65 uded in items (e 0000f2f0: 2e 67 2e 20 77 68 65 6e 20 65 78 70 61 6e 64 69 .g. when expandi 0000f300: 6e 67 20 74 68 65 20 64 72 6f 70 64 6f 77 6e 29 ng the dropdown) 0000f310: 5c 6e 20 20 20 20 2f 2f 20 61 6c 6c 6f 77 20 63 \n // allow c 0000f320: 79 63 6c 69 6e 67 20 74 6f 20 67 65 74 20 74 68 ycling to get th 0000f330: 65 20 6c 61 73 74 20 69 74 65 6d 20 69 6e 20 63 e last item in c 0000f340: 61 73 65 20 6b 65 79 20 65 71 75 61 6c 73 20 41 ase key equals A 0000f350: 52 52 4f 57 5f 55 50 5f 4b 45 59 5c 6e 20 20 20 RROW_UP_KEY\n 0000f360: 20 67 65 74 4e 65 78 74 41 63 74 69 76 65 45 6c getNextActiveEl 0000f370: 65 6d 65 6e 74 28 69 74 65 6d 73 2c 20 74 61 72 ement(items, tar 0000f380: 67 65 74 2c 20 6b 65 79 20 3d 3d 3d 20 41 52 52 get, key === ARR 0000f390: 4f 57 5f 44 4f 57 4e 5f 4b 45 59 2c 20 21 69 74 OW_DOWN_KEY, !it 0000f3a0: 65 6d 73 2e 69 6e 63 6c 75 64 65 73 28 74 61 72 ems.includes(tar 0000f3b0: 67 65 74 29 29 2e 66 6f 63 75 73 28 29 5c 6e 20 get)).focus()\n 0000f3c0: 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 53 74 61 74 69 }\n\n // Stati 0000f3d0: 63 5c 6e 20 20 73 74 61 74 69 63 20 6a 51 75 65 c\n static jQue 0000f3e0: 72 79 49 6e 74 65 72 66 61 63 65 28 63 6f 6e 66 ryInterface(conf 0000f3f0: 69 67 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 ig) {\n retur 0000f400: 6e 20 74 68 69 73 2e 65 61 63 68 28 66 75 6e 63 n this.each(func 0000f410: 74 69 6f 6e 20 28 29 20 7b 5c 6e 20 20 20 20 20 tion () {\n 0000f420: 20 63 6f 6e 73 74 20 64 61 74 61 20 3d 20 44 72 const data = Dr 0000f430: 6f 70 64 6f 77 6e 2e 67 65 74 4f 72 43 72 65 61 opdown.getOrCrea 0000f440: 74 65 49 6e 73 74 61 6e 63 65 28 74 68 69 73 2c teInstance(this, 0000f450: 20 63 6f 6e 66 69 67 29 5c 6e 5c 6e 20 20 20 20 config)\n\n 0000f460: 20 20 69 66 20 28 74 79 70 65 6f 66 20 63 6f 6e if (typeof con 0000f470: 66 69 67 20 21 3d 3d 20 27 73 74 72 69 6e 67 27 fig !== 'string' 0000f480: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 65 74 ) {\n ret 0000f490: 75 72 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e urn\n }\n\n 0000f4a0: 20 20 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 if (typeof 0000f4b0: 20 64 61 74 61 5b 63 6f 6e 66 69 67 5d 20 3d 3d data[config] == 0000f4c0: 3d 20 27 75 6e 64 65 66 69 6e 65 64 27 29 20 7b = 'undefined') { 0000f4d0: 5c 6e 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 \n throw 0000f4e0: 6e 65 77 20 54 79 70 65 45 72 72 6f 72 28 60 4e new TypeError(`N 0000f4f0: 6f 20 6d 65 74 68 6f 64 20 6e 61 6d 65 64 20 5c o method named \ 0000f500: 22 24 7b 63 6f 6e 66 69 67 7d 5c 22 60 29 5c 6e "${config}\"`)\n 0000f510: 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 }\n\n 0000f520: 20 64 61 74 61 5b 63 6f 6e 66 69 67 5d 28 29 5c data[config]()\ 0000f530: 6e 20 20 20 20 7d 29 5c 6e 20 20 7d 5c 6e 5c 6e n })\n }\n\n 0000f540: 20 20 73 74 61 74 69 63 20 63 6c 65 61 72 4d 65 static clearMe 0000f550: 6e 75 73 28 65 76 65 6e 74 29 20 7b 5c 6e 20 20 nus(event) {\n 0000f560: 20 20 69 66 20 28 65 76 65 6e 74 2e 62 75 74 74 if (event.butt 0000f570: 6f 6e 20 3d 3d 3d 20 52 49 47 48 54 5f 4d 4f 55 on === RIGHT_MOU 0000f580: 53 45 5f 42 55 54 54 4f 4e 20 7c 7c 20 28 65 76 SE_BUTTON || (ev 0000f590: 65 6e 74 2e 74 79 70 65 20 3d 3d 3d 20 27 6b 65 ent.type === 'ke 0000f5a0: 79 75 70 27 20 26 26 20 65 76 65 6e 74 2e 6b 65 yup' && event.ke 0000f5b0: 79 20 21 3d 3d 20 54 41 42 5f 4b 45 59 29 29 20 y !== TAB_KEY)) 0000f5c0: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c {\n return\ 0000f5d0: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f n }\n\n co 0000f5e0: 6e 73 74 20 6f 70 65 6e 54 6f 67 67 6c 65 73 20 nst openToggles 0000f5f0: 3d 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 = SelectorEngine 0000f600: 2e 66 69 6e 64 28 53 45 4c 45 43 54 4f 52 5f 44 .find(SELECTOR_D 0000f610: 41 54 41 5f 54 4f 47 47 4c 45 5f 53 48 4f 57 4e ATA_TOGGLE_SHOWN 0000f620: 29 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 63 6f )\n\n for (co 0000f630: 6e 73 74 20 74 6f 67 67 6c 65 20 6f 66 20 6f 70 nst toggle of op 0000f640: 65 6e 54 6f 67 67 6c 65 73 29 20 7b 5c 6e 20 20 enToggles) {\n 0000f650: 20 20 20 20 63 6f 6e 73 74 20 63 6f 6e 74 65 78 const contex 0000f660: 74 20 3d 20 44 72 6f 70 64 6f 77 6e 2e 67 65 74 t = Dropdown.get 0000f670: 49 6e 73 74 61 6e 63 65 28 74 6f 67 67 6c 65 29 Instance(toggle) 0000f680: 5c 6e 20 20 20 20 20 20 69 66 20 28 21 63 6f 6e \n if (!con 0000f690: 74 65 78 74 20 7c 7c 20 63 6f 6e 74 65 78 74 2e text || context. 0000f6a0: 5f 63 6f 6e 66 69 67 2e 61 75 74 6f 43 6c 6f 73 _config.autoClos 0000f6b0: 65 20 3d 3d 3d 20 66 61 6c 73 65 29 20 7b 5c 6e e === false) {\n 0000f6c0: 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 continue 0000f6d0: 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 \n }\n\n 0000f6e0: 20 20 20 63 6f 6e 73 74 20 63 6f 6d 70 6f 73 65 const compose 0000f6f0: 64 50 61 74 68 20 3d 20 65 76 65 6e 74 2e 63 6f dPath = event.co 0000f700: 6d 70 6f 73 65 64 50 61 74 68 28 29 5c 6e 20 20 mposedPath()\n 0000f710: 20 20 20 20 63 6f 6e 73 74 20 69 73 4d 65 6e 75 const isMenu 0000f720: 54 61 72 67 65 74 20 3d 20 63 6f 6d 70 6f 73 65 Target = compose 0000f730: 64 50 61 74 68 2e 69 6e 63 6c 75 64 65 73 28 63 dPath.includes(c 0000f740: 6f 6e 74 65 78 74 2e 5f 6d 65 6e 75 29 5c 6e 20 ontext._menu)\n 0000f750: 20 20 20 20 20 69 66 20 28 5c 6e 20 20 20 20 20 if (\n 0000f760: 20 20 20 63 6f 6d 70 6f 73 65 64 50 61 74 68 2e composedPath. 0000f770: 69 6e 63 6c 75 64 65 73 28 63 6f 6e 74 65 78 74 includes(context 0000f780: 2e 5f 65 6c 65 6d 65 6e 74 29 20 7c 7c 5c 6e 20 ._element) ||\n 0000f790: 20 20 20 20 20 20 20 28 63 6f 6e 74 65 78 74 2e (context. 0000f7a0: 5f 63 6f 6e 66 69 67 2e 61 75 74 6f 43 6c 6f 73 _config.autoClos 0000f7b0: 65 20 3d 3d 3d 20 27 69 6e 73 69 64 65 27 20 26 e === 'inside' & 0000f7c0: 26 20 21 69 73 4d 65 6e 75 54 61 72 67 65 74 29 & !isMenuTarget) 0000f7d0: 20 7c 7c 5c 6e 20 20 20 20 20 20 20 20 28 63 6f ||\n (co 0000f7e0: 6e 74 65 78 74 2e 5f 63 6f 6e 66 69 67 2e 61 75 ntext._config.au 0000f7f0: 74 6f 43 6c 6f 73 65 20 3d 3d 3d 20 27 6f 75 74 toClose === 'out 0000f800: 73 69 64 65 27 20 26 26 20 69 73 4d 65 6e 75 54 side' && isMenuT 0000f810: 61 72 67 65 74 29 5c 6e 20 20 20 20 20 20 29 20 arget)\n ) 0000f820: 7b 5c 6e 20 20 20 20 20 20 20 20 63 6f 6e 74 69 {\n conti 0000f830: 6e 75 65 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e nue\n }\n\n 0000f840: 20 20 20 20 20 20 2f 2f 20 54 61 62 20 6e 61 76 // Tab nav 0000f850: 69 67 61 74 69 6f 6e 20 74 68 72 6f 75 67 68 20 igation through 0000f860: 74 68 65 20 64 72 6f 70 64 6f 77 6e 20 6d 65 6e the dropdown men 0000f870: 75 20 6f 72 20 65 76 65 6e 74 73 20 66 72 6f 6d u or events from 0000f880: 20 63 6f 6e 74 61 69 6e 65 64 20 69 6e 70 75 74 contained input 0000f890: 73 20 73 68 6f 75 6c 64 6e 27 74 20 63 6c 6f 73 s shouldn't clos 0000f8a0: 65 20 74 68 65 20 6d 65 6e 75 5c 6e 20 20 20 20 e the menu\n 0000f8b0: 20 20 69 66 20 28 63 6f 6e 74 65 78 74 2e 5f 6d if (context._m 0000f8c0: 65 6e 75 2e 63 6f 6e 74 61 69 6e 73 28 65 76 65 enu.contains(eve 0000f8d0: 6e 74 2e 74 61 72 67 65 74 29 20 26 26 20 28 28 nt.target) && (( 0000f8e0: 65 76 65 6e 74 2e 74 79 70 65 20 3d 3d 3d 20 27 event.type === ' 0000f8f0: 6b 65 79 75 70 27 20 26 26 20 65 76 65 6e 74 2e keyup' && event. 0000f900: 6b 65 79 20 3d 3d 3d 20 54 41 42 5f 4b 45 59 29 key === TAB_KEY) 0000f910: 20 7c 7c 20 2f 69 6e 70 75 74 7c 73 65 6c 65 63 || /input|selec 0000f920: 74 7c 6f 70 74 69 6f 6e 7c 74 65 78 74 61 72 65 t|option|textare 0000f930: 61 7c 66 6f 72 6d 2f 69 2e 74 65 73 74 28 65 76 a|form/i.test(ev 0000f940: 65 6e 74 2e 74 61 72 67 65 74 2e 74 61 67 4e 61 ent.target.tagNa 0000f950: 6d 65 29 29 29 20 7b 5c 6e 20 20 20 20 20 20 20 me))) {\n 0000f960: 20 63 6f 6e 74 69 6e 75 65 5c 6e 20 20 20 20 20 continue\n 0000f970: 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 63 6f 6e 73 }\n\n cons 0000f980: 74 20 72 65 6c 61 74 65 64 54 61 72 67 65 74 20 t relatedTarget 0000f990: 3d 20 7b 20 72 65 6c 61 74 65 64 54 61 72 67 65 = { relatedTarge 0000f9a0: 74 3a 20 63 6f 6e 74 65 78 74 2e 5f 65 6c 65 6d t: context._elem 0000f9b0: 65 6e 74 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 ent }\n\n i 0000f9c0: 66 20 28 65 76 65 6e 74 2e 74 79 70 65 20 3d 3d f (event.type == 0000f9d0: 3d 20 27 63 6c 69 63 6b 27 29 20 7b 5c 6e 20 20 = 'click') {\n 0000f9e0: 20 20 20 20 20 20 72 65 6c 61 74 65 64 54 61 72 relatedTar 0000f9f0: 67 65 74 2e 63 6c 69 63 6b 45 76 65 6e 74 20 3d get.clickEvent = 0000fa00: 20 65 76 65 6e 74 5c 6e 20 20 20 20 20 20 7d 5c event\n }\ 0000fa10: 6e 5c 6e 20 20 20 20 20 20 63 6f 6e 74 65 78 74 n\n context 0000fa20: 2e 5f 63 6f 6d 70 6c 65 74 65 48 69 64 65 28 72 ._completeHide(r 0000fa30: 65 6c 61 74 65 64 54 61 72 67 65 74 29 5c 6e 20 elatedTarget)\n 0000fa40: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 }\n }\n\n s 0000fa50: 74 61 74 69 63 20 64 61 74 61 41 70 69 4b 65 79 tatic dataApiKey 0000fa60: 64 6f 77 6e 48 61 6e 64 6c 65 72 28 65 76 65 6e downHandler(even 0000fa70: 74 29 20 7b 5c 6e 20 20 20 20 2f 2f 20 49 66 20 t) {\n // If 0000fa80: 6e 6f 74 20 61 6e 20 55 50 20 7c 20 44 4f 57 4e not an UP | DOWN 0000fa90: 20 7c 20 45 53 43 41 50 45 20 6b 65 79 20 3d 3e | ESCAPE key => 0000faa0: 20 6e 6f 74 20 61 20 64 72 6f 70 64 6f 77 6e 20 not a dropdown 0000fab0: 63 6f 6d 6d 61 6e 64 5c 6e 20 20 20 20 2f 2f 20 command\n // 0000fac0: 49 66 20 69 6e 70 75 74 2f 74 65 78 74 61 72 65 If input/textare 0000fad0: 61 20 26 26 20 69 66 20 6b 65 79 20 69 73 20 6f a && if key is o 0000fae0: 74 68 65 72 20 74 68 61 6e 20 45 53 43 41 50 45 ther than ESCAPE 0000faf0: 20 3d 3e 20 6e 6f 74 20 61 20 64 72 6f 70 64 6f => not a dropdo 0000fb00: 77 6e 20 63 6f 6d 6d 61 6e 64 5c 6e 5c 6e 20 20 wn command\n\n 0000fb10: 20 20 63 6f 6e 73 74 20 69 73 49 6e 70 75 74 20 const isInput 0000fb20: 3d 20 2f 69 6e 70 75 74 7c 74 65 78 74 61 72 65 = /input|textare 0000fb30: 61 2f 69 2e 74 65 73 74 28 65 76 65 6e 74 2e 74 a/i.test(event.t 0000fb40: 61 72 67 65 74 2e 74 61 67 4e 61 6d 65 29 5c 6e arget.tagName)\n 0000fb50: 20 20 20 20 63 6f 6e 73 74 20 69 73 45 73 63 61 const isEsca 0000fb60: 70 65 45 76 65 6e 74 20 3d 20 65 76 65 6e 74 2e peEvent = event. 0000fb70: 6b 65 79 20 3d 3d 3d 20 45 53 43 41 50 45 5f 4b key === ESCAPE_K 0000fb80: 45 59 5c 6e 20 20 20 20 63 6f 6e 73 74 20 69 73 EY\n const is 0000fb90: 55 70 4f 72 44 6f 77 6e 45 76 65 6e 74 20 3d 20 UpOrDownEvent = 0000fba0: 5b 41 52 52 4f 57 5f 55 50 5f 4b 45 59 2c 20 41 [ARROW_UP_KEY, A 0000fbb0: 52 52 4f 57 5f 44 4f 57 4e 5f 4b 45 59 5d 2e 69 RROW_DOWN_KEY].i 0000fbc0: 6e 63 6c 75 64 65 73 28 65 76 65 6e 74 2e 6b 65 ncludes(event.ke 0000fbd0: 79 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 69 y)\n\n if (!i 0000fbe0: 73 55 70 4f 72 44 6f 77 6e 45 76 65 6e 74 20 26 sUpOrDownEvent & 0000fbf0: 26 20 21 69 73 45 73 63 61 70 65 45 76 65 6e 74 & !isEscapeEvent 0000fc00: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 ) {\n retur 0000fc10: 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 n\n }\n\n 0000fc20: 69 66 20 28 69 73 49 6e 70 75 74 20 26 26 20 21 if (isInput && ! 0000fc30: 69 73 45 73 63 61 70 65 45 76 65 6e 74 29 20 7b isEscapeEvent) { 0000fc40: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 0000fc50: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 65 76 65 }\n\n eve 0000fc60: 6e 74 2e 70 72 65 76 65 6e 74 44 65 66 61 75 6c nt.preventDefaul 0000fc70: 74 28 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 54 4f t()\n\n // TO 0000fc80: 44 4f 3a 20 76 36 20 72 65 76 65 72 74 20 23 33 DO: v6 revert #3 0000fc90: 37 30 31 31 20 26 20 63 68 61 6e 67 65 20 6d 61 7011 & change ma 0000fca0: 72 6b 75 70 20 68 74 74 70 73 3a 2f 2f 67 65 74 rkup https://get 0000fcb0: 62 6f 6f 74 73 74 72 61 70 2e 63 6f 6d 2f 64 6f bootstrap.com/do 0000fcc0: 63 73 2f 35 2e 33 2f 66 6f 72 6d 73 2f 69 6e 70 cs/5.3/forms/inp 0000fcd0: 75 74 2d 67 72 6f 75 70 2f 5c 6e 20 20 20 20 63 ut-group/\n c 0000fce0: 6f 6e 73 74 20 67 65 74 54 6f 67 67 6c 65 42 75 onst getToggleBu 0000fcf0: 74 74 6f 6e 20 3d 20 74 68 69 73 2e 6d 61 74 63 tton = this.matc 0000fd00: 68 65 73 28 53 45 4c 45 43 54 4f 52 5f 44 41 54 hes(SELECTOR_DAT 0000fd10: 41 5f 54 4f 47 47 4c 45 29 20 3f 5c 6e 20 20 20 A_TOGGLE) ?\n 0000fd20: 20 20 20 74 68 69 73 20 3a 5c 6e 20 20 20 20 20 this :\n 0000fd30: 20 28 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 (SelectorEngine 0000fd40: 2e 70 72 65 76 28 74 68 69 73 2c 20 53 45 4c 45 .prev(this, SELE 0000fd50: 43 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 CTOR_DATA_TOGGLE 0000fd60: 29 5b 30 5d 20 7c 7c 5c 6e 20 20 20 20 20 20 20 )[0] ||\n 0000fd70: 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e SelectorEngine. 0000fd80: 6e 65 78 74 28 74 68 69 73 2c 20 53 45 4c 45 43 next(this, SELEC 0000fd90: 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 29 TOR_DATA_TOGGLE) 0000fda0: 5b 30 5d 20 7c 7c 5c 6e 20 20 20 20 20 20 20 20 [0] ||\n 0000fdb0: 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 SelectorEngine.f 0000fdc0: 69 6e 64 4f 6e 65 28 53 45 4c 45 43 54 4f 52 5f indOne(SELECTOR_ 0000fdd0: 44 41 54 41 5f 54 4f 47 47 4c 45 2c 20 65 76 65 DATA_TOGGLE, eve 0000fde0: 6e 74 2e 64 65 6c 65 67 61 74 65 54 61 72 67 65 nt.delegateTarge 0000fdf0: 74 2e 70 61 72 65 6e 74 4e 6f 64 65 29 29 5c 6e t.parentNode))\n 0000fe00: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 69 6e 73 74 \n const inst 0000fe10: 61 6e 63 65 20 3d 20 44 72 6f 70 64 6f 77 6e 2e ance = Dropdown. 0000fe20: 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 getOrCreateInsta 0000fe30: 6e 63 65 28 67 65 74 54 6f 67 67 6c 65 42 75 74 nce(getToggleBut 0000fe40: 74 6f 6e 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 ton)\n\n if ( 0000fe50: 69 73 55 70 4f 72 44 6f 77 6e 45 76 65 6e 74 29 isUpOrDownEvent) 0000fe60: 20 7b 5c 6e 20 20 20 20 20 20 65 76 65 6e 74 2e {\n event. 0000fe70: 73 74 6f 70 50 72 6f 70 61 67 61 74 69 6f 6e 28 stopPropagation( 0000fe80: 29 5c 6e 20 20 20 20 20 20 69 6e 73 74 61 6e 63 )\n instanc 0000fe90: 65 2e 73 68 6f 77 28 29 5c 6e 20 20 20 20 20 20 e.show()\n 0000fea0: 69 6e 73 74 61 6e 63 65 2e 5f 73 65 6c 65 63 74 instance._select 0000feb0: 4d 65 6e 75 49 74 65 6d 28 65 76 65 6e 74 29 5c MenuItem(event)\ 0000fec0: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 n return\n 0000fed0: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 }\n\n if ( 0000fee0: 69 6e 73 74 61 6e 63 65 2e 5f 69 73 53 68 6f 77 instance._isShow 0000fef0: 6e 28 29 29 20 7b 20 2f 2f 20 65 6c 73 65 20 69 n()) { // else i 0000ff00: 73 20 65 73 63 61 70 65 20 61 6e 64 20 77 65 20 s escape and we 0000ff10: 63 68 65 63 6b 20 69 66 20 69 74 20 69 73 20 73 check if it is s 0000ff20: 68 6f 77 6e 5c 6e 20 20 20 20 20 20 65 76 65 6e hown\n even 0000ff30: 74 2e 73 74 6f 70 50 72 6f 70 61 67 61 74 69 6f t.stopPropagatio 0000ff40: 6e 28 29 5c 6e 20 20 20 20 20 20 69 6e 73 74 61 n()\n insta 0000ff50: 6e 63 65 2e 68 69 64 65 28 29 5c 6e 20 20 20 20 nce.hide()\n 0000ff60: 20 20 67 65 74 54 6f 67 67 6c 65 42 75 74 74 6f getToggleButto 0000ff70: 6e 2e 66 6f 63 75 73 28 29 5c 6e 20 20 20 20 7d n.focus()\n } 0000ff80: 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c \n }\n}\n\n/**\ 0000ff90: 6e 20 2a 20 44 61 74 61 20 41 50 49 20 69 6d 70 n * Data API imp 0000ffa0: 6c 65 6d 65 6e 74 61 74 69 6f 6e 5c 6e 20 2a 2f lementation\n */ 0000ffb0: 5c 6e 5c 6e 45 76 65 6e 74 48 61 6e 64 6c 65 72 \n\nEventHandler 0000ffc0: 2e 6f 6e 28 64 6f 63 75 6d 65 6e 74 2c 20 45 56 .on(document, EV 0000ffd0: 45 4e 54 5f 4b 45 59 44 4f 57 4e 5f 44 41 54 41 ENT_KEYDOWN_DATA 0000ffe0: 5f 41 50 49 2c 20 53 45 4c 45 43 54 4f 52 5f 44 _API, SELECTOR_D 0000fff0: 41 54 41 5f 54 4f 47 47 4c 45 2c 20 44 72 6f 70 ATA_TOGGLE, Drop 00010000: 64 6f 77 6e 2e 64 61 74 61 41 70 69 4b 65 79 64 down.dataApiKeyd 00010010: 6f 77 6e 48 61 6e 64 6c 65 72 29 5c 6e 45 76 65 ownHandler)\nEve 00010020: 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 64 6f 63 ntHandler.on(doc 00010030: 75 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 4b 45 59 ument, EVENT_KEY 00010040: 44 4f 57 4e 5f 44 41 54 41 5f 41 50 49 2c 20 53 DOWN_DATA_API, S 00010050: 45 4c 45 43 54 4f 52 5f 4d 45 4e 55 2c 20 44 72 ELECTOR_MENU, Dr 00010060: 6f 70 64 6f 77 6e 2e 64 61 74 61 41 70 69 4b 65 opdown.dataApiKe 00010070: 79 64 6f 77 6e 48 61 6e 64 6c 65 72 29 5c 6e 45 ydownHandler)\nE 00010080: 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 64 ventHandler.on(d 00010090: 6f 63 75 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 43 ocument, EVENT_C 000100a0: 4c 49 43 4b 5f 44 41 54 41 5f 41 50 49 2c 20 44 LICK_DATA_API, D 000100b0: 72 6f 70 64 6f 77 6e 2e 63 6c 65 61 72 4d 65 6e ropdown.clearMen 000100c0: 75 73 29 5c 6e 45 76 65 6e 74 48 61 6e 64 6c 65 us)\nEventHandle 000100d0: 72 2e 6f 6e 28 64 6f 63 75 6d 65 6e 74 2c 20 45 r.on(document, E 000100e0: 56 45 4e 54 5f 4b 45 59 55 50 5f 44 41 54 41 5f VENT_KEYUP_DATA_ 000100f0: 41 50 49 2c 20 44 72 6f 70 64 6f 77 6e 2e 63 6c API, Dropdown.cl 00010100: 65 61 72 4d 65 6e 75 73 29 5c 6e 45 76 65 6e 74 earMenus)\nEvent 00010110: 48 61 6e 64 6c 65 72 2e 6f 6e 28 64 6f 63 75 6d Handler.on(docum 00010120: 65 6e 74 2c 20 45 56 45 4e 54 5f 43 4c 49 43 4b ent, EVENT_CLICK 00010130: 5f 44 41 54 41 5f 41 50 49 2c 20 53 45 4c 45 43 _DATA_API, SELEC 00010140: 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 2c TOR_DATA_TOGGLE, 00010150: 20 66 75 6e 63 74 69 6f 6e 20 28 65 76 65 6e 74 function (event 00010160: 29 20 7b 5c 6e 20 20 65 76 65 6e 74 2e 70 72 65 ) {\n event.pre 00010170: 76 65 6e 74 44 65 66 61 75 6c 74 28 29 5c 6e 20 ventDefault()\n 00010180: 20 44 72 6f 70 64 6f 77 6e 2e 67 65 74 4f 72 43 Dropdown.getOrC 00010190: 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 74 68 reateInstance(th 000101a0: 69 73 29 2e 74 6f 67 67 6c 65 28 29 5c 6e 7d 29 is).toggle()\n}) 000101b0: 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 6a 51 75 65 \n\n/**\n * jQue 000101c0: 72 79 5c 6e 20 2a 2f 5c 6e 5c 6e 64 65 66 69 6e ry\n */\n\ndefin 000101d0: 65 4a 51 75 65 72 79 50 6c 75 67 69 6e 28 44 72 eJQueryPlugin(Dr 000101e0: 6f 70 64 6f 77 6e 29 5c 6e 5c 6e 65 78 70 6f 72 opdown)\n\nexpor 000101f0: 74 20 64 65 66 61 75 6c 74 20 44 72 6f 70 64 6f t default Dropdo 00010200: 77 6e 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d wn\n","/**\n * - 00010210: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010220: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010230: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010240: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010250: 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f ---------\n * Bo 00010260: 6f 74 73 74 72 61 70 20 75 74 69 6c 2f 62 61 63 otstrap util/bac 00010270: 6b 64 72 6f 70 2e 6a 73 5c 6e 20 2a 20 4c 69 63 kdrop.js\n * Lic 00010280: 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 20 ensed under MIT 00010290: 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e (https://github. 000102a0: 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 72 com/twbs/bootstr 000102b0: 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 43 ap/blob/main/LIC 000102c0: 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d ENSE)\n * ------ 000102d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000102e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000102f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010300: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010310: 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d 70 ----\n */\n\nimp 00010320: 6f 72 74 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 ort EventHandler 00010330: 20 66 72 6f 6d 20 27 2e 2e 2f 64 6f 6d 2f 65 76 from '../dom/ev 00010340: 65 6e 74 2d 68 61 6e 64 6c 65 72 2e 6a 73 27 5c ent-handler.js'\ 00010350: 6e 69 6d 70 6f 72 74 20 43 6f 6e 66 69 67 20 66 nimport Config f 00010360: 72 6f 6d 20 27 2e 2f 63 6f 6e 66 69 67 2e 6a 73 rom './config.js 00010370: 27 5c 6e 69 6d 70 6f 72 74 20 7b 5c 6e 20 20 65 '\nimport {\n e 00010380: 78 65 63 75 74 65 2c 20 65 78 65 63 75 74 65 41 xecute, executeA 00010390: 66 74 65 72 54 72 61 6e 73 69 74 69 6f 6e 2c 20 fterTransition, 000103a0: 67 65 74 45 6c 65 6d 65 6e 74 2c 20 72 65 66 6c getElement, refl 000103b0: 6f 77 5c 6e 7d 20 66 72 6f 6d 20 27 2e 2f 69 6e ow\n} from './in 000103c0: 64 65 78 2e 6a 73 27 5c 6e 5c 6e 2f 2a 2a 5c 6e dex.js'\n\n/**\n 000103d0: 20 2a 20 43 6f 6e 73 74 61 6e 74 73 5c 6e 20 2a * Constants\n * 000103e0: 2f 5c 6e 5c 6e 63 6f 6e 73 74 20 4e 41 4d 45 20 /\n\nconst NAME 000103f0: 3d 20 27 62 61 63 6b 64 72 6f 70 27 5c 6e 63 6f = 'backdrop'\nco 00010400: 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 46 nst CLASS_NAME_F 00010410: 41 44 45 20 3d 20 27 66 61 64 65 27 5c 6e 63 6f ADE = 'fade'\nco 00010420: 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 nst CLASS_NAME_S 00010430: 48 4f 57 20 3d 20 27 73 68 6f 77 27 5c 6e 63 6f HOW = 'show'\nco 00010440: 6e 73 74 20 45 56 45 4e 54 5f 4d 4f 55 53 45 44 nst EVENT_MOUSED 00010450: 4f 57 4e 20 3d 20 60 6d 6f 75 73 65 64 6f 77 6e OWN = `mousedown 00010460: 2e 62 73 2e 24 7b 4e 41 4d 45 7d 60 5c 6e 5c 6e .bs.${NAME}`\n\n 00010470: 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 20 3d 20 const Default = 00010480: 7b 5c 6e 20 20 63 6c 61 73 73 4e 61 6d 65 3a 20 {\n className: 00010490: 27 6d 6f 64 61 6c 2d 62 61 63 6b 64 72 6f 70 27 'modal-backdrop' 000104a0: 2c 5c 6e 20 20 63 6c 69 63 6b 43 61 6c 6c 62 61 ,\n clickCallba 000104b0: 63 6b 3a 20 6e 75 6c 6c 2c 5c 6e 20 20 69 73 41 ck: null,\n isA 000104c0: 6e 69 6d 61 74 65 64 3a 20 66 61 6c 73 65 2c 5c nimated: false,\ 000104d0: 6e 20 20 69 73 56 69 73 69 62 6c 65 3a 20 74 72 n isVisible: tr 000104e0: 75 65 2c 20 2f 2f 20 69 66 20 66 61 6c 73 65 2c ue, // if false, 000104f0: 20 77 65 20 75 73 65 20 74 68 65 20 62 61 63 6b we use the back 00010500: 64 72 6f 70 20 68 65 6c 70 65 72 20 77 69 74 68 drop helper with 00010510: 6f 75 74 20 61 64 64 69 6e 67 20 61 6e 79 20 65 out adding any e 00010520: 6c 65 6d 65 6e 74 20 74 6f 20 74 68 65 20 64 6f lement to the do 00010530: 6d 5c 6e 20 20 72 6f 6f 74 45 6c 65 6d 65 6e 74 m\n rootElement 00010540: 3a 20 27 62 6f 64 79 27 20 2f 2f 20 67 69 76 65 : 'body' // give 00010550: 20 74 68 65 20 63 68 6f 69 63 65 20 74 6f 20 70 the choice to p 00010560: 6c 61 63 65 20 62 61 63 6b 64 72 6f 70 20 75 6e lace backdrop un 00010570: 64 65 72 20 64 69 66 66 65 72 65 6e 74 20 65 6c der different el 00010580: 65 6d 65 6e 74 73 5c 6e 7d 5c 6e 5c 6e 63 6f 6e ements\n}\n\ncon 00010590: 73 74 20 44 65 66 61 75 6c 74 54 79 70 65 20 3d st DefaultType = 000105a0: 20 7b 5c 6e 20 20 63 6c 61 73 73 4e 61 6d 65 3a {\n className: 000105b0: 20 27 73 74 72 69 6e 67 27 2c 5c 6e 20 20 63 6c 'string',\n cl 000105c0: 69 63 6b 43 61 6c 6c 62 61 63 6b 3a 20 27 28 66 ickCallback: '(f 000105d0: 75 6e 63 74 69 6f 6e 7c 6e 75 6c 6c 29 27 2c 5c unction|null)',\ 000105e0: 6e 20 20 69 73 41 6e 69 6d 61 74 65 64 3a 20 27 n isAnimated: ' 000105f0: 62 6f 6f 6c 65 61 6e 27 2c 5c 6e 20 20 69 73 56 boolean',\n isV 00010600: 69 73 69 62 6c 65 3a 20 27 62 6f 6f 6c 65 61 6e isible: 'boolean 00010610: 27 2c 5c 6e 20 20 72 6f 6f 74 45 6c 65 6d 65 6e ',\n rootElemen 00010620: 74 3a 20 27 28 65 6c 65 6d 65 6e 74 7c 73 74 72 t: '(element|str 00010630: 69 6e 67 29 27 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c ing)'\n}\n\n/**\ 00010640: 6e 20 2a 20 43 6c 61 73 73 20 64 65 66 69 6e 69 n * Class defini 00010650: 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6c 61 tion\n */\n\ncla 00010660: 73 73 20 42 61 63 6b 64 72 6f 70 20 65 78 74 65 ss Backdrop exte 00010670: 6e 64 73 20 43 6f 6e 66 69 67 20 7b 5c 6e 20 20 nds Config {\n 00010680: 63 6f 6e 73 74 72 75 63 74 6f 72 28 63 6f 6e 66 constructor(conf 00010690: 69 67 29 20 7b 5c 6e 20 20 20 20 73 75 70 65 72 ig) {\n super 000106a0: 28 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 63 6f ()\n this._co 000106b0: 6e 66 69 67 20 3d 20 74 68 69 73 2e 5f 67 65 74 nfig = this._get 000106c0: 43 6f 6e 66 69 67 28 63 6f 6e 66 69 67 29 5c 6e Config(config)\n 000106d0: 20 20 20 20 74 68 69 73 2e 5f 69 73 41 70 70 65 this._isAppe 000106e0: 6e 64 65 64 20 3d 20 66 61 6c 73 65 5c 6e 20 20 nded = false\n 000106f0: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 20 this._element 00010700: 3d 20 6e 75 6c 6c 5c 6e 20 20 7d 5c 6e 5c 6e 20 = null\n }\n\n 00010710: 20 2f 2f 20 47 65 74 74 65 72 73 5c 6e 20 20 73 // Getters\n s 00010720: 74 61 74 69 63 20 67 65 74 20 44 65 66 61 75 6c tatic get Defaul 00010730: 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 t() {\n retur 00010740: 6e 20 44 65 66 61 75 6c 74 5c 6e 20 20 7d 5c 6e n Default\n }\n 00010750: 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 20 44 \n static get D 00010760: 65 66 61 75 6c 74 54 79 70 65 28 29 20 7b 5c 6e efaultType() {\n 00010770: 20 20 20 20 72 65 74 75 72 6e 20 44 65 66 61 75 return Defau 00010780: 6c 74 54 79 70 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 ltType\n }\n\n 00010790: 20 73 74 61 74 69 63 20 67 65 74 20 4e 41 4d 45 static get NAME 000107a0: 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e () {\n return 000107b0: 20 4e 41 4d 45 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 NAME\n }\n\n 000107c0: 2f 2f 20 50 75 62 6c 69 63 5c 6e 20 20 73 68 6f // Public\n sho 000107d0: 77 28 63 61 6c 6c 62 61 63 6b 29 20 7b 5c 6e 20 w(callback) {\n 000107e0: 20 20 20 69 66 20 28 21 74 68 69 73 2e 5f 63 6f if (!this._co 000107f0: 6e 66 69 67 2e 69 73 56 69 73 69 62 6c 65 29 20 nfig.isVisible) 00010800: 7b 5c 6e 20 20 20 20 20 20 65 78 65 63 75 74 65 {\n execute 00010810: 28 63 61 6c 6c 62 61 63 6b 29 5c 6e 20 20 20 20 (callback)\n 00010820: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c return\n }\ 00010830: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 70 70 n\n this._app 00010840: 65 6e 64 28 29 5c 6e 5c 6e 20 20 20 20 63 6f 6e end()\n\n con 00010850: 73 74 20 65 6c 65 6d 65 6e 74 20 3d 20 74 68 69 st element = thi 00010860: 73 2e 5f 67 65 74 45 6c 65 6d 65 6e 74 28 29 5c s._getElement()\ 00010870: 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f 63 n if (this._c 00010880: 6f 6e 66 69 67 2e 69 73 41 6e 69 6d 61 74 65 64 onfig.isAnimated 00010890: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 66 6c 6f ) {\n reflo 000108a0: 77 28 65 6c 65 6d 65 6e 74 29 5c 6e 20 20 20 20 w(element)\n 000108b0: 7d 5c 6e 5c 6e 20 20 20 20 65 6c 65 6d 65 6e 74 }\n\n element 000108c0: 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 .classList.add(C 000108d0: 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c LASS_NAME_SHOW)\ 000108e0: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6d 75 n\n this._emu 000108f0: 6c 61 74 65 41 6e 69 6d 61 74 69 6f 6e 28 28 29 lateAnimation(() 00010900: 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 65 78 65 => {\n exe 00010910: 63 75 74 65 28 63 61 6c 6c 62 61 63 6b 29 5c 6e cute(callback)\n 00010920: 20 20 20 20 7d 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 })\n }\n\n 00010930: 20 68 69 64 65 28 63 61 6c 6c 62 61 63 6b 29 20 hide(callback) 00010940: 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 73 {\n if (!this 00010950: 2e 5f 63 6f 6e 66 69 67 2e 69 73 56 69 73 69 62 ._config.isVisib 00010960: 6c 65 29 20 7b 5c 6e 20 20 20 20 20 20 65 78 65 le) {\n exe 00010970: 63 75 74 65 28 63 61 6c 6c 62 61 63 6b 29 5c 6e cute(callback)\n 00010980: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 00010990: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 000109a0: 5f 67 65 74 45 6c 65 6d 65 6e 74 28 29 2e 63 6c _getElement().cl 000109b0: 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 65 28 43 assList.remove(C 000109c0: 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c LASS_NAME_SHOW)\ 000109d0: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6d 75 n\n this._emu 000109e0: 6c 61 74 65 41 6e 69 6d 61 74 69 6f 6e 28 28 29 lateAnimation(() 000109f0: 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 => {\n thi 00010a00: 73 2e 64 69 73 70 6f 73 65 28 29 5c 6e 20 20 20 s.dispose()\n 00010a10: 20 20 20 65 78 65 63 75 74 65 28 63 61 6c 6c 62 execute(callb 00010a20: 61 63 6b 29 5c 6e 20 20 20 20 7d 29 5c 6e 20 20 ack)\n })\n 00010a30: 7d 5c 6e 5c 6e 20 20 64 69 73 70 6f 73 65 28 29 }\n\n dispose() 00010a40: 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 {\n if (!thi 00010a50: 73 2e 5f 69 73 41 70 70 65 6e 64 65 64 29 20 7b s._isAppended) { 00010a60: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 00010a70: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 45 76 65 }\n\n Eve 00010a80: 6e 74 48 61 6e 64 6c 65 72 2e 6f 66 66 28 74 68 ntHandler.off(th 00010a90: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 is._element, EVE 00010aa0: 4e 54 5f 4d 4f 55 53 45 44 4f 57 4e 29 5c 6e 5c NT_MOUSEDOWN)\n\ 00010ab0: 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 n this._eleme 00010ac0: 6e 74 2e 72 65 6d 6f 76 65 28 29 5c 6e 20 20 20 nt.remove()\n 00010ad0: 20 74 68 69 73 2e 5f 69 73 41 70 70 65 6e 64 65 this._isAppende 00010ae0: 64 20 3d 20 66 61 6c 73 65 5c 6e 20 20 7d 5c 6e d = false\n }\n 00010af0: 5c 6e 20 20 2f 2f 20 50 72 69 76 61 74 65 5c 6e \n // Private\n 00010b00: 20 20 5f 67 65 74 45 6c 65 6d 65 6e 74 28 29 20 _getElement() 00010b10: 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 73 {\n if (!this 00010b20: 2e 5f 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 ._element) {\n 00010b30: 20 20 20 20 63 6f 6e 73 74 20 62 61 63 6b 64 72 const backdr 00010b40: 6f 70 20 3d 20 64 6f 63 75 6d 65 6e 74 2e 63 72 op = document.cr 00010b50: 65 61 74 65 45 6c 65 6d 65 6e 74 28 27 64 69 76 eateElement('div 00010b60: 27 29 5c 6e 20 20 20 20 20 20 62 61 63 6b 64 72 ')\n backdr 00010b70: 6f 70 2e 63 6c 61 73 73 4e 61 6d 65 20 3d 20 74 op.className = t 00010b80: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 63 6c 61 73 his._config.clas 00010b90: 73 4e 61 6d 65 5c 6e 20 20 20 20 20 20 69 66 20 sName\n if 00010ba0: 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 69 73 (this._config.is 00010bb0: 41 6e 69 6d 61 74 65 64 29 20 7b 5c 6e 20 20 20 Animated) {\n 00010bc0: 20 20 20 20 20 62 61 63 6b 64 72 6f 70 2e 63 6c backdrop.cl 00010bd0: 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 53 assList.add(CLAS 00010be0: 53 5f 4e 41 4d 45 5f 46 41 44 45 29 5c 6e 20 20 S_NAME_FADE)\n 00010bf0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 74 }\n\n t 00010c00: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 20 3d 20 62 his._element = b 00010c10: 61 63 6b 64 72 6f 70 5c 6e 20 20 20 20 7d 5c 6e ackdrop\n }\n 00010c20: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 \n return thi 00010c30: 73 2e 5f 65 6c 65 6d 65 6e 74 5c 6e 20 20 7d 5c s._element\n }\ 00010c40: 6e 5c 6e 20 20 5f 63 6f 6e 66 69 67 41 66 74 65 n\n _configAfte 00010c50: 72 4d 65 72 67 65 28 63 6f 6e 66 69 67 29 20 7b rMerge(config) { 00010c60: 5c 6e 20 20 20 20 2f 2f 20 75 73 65 20 67 65 74 \n // use get 00010c70: 45 6c 65 6d 65 6e 74 28 29 20 77 69 74 68 20 74 Element() with t 00010c80: 68 65 20 64 65 66 61 75 6c 74 20 5c 22 62 6f 64 he default \"bod 00010c90: 79 5c 22 20 74 6f 20 67 65 74 20 61 20 66 72 65 y\" to get a fre 00010ca0: 73 68 20 45 6c 65 6d 65 6e 74 20 6f 6e 20 65 61 sh Element on ea 00010cb0: 63 68 20 69 6e 73 74 61 6e 74 69 61 74 69 6f 6e ch instantiation 00010cc0: 5c 6e 20 20 20 20 63 6f 6e 66 69 67 2e 72 6f 6f \n config.roo 00010cd0: 74 45 6c 65 6d 65 6e 74 20 3d 20 67 65 74 45 6c tElement = getEl 00010ce0: 65 6d 65 6e 74 28 63 6f 6e 66 69 67 2e 72 6f 6f ement(config.roo 00010cf0: 74 45 6c 65 6d 65 6e 74 29 5c 6e 20 20 20 20 72 tElement)\n r 00010d00: 65 74 75 72 6e 20 63 6f 6e 66 69 67 5c 6e 20 20 eturn config\n 00010d10: 7d 5c 6e 5c 6e 20 20 5f 61 70 70 65 6e 64 28 29 }\n\n _append() 00010d20: 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 {\n if (this 00010d30: 2e 5f 69 73 41 70 70 65 6e 64 65 64 29 20 7b 5c ._isAppended) {\ 00010d40: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 n return\n 00010d50: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 }\n\n cons 00010d60: 74 20 65 6c 65 6d 65 6e 74 20 3d 20 74 68 69 73 t element = this 00010d70: 2e 5f 67 65 74 45 6c 65 6d 65 6e 74 28 29 5c 6e ._getElement()\n 00010d80: 20 20 20 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 this._config 00010d90: 2e 72 6f 6f 74 45 6c 65 6d 65 6e 74 2e 61 70 70 .rootElement.app 00010da0: 65 6e 64 28 65 6c 65 6d 65 6e 74 29 5c 6e 5c 6e end(element)\n\n 00010db0: 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 EventHandler 00010dc0: 2e 6f 6e 28 65 6c 65 6d 65 6e 74 2c 20 45 56 45 .on(element, EVE 00010dd0: 4e 54 5f 4d 4f 55 53 45 44 4f 57 4e 2c 20 28 29 NT_MOUSEDOWN, () 00010de0: 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 65 78 65 => {\n exe 00010df0: 63 75 74 65 28 74 68 69 73 2e 5f 63 6f 6e 66 69 cute(this._confi 00010e00: 67 2e 63 6c 69 63 6b 43 61 6c 6c 62 61 63 6b 29 g.clickCallback) 00010e10: 5c 6e 20 20 20 20 7d 29 5c 6e 5c 6e 20 20 20 20 \n })\n\n 00010e20: 74 68 69 73 2e 5f 69 73 41 70 70 65 6e 64 65 64 this._isAppended 00010e30: 20 3d 20 74 72 75 65 5c 6e 20 20 7d 5c 6e 5c 6e = true\n }\n\n 00010e40: 20 20 5f 65 6d 75 6c 61 74 65 41 6e 69 6d 61 74 _emulateAnimat 00010e50: 69 6f 6e 28 63 61 6c 6c 62 61 63 6b 29 20 7b 5c ion(callback) {\ 00010e60: 6e 20 20 20 20 65 78 65 63 75 74 65 41 66 74 65 n executeAfte 00010e70: 72 54 72 61 6e 73 69 74 69 6f 6e 28 63 61 6c 6c rTransition(call 00010e80: 62 61 63 6b 2c 20 74 68 69 73 2e 5f 67 65 74 45 back, this._getE 00010e90: 6c 65 6d 65 6e 74 28 29 2c 20 74 68 69 73 2e 5f lement(), this._ 00010ea0: 63 6f 6e 66 69 67 2e 69 73 41 6e 69 6d 61 74 65 config.isAnimate 00010eb0: 64 29 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c 6e 65 78 d)\n }\n}\n\nex 00010ec0: 70 6f 72 74 20 64 65 66 61 75 6c 74 20 42 61 63 port default Bac 00010ed0: 6b 64 72 6f 70 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 kdrop\n","/**\n 00010ee0: 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d * -------------- 00010ef0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010f00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010f10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010f20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a ------------\n * 00010f30: 20 42 6f 6f 74 73 74 72 61 70 20 75 74 69 6c 2f Bootstrap util/ 00010f40: 66 6f 63 75 73 74 72 61 70 2e 6a 73 5c 6e 20 2a focustrap.js\n * 00010f50: 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 72 20 Licensed under 00010f60: 4d 49 54 20 28 68 74 74 70 73 3a 2f 2f 67 69 74 MIT (https://git 00010f70: 68 75 62 2e 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f hub.com/twbs/boo 00010f80: 74 73 74 72 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e tstrap/blob/main 00010f90: 2f 4c 49 43 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d /LICENSE)\n * -- 00010fa0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010fb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010fc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010fd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00010fe0: 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c --------\n */\n\ 00010ff0: 6e 69 6d 70 6f 72 74 20 45 76 65 6e 74 48 61 6e nimport EventHan 00011000: 64 6c 65 72 20 66 72 6f 6d 20 27 2e 2e 2f 64 6f dler from '../do 00011010: 6d 2f 65 76 65 6e 74 2d 68 61 6e 64 6c 65 72 2e m/event-handler. 00011020: 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 53 65 6c 65 js'\nimport Sele 00011030: 63 74 6f 72 45 6e 67 69 6e 65 20 66 72 6f 6d 20 ctorEngine from 00011040: 27 2e 2e 2f 64 6f 6d 2f 73 65 6c 65 63 74 6f 72 '../dom/selector 00011050: 2d 65 6e 67 69 6e 65 2e 6a 73 27 5c 6e 69 6d 70 -engine.js'\nimp 00011060: 6f 72 74 20 43 6f 6e 66 69 67 20 66 72 6f 6d 20 ort Config from 00011070: 27 2e 2f 63 6f 6e 66 69 67 2e 6a 73 27 5c 6e 5c './config.js'\n\ 00011080: 6e 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e 73 74 61 6e n/**\n * Constan 00011090: 74 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 ts\n */\n\nconst 000110a0: 20 4e 41 4d 45 20 3d 20 27 66 6f 63 75 73 74 72 NAME = 'focustr 000110b0: 61 70 27 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f ap'\nconst DATA_ 000110c0: 4b 45 59 20 3d 20 27 62 73 2e 66 6f 63 75 73 74 KEY = 'bs.focust 000110d0: 72 61 70 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e rap'\nconst EVEN 000110e0: 54 5f 4b 45 59 20 3d 20 60 2e 24 7b 44 41 54 41 T_KEY = `.${DATA 000110f0: 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 _KEY}`\nconst EV 00011100: 45 4e 54 5f 46 4f 43 55 53 49 4e 20 3d 20 60 66 ENT_FOCUSIN = `f 00011110: 6f 63 75 73 69 6e 24 7b 45 56 45 4e 54 5f 4b 45 ocusin${EVENT_KE 00011120: 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 Y}`\nconst EVENT 00011130: 5f 4b 45 59 44 4f 57 4e 5f 54 41 42 20 3d 20 60 _KEYDOWN_TAB = ` 00011140: 6b 65 79 64 6f 77 6e 2e 74 61 62 24 7b 45 56 45 keydown.tab${EVE 00011150: 4e 54 5f 4b 45 59 7d 60 5c 6e 5c 6e 63 6f 6e 73 NT_KEY}`\n\ncons 00011160: 74 20 54 41 42 5f 4b 45 59 20 3d 20 27 54 61 62 t TAB_KEY = 'Tab 00011170: 27 5c 6e 63 6f 6e 73 74 20 54 41 42 5f 4e 41 56 '\nconst TAB_NAV 00011180: 5f 46 4f 52 57 41 52 44 20 3d 20 27 66 6f 72 77 _FORWARD = 'forw 00011190: 61 72 64 27 5c 6e 63 6f 6e 73 74 20 54 41 42 5f ard'\nconst TAB_ 000111a0: 4e 41 56 5f 42 41 43 4b 57 41 52 44 20 3d 20 27 NAV_BACKWARD = ' 000111b0: 62 61 63 6b 77 61 72 64 27 5c 6e 5c 6e 63 6f 6e backward'\n\ncon 000111c0: 73 74 20 44 65 66 61 75 6c 74 20 3d 20 7b 5c 6e st Default = {\n 000111d0: 20 20 61 75 74 6f 66 6f 63 75 73 3a 20 74 72 75 autofocus: tru 000111e0: 65 2c 5c 6e 20 20 74 72 61 70 45 6c 65 6d 65 6e e,\n trapElemen 000111f0: 74 3a 20 6e 75 6c 6c 20 2f 2f 20 54 68 65 20 65 t: null // The e 00011200: 6c 65 6d 65 6e 74 20 74 6f 20 74 72 61 70 20 66 lement to trap f 00011210: 6f 63 75 73 20 69 6e 73 69 64 65 20 6f 66 5c 6e ocus inside of\n 00011220: 7d 5c 6e 5c 6e 63 6f 6e 73 74 20 44 65 66 61 75 }\n\nconst Defau 00011230: 6c 74 54 79 70 65 20 3d 20 7b 5c 6e 20 20 61 75 ltType = {\n au 00011240: 74 6f 66 6f 63 75 73 3a 20 27 62 6f 6f 6c 65 61 tofocus: 'boolea 00011250: 6e 27 2c 5c 6e 20 20 74 72 61 70 45 6c 65 6d 65 n',\n trapEleme 00011260: 6e 74 3a 20 27 65 6c 65 6d 65 6e 74 27 5c 6e 7d nt: 'element'\n} 00011270: 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 \n\n/**\n * Clas 00011280: 73 20 64 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a s definition\n * 00011290: 2f 5c 6e 5c 6e 63 6c 61 73 73 20 46 6f 63 75 73 /\n\nclass Focus 000112a0: 54 72 61 70 20 65 78 74 65 6e 64 73 20 43 6f 6e Trap extends Con 000112b0: 66 69 67 20 7b 5c 6e 20 20 63 6f 6e 73 74 72 75 fig {\n constru 000112c0: 63 74 6f 72 28 63 6f 6e 66 69 67 29 20 7b 5c 6e ctor(config) {\n 000112d0: 20 20 20 20 73 75 70 65 72 28 29 5c 6e 20 20 20 super()\n 000112e0: 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 20 3d 20 this._config = 000112f0: 74 68 69 73 2e 5f 67 65 74 43 6f 6e 66 69 67 28 this._getConfig( 00011300: 63 6f 6e 66 69 67 29 5c 6e 20 20 20 20 74 68 69 config)\n thi 00011310: 73 2e 5f 69 73 41 63 74 69 76 65 20 3d 20 66 61 s._isActive = fa 00011320: 6c 73 65 5c 6e 20 20 20 20 74 68 69 73 2e 5f 6c lse\n this._l 00011330: 61 73 74 54 61 62 4e 61 76 44 69 72 65 63 74 69 astTabNavDirecti 00011340: 6f 6e 20 3d 20 6e 75 6c 6c 5c 6e 20 20 7d 5c 6e on = null\n }\n 00011350: 5c 6e 20 20 2f 2f 20 47 65 74 74 65 72 73 5c 6e \n // Getters\n 00011360: 20 20 73 74 61 74 69 63 20 67 65 74 20 44 65 66 static get Def 00011370: 61 75 6c 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 ault() {\n re 00011380: 74 75 72 6e 20 44 65 66 61 75 6c 74 5c 6e 20 20 turn Default\n 00011390: 7d 5c 6e 5c 6e 20 20 73 74 61 74 69 63 20 67 65 }\n\n static ge 000113a0: 74 20 44 65 66 61 75 6c 74 54 79 70 65 28 29 20 t DefaultType() 000113b0: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 44 65 {\n return De 000113c0: 66 61 75 6c 74 54 79 70 65 5c 6e 20 20 7d 5c 6e faultType\n }\n 000113d0: 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 20 4e \n static get N 000113e0: 41 4d 45 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 AME() {\n ret 000113f0: 75 72 6e 20 4e 41 4d 45 5c 6e 20 20 7d 5c 6e 5c urn NAME\n }\n\ 00011400: 6e 20 20 2f 2f 20 50 75 62 6c 69 63 5c 6e 20 20 n // Public\n 00011410: 61 63 74 69 76 61 74 65 28 29 20 7b 5c 6e 20 20 activate() {\n 00011420: 20 20 69 66 20 28 74 68 69 73 2e 5f 69 73 41 63 if (this._isAc 00011430: 74 69 76 65 29 20 7b 5c 6e 20 20 20 20 20 20 72 tive) {\n r 00011440: 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e eturn\n }\n\n 00011450: 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f 63 6f if (this._co 00011460: 6e 66 69 67 2e 61 75 74 6f 66 6f 63 75 73 29 20 nfig.autofocus) 00011470: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 63 {\n this._c 00011480: 6f 6e 66 69 67 2e 74 72 61 70 45 6c 65 6d 65 6e onfig.trapElemen 00011490: 74 2e 66 6f 63 75 73 28 29 5c 6e 20 20 20 20 7d t.focus()\n } 000114a0: 5c 6e 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e \n\n EventHan 000114b0: 64 6c 65 72 2e 6f 66 66 28 64 6f 63 75 6d 65 6e dler.off(documen 000114c0: 74 2c 20 45 56 45 4e 54 5f 4b 45 59 29 20 2f 2f t, EVENT_KEY) // 000114d0: 20 67 75 61 72 64 20 61 67 61 69 6e 73 74 20 69 guard against i 000114e0: 6e 66 69 6e 69 74 65 20 66 6f 63 75 73 20 6c 6f nfinite focus lo 000114f0: 6f 70 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e op\n EventHan 00011500: 64 6c 65 72 2e 6f 6e 28 64 6f 63 75 6d 65 6e 74 dler.on(document 00011510: 2c 20 45 56 45 4e 54 5f 46 4f 43 55 53 49 4e 2c , EVENT_FOCUSIN, 00011520: 20 65 76 65 6e 74 20 3d 3e 20 74 68 69 73 2e 5f event => this._ 00011530: 68 61 6e 64 6c 65 46 6f 63 75 73 69 6e 28 65 76 handleFocusin(ev 00011540: 65 6e 74 29 29 5c 6e 20 20 20 20 45 76 65 6e 74 ent))\n Event 00011550: 48 61 6e 64 6c 65 72 2e 6f 6e 28 64 6f 63 75 6d Handler.on(docum 00011560: 65 6e 74 2c 20 45 56 45 4e 54 5f 4b 45 59 44 4f ent, EVENT_KEYDO 00011570: 57 4e 5f 54 41 42 2c 20 65 76 65 6e 74 20 3d 3e WN_TAB, event => 00011580: 20 74 68 69 73 2e 5f 68 61 6e 64 6c 65 4b 65 79 this._handleKey 00011590: 64 6f 77 6e 28 65 76 65 6e 74 29 29 5c 6e 5c 6e down(event))\n\n 000115a0: 20 20 20 20 74 68 69 73 2e 5f 69 73 41 63 74 69 this._isActi 000115b0: 76 65 20 3d 20 74 72 75 65 5c 6e 20 20 7d 5c 6e ve = true\n }\n 000115c0: 5c 6e 20 20 64 65 61 63 74 69 76 61 74 65 28 29 \n deactivate() 000115d0: 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 {\n if (!thi 000115e0: 73 2e 5f 69 73 41 63 74 69 76 65 29 20 7b 5c 6e s._isActive) {\n 000115f0: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 00011600: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 00011610: 5f 69 73 41 63 74 69 76 65 20 3d 20 66 61 6c 73 _isActive = fals 00011620: 65 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 e\n EventHand 00011630: 6c 65 72 2e 6f 66 66 28 64 6f 63 75 6d 65 6e 74 ler.off(document 00011640: 2c 20 45 56 45 4e 54 5f 4b 45 59 29 5c 6e 20 20 , EVENT_KEY)\n 00011650: 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 72 69 76 61 74 }\n\n // Privat 00011660: 65 5c 6e 20 20 5f 68 61 6e 64 6c 65 46 6f 63 75 e\n _handleFocu 00011670: 73 69 6e 28 65 76 65 6e 74 29 20 7b 5c 6e 20 20 sin(event) {\n 00011680: 20 20 63 6f 6e 73 74 20 7b 20 74 72 61 70 45 6c const { trapEl 00011690: 65 6d 65 6e 74 20 7d 20 3d 20 74 68 69 73 2e 5f ement } = this._ 000116a0: 63 6f 6e 66 69 67 5c 6e 5c 6e 20 20 20 20 69 66 config\n\n if 000116b0: 20 28 65 76 65 6e 74 2e 74 61 72 67 65 74 20 3d (event.target = 000116c0: 3d 3d 20 64 6f 63 75 6d 65 6e 74 20 7c 7c 20 65 == document || e 000116d0: 76 65 6e 74 2e 74 61 72 67 65 74 20 3d 3d 3d 20 vent.target === 000116e0: 74 72 61 70 45 6c 65 6d 65 6e 74 20 7c 7c 20 74 trapElement || t 000116f0: 72 61 70 45 6c 65 6d 65 6e 74 2e 63 6f 6e 74 61 rapElement.conta 00011700: 69 6e 73 28 65 76 65 6e 74 2e 74 61 72 67 65 74 ins(event.target 00011710: 29 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 )) {\n retu 00011720: 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 rn\n }\n\n 00011730: 20 63 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 73 20 const elements 00011740: 3d 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 = SelectorEngine 00011750: 2e 66 6f 63 75 73 61 62 6c 65 43 68 69 6c 64 72 .focusableChildr 00011760: 65 6e 28 74 72 61 70 45 6c 65 6d 65 6e 74 29 5c en(trapElement)\ 00011770: 6e 5c 6e 20 20 20 20 69 66 20 28 65 6c 65 6d 65 n\n if (eleme 00011780: 6e 74 73 2e 6c 65 6e 67 74 68 20 3d 3d 3d 20 30 nts.length === 0 00011790: 29 20 7b 5c 6e 20 20 20 20 20 20 74 72 61 70 45 ) {\n trapE 000117a0: 6c 65 6d 65 6e 74 2e 66 6f 63 75 73 28 29 5c 6e lement.focus()\n 000117b0: 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 74 } else if (t 000117c0: 68 69 73 2e 5f 6c 61 73 74 54 61 62 4e 61 76 44 his._lastTabNavD 000117d0: 69 72 65 63 74 69 6f 6e 20 3d 3d 3d 20 54 41 42 irection === TAB 000117e0: 5f 4e 41 56 5f 42 41 43 4b 57 41 52 44 29 20 7b _NAV_BACKWARD) { 000117f0: 5c 6e 20 20 20 20 20 20 65 6c 65 6d 65 6e 74 73 \n elements 00011800: 5b 65 6c 65 6d 65 6e 74 73 2e 6c 65 6e 67 74 68 [elements.length 00011810: 20 2d 20 31 5d 2e 66 6f 63 75 73 28 29 5c 6e 20 - 1].focus()\n 00011820: 20 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 } else {\n 00011830: 20 20 20 65 6c 65 6d 65 6e 74 73 5b 30 5d 2e 66 elements[0].f 00011840: 6f 63 75 73 28 29 5c 6e 20 20 20 20 7d 5c 6e 20 ocus()\n }\n 00011850: 20 7d 5c 6e 5c 6e 20 20 5f 68 61 6e 64 6c 65 4b }\n\n _handleK 00011860: 65 79 64 6f 77 6e 28 65 76 65 6e 74 29 20 7b 5c eydown(event) {\ 00011870: 6e 20 20 20 20 69 66 20 28 65 76 65 6e 74 2e 6b n if (event.k 00011880: 65 79 20 21 3d 3d 20 54 41 42 5f 4b 45 59 29 20 ey !== TAB_KEY) 00011890: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c {\n return\ 000118a0: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 n }\n\n th 000118b0: 69 73 2e 5f 6c 61 73 74 54 61 62 4e 61 76 44 69 is._lastTabNavDi 000118c0: 72 65 63 74 69 6f 6e 20 3d 20 65 76 65 6e 74 2e rection = event. 000118d0: 73 68 69 66 74 4b 65 79 20 3f 20 54 41 42 5f 4e shiftKey ? TAB_N 000118e0: 41 56 5f 42 41 43 4b 57 41 52 44 20 3a 20 54 41 AV_BACKWARD : TA 000118f0: 42 5f 4e 41 56 5f 46 4f 52 57 41 52 44 5c 6e 20 B_NAV_FORWARD\n 00011900: 20 7d 5c 6e 7d 5c 6e 5c 6e 65 78 70 6f 72 74 20 }\n}\n\nexport 00011910: 64 65 66 61 75 6c 74 20 46 6f 63 75 73 54 72 61 default FocusTra 00011920: 70 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d 2d p\n","/**\n * -- 00011930: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011940: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011950: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011960: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011970: 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f 6f --------\n * Boo 00011980: 74 73 74 72 61 70 20 75 74 69 6c 2f 73 63 72 6f tstrap util/scro 00011990: 6c 6c 42 61 72 2e 6a 73 5c 6e 20 2a 20 4c 69 63 llBar.js\n * Lic 000119a0: 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 20 ensed under MIT 000119b0: 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e (https://github. 000119c0: 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 72 com/twbs/bootstr 000119d0: 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 43 ap/blob/main/LIC 000119e0: 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d ENSE)\n * ------ 000119f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011a00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011a10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011a20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00011a30: 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d 70 ----\n */\n\nimp 00011a40: 6f 72 74 20 4d 61 6e 69 70 75 6c 61 74 6f 72 20 ort Manipulator 00011a50: 66 72 6f 6d 20 27 2e 2e 2f 64 6f 6d 2f 6d 61 6e from '../dom/man 00011a60: 69 70 75 6c 61 74 6f 72 2e 6a 73 27 5c 6e 69 6d ipulator.js'\nim 00011a70: 70 6f 72 74 20 53 65 6c 65 63 74 6f 72 45 6e 67 port SelectorEng 00011a80: 69 6e 65 20 66 72 6f 6d 20 27 2e 2e 2f 64 6f 6d ine from '../dom 00011a90: 2f 73 65 6c 65 63 74 6f 72 2d 65 6e 67 69 6e 65 /selector-engine 00011aa0: 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 7b 20 69 .js'\nimport { i 00011ab0: 73 45 6c 65 6d 65 6e 74 20 7d 20 66 72 6f 6d 20 sElement } from 00011ac0: 27 2e 2f 69 6e 64 65 78 2e 6a 73 27 5c 6e 5c 6e './index.js'\n\n 00011ad0: 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e 73 74 61 6e 74 /**\n * Constant 00011ae0: 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 20 s\n */\n\nconst 00011af0: 53 45 4c 45 43 54 4f 52 5f 46 49 58 45 44 5f 43 SELECTOR_FIXED_C 00011b00: 4f 4e 54 45 4e 54 20 3d 20 27 2e 66 69 78 65 64 ONTENT = '.fixed 00011b10: 2d 74 6f 70 2c 20 2e 66 69 78 65 64 2d 62 6f 74 -top, .fixed-bot 00011b20: 74 6f 6d 2c 20 2e 69 73 2d 66 69 78 65 64 2c 20 tom, .is-fixed, 00011b30: 2e 73 74 69 63 6b 79 2d 74 6f 70 27 5c 6e 63 6f .sticky-top'\nco 00011b40: 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 53 54 49 nst SELECTOR_STI 00011b50: 43 4b 59 5f 43 4f 4e 54 45 4e 54 20 3d 20 27 2e CKY_CONTENT = '. 00011b60: 73 74 69 63 6b 79 2d 74 6f 70 27 5c 6e 63 6f 6e sticky-top'\ncon 00011b70: 73 74 20 50 52 4f 50 45 52 54 59 5f 50 41 44 44 st PROPERTY_PADD 00011b80: 49 4e 47 20 3d 20 27 70 61 64 64 69 6e 67 2d 72 ING = 'padding-r 00011b90: 69 67 68 74 27 5c 6e 63 6f 6e 73 74 20 50 52 4f ight'\nconst PRO 00011ba0: 50 45 52 54 59 5f 4d 41 52 47 49 4e 20 3d 20 27 PERTY_MARGIN = ' 00011bb0: 6d 61 72 67 69 6e 2d 72 69 67 68 74 27 5c 6e 5c margin-right'\n\ 00011bc0: 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 73 20 64 n/**\n * Class d 00011bd0: 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e efinition\n */\n 00011be0: 5c 6e 63 6c 61 73 73 20 53 63 72 6f 6c 6c 42 61 \nclass ScrollBa 00011bf0: 72 48 65 6c 70 65 72 20 7b 5c 6e 20 20 63 6f 6e rHelper {\n con 00011c00: 73 74 72 75 63 74 6f 72 28 29 20 7b 5c 6e 20 20 structor() {\n 00011c10: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 20 this._element 00011c20: 3d 20 64 6f 63 75 6d 65 6e 74 2e 62 6f 64 79 5c = document.body\ 00011c30: 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 75 62 n }\n\n // Pub 00011c40: 6c 69 63 5c 6e 20 20 67 65 74 57 69 64 74 68 28 lic\n getWidth( 00011c50: 29 20 7b 5c 6e 20 20 20 20 2f 2f 20 68 74 74 70 ) {\n // http 00011c60: 73 3a 2f 2f 64 65 76 65 6c 6f 70 65 72 2e 6d 6f s://developer.mo 00011c70: 7a 69 6c 6c 61 2e 6f 72 67 2f 65 6e 2d 55 53 2f zilla.org/en-US/ 00011c80: 64 6f 63 73 2f 57 65 62 2f 41 50 49 2f 57 69 6e docs/Web/API/Win 00011c90: 64 6f 77 2f 69 6e 6e 65 72 57 69 64 74 68 23 75 dow/innerWidth#u 00011ca0: 73 61 67 65 5f 6e 6f 74 65 73 5c 6e 20 20 20 20 sage_notes\n 00011cb0: 63 6f 6e 73 74 20 64 6f 63 75 6d 65 6e 74 57 69 const documentWi 00011cc0: 64 74 68 20 3d 20 64 6f 63 75 6d 65 6e 74 2e 64 dth = document.d 00011cd0: 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 2e 63 ocumentElement.c 00011ce0: 6c 69 65 6e 74 57 69 64 74 68 5c 6e 20 20 20 20 lientWidth\n 00011cf0: 72 65 74 75 72 6e 20 4d 61 74 68 2e 61 62 73 28 return Math.abs( 00011d00: 77 69 6e 64 6f 77 2e 69 6e 6e 65 72 57 69 64 74 window.innerWidt 00011d10: 68 20 2d 20 64 6f 63 75 6d 65 6e 74 57 69 64 74 h - documentWidt 00011d20: 68 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 68 69 64 h)\n }\n\n hid 00011d30: 65 28 29 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 e() {\n const 00011d40: 20 77 69 64 74 68 20 3d 20 74 68 69 73 2e 67 65 width = this.ge 00011d50: 74 57 69 64 74 68 28 29 5c 6e 20 20 20 20 74 68 tWidth()\n th 00011d60: 69 73 2e 5f 64 69 73 61 62 6c 65 4f 76 65 72 46 is._disableOverF 00011d70: 6c 6f 77 28 29 5c 6e 20 20 20 20 2f 2f 20 67 69 low()\n // gi 00011d80: 76 65 20 70 61 64 64 69 6e 67 20 74 6f 20 65 6c ve padding to el 00011d90: 65 6d 65 6e 74 20 74 6f 20 62 61 6c 61 6e 63 65 ement to balance 00011da0: 20 74 68 65 20 68 69 64 64 65 6e 20 73 63 72 6f the hidden scro 00011db0: 6c 6c 62 61 72 20 77 69 64 74 68 5c 6e 20 20 20 llbar width\n 00011dc0: 20 74 68 69 73 2e 5f 73 65 74 45 6c 65 6d 65 6e this._setElemen 00011dd0: 74 41 74 74 72 69 62 75 74 65 73 28 74 68 69 73 tAttributes(this 00011de0: 2e 5f 65 6c 65 6d 65 6e 74 2c 20 50 52 4f 50 45 ._element, PROPE 00011df0: 52 54 59 5f 50 41 44 44 49 4e 47 2c 20 63 61 6c RTY_PADDING, cal 00011e00: 63 75 6c 61 74 65 64 56 61 6c 75 65 20 3d 3e 20 culatedValue => 00011e10: 63 61 6c 63 75 6c 61 74 65 64 56 61 6c 75 65 20 calculatedValue 00011e20: 2b 20 77 69 64 74 68 29 5c 6e 20 20 20 20 2f 2f + width)\n // 00011e30: 20 74 72 69 63 6b 3a 20 57 65 20 61 64 6a 75 73 trick: We adjus 00011e40: 74 20 70 6f 73 69 74 69 76 65 20 70 61 64 64 69 t positive paddi 00011e50: 6e 67 52 69 67 68 74 20 61 6e 64 20 6e 65 67 61 ngRight and nega 00011e60: 74 69 76 65 20 6d 61 72 67 69 6e 52 69 67 68 74 tive marginRight 00011e70: 20 74 6f 20 73 74 69 63 6b 79 2d 74 6f 70 20 65 to sticky-top e 00011e80: 6c 65 6d 65 6e 74 73 20 74 6f 20 6b 65 65 70 20 lements to keep 00011e90: 73 68 6f 77 69 6e 67 20 66 75 6c 6c 77 69 64 74 showing fullwidt 00011ea0: 68 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 65 74 h\n this._set 00011eb0: 45 6c 65 6d 65 6e 74 41 74 74 72 69 62 75 74 65 ElementAttribute 00011ec0: 73 28 53 45 4c 45 43 54 4f 52 5f 46 49 58 45 44 s(SELECTOR_FIXED 00011ed0: 5f 43 4f 4e 54 45 4e 54 2c 20 50 52 4f 50 45 52 _CONTENT, PROPER 00011ee0: 54 59 5f 50 41 44 44 49 4e 47 2c 20 63 61 6c 63 TY_PADDING, calc 00011ef0: 75 6c 61 74 65 64 56 61 6c 75 65 20 3d 3e 20 63 ulatedValue => c 00011f00: 61 6c 63 75 6c 61 74 65 64 56 61 6c 75 65 20 2b alculatedValue + 00011f10: 20 77 69 64 74 68 29 5c 6e 20 20 20 20 74 68 69 width)\n thi 00011f20: 73 2e 5f 73 65 74 45 6c 65 6d 65 6e 74 41 74 74 s._setElementAtt 00011f30: 72 69 62 75 74 65 73 28 53 45 4c 45 43 54 4f 52 ributes(SELECTOR 00011f40: 5f 53 54 49 43 4b 59 5f 43 4f 4e 54 45 4e 54 2c _STICKY_CONTENT, 00011f50: 20 50 52 4f 50 45 52 54 59 5f 4d 41 52 47 49 4e PROPERTY_MARGIN 00011f60: 2c 20 63 61 6c 63 75 6c 61 74 65 64 56 61 6c 75 , calculatedValu 00011f70: 65 20 3d 3e 20 63 61 6c 63 75 6c 61 74 65 64 56 e => calculatedV 00011f80: 61 6c 75 65 20 2d 20 77 69 64 74 68 29 5c 6e 20 alue - width)\n 00011f90: 20 7d 5c 6e 5c 6e 20 20 72 65 73 65 74 28 29 20 }\n\n reset() 00011fa0: 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f 72 65 73 {\n this._res 00011fb0: 65 74 45 6c 65 6d 65 6e 74 41 74 74 72 69 62 75 etElementAttribu 00011fc0: 74 65 73 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e tes(this._elemen 00011fd0: 74 2c 20 27 6f 76 65 72 66 6c 6f 77 27 29 5c 6e t, 'overflow')\n 00011fe0: 20 20 20 20 74 68 69 73 2e 5f 72 65 73 65 74 45 this._resetE 00011ff0: 6c 65 6d 65 6e 74 41 74 74 72 69 62 75 74 65 73 lementAttributes 00012000: 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 (this._element, 00012010: 50 52 4f 50 45 52 54 59 5f 50 41 44 44 49 4e 47 PROPERTY_PADDING 00012020: 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 72 65 73 )\n this._res 00012030: 65 74 45 6c 65 6d 65 6e 74 41 74 74 72 69 62 75 etElementAttribu 00012040: 74 65 73 28 53 45 4c 45 43 54 4f 52 5f 46 49 58 tes(SELECTOR_FIX 00012050: 45 44 5f 43 4f 4e 54 45 4e 54 2c 20 50 52 4f 50 ED_CONTENT, PROP 00012060: 45 52 54 59 5f 50 41 44 44 49 4e 47 29 5c 6e 20 ERTY_PADDING)\n 00012070: 20 20 20 74 68 69 73 2e 5f 72 65 73 65 74 45 6c this._resetEl 00012080: 65 6d 65 6e 74 41 74 74 72 69 62 75 74 65 73 28 ementAttributes( 00012090: 53 45 4c 45 43 54 4f 52 5f 53 54 49 43 4b 59 5f SELECTOR_STICKY_ 000120a0: 43 4f 4e 54 45 4e 54 2c 20 50 52 4f 50 45 52 54 CONTENT, PROPERT 000120b0: 59 5f 4d 41 52 47 49 4e 29 5c 6e 20 20 7d 5c 6e Y_MARGIN)\n }\n 000120c0: 5c 6e 20 20 69 73 4f 76 65 72 66 6c 6f 77 69 6e \n isOverflowin 000120d0: 67 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 g() {\n retur 000120e0: 6e 20 74 68 69 73 2e 67 65 74 57 69 64 74 68 28 n this.getWidth( 000120f0: 29 20 3e 20 30 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 ) > 0\n }\n\n 00012100: 2f 2f 20 50 72 69 76 61 74 65 5c 6e 20 20 5f 64 // Private\n _d 00012110: 69 73 61 62 6c 65 4f 76 65 72 46 6c 6f 77 28 29 isableOverFlow() 00012120: 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 61 {\n this._sa 00012130: 76 65 49 6e 69 74 69 61 6c 41 74 74 72 69 62 75 veInitialAttribu 00012140: 74 65 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 te(this._element 00012150: 2c 20 27 6f 76 65 72 66 6c 6f 77 27 29 5c 6e 20 , 'overflow')\n 00012160: 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 this._element 00012170: 2e 73 74 79 6c 65 2e 6f 76 65 72 66 6c 6f 77 20 .style.overflow 00012180: 3d 20 27 68 69 64 64 65 6e 27 5c 6e 20 20 7d 5c = 'hidden'\n }\ 00012190: 6e 5c 6e 20 20 5f 73 65 74 45 6c 65 6d 65 6e 74 n\n _setElement 000121a0: 41 74 74 72 69 62 75 74 65 73 28 73 65 6c 65 63 Attributes(selec 000121b0: 74 6f 72 2c 20 73 74 79 6c 65 50 72 6f 70 65 72 tor, styleProper 000121c0: 74 79 2c 20 63 61 6c 6c 62 61 63 6b 29 20 7b 5c ty, callback) {\ 000121d0: 6e 20 20 20 20 63 6f 6e 73 74 20 73 63 72 6f 6c n const scrol 000121e0: 6c 62 61 72 57 69 64 74 68 20 3d 20 74 68 69 73 lbarWidth = this 000121f0: 2e 67 65 74 57 69 64 74 68 28 29 5c 6e 20 20 20 .getWidth()\n 00012200: 20 63 6f 6e 73 74 20 6d 61 6e 69 70 75 6c 61 74 const manipulat 00012210: 69 6f 6e 43 61 6c 6c 42 61 63 6b 20 3d 20 65 6c ionCallBack = el 00012220: 65 6d 65 6e 74 20 3d 3e 20 7b 5c 6e 20 20 20 20 ement => {\n 00012230: 20 20 69 66 20 28 65 6c 65 6d 65 6e 74 20 21 3d if (element != 00012240: 3d 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 20 = this._element 00012250: 26 26 20 77 69 6e 64 6f 77 2e 69 6e 6e 65 72 57 && window.innerW 00012260: 69 64 74 68 20 3e 20 65 6c 65 6d 65 6e 74 2e 63 idth > element.c 00012270: 6c 69 65 6e 74 57 69 64 74 68 20 2b 20 73 63 72 lientWidth + scr 00012280: 6f 6c 6c 62 61 72 57 69 64 74 68 29 20 7b 5c 6e ollbarWidth) {\n 00012290: 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e return\n 000122a0: 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 }\n\n 000122b0: 20 74 68 69 73 2e 5f 73 61 76 65 49 6e 69 74 69 this._saveIniti 000122c0: 61 6c 41 74 74 72 69 62 75 74 65 28 65 6c 65 6d alAttribute(elem 000122d0: 65 6e 74 2c 20 73 74 79 6c 65 50 72 6f 70 65 72 ent, styleProper 000122e0: 74 79 29 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 ty)\n const 000122f0: 20 63 61 6c 63 75 6c 61 74 65 64 56 61 6c 75 65 calculatedValue 00012300: 20 3d 20 77 69 6e 64 6f 77 2e 67 65 74 43 6f 6d = window.getCom 00012310: 70 75 74 65 64 53 74 79 6c 65 28 65 6c 65 6d 65 putedStyle(eleme 00012320: 6e 74 29 2e 67 65 74 50 72 6f 70 65 72 74 79 56 nt).getPropertyV 00012330: 61 6c 75 65 28 73 74 79 6c 65 50 72 6f 70 65 72 alue(styleProper 00012340: 74 79 29 5c 6e 20 20 20 20 20 20 65 6c 65 6d 65 ty)\n eleme 00012350: 6e 74 2e 73 74 79 6c 65 2e 73 65 74 50 72 6f 70 nt.style.setProp 00012360: 65 72 74 79 28 73 74 79 6c 65 50 72 6f 70 65 72 erty(styleProper 00012370: 74 79 2c 20 60 24 7b 63 61 6c 6c 62 61 63 6b 28 ty, `${callback( 00012380: 4e 75 6d 62 65 72 2e 70 61 72 73 65 46 6c 6f 61 Number.parseFloa 00012390: 74 28 63 61 6c 63 75 6c 61 74 65 64 56 61 6c 75 t(calculatedValu 000123a0: 65 29 29 7d 70 78 60 29 5c 6e 20 20 20 20 7d 5c e))}px`)\n }\ 000123b0: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 70 70 n\n this._app 000123c0: 6c 79 4d 61 6e 69 70 75 6c 61 74 69 6f 6e 43 61 lyManipulationCa 000123d0: 6c 6c 62 61 63 6b 28 73 65 6c 65 63 74 6f 72 2c llback(selector, 000123e0: 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 43 61 6c manipulationCal 000123f0: 6c 42 61 63 6b 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 lBack)\n }\n\n 00012400: 20 5f 73 61 76 65 49 6e 69 74 69 61 6c 41 74 74 _saveInitialAtt 00012410: 72 69 62 75 74 65 28 65 6c 65 6d 65 6e 74 2c 20 ribute(element, 00012420: 73 74 79 6c 65 50 72 6f 70 65 72 74 79 29 20 7b styleProperty) { 00012430: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 61 63 74 75 \n const actu 00012440: 61 6c 56 61 6c 75 65 20 3d 20 65 6c 65 6d 65 6e alValue = elemen 00012450: 74 2e 73 74 79 6c 65 2e 67 65 74 50 72 6f 70 65 t.style.getPrope 00012460: 72 74 79 56 61 6c 75 65 28 73 74 79 6c 65 50 72 rtyValue(stylePr 00012470: 6f 70 65 72 74 79 29 5c 6e 20 20 20 20 69 66 20 operty)\n if 00012480: 28 61 63 74 75 61 6c 56 61 6c 75 65 29 20 7b 5c (actualValue) {\ 00012490: 6e 20 20 20 20 20 20 4d 61 6e 69 70 75 6c 61 74 n Manipulat 000124a0: 6f 72 2e 73 65 74 44 61 74 61 41 74 74 72 69 62 or.setDataAttrib 000124b0: 75 74 65 28 65 6c 65 6d 65 6e 74 2c 20 73 74 79 ute(element, sty 000124c0: 6c 65 50 72 6f 70 65 72 74 79 2c 20 61 63 74 75 leProperty, actu 000124d0: 61 6c 56 61 6c 75 65 29 5c 6e 20 20 20 20 7d 5c alValue)\n }\ 000124e0: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 72 65 73 65 74 n }\n\n _reset 000124f0: 45 6c 65 6d 65 6e 74 41 74 74 72 69 62 75 74 65 ElementAttribute 00012500: 73 28 73 65 6c 65 63 74 6f 72 2c 20 73 74 79 6c s(selector, styl 00012510: 65 50 72 6f 70 65 72 74 79 29 20 7b 5c 6e 20 20 eProperty) {\n 00012520: 20 20 63 6f 6e 73 74 20 6d 61 6e 69 70 75 6c 61 const manipula 00012530: 74 69 6f 6e 43 61 6c 6c 42 61 63 6b 20 3d 20 65 tionCallBack = e 00012540: 6c 65 6d 65 6e 74 20 3d 3e 20 7b 5c 6e 20 20 20 lement => {\n 00012550: 20 20 20 63 6f 6e 73 74 20 76 61 6c 75 65 20 3d const value = 00012560: 20 4d 61 6e 69 70 75 6c 61 74 6f 72 2e 67 65 74 Manipulator.get 00012570: 44 61 74 61 41 74 74 72 69 62 75 74 65 28 65 6c DataAttribute(el 00012580: 65 6d 65 6e 74 2c 20 73 74 79 6c 65 50 72 6f 70 ement, styleProp 00012590: 65 72 74 79 29 5c 6e 20 20 20 20 20 20 2f 2f 20 erty)\n // 000125a0: 57 65 20 6f 6e 6c 79 20 77 61 6e 74 20 74 6f 20 We only want to 000125b0: 72 65 6d 6f 76 65 20 74 68 65 20 70 72 6f 70 65 remove the prope 000125c0: 72 74 79 20 69 66 20 74 68 65 20 76 61 6c 75 65 rty if the value 000125d0: 20 69 73 20 60 6e 75 6c 6c 60 3b 20 74 68 65 20 is `null`; the 000125e0: 76 61 6c 75 65 20 63 61 6e 20 61 6c 73 6f 20 62 value can also b 000125f0: 65 20 7a 65 72 6f 5c 6e 20 20 20 20 20 20 69 66 e zero\n if 00012600: 20 28 76 61 6c 75 65 20 3d 3d 3d 20 6e 75 6c 6c (value === null 00012610: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 65 6c 65 ) {\n ele 00012620: 6d 65 6e 74 2e 73 74 79 6c 65 2e 72 65 6d 6f 76 ment.style.remov 00012630: 65 50 72 6f 70 65 72 74 79 28 73 74 79 6c 65 50 eProperty(styleP 00012640: 72 6f 70 65 72 74 79 29 5c 6e 20 20 20 20 20 20 roperty)\n 00012650: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 20 20 return\n 00012660: 7d 5c 6e 5c 6e 20 20 20 20 20 20 4d 61 6e 69 70 }\n\n Manip 00012670: 75 6c 61 74 6f 72 2e 72 65 6d 6f 76 65 44 61 74 ulator.removeDat 00012680: 61 41 74 74 72 69 62 75 74 65 28 65 6c 65 6d 65 aAttribute(eleme 00012690: 6e 74 2c 20 73 74 79 6c 65 50 72 6f 70 65 72 74 nt, stylePropert 000126a0: 79 29 5c 6e 20 20 20 20 20 20 65 6c 65 6d 65 6e y)\n elemen 000126b0: 74 2e 73 74 79 6c 65 2e 73 65 74 50 72 6f 70 65 t.style.setPrope 000126c0: 72 74 79 28 73 74 79 6c 65 50 72 6f 70 65 72 74 rty(stylePropert 000126d0: 79 2c 20 76 61 6c 75 65 29 5c 6e 20 20 20 20 7d y, value)\n } 000126e0: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 70 \n\n this._ap 000126f0: 70 6c 79 4d 61 6e 69 70 75 6c 61 74 69 6f 6e 43 plyManipulationC 00012700: 61 6c 6c 62 61 63 6b 28 73 65 6c 65 63 74 6f 72 allback(selector 00012710: 2c 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 43 61 , manipulationCa 00012720: 6c 6c 42 61 63 6b 29 5c 6e 20 20 7d 5c 6e 5c 6e llBack)\n }\n\n 00012730: 20 20 5f 61 70 70 6c 79 4d 61 6e 69 70 75 6c 61 _applyManipula 00012740: 74 69 6f 6e 43 61 6c 6c 62 61 63 6b 28 73 65 6c tionCallback(sel 00012750: 65 63 74 6f 72 2c 20 63 61 6c 6c 42 61 63 6b 29 ector, callBack) 00012760: 20 7b 5c 6e 20 20 20 20 69 66 20 28 69 73 45 6c {\n if (isEl 00012770: 65 6d 65 6e 74 28 73 65 6c 65 63 74 6f 72 29 29 ement(selector)) 00012780: 20 7b 5c 6e 20 20 20 20 20 20 63 61 6c 6c 42 61 {\n callBa 00012790: 63 6b 28 73 65 6c 65 63 74 6f 72 29 5c 6e 20 20 ck(selector)\n 000127a0: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 000127b0: 7d 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 63 6f }\n\n for (co 000127c0: 6e 73 74 20 73 65 6c 20 6f 66 20 53 65 6c 65 63 nst sel of Selec 000127d0: 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 28 73 torEngine.find(s 000127e0: 65 6c 65 63 74 6f 72 2c 20 74 68 69 73 2e 5f 65 elector, this._e 000127f0: 6c 65 6d 65 6e 74 29 29 20 7b 5c 6e 20 20 20 20 lement)) {\n 00012800: 20 20 63 61 6c 6c 42 61 63 6b 28 73 65 6c 29 5c callBack(sel)\ 00012810: 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 7d 5c 6e n }\n }\n}\n 00012820: 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 \nexport default 00012830: 20 53 63 72 6f 6c 6c 42 61 72 48 65 6c 70 65 72 ScrollBarHelper 00012840: 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d 2d 2d \n","/**\n * --- 00012850: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012860: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012870: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012880: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012890: 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f 6f 74 -------\n * Boot 000128a0: 73 74 72 61 70 20 6d 6f 64 61 6c 2e 6a 73 5c 6e strap modal.js\n 000128b0: 20 2a 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 * Licensed unde 000128c0: 72 20 4d 49 54 20 28 68 74 74 70 73 3a 2f 2f 67 r MIT (https://g 000128d0: 69 74 68 75 62 2e 63 6f 6d 2f 74 77 62 73 2f 62 ithub.com/twbs/b 000128e0: 6f 6f 74 73 74 72 61 70 2f 62 6c 6f 62 2f 6d 61 ootstrap/blob/ma 000128f0: 69 6e 2f 4c 49 43 45 4e 53 45 29 5c 6e 20 2a 20 in/LICENSE)\n * 00012900: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012910: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012920: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012930: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00012940: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c ----------\n */\ 00012950: 6e 5c 6e 69 6d 70 6f 72 74 20 42 61 73 65 43 6f n\nimport BaseCo 00012960: 6d 70 6f 6e 65 6e 74 20 66 72 6f 6d 20 27 2e 2f mponent from './ 00012970: 62 61 73 65 2d 63 6f 6d 70 6f 6e 65 6e 74 2e 6a base-component.j 00012980: 73 27 5c 6e 69 6d 70 6f 72 74 20 45 76 65 6e 74 s'\nimport Event 00012990: 48 61 6e 64 6c 65 72 20 66 72 6f 6d 20 27 2e 2f Handler from './ 000129a0: 64 6f 6d 2f 65 76 65 6e 74 2d 68 61 6e 64 6c 65 dom/event-handle 000129b0: 72 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 53 65 r.js'\nimport Se 000129c0: 6c 65 63 74 6f 72 45 6e 67 69 6e 65 20 66 72 6f lectorEngine fro 000129d0: 6d 20 27 2e 2f 64 6f 6d 2f 73 65 6c 65 63 74 6f m './dom/selecto 000129e0: 72 2d 65 6e 67 69 6e 65 2e 6a 73 27 5c 6e 69 6d r-engine.js'\nim 000129f0: 70 6f 72 74 20 42 61 63 6b 64 72 6f 70 20 66 72 port Backdrop fr 00012a00: 6f 6d 20 27 2e 2f 75 74 69 6c 2f 62 61 63 6b 64 om './util/backd 00012a10: 72 6f 70 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 rop.js'\nimport 00012a20: 7b 20 65 6e 61 62 6c 65 44 69 73 6d 69 73 73 54 { enableDismissT 00012a30: 72 69 67 67 65 72 20 7d 20 66 72 6f 6d 20 27 2e rigger } from '. 00012a40: 2f 75 74 69 6c 2f 63 6f 6d 70 6f 6e 65 6e 74 2d /util/component- 00012a50: 66 75 6e 63 74 69 6f 6e 73 2e 6a 73 27 5c 6e 69 functions.js'\ni 00012a60: 6d 70 6f 72 74 20 46 6f 63 75 73 54 72 61 70 20 mport FocusTrap 00012a70: 66 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 66 6f 63 from './util/foc 00012a80: 75 73 74 72 61 70 2e 6a 73 27 5c 6e 69 6d 70 6f ustrap.js'\nimpo 00012a90: 72 74 20 7b 5c 6e 20 20 64 65 66 69 6e 65 4a 51 rt {\n defineJQ 00012aa0: 75 65 72 79 50 6c 75 67 69 6e 2c 20 69 73 52 54 ueryPlugin, isRT 00012ab0: 4c 2c 20 69 73 56 69 73 69 62 6c 65 2c 20 72 65 L, isVisible, re 00012ac0: 66 6c 6f 77 5c 6e 7d 20 66 72 6f 6d 20 27 2e 2f flow\n} from './ 00012ad0: 75 74 69 6c 2f 69 6e 64 65 78 2e 6a 73 27 5c 6e util/index.js'\n 00012ae0: 69 6d 70 6f 72 74 20 53 63 72 6f 6c 6c 42 61 72 import ScrollBar 00012af0: 48 65 6c 70 65 72 20 66 72 6f 6d 20 27 2e 2f 75 Helper from './u 00012b00: 74 69 6c 2f 73 63 72 6f 6c 6c 62 61 72 2e 6a 73 til/scrollbar.js 00012b10: 27 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e '\n\n/**\n * Con 00012b20: 73 74 61 6e 74 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 stants\n */\n\nc 00012b30: 6f 6e 73 74 20 4e 41 4d 45 20 3d 20 27 6d 6f 64 onst NAME = 'mod 00012b40: 61 6c 27 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f al'\nconst DATA_ 00012b50: 4b 45 59 20 3d 20 27 62 73 2e 6d 6f 64 61 6c 27 KEY = 'bs.modal' 00012b60: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4b 45 \nconst EVENT_KE 00012b70: 59 20 3d 20 60 2e 24 7b 44 41 54 41 5f 4b 45 59 Y = `.${DATA_KEY 00012b80: 7d 60 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f 41 }`\nconst DATA_A 00012b90: 50 49 5f 4b 45 59 20 3d 20 27 2e 64 61 74 61 2d PI_KEY = '.data- 00012ba0: 61 70 69 27 5c 6e 63 6f 6e 73 74 20 45 53 43 41 api'\nconst ESCA 00012bb0: 50 45 5f 4b 45 59 20 3d 20 27 45 73 63 61 70 65 PE_KEY = 'Escape 00012bc0: 27 5c 6e 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 '\n\nconst EVENT 00012bd0: 5f 48 49 44 45 20 3d 20 60 68 69 64 65 24 7b 45 _HIDE = `hide${E 00012be0: 56 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 VENT_KEY}`\ncons 00012bf0: 74 20 45 56 45 4e 54 5f 48 49 44 45 5f 50 52 45 t EVENT_HIDE_PRE 00012c00: 56 45 4e 54 45 44 20 3d 20 60 68 69 64 65 50 72 VENTED = `hidePr 00012c10: 65 76 65 6e 74 65 64 24 7b 45 56 45 4e 54 5f 4b evented${EVENT_K 00012c20: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e EY}`\nconst EVEN 00012c30: 54 5f 48 49 44 44 45 4e 20 3d 20 60 68 69 64 64 T_HIDDEN = `hidd 00012c40: 65 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c en${EVENT_KEY}`\ 00012c50: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 53 48 4f nconst EVENT_SHO 00012c60: 57 20 3d 20 60 73 68 6f 77 24 7b 45 56 45 4e 54 W = `show${EVENT 00012c70: 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 _KEY}`\nconst EV 00012c80: 45 4e 54 5f 53 48 4f 57 4e 20 3d 20 60 73 68 6f ENT_SHOWN = `sho 00012c90: 77 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c wn${EVENT_KEY}`\ 00012ca0: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 52 45 53 nconst EVENT_RES 00012cb0: 49 5a 45 20 3d 20 60 72 65 73 69 7a 65 24 7b 45 IZE = `resize${E 00012cc0: 56 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 VENT_KEY}`\ncons 00012cd0: 74 20 45 56 45 4e 54 5f 43 4c 49 43 4b 5f 44 49 t EVENT_CLICK_DI 00012ce0: 53 4d 49 53 53 20 3d 20 60 63 6c 69 63 6b 2e 64 SMISS = `click.d 00012cf0: 69 73 6d 69 73 73 24 7b 45 56 45 4e 54 5f 4b 45 ismiss${EVENT_KE 00012d00: 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 Y}`\nconst EVENT 00012d10: 5f 4d 4f 55 53 45 44 4f 57 4e 5f 44 49 53 4d 49 _MOUSEDOWN_DISMI 00012d20: 53 53 20 3d 20 60 6d 6f 75 73 65 64 6f 77 6e 2e SS = `mousedown. 00012d30: 64 69 73 6d 69 73 73 24 7b 45 56 45 4e 54 5f 4b dismiss${EVENT_K 00012d40: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e EY}`\nconst EVEN 00012d50: 54 5f 4b 45 59 44 4f 57 4e 5f 44 49 53 4d 49 53 T_KEYDOWN_DISMIS 00012d60: 53 20 3d 20 60 6b 65 79 64 6f 77 6e 2e 64 69 73 S = `keydown.dis 00012d70: 6d 69 73 73 24 7b 45 56 45 4e 54 5f 4b 45 59 7d miss${EVENT_KEY} 00012d80: 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 43 `\nconst EVENT_C 00012d90: 4c 49 43 4b 5f 44 41 54 41 5f 41 50 49 20 3d 20 LICK_DATA_API = 00012da0: 60 63 6c 69 63 6b 24 7b 45 56 45 4e 54 5f 4b 45 `click${EVENT_KE 00012db0: 59 7d 24 7b 44 41 54 41 5f 41 50 49 5f 4b 45 59 Y}${DATA_API_KEY 00012dc0: 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 }`\n\nconst CLAS 00012dd0: 53 5f 4e 41 4d 45 5f 4f 50 45 4e 20 3d 20 27 6d S_NAME_OPEN = 'm 00012de0: 6f 64 61 6c 2d 6f 70 65 6e 27 5c 6e 63 6f 6e 73 odal-open'\ncons 00012df0: 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 46 41 44 t CLASS_NAME_FAD 00012e00: 45 20 3d 20 27 66 61 64 65 27 5c 6e 63 6f 6e 73 E = 'fade'\ncons 00012e10: 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f t CLASS_NAME_SHO 00012e20: 57 20 3d 20 27 73 68 6f 77 27 5c 6e 63 6f 6e 73 W = 'show'\ncons 00012e30: 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 54 41 t CLASS_NAME_STA 00012e40: 54 49 43 20 3d 20 27 6d 6f 64 61 6c 2d 73 74 61 TIC = 'modal-sta 00012e50: 74 69 63 27 5c 6e 5c 6e 63 6f 6e 73 74 20 4f 50 tic'\n\nconst OP 00012e60: 45 4e 5f 53 45 4c 45 43 54 4f 52 20 3d 20 27 2e EN_SELECTOR = '. 00012e70: 6d 6f 64 61 6c 2e 73 68 6f 77 27 5c 6e 63 6f 6e modal.show'\ncon 00012e80: 73 74 20 53 45 4c 45 43 54 4f 52 5f 44 49 41 4c st SELECTOR_DIAL 00012e90: 4f 47 20 3d 20 27 2e 6d 6f 64 61 6c 2d 64 69 61 OG = '.modal-dia 00012ea0: 6c 6f 67 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 log'\nconst SELE 00012eb0: 43 54 4f 52 5f 4d 4f 44 41 4c 5f 42 4f 44 59 20 CTOR_MODAL_BODY 00012ec0: 3d 20 27 2e 6d 6f 64 61 6c 2d 62 6f 64 79 27 5c = '.modal-body'\ 00012ed0: 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f nconst SELECTOR_ 00012ee0: 44 41 54 41 5f 54 4f 47 47 4c 45 20 3d 20 27 5b DATA_TOGGLE = '[ 00012ef0: 64 61 74 61 2d 62 73 2d 74 6f 67 67 6c 65 3d 5c data-bs-toggle=\ 00012f00: 22 6d 6f 64 61 6c 5c 22 5d 27 5c 6e 5c 6e 63 6f "modal\"]'\n\nco 00012f10: 6e 73 74 20 44 65 66 61 75 6c 74 20 3d 20 7b 5c nst Default = {\ 00012f20: 6e 20 20 62 61 63 6b 64 72 6f 70 3a 20 74 72 75 n backdrop: tru 00012f30: 65 2c 5c 6e 20 20 66 6f 63 75 73 3a 20 74 72 75 e,\n focus: tru 00012f40: 65 2c 5c 6e 20 20 6b 65 79 62 6f 61 72 64 3a 20 e,\n keyboard: 00012f50: 74 72 75 65 5c 6e 7d 5c 6e 5c 6e 63 6f 6e 73 74 true\n}\n\nconst 00012f60: 20 44 65 66 61 75 6c 74 54 79 70 65 20 3d 20 7b DefaultType = { 00012f70: 5c 6e 20 20 62 61 63 6b 64 72 6f 70 3a 20 27 28 \n backdrop: '( 00012f80: 62 6f 6f 6c 65 61 6e 7c 73 74 72 69 6e 67 29 27 boolean|string)' 00012f90: 2c 5c 6e 20 20 66 6f 63 75 73 3a 20 27 62 6f 6f ,\n focus: 'boo 00012fa0: 6c 65 61 6e 27 2c 5c 6e 20 20 6b 65 79 62 6f 61 lean',\n keyboa 00012fb0: 72 64 3a 20 27 62 6f 6f 6c 65 61 6e 27 5c 6e 7d rd: 'boolean'\n} 00012fc0: 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 \n\n/**\n * Clas 00012fd0: 73 20 64 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a s definition\n * 00012fe0: 2f 5c 6e 5c 6e 63 6c 61 73 73 20 4d 6f 64 61 6c /\n\nclass Modal 00012ff0: 20 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d extends BaseCom 00013000: 70 6f 6e 65 6e 74 20 7b 5c 6e 20 20 63 6f 6e 73 ponent {\n cons 00013010: 74 72 75 63 74 6f 72 28 65 6c 65 6d 65 6e 74 2c tructor(element, 00013020: 20 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 config) {\n 00013030: 73 75 70 65 72 28 65 6c 65 6d 65 6e 74 2c 20 63 super(element, c 00013040: 6f 6e 66 69 67 29 5c 6e 5c 6e 20 20 20 20 74 68 onfig)\n\n th 00013050: 69 73 2e 5f 64 69 61 6c 6f 67 20 3d 20 53 65 6c is._dialog = Sel 00013060: 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 ectorEngine.find 00013070: 4f 6e 65 28 53 45 4c 45 43 54 4f 52 5f 44 49 41 One(SELECTOR_DIA 00013080: 4c 4f 47 2c 20 74 68 69 73 2e 5f 65 6c 65 6d 65 LOG, this._eleme 00013090: 6e 74 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 62 nt)\n this._b 000130a0: 61 63 6b 64 72 6f 70 20 3d 20 74 68 69 73 2e 5f ackdrop = this._ 000130b0: 69 6e 69 74 69 61 6c 69 7a 65 42 61 63 6b 44 72 initializeBackDr 000130c0: 6f 70 28 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f op()\n this._ 000130d0: 66 6f 63 75 73 74 72 61 70 20 3d 20 74 68 69 73 focustrap = this 000130e0: 2e 5f 69 6e 69 74 69 61 6c 69 7a 65 46 6f 63 75 ._initializeFocu 000130f0: 73 54 72 61 70 28 29 5c 6e 20 20 20 20 74 68 69 sTrap()\n thi 00013100: 73 2e 5f 69 73 53 68 6f 77 6e 20 3d 20 66 61 6c s._isShown = fal 00013110: 73 65 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 73 se\n this._is 00013120: 54 72 61 6e 73 69 74 69 6f 6e 69 6e 67 20 3d 20 Transitioning = 00013130: 66 61 6c 73 65 5c 6e 20 20 20 20 74 68 69 73 2e false\n this. 00013140: 5f 73 63 72 6f 6c 6c 42 61 72 20 3d 20 6e 65 77 _scrollBar = new 00013150: 20 53 63 72 6f 6c 6c 42 61 72 48 65 6c 70 65 72 ScrollBarHelper 00013160: 28 29 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f ()\n\n this._ 00013170: 61 64 64 45 76 65 6e 74 4c 69 73 74 65 6e 65 72 addEventListener 00013180: 73 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f s()\n }\n\n // 00013190: 20 47 65 74 74 65 72 73 5c 6e 20 20 73 74 61 74 Getters\n stat 000131a0: 69 63 20 67 65 74 20 44 65 66 61 75 6c 74 28 29 ic get Default() 000131b0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 44 {\n return D 000131c0: 65 66 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e 20 efault\n }\n\n 000131d0: 20 73 74 61 74 69 63 20 67 65 74 20 44 65 66 61 static get Defa 000131e0: 75 6c 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 20 ultType() {\n 000131f0: 20 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 54 return DefaultT 00013200: 79 70 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 74 ype\n }\n\n st 00013210: 61 74 69 63 20 67 65 74 20 4e 41 4d 45 28 29 20 atic get NAME() 00013220: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 4e 41 {\n return NA 00013230: 4d 45 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 ME\n }\n\n // 00013240: 50 75 62 6c 69 63 5c 6e 20 20 74 6f 67 67 6c 65 Public\n toggle 00013250: 28 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 20 (relatedTarget) 00013260: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 {\n return th 00013270: 69 73 2e 5f 69 73 53 68 6f 77 6e 20 3f 20 74 68 is._isShown ? th 00013280: 69 73 2e 68 69 64 65 28 29 20 3a 20 74 68 69 73 is.hide() : this 00013290: 2e 73 68 6f 77 28 72 65 6c 61 74 65 64 54 61 72 .show(relatedTar 000132a0: 67 65 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 get)\n }\n\n s 000132b0: 68 6f 77 28 72 65 6c 61 74 65 64 54 61 72 67 65 how(relatedTarge 000132c0: 74 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 t) {\n if (th 000132d0: 69 73 2e 5f 69 73 53 68 6f 77 6e 20 7c 7c 20 74 is._isShown || t 000132e0: 68 69 73 2e 5f 69 73 54 72 61 6e 73 69 74 69 6f his._isTransitio 000132f0: 6e 69 6e 67 29 20 7b 5c 6e 20 20 20 20 20 20 72 ning) {\n r 00013300: 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e eturn\n }\n\n 00013310: 20 20 20 20 63 6f 6e 73 74 20 73 68 6f 77 45 76 const showEv 00013320: 65 6e 74 20 3d 20 45 76 65 6e 74 48 61 6e 64 6c ent = EventHandl 00013330: 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e er.trigger(this. 00013340: 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f _element, EVENT_ 00013350: 53 48 4f 57 2c 20 7b 5c 6e 20 20 20 20 20 20 72 SHOW, {\n r 00013360: 65 6c 61 74 65 64 54 61 72 67 65 74 5c 6e 20 20 elatedTarget\n 00013370: 20 20 7d 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 })\n\n if ( 00013380: 73 68 6f 77 45 76 65 6e 74 2e 64 65 66 61 75 6c showEvent.defaul 00013390: 74 50 72 65 76 65 6e 74 65 64 29 20 7b 5c 6e 20 tPrevented) {\n 000133a0: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 000133b0: 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f }\n\n this._ 000133c0: 69 73 53 68 6f 77 6e 20 3d 20 74 72 75 65 5c 6e isShown = true\n 000133d0: 20 20 20 20 74 68 69 73 2e 5f 69 73 54 72 61 6e this._isTran 000133e0: 73 69 74 69 6f 6e 69 6e 67 20 3d 20 74 72 75 65 sitioning = true 000133f0: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 63 \n\n this._sc 00013400: 72 6f 6c 6c 42 61 72 2e 68 69 64 65 28 29 5c 6e rollBar.hide()\n 00013410: 5c 6e 20 20 20 20 64 6f 63 75 6d 65 6e 74 2e 62 \n document.b 00013420: 6f 64 79 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 ody.classList.ad 00013430: 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 4f 50 45 d(CLASS_NAME_OPE 00013440: 4e 29 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f N)\n\n this._ 00013450: 61 64 6a 75 73 74 44 69 61 6c 6f 67 28 29 5c 6e adjustDialog()\n 00013460: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 62 61 63 6b \n this._back 00013470: 64 72 6f 70 2e 73 68 6f 77 28 28 29 20 3d 3e 20 drop.show(() => 00013480: 74 68 69 73 2e 5f 73 68 6f 77 45 6c 65 6d 65 6e this._showElemen 00013490: 74 28 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 t(relatedTarget) 000134a0: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 68 69 64 65 )\n }\n\n hide 000134b0: 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 () {\n if (!t 000134c0: 68 69 73 2e 5f 69 73 53 68 6f 77 6e 20 7c 7c 20 his._isShown || 000134d0: 74 68 69 73 2e 5f 69 73 54 72 61 6e 73 69 74 69 this._isTransiti 000134e0: 6f 6e 69 6e 67 29 20 7b 5c 6e 20 20 20 20 20 20 oning) {\n 000134f0: 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c return\n }\n\ 00013500: 6e 20 20 20 20 63 6f 6e 73 74 20 68 69 64 65 45 n const hideE 00013510: 76 65 6e 74 20 3d 20 45 76 65 6e 74 48 61 6e 64 vent = EventHand 00013520: 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 ler.trigger(this 00013530: 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 ._element, EVENT 00013540: 5f 48 49 44 45 29 5c 6e 5c 6e 20 20 20 20 69 66 _HIDE)\n\n if 00013550: 20 28 68 69 64 65 45 76 65 6e 74 2e 64 65 66 61 (hideEvent.defa 00013560: 75 6c 74 50 72 65 76 65 6e 74 65 64 29 20 7b 5c ultPrevented) {\ 00013570: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 n return\n 00013580: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 }\n\n this 00013590: 2e 5f 69 73 53 68 6f 77 6e 20 3d 20 66 61 6c 73 ._isShown = fals 000135a0: 65 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 73 54 e\n this._isT 000135b0: 72 61 6e 73 69 74 69 6f 6e 69 6e 67 20 3d 20 74 ransitioning = t 000135c0: 72 75 65 5c 6e 20 20 20 20 74 68 69 73 2e 5f 66 rue\n this._f 000135d0: 6f 63 75 73 74 72 61 70 2e 64 65 61 63 74 69 76 ocustrap.deactiv 000135e0: 61 74 65 28 29 5c 6e 5c 6e 20 20 20 20 74 68 69 ate()\n\n thi 000135f0: 73 2e 5f 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 s._element.class 00013600: 4c 69 73 74 2e 72 65 6d 6f 76 65 28 43 4c 41 53 List.remove(CLAS 00013610: 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 5c 6e S_NAME_SHOW)\n\n 00013620: 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 65 43 this._queueC 00013630: 61 6c 6c 62 61 63 6b 28 28 29 20 3d 3e 20 74 68 allback(() => th 00013640: 69 73 2e 5f 68 69 64 65 4d 6f 64 61 6c 28 29 2c is._hideModal(), 00013650: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 this._element, 00013660: 74 68 69 73 2e 5f 69 73 41 6e 69 6d 61 74 65 64 this._isAnimated 00013670: 28 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 64 69 ())\n }\n\n di 00013680: 73 70 6f 73 65 28 29 20 7b 5c 6e 20 20 20 20 45 spose() {\n E 00013690: 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 66 66 28 ventHandler.off( 000136a0: 77 69 6e 64 6f 77 2c 20 45 56 45 4e 54 5f 4b 45 window, EVENT_KE 000136b0: 59 29 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e Y)\n EventHan 000136c0: 64 6c 65 72 2e 6f 66 66 28 74 68 69 73 2e 5f 64 dler.off(this._d 000136d0: 69 61 6c 6f 67 2c 20 45 56 45 4e 54 5f 4b 45 59 ialog, EVENT_KEY 000136e0: 29 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 62 )\n\n this._b 000136f0: 61 63 6b 64 72 6f 70 2e 64 69 73 70 6f 73 65 28 ackdrop.dispose( 00013700: 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 66 6f 63 )\n this._foc 00013710: 75 73 74 72 61 70 2e 64 65 61 63 74 69 76 61 74 ustrap.deactivat 00013720: 65 28 29 5c 6e 5c 6e 20 20 20 20 73 75 70 65 72 e()\n\n super 00013730: 2e 64 69 73 70 6f 73 65 28 29 5c 6e 20 20 7d 5c .dispose()\n }\ 00013740: 6e 5c 6e 20 20 68 61 6e 64 6c 65 55 70 64 61 74 n\n handleUpdat 00013750: 65 28 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e e() {\n this. 00013760: 5f 61 64 6a 75 73 74 44 69 61 6c 6f 67 28 29 5c _adjustDialog()\ 00013770: 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 72 69 n }\n\n // Pri 00013780: 76 61 74 65 5c 6e 20 20 5f 69 6e 69 74 69 61 6c vate\n _initial 00013790: 69 7a 65 42 61 63 6b 44 72 6f 70 28 29 20 7b 5c izeBackDrop() {\ 000137a0: 6e 20 20 20 20 72 65 74 75 72 6e 20 6e 65 77 20 n return new 000137b0: 42 61 63 6b 64 72 6f 70 28 7b 5c 6e 20 20 20 20 Backdrop({\n 000137c0: 20 20 69 73 56 69 73 69 62 6c 65 3a 20 42 6f 6f isVisible: Boo 000137d0: 6c 65 61 6e 28 74 68 69 73 2e 5f 63 6f 6e 66 69 lean(this._confi 000137e0: 67 2e 62 61 63 6b 64 72 6f 70 29 2c 20 2f 2f 20 g.backdrop), // 000137f0: 27 73 74 61 74 69 63 27 20 6f 70 74 69 6f 6e 20 'static' option 00013800: 77 69 6c 6c 20 62 65 20 74 72 61 6e 73 6c 61 74 will be translat 00013810: 65 64 20 74 6f 20 74 72 75 65 2c 20 61 6e 64 20 ed to true, and 00013820: 62 6f 6f 6c 65 61 6e 73 20 77 69 6c 6c 20 6b 65 booleans will ke 00013830: 65 70 20 74 68 65 69 72 20 76 61 6c 75 65 2c 5c ep their value,\ 00013840: 6e 20 20 20 20 20 20 69 73 41 6e 69 6d 61 74 65 n isAnimate 00013850: 64 3a 20 74 68 69 73 2e 5f 69 73 41 6e 69 6d 61 d: this._isAnima 00013860: 74 65 64 28 29 5c 6e 20 20 20 20 7d 29 5c 6e 20 ted()\n })\n 00013870: 20 7d 5c 6e 5c 6e 20 20 5f 69 6e 69 74 69 61 6c }\n\n _initial 00013880: 69 7a 65 46 6f 63 75 73 54 72 61 70 28 29 20 7b izeFocusTrap() { 00013890: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6e 65 77 \n return new 000138a0: 20 46 6f 63 75 73 54 72 61 70 28 7b 5c 6e 20 20 FocusTrap({\n 000138b0: 20 20 20 20 74 72 61 70 45 6c 65 6d 65 6e 74 3a trapElement: 000138c0: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 5c 6e this._element\n 000138d0: 20 20 20 20 7d 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 })\n }\n\n 000138e0: 20 5f 73 68 6f 77 45 6c 65 6d 65 6e 74 28 72 65 _showElement(re 000138f0: 6c 61 74 65 64 54 61 72 67 65 74 29 20 7b 5c 6e latedTarget) {\n 00013900: 20 20 20 20 2f 2f 20 74 72 79 20 74 6f 20 61 70 // try to ap 00013910: 70 65 6e 64 20 64 79 6e 61 6d 69 63 20 6d 6f 64 pend dynamic mod 00013920: 61 6c 5c 6e 20 20 20 20 69 66 20 28 21 64 6f 63 al\n if (!doc 00013930: 75 6d 65 6e 74 2e 62 6f 64 79 2e 63 6f 6e 74 61 ument.body.conta 00013940: 69 6e 73 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e ins(this._elemen 00013950: 74 29 29 20 7b 5c 6e 20 20 20 20 20 20 64 6f 63 t)) {\n doc 00013960: 75 6d 65 6e 74 2e 62 6f 64 79 2e 61 70 70 65 6e ument.body.appen 00013970: 64 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 29 d(this._element) 00013980: 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 \n }\n\n t 00013990: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 73 74 79 his._element.sty 000139a0: 6c 65 2e 64 69 73 70 6c 61 79 20 3d 20 27 62 6c le.display = 'bl 000139b0: 6f 63 6b 27 5c 6e 20 20 20 20 74 68 69 73 2e 5f ock'\n this._ 000139c0: 65 6c 65 6d 65 6e 74 2e 72 65 6d 6f 76 65 41 74 element.removeAt 000139d0: 74 72 69 62 75 74 65 28 27 61 72 69 61 2d 68 69 tribute('aria-hi 000139e0: 64 64 65 6e 27 29 5c 6e 20 20 20 20 74 68 69 73 dden')\n this 000139f0: 2e 5f 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 ._element.setAtt 00013a00: 72 69 62 75 74 65 28 27 61 72 69 61 2d 6d 6f 64 ribute('aria-mod 00013a10: 61 6c 27 2c 20 74 72 75 65 29 5c 6e 20 20 20 20 al', true)\n 00013a20: 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 73 65 this._element.se 00013a30: 74 41 74 74 72 69 62 75 74 65 28 27 72 6f 6c 65 tAttribute('role 00013a40: 27 2c 20 27 64 69 61 6c 6f 67 27 29 5c 6e 20 20 ', 'dialog')\n 00013a50: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e this._element. 00013a60: 73 63 72 6f 6c 6c 54 6f 70 20 3d 20 30 5c 6e 5c scrollTop = 0\n\ 00013a70: 6e 20 20 20 20 63 6f 6e 73 74 20 6d 6f 64 61 6c n const modal 00013a80: 42 6f 64 79 20 3d 20 53 65 6c 65 63 74 6f 72 45 Body = SelectorE 00013a90: 6e 67 69 6e 65 2e 66 69 6e 64 4f 6e 65 28 53 45 ngine.findOne(SE 00013aa0: 4c 45 43 54 4f 52 5f 4d 4f 44 41 4c 5f 42 4f 44 LECTOR_MODAL_BOD 00013ab0: 59 2c 20 74 68 69 73 2e 5f 64 69 61 6c 6f 67 29 Y, this._dialog) 00013ac0: 5c 6e 20 20 20 20 69 66 20 28 6d 6f 64 61 6c 42 \n if (modalB 00013ad0: 6f 64 79 29 20 7b 5c 6e 20 20 20 20 20 20 6d 6f ody) {\n mo 00013ae0: 64 61 6c 42 6f 64 79 2e 73 63 72 6f 6c 6c 54 6f dalBody.scrollTo 00013af0: 70 20 3d 20 30 5c 6e 20 20 20 20 7d 5c 6e 5c 6e p = 0\n }\n\n 00013b00: 20 20 20 20 72 65 66 6c 6f 77 28 74 68 69 73 2e reflow(this. 00013b10: 5f 65 6c 65 6d 65 6e 74 29 5c 6e 5c 6e 20 20 20 _element)\n\n 00013b20: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 63 this._element.c 00013b30: 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 lassList.add(CLA 00013b40: 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 5c SS_NAME_SHOW)\n\ 00013b50: 6e 20 20 20 20 63 6f 6e 73 74 20 74 72 61 6e 73 n const trans 00013b60: 69 74 69 6f 6e 43 6f 6d 70 6c 65 74 65 20 3d 20 itionComplete = 00013b70: 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 69 () => {\n i 00013b80: 66 20 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e f (this._config. 00013b90: 66 6f 63 75 73 29 20 7b 5c 6e 20 20 20 20 20 20 focus) {\n 00013ba0: 20 20 74 68 69 73 2e 5f 66 6f 63 75 73 74 72 61 this._focustra 00013bb0: 70 2e 61 63 74 69 76 61 74 65 28 29 5c 6e 20 20 p.activate()\n 00013bc0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 74 }\n\n t 00013bd0: 68 69 73 2e 5f 69 73 54 72 61 6e 73 69 74 69 6f his._isTransitio 00013be0: 6e 69 6e 67 20 3d 20 66 61 6c 73 65 5c 6e 20 20 ning = false\n 00013bf0: 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 EventHandler 00013c00: 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f 65 .trigger(this._e 00013c10: 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 53 48 lement, EVENT_SH 00013c20: 4f 57 4e 2c 20 7b 5c 6e 20 20 20 20 20 20 20 20 OWN, {\n 00013c30: 72 65 6c 61 74 65 64 54 61 72 67 65 74 5c 6e 20 relatedTarget\n 00013c40: 20 20 20 20 20 7d 29 5c 6e 20 20 20 20 7d 5c 6e })\n }\n 00013c50: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 \n this._queu 00013c60: 65 43 61 6c 6c 62 61 63 6b 28 74 72 61 6e 73 69 eCallback(transi 00013c70: 74 69 6f 6e 43 6f 6d 70 6c 65 74 65 2c 20 74 68 tionComplete, th 00013c80: 69 73 2e 5f 64 69 61 6c 6f 67 2c 20 74 68 69 73 is._dialog, this 00013c90: 2e 5f 69 73 41 6e 69 6d 61 74 65 64 28 29 29 5c ._isAnimated())\ 00013ca0: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 61 64 64 45 76 n }\n\n _addEv 00013cb0: 65 6e 74 4c 69 73 74 65 6e 65 72 73 28 29 20 7b entListeners() { 00013cc0: 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c \n EventHandl 00013cd0: 65 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d er.on(this._elem 00013ce0: 65 6e 74 2c 20 45 56 45 4e 54 5f 4b 45 59 44 4f ent, EVENT_KEYDO 00013cf0: 57 4e 5f 44 49 53 4d 49 53 53 2c 20 65 76 65 6e WN_DISMISS, even 00013d00: 74 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 69 66 t => {\n if 00013d10: 20 28 65 76 65 6e 74 2e 6b 65 79 20 21 3d 3d 20 (event.key !== 00013d20: 45 53 43 41 50 45 5f 4b 45 59 29 20 7b 5c 6e 20 ESCAPE_KEY) {\n 00013d30: 20 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 return\n 00013d40: 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 }\n\n 00013d50: 69 66 20 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 if (this._config 00013d60: 2e 6b 65 79 62 6f 61 72 64 29 20 7b 5c 6e 20 20 .keyboard) {\n 00013d70: 20 20 20 20 20 20 74 68 69 73 2e 68 69 64 65 28 this.hide( 00013d80: 29 5c 6e 20 20 20 20 20 20 20 20 72 65 74 75 72 )\n retur 00013d90: 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 n\n }\n\n 00013da0: 20 20 20 20 74 68 69 73 2e 5f 74 72 69 67 67 65 this._trigge 00013db0: 72 42 61 63 6b 64 72 6f 70 54 72 61 6e 73 69 74 rBackdropTransit 00013dc0: 69 6f 6e 28 29 5c 6e 20 20 20 20 7d 29 5c 6e 5c ion()\n })\n\ 00013dd0: 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 n EventHandle 00013de0: 72 2e 6f 6e 28 77 69 6e 64 6f 77 2c 20 45 56 45 r.on(window, EVE 00013df0: 4e 54 5f 52 45 53 49 5a 45 2c 20 28 29 20 3d 3e NT_RESIZE, () => 00013e00: 20 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 74 68 {\n if (th 00013e10: 69 73 2e 5f 69 73 53 68 6f 77 6e 20 26 26 20 21 is._isShown && ! 00013e20: 74 68 69 73 2e 5f 69 73 54 72 61 6e 73 69 74 69 this._isTransiti 00013e30: 6f 6e 69 6e 67 29 20 7b 5c 6e 20 20 20 20 20 20 oning) {\n 00013e40: 20 20 74 68 69 73 2e 5f 61 64 6a 75 73 74 44 69 this._adjustDi 00013e50: 61 6c 6f 67 28 29 5c 6e 20 20 20 20 20 20 7d 5c alog()\n }\ 00013e60: 6e 20 20 20 20 7d 29 5c 6e 5c 6e 20 20 20 20 45 n })\n\n E 00013e70: 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 74 ventHandler.on(t 00013e80: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 his._element, EV 00013e90: 45 4e 54 5f 4d 4f 55 53 45 44 4f 57 4e 5f 44 49 ENT_MOUSEDOWN_DI 00013ea0: 53 4d 49 53 53 2c 20 65 76 65 6e 74 20 3d 3e 20 SMISS, event => 00013eb0: 7b 5c 6e 20 20 20 20 20 20 2f 2f 20 61 20 62 61 {\n // a ba 00013ec0: 64 20 74 72 69 63 6b 20 74 6f 20 73 65 67 72 65 d trick to segre 00013ed0: 67 61 74 65 20 63 6c 69 63 6b 73 20 74 68 61 74 gate clicks that 00013ee0: 20 6d 61 79 20 73 74 61 72 74 20 69 6e 73 69 64 may start insid 00013ef0: 65 20 64 69 61 6c 6f 67 20 62 75 74 20 65 6e 64 e dialog but end 00013f00: 20 6f 75 74 73 69 64 65 2c 20 61 6e 64 20 61 76 outside, and av 00013f10: 6f 69 64 20 6c 69 73 74 65 6e 20 74 6f 20 73 63 oid listen to sc 00013f20: 72 6f 6c 6c 62 61 72 20 63 6c 69 63 6b 73 5c 6e rollbar clicks\n 00013f30: 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c EventHandl 00013f40: 65 72 2e 6f 6e 65 28 74 68 69 73 2e 5f 65 6c 65 er.one(this._ele 00013f50: 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 43 4c 49 43 ment, EVENT_CLIC 00013f60: 4b 5f 44 49 53 4d 49 53 53 2c 20 65 76 65 6e 74 K_DISMISS, event 00013f70: 32 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 20 20 2 => {\n 00013f80: 69 66 20 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e if (this._elemen 00013f90: 74 20 21 3d 3d 20 65 76 65 6e 74 2e 74 61 72 67 t !== event.targ 00013fa0: 65 74 20 7c 7c 20 74 68 69 73 2e 5f 65 6c 65 6d et || this._elem 00013fb0: 65 6e 74 20 21 3d 3d 20 65 76 65 6e 74 32 2e 74 ent !== event2.t 00013fc0: 61 72 67 65 74 29 20 7b 5c 6e 20 20 20 20 20 20 arget) {\n 00013fd0: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 00013fe0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 20 }\n\n 00013ff0: 20 69 66 20 28 74 68 69 73 2e 5f 63 6f 6e 66 69 if (this._confi 00014000: 67 2e 62 61 63 6b 64 72 6f 70 20 3d 3d 3d 20 27 g.backdrop === ' 00014010: 73 74 61 74 69 63 27 29 20 7b 5c 6e 20 20 20 20 static') {\n 00014020: 20 20 20 20 20 20 74 68 69 73 2e 5f 74 72 69 67 this._trig 00014030: 67 65 72 42 61 63 6b 64 72 6f 70 54 72 61 6e 73 gerBackdropTrans 00014040: 69 74 69 6f 6e 28 29 5c 6e 20 20 20 20 20 20 20 ition()\n 00014050: 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 20 return\n 00014060: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 20 20 }\n\n 00014070: 69 66 20 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 if (this._config 00014080: 2e 62 61 63 6b 64 72 6f 70 29 20 7b 5c 6e 20 20 .backdrop) {\n 00014090: 20 20 20 20 20 20 20 20 74 68 69 73 2e 68 69 64 this.hid 000140a0: 65 28 29 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e e()\n }\n 000140b0: 20 20 20 20 20 20 7d 29 5c 6e 20 20 20 20 7d 29 })\n }) 000140c0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 68 69 64 65 \n }\n\n _hide 000140d0: 4d 6f 64 61 6c 28 29 20 7b 5c 6e 20 20 20 20 74 Modal() {\n t 000140e0: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 73 74 79 his._element.sty 000140f0: 6c 65 2e 64 69 73 70 6c 61 79 20 3d 20 27 6e 6f le.display = 'no 00014100: 6e 65 27 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 ne'\n this._e 00014110: 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 lement.setAttrib 00014120: 75 74 65 28 27 61 72 69 61 2d 68 69 64 64 65 6e ute('aria-hidden 00014130: 27 2c 20 74 72 75 65 29 5c 6e 20 20 20 20 74 68 ', true)\n th 00014140: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 65 6d 6f is._element.remo 00014150: 76 65 41 74 74 72 69 62 75 74 65 28 27 61 72 69 veAttribute('ari 00014160: 61 2d 6d 6f 64 61 6c 27 29 5c 6e 20 20 20 20 74 a-modal')\n t 00014170: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 65 6d his._element.rem 00014180: 6f 76 65 41 74 74 72 69 62 75 74 65 28 27 72 6f oveAttribute('ro 00014190: 6c 65 27 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f le')\n this._ 000141a0: 69 73 54 72 61 6e 73 69 74 69 6f 6e 69 6e 67 20 isTransitioning 000141b0: 3d 20 66 61 6c 73 65 5c 6e 5c 6e 20 20 20 20 74 = false\n\n t 000141c0: 68 69 73 2e 5f 62 61 63 6b 64 72 6f 70 2e 68 69 his._backdrop.hi 000141d0: 64 65 28 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 de(() => {\n 000141e0: 20 20 64 6f 63 75 6d 65 6e 74 2e 62 6f 64 79 2e document.body. 000141f0: 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 65 classList.remove 00014200: 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 4f 50 45 4e (CLASS_NAME_OPEN 00014210: 29 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 72 )\n this._r 00014220: 65 73 65 74 41 64 6a 75 73 74 6d 65 6e 74 73 28 esetAdjustments( 00014230: 29 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 73 )\n this._s 00014240: 63 72 6f 6c 6c 42 61 72 2e 72 65 73 65 74 28 29 crollBar.reset() 00014250: 5c 6e 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e \n EventHan 00014260: 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 dler.trigger(thi 00014270: 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e s._element, EVEN 00014280: 54 5f 48 49 44 44 45 4e 29 5c 6e 20 20 20 20 7d T_HIDDEN)\n } 00014290: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 69 73 41 )\n }\n\n _isA 000142a0: 6e 69 6d 61 74 65 64 28 29 20 7b 5c 6e 20 20 20 nimated() {\n 000142b0: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 65 6c return this._el 000142c0: 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e ement.classList. 000142d0: 63 6f 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f 4e contains(CLASS_N 000142e0: 41 4d 45 5f 46 41 44 45 29 5c 6e 20 20 7d 5c 6e AME_FADE)\n }\n 000142f0: 5c 6e 20 20 5f 74 72 69 67 67 65 72 42 61 63 6b \n _triggerBack 00014300: 64 72 6f 70 54 72 61 6e 73 69 74 69 6f 6e 28 29 dropTransition() 00014310: 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 68 69 {\n const hi 00014320: 64 65 45 76 65 6e 74 20 3d 20 45 76 65 6e 74 48 deEvent = EventH 00014330: 61 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 andler.trigger(t 00014340: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 his._element, EV 00014350: 45 4e 54 5f 48 49 44 45 5f 50 52 45 56 45 4e 54 ENT_HIDE_PREVENT 00014360: 45 44 29 5c 6e 20 20 20 20 69 66 20 28 68 69 64 ED)\n if (hid 00014370: 65 45 76 65 6e 74 2e 64 65 66 61 75 6c 74 50 72 eEvent.defaultPr 00014380: 65 76 65 6e 74 65 64 29 20 7b 5c 6e 20 20 20 20 evented) {\n 00014390: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c return\n }\ 000143a0: 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 69 73 4d n\n const isM 000143b0: 6f 64 61 6c 4f 76 65 72 66 6c 6f 77 69 6e 67 20 odalOverflowing 000143c0: 3d 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e = this._element. 000143d0: 73 63 72 6f 6c 6c 48 65 69 67 68 74 20 3e 20 64 scrollHeight > d 000143e0: 6f 63 75 6d 65 6e 74 2e 64 6f 63 75 6d 65 6e 74 ocument.document 000143f0: 45 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 48 65 Element.clientHe 00014400: 69 67 68 74 5c 6e 20 20 20 20 63 6f 6e 73 74 20 ight\n const 00014410: 69 6e 69 74 69 61 6c 4f 76 65 72 66 6c 6f 77 59 initialOverflowY 00014420: 20 3d 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 = this._element 00014430: 2e 73 74 79 6c 65 2e 6f 76 65 72 66 6c 6f 77 59 .style.overflowY 00014440: 5c 6e 20 20 20 20 2f 2f 20 72 65 74 75 72 6e 20 \n // return 00014450: 69 66 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 if the following 00014460: 20 62 61 63 6b 67 72 6f 75 6e 64 20 74 72 61 6e background tran 00014470: 73 69 74 69 6f 6e 20 68 61 73 6e 27 74 20 79 65 sition hasn't ye 00014480: 74 20 63 6f 6d 70 6c 65 74 65 64 5c 6e 20 20 20 t completed\n 00014490: 20 69 66 20 28 69 6e 69 74 69 61 6c 4f 76 65 72 if (initialOver 000144a0: 66 6c 6f 77 59 20 3d 3d 3d 20 27 68 69 64 64 65 flowY === 'hidde 000144b0: 6e 27 20 7c 7c 20 74 68 69 73 2e 5f 65 6c 65 6d n' || this._elem 000144c0: 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e 63 6f ent.classList.co 000144d0: 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f 4e 41 4d ntains(CLASS_NAM 000144e0: 45 5f 53 54 41 54 49 43 29 29 20 7b 5c 6e 20 20 E_STATIC)) {\n 000144f0: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 00014500: 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 69 73 }\n\n if (!is 00014510: 4d 6f 64 61 6c 4f 76 65 72 66 6c 6f 77 69 6e 67 ModalOverflowing 00014520: 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e ) {\n this. 00014530: 5f 65 6c 65 6d 65 6e 74 2e 73 74 79 6c 65 2e 6f _element.style.o 00014540: 76 65 72 66 6c 6f 77 59 20 3d 20 27 68 69 64 64 verflowY = 'hidd 00014550: 65 6e 27 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 en'\n }\n\n 00014560: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e this._element. 00014570: 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c classList.add(CL 00014580: 41 53 53 5f 4e 41 4d 45 5f 53 54 41 54 49 43 29 ASS_NAME_STATIC) 00014590: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 \n this._queu 000145a0: 65 43 61 6c 6c 62 61 63 6b 28 28 29 20 3d 3e 20 eCallback(() => 000145b0: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 65 {\n this._e 000145c0: 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 lement.classList 000145d0: 2e 72 65 6d 6f 76 65 28 43 4c 41 53 53 5f 4e 41 .remove(CLASS_NA 000145e0: 4d 45 5f 53 54 41 54 49 43 29 5c 6e 20 20 20 20 ME_STATIC)\n 000145f0: 20 20 74 68 69 73 2e 5f 71 75 65 75 65 43 61 6c this._queueCal 00014600: 6c 62 61 63 6b 28 28 29 20 3d 3e 20 7b 5c 6e 20 lback(() => {\n 00014610: 20 20 20 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 this._ele 00014620: 6d 65 6e 74 2e 73 74 79 6c 65 2e 6f 76 65 72 66 ment.style.overf 00014630: 6c 6f 77 59 20 3d 20 69 6e 69 74 69 61 6c 4f 76 lowY = initialOv 00014640: 65 72 66 6c 6f 77 59 5c 6e 20 20 20 20 20 20 7d erflowY\n } 00014650: 2c 20 74 68 69 73 2e 5f 64 69 61 6c 6f 67 29 5c , this._dialog)\ 00014660: 6e 20 20 20 20 7d 2c 20 74 68 69 73 2e 5f 64 69 n }, this._di 00014670: 61 6c 6f 67 29 5c 6e 5c 6e 20 20 20 20 74 68 69 alog)\n\n thi 00014680: 73 2e 5f 65 6c 65 6d 65 6e 74 2e 66 6f 63 75 73 s._element.focus 00014690: 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2a 2a ()\n }\n\n /** 000146a0: 5c 6e 20 20 20 2a 20 54 68 65 20 66 6f 6c 6c 6f \n * The follo 000146b0: 77 69 6e 67 20 6d 65 74 68 6f 64 73 20 61 72 65 wing methods are 000146c0: 20 75 73 65 64 20 74 6f 20 68 61 6e 64 6c 65 20 used to handle 000146d0: 6f 76 65 72 66 6c 6f 77 69 6e 67 20 6d 6f 64 61 overflowing moda 000146e0: 6c 73 5c 6e 20 20 20 2a 2f 5c 6e 5c 6e 20 20 5f ls\n */\n\n _ 000146f0: 61 64 6a 75 73 74 44 69 61 6c 6f 67 28 29 20 7b adjustDialog() { 00014700: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 69 73 4d 6f \n const isMo 00014710: 64 61 6c 4f 76 65 72 66 6c 6f 77 69 6e 67 20 3d dalOverflowing = 00014720: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 73 this._element.s 00014730: 63 72 6f 6c 6c 48 65 69 67 68 74 20 3e 20 64 6f crollHeight > do 00014740: 63 75 6d 65 6e 74 2e 64 6f 63 75 6d 65 6e 74 45 cument.documentE 00014750: 6c 65 6d 65 6e 74 2e 63 6c 69 65 6e 74 48 65 69 lement.clientHei 00014760: 67 68 74 5c 6e 20 20 20 20 63 6f 6e 73 74 20 73 ght\n const s 00014770: 63 72 6f 6c 6c 62 61 72 57 69 64 74 68 20 3d 20 crollbarWidth = 00014780: 74 68 69 73 2e 5f 73 63 72 6f 6c 6c 42 61 72 2e this._scrollBar. 00014790: 67 65 74 57 69 64 74 68 28 29 5c 6e 20 20 20 20 getWidth()\n 000147a0: 63 6f 6e 73 74 20 69 73 42 6f 64 79 4f 76 65 72 const isBodyOver 000147b0: 66 6c 6f 77 69 6e 67 20 3d 20 73 63 72 6f 6c 6c flowing = scroll 000147c0: 62 61 72 57 69 64 74 68 20 3e 20 30 5c 6e 5c 6e barWidth > 0\n\n 000147d0: 20 20 20 20 69 66 20 28 69 73 42 6f 64 79 4f 76 if (isBodyOv 000147e0: 65 72 66 6c 6f 77 69 6e 67 20 26 26 20 21 69 73 erflowing && !is 000147f0: 4d 6f 64 61 6c 4f 76 65 72 66 6c 6f 77 69 6e 67 ModalOverflowing 00014800: 29 20 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 ) {\n const 00014810: 20 70 72 6f 70 65 72 74 79 20 3d 20 69 73 52 54 property = isRT 00014820: 4c 28 29 20 3f 20 27 70 61 64 64 69 6e 67 4c 65 L() ? 'paddingLe 00014830: 66 74 27 20 3a 20 27 70 61 64 64 69 6e 67 52 69 ft' : 'paddingRi 00014840: 67 68 74 27 5c 6e 20 20 20 20 20 20 74 68 69 73 ght'\n this 00014850: 2e 5f 65 6c 65 6d 65 6e 74 2e 73 74 79 6c 65 5b ._element.style[ 00014860: 70 72 6f 70 65 72 74 79 5d 20 3d 20 60 24 7b 73 property] = `${s 00014870: 63 72 6f 6c 6c 62 61 72 57 69 64 74 68 7d 70 78 crollbarWidth}px 00014880: 60 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 `\n }\n\n 00014890: 69 66 20 28 21 69 73 42 6f 64 79 4f 76 65 72 66 if (!isBodyOverf 000148a0: 6c 6f 77 69 6e 67 20 26 26 20 69 73 4d 6f 64 61 lowing && isModa 000148b0: 6c 4f 76 65 72 66 6c 6f 77 69 6e 67 29 20 7b 5c lOverflowing) {\ 000148c0: 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 70 72 6f n const pro 000148d0: 70 65 72 74 79 20 3d 20 69 73 52 54 4c 28 29 20 perty = isRTL() 000148e0: 3f 20 27 70 61 64 64 69 6e 67 52 69 67 68 74 27 ? 'paddingRight' 000148f0: 20 3a 20 27 70 61 64 64 69 6e 67 4c 65 66 74 27 : 'paddingLeft' 00014900: 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 65 6c \n this._el 00014910: 65 6d 65 6e 74 2e 73 74 79 6c 65 5b 70 72 6f 70 ement.style[prop 00014920: 65 72 74 79 5d 20 3d 20 60 24 7b 73 63 72 6f 6c erty] = `${scrol 00014930: 6c 62 61 72 57 69 64 74 68 7d 70 78 60 5c 6e 20 lbarWidth}px`\n 00014940: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f }\n }\n\n _ 00014950: 72 65 73 65 74 41 64 6a 75 73 74 6d 65 6e 74 73 resetAdjustments 00014960: 28 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f () {\n this._ 00014970: 65 6c 65 6d 65 6e 74 2e 73 74 79 6c 65 2e 70 61 element.style.pa 00014980: 64 64 69 6e 67 4c 65 66 74 20 3d 20 27 27 5c 6e ddingLeft = ''\n 00014990: 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e this._elemen 000149a0: 74 2e 73 74 79 6c 65 2e 70 61 64 64 69 6e 67 52 t.style.paddingR 000149b0: 69 67 68 74 20 3d 20 27 27 5c 6e 20 20 7d 5c 6e ight = ''\n }\n 000149c0: 5c 6e 20 20 2f 2f 20 53 74 61 74 69 63 5c 6e 20 \n // Static\n 000149d0: 20 73 74 61 74 69 63 20 6a 51 75 65 72 79 49 6e static jQueryIn 000149e0: 74 65 72 66 61 63 65 28 63 6f 6e 66 69 67 2c 20 terface(config, 000149f0: 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 20 7b relatedTarget) { 00014a00: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 \n return thi 00014a10: 73 2e 65 61 63 68 28 66 75 6e 63 74 69 6f 6e 20 s.each(function 00014a20: 28 29 20 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 () {\n cons 00014a30: 74 20 64 61 74 61 20 3d 20 4d 6f 64 61 6c 2e 67 t data = Modal.g 00014a40: 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 6e etOrCreateInstan 00014a50: 63 65 28 74 68 69 73 2c 20 63 6f 6e 66 69 67 29 ce(this, config) 00014a60: 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 74 79 \n\n if (ty 00014a70: 70 65 6f 66 20 63 6f 6e 66 69 67 20 21 3d 3d 20 peof config !== 00014a80: 27 73 74 72 69 6e 67 27 29 20 7b 5c 6e 20 20 20 'string') {\n 00014a90: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 00014aa0: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 66 }\n\n if 00014ab0: 20 28 74 79 70 65 6f 66 20 64 61 74 61 5b 63 6f (typeof data[co 00014ac0: 6e 66 69 67 5d 20 3d 3d 3d 20 27 75 6e 64 65 66 nfig] === 'undef 00014ad0: 69 6e 65 64 27 29 20 7b 5c 6e 20 20 20 20 20 20 ined') {\n 00014ae0: 20 20 74 68 72 6f 77 20 6e 65 77 20 54 79 70 65 throw new Type 00014af0: 45 72 72 6f 72 28 60 4e 6f 20 6d 65 74 68 6f 64 Error(`No method 00014b00: 20 6e 61 6d 65 64 20 5c 22 24 7b 63 6f 6e 66 69 named \"${confi 00014b10: 67 7d 5c 22 60 29 5c 6e 20 20 20 20 20 20 7d 5c g}\"`)\n }\ 00014b20: 6e 5c 6e 20 20 20 20 20 20 64 61 74 61 5b 63 6f n\n data[co 00014b30: 6e 66 69 67 5d 28 72 65 6c 61 74 65 64 54 61 72 nfig](relatedTar 00014b40: 67 65 74 29 5c 6e 20 20 20 20 7d 29 5c 6e 20 20 get)\n })\n 00014b50: 7d 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 }\n}\n\n/**\n * 00014b60: 44 61 74 61 20 41 50 49 20 69 6d 70 6c 65 6d 65 Data API impleme 00014b70: 6e 74 61 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e ntation\n */\n\n 00014b80: 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 EventHandler.on( 00014b90: 64 6f 63 75 6d 65 6e 74 2c 20 45 56 45 4e 54 5f document, EVENT_ 00014ba0: 43 4c 49 43 4b 5f 44 41 54 41 5f 41 50 49 2c 20 CLICK_DATA_API, 00014bb0: 53 45 4c 45 43 54 4f 52 5f 44 41 54 41 5f 54 4f SELECTOR_DATA_TO 00014bc0: 47 47 4c 45 2c 20 66 75 6e 63 74 69 6f 6e 20 28 GGLE, function ( 00014bd0: 65 76 65 6e 74 29 20 7b 5c 6e 20 20 63 6f 6e 73 event) {\n cons 00014be0: 74 20 74 61 72 67 65 74 20 3d 20 53 65 6c 65 63 t target = Selec 00014bf0: 74 6f 72 45 6e 67 69 6e 65 2e 67 65 74 45 6c 65 torEngine.getEle 00014c00: 6d 65 6e 74 46 72 6f 6d 53 65 6c 65 63 74 6f 72 mentFromSelector 00014c10: 28 74 68 69 73 29 5c 6e 5c 6e 20 20 69 66 20 28 (this)\n\n if ( 00014c20: 5b 27 41 27 2c 20 27 41 52 45 41 27 5d 2e 69 6e ['A', 'AREA'].in 00014c30: 63 6c 75 64 65 73 28 74 68 69 73 2e 74 61 67 4e cludes(this.tagN 00014c40: 61 6d 65 29 29 20 7b 5c 6e 20 20 20 20 65 76 65 ame)) {\n eve 00014c50: 6e 74 2e 70 72 65 76 65 6e 74 44 65 66 61 75 6c nt.preventDefaul 00014c60: 74 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 45 76 t()\n }\n\n Ev 00014c70: 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 65 28 74 entHandler.one(t 00014c80: 61 72 67 65 74 2c 20 45 56 45 4e 54 5f 53 48 4f arget, EVENT_SHO 00014c90: 57 2c 20 73 68 6f 77 45 76 65 6e 74 20 3d 3e 20 W, showEvent => 00014ca0: 7b 5c 6e 20 20 20 20 69 66 20 28 73 68 6f 77 45 {\n if (showE 00014cb0: 76 65 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 76 vent.defaultPrev 00014cc0: 65 6e 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 ented) {\n 00014cd0: 2f 2f 20 6f 6e 6c 79 20 72 65 67 69 73 74 65 72 // only register 00014ce0: 20 66 6f 63 75 73 20 72 65 73 74 6f 72 65 72 20 focus restorer 00014cf0: 69 66 20 6d 6f 64 61 6c 20 77 69 6c 6c 20 61 63 if modal will ac 00014d00: 74 75 61 6c 6c 79 20 67 65 74 20 73 68 6f 77 6e tually get shown 00014d10: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 00014d20: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 45 76 65 }\n\n Eve 00014d30: 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 65 28 74 61 ntHandler.one(ta 00014d40: 72 67 65 74 2c 20 45 56 45 4e 54 5f 48 49 44 44 rget, EVENT_HIDD 00014d50: 45 4e 2c 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 EN, () => {\n 00014d60: 20 20 20 69 66 20 28 69 73 56 69 73 69 62 6c 65 if (isVisible 00014d70: 28 74 68 69 73 29 29 20 7b 5c 6e 20 20 20 20 20 (this)) {\n 00014d80: 20 20 20 74 68 69 73 2e 66 6f 63 75 73 28 29 5c this.focus()\ 00014d90: 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 29 n }\n }) 00014da0: 5c 6e 20 20 7d 29 5c 6e 5c 6e 20 20 2f 2f 20 61 \n })\n\n // a 00014db0: 76 6f 69 64 20 63 6f 6e 66 6c 69 63 74 20 77 68 void conflict wh 00014dc0: 65 6e 20 63 6c 69 63 6b 69 6e 67 20 6d 6f 64 61 en clicking moda 00014dd0: 6c 20 74 6f 67 67 6c 65 72 20 77 68 69 6c 65 20 l toggler while 00014de0: 61 6e 6f 74 68 65 72 20 6f 6e 65 20 69 73 20 6f another one is o 00014df0: 70 65 6e 5c 6e 20 20 63 6f 6e 73 74 20 61 6c 72 pen\n const alr 00014e00: 65 61 64 79 4f 70 65 6e 20 3d 20 53 65 6c 65 63 eadyOpen = Selec 00014e10: 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 4f 6e torEngine.findOn 00014e20: 65 28 4f 50 45 4e 5f 53 45 4c 45 43 54 4f 52 29 e(OPEN_SELECTOR) 00014e30: 5c 6e 20 20 69 66 20 28 61 6c 72 65 61 64 79 4f \n if (alreadyO 00014e40: 70 65 6e 29 20 7b 5c 6e 20 20 20 20 4d 6f 64 61 pen) {\n Moda 00014e50: 6c 2e 67 65 74 49 6e 73 74 61 6e 63 65 28 61 6c l.getInstance(al 00014e60: 72 65 61 64 79 4f 70 65 6e 29 2e 68 69 64 65 28 readyOpen).hide( 00014e70: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 63 6f 6e 73 )\n }\n\n cons 00014e80: 74 20 64 61 74 61 20 3d 20 4d 6f 64 61 6c 2e 67 t data = Modal.g 00014e90: 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 6e etOrCreateInstan 00014ea0: 63 65 28 74 61 72 67 65 74 29 5c 6e 5c 6e 20 20 ce(target)\n\n 00014eb0: 64 61 74 61 2e 74 6f 67 67 6c 65 28 74 68 69 73 data.toggle(this 00014ec0: 29 5c 6e 7d 29 5c 6e 5c 6e 65 6e 61 62 6c 65 44 )\n})\n\nenableD 00014ed0: 69 73 6d 69 73 73 54 72 69 67 67 65 72 28 4d 6f ismissTrigger(Mo 00014ee0: 64 61 6c 29 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 dal)\n\n/**\n * 00014ef0: 6a 51 75 65 72 79 5c 6e 20 2a 2f 5c 6e 5c 6e 64 jQuery\n */\n\nd 00014f00: 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 efineJQueryPlugi 00014f10: 6e 28 4d 6f 64 61 6c 29 5c 6e 5c 6e 65 78 70 6f n(Modal)\n\nexpo 00014f20: 72 74 20 64 65 66 61 75 6c 74 20 4d 6f 64 61 6c rt default Modal 00014f30: 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d 2d 2d \n","/**\n * --- 00014f40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00014f50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00014f60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00014f70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00014f80: 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f 6f 74 -------\n * Boot 00014f90: 73 74 72 61 70 20 6f 66 66 63 61 6e 76 61 73 2e strap offcanvas. 00014fa0: 6a 73 5c 6e 20 2a 20 4c 69 63 65 6e 73 65 64 20 js\n * Licensed 00014fb0: 75 6e 64 65 72 20 4d 49 54 20 28 68 74 74 70 73 under MIT (https 00014fc0: 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 77 ://github.com/tw 00014fd0: 62 73 2f 62 6f 6f 74 73 74 72 61 70 2f 62 6c 6f bs/bootstrap/blo 00014fe0: 62 2f 6d 61 69 6e 2f 4c 49 43 45 4e 53 45 29 5c b/main/LICENSE)\ 00014ff0: 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d n * ------------ 00015000: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00015010: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00015020: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00015030: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e --------------\n 00015040: 20 2a 2f 5c 6e 5c 6e 69 6d 70 6f 72 74 20 42 61 */\n\nimport Ba 00015050: 73 65 43 6f 6d 70 6f 6e 65 6e 74 20 66 72 6f 6d seComponent from 00015060: 20 27 2e 2f 62 61 73 65 2d 63 6f 6d 70 6f 6e 65 './base-compone 00015070: 6e 74 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 45 nt.js'\nimport E 00015080: 76 65 6e 74 48 61 6e 64 6c 65 72 20 66 72 6f 6d ventHandler from 00015090: 20 27 2e 2f 64 6f 6d 2f 65 76 65 6e 74 2d 68 61 './dom/event-ha 000150a0: 6e 64 6c 65 72 2e 6a 73 27 5c 6e 69 6d 70 6f 72 ndler.js'\nimpor 000150b0: 74 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 t SelectorEngine 000150c0: 20 66 72 6f 6d 20 27 2e 2f 64 6f 6d 2f 73 65 6c from './dom/sel 000150d0: 65 63 74 6f 72 2d 65 6e 67 69 6e 65 2e 6a 73 27 ector-engine.js' 000150e0: 5c 6e 69 6d 70 6f 72 74 20 42 61 63 6b 64 72 6f \nimport Backdro 000150f0: 70 20 66 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 62 p from './util/b 00015100: 61 63 6b 64 72 6f 70 2e 6a 73 27 5c 6e 69 6d 70 ackdrop.js'\nimp 00015110: 6f 72 74 20 7b 20 65 6e 61 62 6c 65 44 69 73 6d ort { enableDism 00015120: 69 73 73 54 72 69 67 67 65 72 20 7d 20 66 72 6f issTrigger } fro 00015130: 6d 20 27 2e 2f 75 74 69 6c 2f 63 6f 6d 70 6f 6e m './util/compon 00015140: 65 6e 74 2d 66 75 6e 63 74 69 6f 6e 73 2e 6a 73 ent-functions.js 00015150: 27 5c 6e 69 6d 70 6f 72 74 20 46 6f 63 75 73 54 '\nimport FocusT 00015160: 72 61 70 20 66 72 6f 6d 20 27 2e 2f 75 74 69 6c rap from './util 00015170: 2f 66 6f 63 75 73 74 72 61 70 2e 6a 73 27 5c 6e /focustrap.js'\n 00015180: 69 6d 70 6f 72 74 20 7b 5c 6e 20 20 64 65 66 69 import {\n defi 00015190: 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 6e 2c 5c neJQueryPlugin,\ 000151a0: 6e 20 20 69 73 44 69 73 61 62 6c 65 64 2c 5c 6e n isDisabled,\n 000151b0: 20 20 69 73 56 69 73 69 62 6c 65 5c 6e 7d 20 66 isVisible\n} f 000151c0: 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 69 6e 64 65 rom './util/inde 000151d0: 78 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 53 63 x.js'\nimport Sc 000151e0: 72 6f 6c 6c 42 61 72 48 65 6c 70 65 72 20 66 72 rollBarHelper fr 000151f0: 6f 6d 20 27 2e 2f 75 74 69 6c 2f 73 63 72 6f 6c om './util/scrol 00015200: 6c 62 61 72 2e 6a 73 27 5c 6e 5c 6e 2f 2a 2a 5c lbar.js'\n\n/**\ 00015210: 6e 20 2a 20 43 6f 6e 73 74 61 6e 74 73 5c 6e 20 n * Constants\n 00015220: 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 20 4e 41 4d 45 */\n\nconst NAME 00015230: 20 3d 20 27 6f 66 66 63 61 6e 76 61 73 27 5c 6e = 'offcanvas'\n 00015240: 63 6f 6e 73 74 20 44 41 54 41 5f 4b 45 59 20 3d const DATA_KEY = 00015250: 20 27 62 73 2e 6f 66 66 63 61 6e 76 61 73 27 5c 'bs.offcanvas'\ 00015260: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4b 45 59 nconst EVENT_KEY 00015270: 20 3d 20 60 2e 24 7b 44 41 54 41 5f 4b 45 59 7d = `.${DATA_KEY} 00015280: 60 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f 41 50 `\nconst DATA_AP 00015290: 49 5f 4b 45 59 20 3d 20 27 2e 64 61 74 61 2d 61 I_KEY = '.data-a 000152a0: 70 69 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 pi'\nconst EVENT 000152b0: 5f 4c 4f 41 44 5f 44 41 54 41 5f 41 50 49 20 3d _LOAD_DATA_API = 000152c0: 20 60 6c 6f 61 64 24 7b 45 56 45 4e 54 5f 4b 45 `load${EVENT_KE 000152d0: 59 7d 24 7b 44 41 54 41 5f 41 50 49 5f 4b 45 59 Y}${DATA_API_KEY 000152e0: 7d 60 5c 6e 63 6f 6e 73 74 20 45 53 43 41 50 45 }`\nconst ESCAPE 000152f0: 5f 4b 45 59 20 3d 20 27 45 73 63 61 70 65 27 5c _KEY = 'Escape'\ 00015300: 6e 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e n\nconst CLASS_N 00015310: 41 4d 45 5f 53 48 4f 57 20 3d 20 27 73 68 6f 77 AME_SHOW = 'show 00015320: 27 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e '\nconst CLASS_N 00015330: 41 4d 45 5f 53 48 4f 57 49 4e 47 20 3d 20 27 73 AME_SHOWING = 's 00015340: 68 6f 77 69 6e 67 27 5c 6e 63 6f 6e 73 74 20 43 howing'\nconst C 00015350: 4c 41 53 53 5f 4e 41 4d 45 5f 48 49 44 49 4e 47 LASS_NAME_HIDING 00015360: 20 3d 20 27 68 69 64 69 6e 67 27 5c 6e 63 6f 6e = 'hiding'\ncon 00015370: 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 42 41 st CLASS_NAME_BA 00015380: 43 4b 44 52 4f 50 20 3d 20 27 6f 66 66 63 61 6e CKDROP = 'offcan 00015390: 76 61 73 2d 62 61 63 6b 64 72 6f 70 27 5c 6e 63 vas-backdrop'\nc 000153a0: 6f 6e 73 74 20 4f 50 45 4e 5f 53 45 4c 45 43 54 onst OPEN_SELECT 000153b0: 4f 52 20 3d 20 27 2e 6f 66 66 63 61 6e 76 61 73 OR = '.offcanvas 000153c0: 2e 73 68 6f 77 27 5c 6e 5c 6e 63 6f 6e 73 74 20 .show'\n\nconst 000153d0: 45 56 45 4e 54 5f 53 48 4f 57 20 3d 20 60 73 68 EVENT_SHOW = `sh 000153e0: 6f 77 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c ow${EVENT_KEY}`\ 000153f0: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 53 48 4f nconst EVENT_SHO 00015400: 57 4e 20 3d 20 60 73 68 6f 77 6e 24 7b 45 56 45 WN = `shown${EVE 00015410: 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 NT_KEY}`\nconst 00015420: 45 56 45 4e 54 5f 48 49 44 45 20 3d 20 60 68 69 EVENT_HIDE = `hi 00015430: 64 65 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c de${EVENT_KEY}`\ 00015440: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 48 49 44 nconst EVENT_HID 00015450: 45 5f 50 52 45 56 45 4e 54 45 44 20 3d 20 60 68 E_PREVENTED = `h 00015460: 69 64 65 50 72 65 76 65 6e 74 65 64 24 7b 45 56 idePrevented${EV 00015470: 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 ENT_KEY}`\nconst 00015480: 20 45 56 45 4e 54 5f 48 49 44 44 45 4e 20 3d 20 EVENT_HIDDEN = 00015490: 60 68 69 64 64 65 6e 24 7b 45 56 45 4e 54 5f 4b `hidden${EVENT_K 000154a0: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e EY}`\nconst EVEN 000154b0: 54 5f 52 45 53 49 5a 45 20 3d 20 60 72 65 73 69 T_RESIZE = `resi 000154c0: 7a 65 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c ze${EVENT_KEY}`\ 000154d0: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 43 4c 49 nconst EVENT_CLI 000154e0: 43 4b 5f 44 41 54 41 5f 41 50 49 20 3d 20 60 63 CK_DATA_API = `c 000154f0: 6c 69 63 6b 24 7b 45 56 45 4e 54 5f 4b 45 59 7d lick${EVENT_KEY} 00015500: 24 7b 44 41 54 41 5f 41 50 49 5f 4b 45 59 7d 60 ${DATA_API_KEY}` 00015510: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4b 45 \nconst EVENT_KE 00015520: 59 44 4f 57 4e 5f 44 49 53 4d 49 53 53 20 3d 20 YDOWN_DISMISS = 00015530: 60 6b 65 79 64 6f 77 6e 2e 64 69 73 6d 69 73 73 `keydown.dismiss 00015540: 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c 6e 5c ${EVENT_KEY}`\n\ 00015550: 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f nconst SELECTOR_ 00015560: 44 41 54 41 5f 54 4f 47 47 4c 45 20 3d 20 27 5b DATA_TOGGLE = '[ 00015570: 64 61 74 61 2d 62 73 2d 74 6f 67 67 6c 65 3d 5c data-bs-toggle=\ 00015580: 22 6f 66 66 63 61 6e 76 61 73 5c 22 5d 27 5c 6e "offcanvas\"]'\n 00015590: 5c 6e 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 20 \nconst Default 000155a0: 3d 20 7b 5c 6e 20 20 62 61 63 6b 64 72 6f 70 3a = {\n backdrop: 000155b0: 20 74 72 75 65 2c 5c 6e 20 20 6b 65 79 62 6f 61 true,\n keyboa 000155c0: 72 64 3a 20 74 72 75 65 2c 5c 6e 20 20 73 63 72 rd: true,\n scr 000155d0: 6f 6c 6c 3a 20 66 61 6c 73 65 5c 6e 7d 5c 6e 5c oll: false\n}\n\ 000155e0: 6e 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 54 79 nconst DefaultTy 000155f0: 70 65 20 3d 20 7b 5c 6e 20 20 62 61 63 6b 64 72 pe = {\n backdr 00015600: 6f 70 3a 20 27 28 62 6f 6f 6c 65 61 6e 7c 73 74 op: '(boolean|st 00015610: 72 69 6e 67 29 27 2c 5c 6e 20 20 6b 65 79 62 6f ring)',\n keybo 00015620: 61 72 64 3a 20 27 62 6f 6f 6c 65 61 6e 27 2c 5c ard: 'boolean',\ 00015630: 6e 20 20 73 63 72 6f 6c 6c 3a 20 27 62 6f 6f 6c n scroll: 'bool 00015640: 65 61 6e 27 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e ean'\n}\n\n/**\n 00015650: 20 2a 20 43 6c 61 73 73 20 64 65 66 69 6e 69 74 * Class definit 00015660: 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6c 61 73 ion\n */\n\nclas 00015670: 73 20 4f 66 66 63 61 6e 76 61 73 20 65 78 74 65 s Offcanvas exte 00015680: 6e 64 73 20 42 61 73 65 43 6f 6d 70 6f 6e 65 6e nds BaseComponen 00015690: 74 20 7b 5c 6e 20 20 63 6f 6e 73 74 72 75 63 74 t {\n construct 000156a0: 6f 72 28 65 6c 65 6d 65 6e 74 2c 20 63 6f 6e 66 or(element, conf 000156b0: 69 67 29 20 7b 5c 6e 20 20 20 20 73 75 70 65 72 ig) {\n super 000156c0: 28 65 6c 65 6d 65 6e 74 2c 20 63 6f 6e 66 69 67 (element, config 000156d0: 29 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 )\n\n this._i 000156e0: 73 53 68 6f 77 6e 20 3d 20 66 61 6c 73 65 5c 6e sShown = false\n 000156f0: 20 20 20 20 74 68 69 73 2e 5f 62 61 63 6b 64 72 this._backdr 00015700: 6f 70 20 3d 20 74 68 69 73 2e 5f 69 6e 69 74 69 op = this._initi 00015710: 61 6c 69 7a 65 42 61 63 6b 44 72 6f 70 28 29 5c alizeBackDrop()\ 00015720: 6e 20 20 20 20 74 68 69 73 2e 5f 66 6f 63 75 73 n this._focus 00015730: 74 72 61 70 20 3d 20 74 68 69 73 2e 5f 69 6e 69 trap = this._ini 00015740: 74 69 61 6c 69 7a 65 46 6f 63 75 73 54 72 61 70 tializeFocusTrap 00015750: 28 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 64 ()\n this._ad 00015760: 64 45 76 65 6e 74 4c 69 73 74 65 6e 65 72 73 28 dEventListeners( 00015770: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 47 )\n }\n\n // G 00015780: 65 74 74 65 72 73 5c 6e 20 20 73 74 61 74 69 63 etters\n static 00015790: 20 67 65 74 20 44 65 66 61 75 6c 74 28 29 20 7b get Default() { 000157a0: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 44 65 66 \n return Def 000157b0: 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 ault\n }\n\n s 000157c0: 74 61 74 69 63 20 67 65 74 20 44 65 66 61 75 6c tatic get Defaul 000157d0: 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 20 20 72 tType() {\n r 000157e0: 65 74 75 72 6e 20 44 65 66 61 75 6c 74 54 79 70 eturn DefaultTyp 000157f0: 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 74 61 74 e\n }\n\n stat 00015800: 69 63 20 67 65 74 20 4e 41 4d 45 28 29 20 7b 5c ic get NAME() {\ 00015810: 6e 20 20 20 20 72 65 74 75 72 6e 20 4e 41 4d 45 n return NAME 00015820: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 75 \n }\n\n // Pu 00015830: 62 6c 69 63 5c 6e 20 20 74 6f 67 67 6c 65 28 72 blic\n toggle(r 00015840: 65 6c 61 74 65 64 54 61 72 67 65 74 29 20 7b 5c elatedTarget) {\ 00015850: 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 n return this 00015860: 2e 5f 69 73 53 68 6f 77 6e 20 3f 20 74 68 69 73 ._isShown ? this 00015870: 2e 68 69 64 65 28 29 20 3a 20 74 68 69 73 2e 73 .hide() : this.s 00015880: 68 6f 77 28 72 65 6c 61 74 65 64 54 61 72 67 65 how(relatedTarge 00015890: 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 68 6f t)\n }\n\n sho 000158a0: 77 28 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 w(relatedTarget) 000158b0: 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 {\n if (this 000158c0: 2e 5f 69 73 53 68 6f 77 6e 29 20 7b 5c 6e 20 20 ._isShown) {\n 000158d0: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 000158e0: 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 73 }\n\n const s 000158f0: 68 6f 77 45 76 65 6e 74 20 3d 20 45 76 65 6e 74 howEvent = Event 00015900: 48 61 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 28 Handler.trigger( 00015910: 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 this._element, E 00015920: 56 45 4e 54 5f 53 48 4f 57 2c 20 7b 20 72 65 6c VENT_SHOW, { rel 00015930: 61 74 65 64 54 61 72 67 65 74 20 7d 29 5c 6e 5c atedTarget })\n\ 00015940: 6e 20 20 20 20 69 66 20 28 73 68 6f 77 45 76 65 n if (showEve 00015950: 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 76 65 6e nt.defaultPreven 00015960: 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 ted) {\n re 00015970: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 00015980: 20 20 20 74 68 69 73 2e 5f 69 73 53 68 6f 77 6e this._isShown 00015990: 20 3d 20 74 72 75 65 5c 6e 20 20 20 20 74 68 69 = true\n thi 000159a0: 73 2e 5f 62 61 63 6b 64 72 6f 70 2e 73 68 6f 77 s._backdrop.show 000159b0: 28 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 74 ()\n\n if (!t 000159c0: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 73 63 72 6f his._config.scro 000159d0: 6c 6c 29 20 7b 5c 6e 20 20 20 20 20 20 6e 65 77 ll) {\n new 000159e0: 20 53 63 72 6f 6c 6c 42 61 72 48 65 6c 70 65 72 ScrollBarHelper 000159f0: 28 29 2e 68 69 64 65 28 29 5c 6e 20 20 20 20 7d ().hide()\n } 00015a00: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c \n\n this._el 00015a10: 65 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 75 ement.setAttribu 00015a20: 74 65 28 27 61 72 69 61 2d 6d 6f 64 61 6c 27 2c te('aria-modal', 00015a30: 20 74 72 75 65 29 5c 6e 20 20 20 20 74 68 69 73 true)\n this 00015a40: 2e 5f 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 ._element.setAtt 00015a50: 72 69 62 75 74 65 28 27 72 6f 6c 65 27 2c 20 27 ribute('role', ' 00015a60: 64 69 61 6c 6f 67 27 29 5c 6e 20 20 20 20 74 68 dialog')\n th 00015a70: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 is._element.clas 00015a80: 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 53 53 5f sList.add(CLASS_ 00015a90: 4e 41 4d 45 5f 53 48 4f 57 49 4e 47 29 5c 6e 5c NAME_SHOWING)\n\ 00015aa0: 6e 20 20 20 20 63 6f 6e 73 74 20 63 6f 6d 70 6c n const compl 00015ab0: 65 74 65 43 61 6c 6c 42 61 63 6b 20 3d 20 28 29 eteCallBack = () 00015ac0: 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 69 66 20 => {\n if 00015ad0: 28 21 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 73 (!this._config.s 00015ae0: 63 72 6f 6c 6c 20 7c 7c 20 74 68 69 73 2e 5f 63 croll || this._c 00015af0: 6f 6e 66 69 67 2e 62 61 63 6b 64 72 6f 70 29 20 onfig.backdrop) 00015b00: 7b 5c 6e 20 20 20 20 20 20 20 20 74 68 69 73 2e {\n this. 00015b10: 5f 66 6f 63 75 73 74 72 61 70 2e 61 63 74 69 76 _focustrap.activ 00015b20: 61 74 65 28 29 5c 6e 20 20 20 20 20 20 7d 5c 6e ate()\n }\n 00015b30: 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 65 6c \n this._el 00015b40: 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e ement.classList. 00015b50: 61 64 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 add(CLASS_NAME_S 00015b60: 48 4f 57 29 5c 6e 20 20 20 20 20 20 74 68 69 73 HOW)\n this 00015b70: 2e 5f 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c ._element.classL 00015b80: 69 73 74 2e 72 65 6d 6f 76 65 28 43 4c 41 53 53 ist.remove(CLASS 00015b90: 5f 4e 41 4d 45 5f 53 48 4f 57 49 4e 47 29 5c 6e _NAME_SHOWING)\n 00015ba0: 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c EventHandl 00015bb0: 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e er.trigger(this. 00015bc0: 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f _element, EVENT_ 00015bd0: 53 48 4f 57 4e 2c 20 7b 20 72 65 6c 61 74 65 64 SHOWN, { related 00015be0: 54 61 72 67 65 74 20 7d 29 5c 6e 20 20 20 20 7d Target })\n } 00015bf0: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 71 75 \n\n this._qu 00015c00: 65 75 65 43 61 6c 6c 62 61 63 6b 28 63 6f 6d 70 eueCallback(comp 00015c10: 6c 65 74 65 43 61 6c 6c 42 61 63 6b 2c 20 74 68 leteCallBack, th 00015c20: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 74 72 75 is._element, tru 00015c30: 65 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 68 69 64 e)\n }\n\n hid 00015c40: 65 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 e() {\n if (! 00015c50: 74 68 69 73 2e 5f 69 73 53 68 6f 77 6e 29 20 7b this._isShown) { 00015c60: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 00015c70: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e }\n\n con 00015c80: 73 74 20 68 69 64 65 45 76 65 6e 74 20 3d 20 45 st hideEvent = E 00015c90: 76 65 6e 74 48 61 6e 64 6c 65 72 2e 74 72 69 67 ventHandler.trig 00015ca0: 67 65 72 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e ger(this._elemen 00015cb0: 74 2c 20 45 56 45 4e 54 5f 48 49 44 45 29 5c 6e t, EVENT_HIDE)\n 00015cc0: 5c 6e 20 20 20 20 69 66 20 28 68 69 64 65 45 76 \n if (hideEv 00015cd0: 65 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 76 65 ent.defaultPreve 00015ce0: 6e 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 72 nted) {\n r 00015cf0: 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e eturn\n }\n\n 00015d00: 20 20 20 20 74 68 69 73 2e 5f 66 6f 63 75 73 74 this._focust 00015d10: 72 61 70 2e 64 65 61 63 74 69 76 61 74 65 28 29 rap.deactivate() 00015d20: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d \n this._elem 00015d30: 65 6e 74 2e 62 6c 75 72 28 29 5c 6e 20 20 20 20 ent.blur()\n 00015d40: 74 68 69 73 2e 5f 69 73 53 68 6f 77 6e 20 3d 20 this._isShown = 00015d50: 66 61 6c 73 65 5c 6e 20 20 20 20 74 68 69 73 2e false\n this. 00015d60: 5f 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 _element.classLi 00015d70: 73 74 2e 61 64 64 28 43 4c 41 53 53 5f 4e 41 4d st.add(CLASS_NAM 00015d80: 45 5f 48 49 44 49 4e 47 29 5c 6e 20 20 20 20 74 E_HIDING)\n t 00015d90: 68 69 73 2e 5f 62 61 63 6b 64 72 6f 70 2e 68 69 his._backdrop.hi 00015da0: 64 65 28 29 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 de()\n\n cons 00015db0: 74 20 63 6f 6d 70 6c 65 74 65 43 61 6c 6c 62 61 t completeCallba 00015dc0: 63 6b 20 3d 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 ck = () => {\n 00015dd0: 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e this._elemen 00015de0: 74 2e 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f t.classList.remo 00015df0: 76 65 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 ve(CLASS_NAME_SH 00015e00: 4f 57 2c 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 48 OW, CLASS_NAME_H 00015e10: 49 44 49 4e 47 29 5c 6e 20 20 20 20 20 20 74 68 IDING)\n th 00015e20: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 65 6d 6f is._element.remo 00015e30: 76 65 41 74 74 72 69 62 75 74 65 28 27 61 72 69 veAttribute('ari 00015e40: 61 2d 6d 6f 64 61 6c 27 29 5c 6e 20 20 20 20 20 a-modal')\n 00015e50: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 this._element.r 00015e60: 65 6d 6f 76 65 41 74 74 72 69 62 75 74 65 28 27 emoveAttribute(' 00015e70: 72 6f 6c 65 27 29 5c 6e 5c 6e 20 20 20 20 20 20 role')\n\n 00015e80: 69 66 20 28 21 74 68 69 73 2e 5f 63 6f 6e 66 69 if (!this._confi 00015e90: 67 2e 73 63 72 6f 6c 6c 29 20 7b 5c 6e 20 20 20 g.scroll) {\n 00015ea0: 20 20 20 20 20 6e 65 77 20 53 63 72 6f 6c 6c 42 new ScrollB 00015eb0: 61 72 48 65 6c 70 65 72 28 29 2e 72 65 73 65 74 arHelper().reset 00015ec0: 28 29 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 ()\n }\n\n 00015ed0: 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 EventHandle 00015ee0: 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f r.trigger(this._ 00015ef0: 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 48 element, EVENT_H 00015f00: 49 44 44 45 4e 29 5c 6e 20 20 20 20 7d 5c 6e 5c IDDEN)\n }\n\ 00015f10: 6e 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 65 n this._queue 00015f20: 43 61 6c 6c 62 61 63 6b 28 63 6f 6d 70 6c 65 74 Callback(complet 00015f30: 65 43 61 6c 6c 62 61 63 6b 2c 20 74 68 69 73 2e eCallback, this. 00015f40: 5f 65 6c 65 6d 65 6e 74 2c 20 74 72 75 65 29 5c _element, true)\ 00015f50: 6e 20 20 7d 5c 6e 5c 6e 20 20 64 69 73 70 6f 73 n }\n\n dispos 00015f60: 65 28 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e e() {\n this. 00015f70: 5f 62 61 63 6b 64 72 6f 70 2e 64 69 73 70 6f 73 _backdrop.dispos 00015f80: 65 28 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 66 e()\n this._f 00015f90: 6f 63 75 73 74 72 61 70 2e 64 65 61 63 74 69 76 ocustrap.deactiv 00015fa0: 61 74 65 28 29 5c 6e 20 20 20 20 73 75 70 65 72 ate()\n super 00015fb0: 2e 64 69 73 70 6f 73 65 28 29 5c 6e 20 20 7d 5c .dispose()\n }\ 00015fc0: 6e 5c 6e 20 20 2f 2f 20 50 72 69 76 61 74 65 5c n\n // Private\ 00015fd0: 6e 20 20 5f 69 6e 69 74 69 61 6c 69 7a 65 42 61 n _initializeBa 00015fe0: 63 6b 44 72 6f 70 28 29 20 7b 5c 6e 20 20 20 20 ckDrop() {\n 00015ff0: 63 6f 6e 73 74 20 63 6c 69 63 6b 43 61 6c 6c 62 const clickCallb 00016000: 61 63 6b 20 3d 20 28 29 20 3d 3e 20 7b 5c 6e 20 ack = () => {\n 00016010: 20 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f 63 if (this._c 00016020: 6f 6e 66 69 67 2e 62 61 63 6b 64 72 6f 70 20 3d onfig.backdrop = 00016030: 3d 3d 20 27 73 74 61 74 69 63 27 29 20 7b 5c 6e == 'static') {\n 00016040: 20 20 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e EventHan 00016050: 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 dler.trigger(thi 00016060: 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e s._element, EVEN 00016070: 54 5f 48 49 44 45 5f 50 52 45 56 45 4e 54 45 44 T_HIDE_PREVENTED 00016080: 29 5c 6e 20 20 20 20 20 20 20 20 72 65 74 75 72 )\n retur 00016090: 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 n\n }\n\n 000160a0: 20 20 20 20 74 68 69 73 2e 68 69 64 65 28 29 5c this.hide()\ 000160b0: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f n }\n\n // 000160c0: 20 27 73 74 61 74 69 63 27 20 6f 70 74 69 6f 6e 'static' option 000160d0: 20 77 69 6c 6c 20 62 65 20 74 72 61 6e 73 6c 61 will be transla 000160e0: 74 65 64 20 74 6f 20 74 72 75 65 2c 20 61 6e 64 ted to true, and 000160f0: 20 62 6f 6f 6c 65 61 6e 73 20 77 69 6c 6c 20 6b booleans will k 00016100: 65 65 70 20 74 68 65 69 72 20 76 61 6c 75 65 5c eep their value\ 00016110: 6e 20 20 20 20 63 6f 6e 73 74 20 69 73 56 69 73 n const isVis 00016120: 69 62 6c 65 20 3d 20 42 6f 6f 6c 65 61 6e 28 74 ible = Boolean(t 00016130: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 62 61 63 6b his._config.back 00016140: 64 72 6f 70 29 5c 6e 5c 6e 20 20 20 20 72 65 74 drop)\n\n ret 00016150: 75 72 6e 20 6e 65 77 20 42 61 63 6b 64 72 6f 70 urn new Backdrop 00016160: 28 7b 5c 6e 20 20 20 20 20 20 63 6c 61 73 73 4e ({\n classN 00016170: 61 6d 65 3a 20 43 4c 41 53 53 5f 4e 41 4d 45 5f ame: CLASS_NAME_ 00016180: 42 41 43 4b 44 52 4f 50 2c 5c 6e 20 20 20 20 20 BACKDROP,\n 00016190: 20 69 73 56 69 73 69 62 6c 65 2c 5c 6e 20 20 20 isVisible,\n 000161a0: 20 20 20 69 73 41 6e 69 6d 61 74 65 64 3a 20 74 isAnimated: t 000161b0: 72 75 65 2c 5c 6e 20 20 20 20 20 20 72 6f 6f 74 rue,\n root 000161c0: 45 6c 65 6d 65 6e 74 3a 20 74 68 69 73 2e 5f 65 Element: this._e 000161d0: 6c 65 6d 65 6e 74 2e 70 61 72 65 6e 74 4e 6f 64 lement.parentNod 000161e0: 65 2c 5c 6e 20 20 20 20 20 20 63 6c 69 63 6b 43 e,\n clickC 000161f0: 61 6c 6c 62 61 63 6b 3a 20 69 73 56 69 73 69 62 allback: isVisib 00016200: 6c 65 20 3f 20 63 6c 69 63 6b 43 61 6c 6c 62 61 le ? clickCallba 00016210: 63 6b 20 3a 20 6e 75 6c 6c 5c 6e 20 20 20 20 7d ck : null\n } 00016220: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 69 6e 69 )\n }\n\n _ini 00016230: 74 69 61 6c 69 7a 65 46 6f 63 75 73 54 72 61 70 tializeFocusTrap 00016240: 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e () {\n return 00016250: 20 6e 65 77 20 46 6f 63 75 73 54 72 61 70 28 7b new FocusTrap({ 00016260: 5c 6e 20 20 20 20 20 20 74 72 61 70 45 6c 65 6d \n trapElem 00016270: 65 6e 74 3a 20 74 68 69 73 2e 5f 65 6c 65 6d 65 ent: this._eleme 00016280: 6e 74 5c 6e 20 20 20 20 7d 29 5c 6e 20 20 7d 5c nt\n })\n }\ 00016290: 6e 5c 6e 20 20 5f 61 64 64 45 76 65 6e 74 4c 69 n\n _addEventLi 000162a0: 73 74 65 6e 65 72 73 28 29 20 7b 5c 6e 20 20 20 steners() {\n 000162b0: 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e EventHandler.on 000162c0: 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 (this._element, 000162d0: 45 56 45 4e 54 5f 4b 45 59 44 4f 57 4e 5f 44 49 EVENT_KEYDOWN_DI 000162e0: 53 4d 49 53 53 2c 20 65 76 65 6e 74 20 3d 3e 20 SMISS, event => 000162f0: 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 65 76 65 {\n if (eve 00016300: 6e 74 2e 6b 65 79 20 21 3d 3d 20 45 53 43 41 50 nt.key !== ESCAP 00016310: 45 5f 4b 45 59 29 20 7b 5c 6e 20 20 20 20 20 20 E_KEY) {\n 00016320: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 20 20 return\n 00016330: 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 74 }\n\n if (t 00016340: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 6b 65 79 62 his._config.keyb 00016350: 6f 61 72 64 29 20 7b 5c 6e 20 20 20 20 20 20 20 oard) {\n 00016360: 20 74 68 69 73 2e 68 69 64 65 28 29 5c 6e 20 20 this.hide()\n 00016370: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 00016380: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 45 }\n\n E 00016390: 76 65 6e 74 48 61 6e 64 6c 65 72 2e 74 72 69 67 ventHandler.trig 000163a0: 67 65 72 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e ger(this._elemen 000163b0: 74 2c 20 45 56 45 4e 54 5f 48 49 44 45 5f 50 52 t, EVENT_HIDE_PR 000163c0: 45 56 45 4e 54 45 44 29 5c 6e 20 20 20 20 7d 29 EVENTED)\n }) 000163d0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 53 74 \n }\n\n // St 000163e0: 61 74 69 63 5c 6e 20 20 73 74 61 74 69 63 20 6a atic\n static j 000163f0: 51 75 65 72 79 49 6e 74 65 72 66 61 63 65 28 63 QueryInterface(c 00016400: 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 72 65 onfig) {\n re 00016410: 74 75 72 6e 20 74 68 69 73 2e 65 61 63 68 28 66 turn this.each(f 00016420: 75 6e 63 74 69 6f 6e 20 28 29 20 7b 5c 6e 20 20 unction () {\n 00016430: 20 20 20 20 63 6f 6e 73 74 20 64 61 74 61 20 3d const data = 00016440: 20 4f 66 66 63 61 6e 76 61 73 2e 67 65 74 4f 72 Offcanvas.getOr 00016450: 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 74 CreateInstance(t 00016460: 68 69 73 2c 20 63 6f 6e 66 69 67 29 5c 6e 5c 6e his, config)\n\n 00016470: 20 20 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 if (typeof 00016480: 20 63 6f 6e 66 69 67 20 21 3d 3d 20 27 73 74 72 config !== 'str 00016490: 69 6e 67 27 29 20 7b 5c 6e 20 20 20 20 20 20 20 ing') {\n 000164a0: 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 20 20 7d return\n } 000164b0: 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 64 61 \n\n if (da 000164c0: 74 61 5b 63 6f 6e 66 69 67 5d 20 3d 3d 3d 20 75 ta[config] === u 000164d0: 6e 64 65 66 69 6e 65 64 20 7c 7c 20 63 6f 6e 66 ndefined || conf 000164e0: 69 67 2e 73 74 61 72 74 73 57 69 74 68 28 27 5f ig.startsWith('_ 000164f0: 27 29 20 7c 7c 20 63 6f 6e 66 69 67 20 3d 3d 3d ') || config === 00016500: 20 27 63 6f 6e 73 74 72 75 63 74 6f 72 27 29 20 'constructor') 00016510: 7b 5c 6e 20 20 20 20 20 20 20 20 74 68 72 6f 77 {\n throw 00016520: 20 6e 65 77 20 54 79 70 65 45 72 72 6f 72 28 60 new TypeError(` 00016530: 4e 6f 20 6d 65 74 68 6f 64 20 6e 61 6d 65 64 20 No method named 00016540: 5c 22 24 7b 63 6f 6e 66 69 67 7d 5c 22 60 29 5c \"${config}\"`)\ 00016550: 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 n }\n\n 00016560: 20 20 64 61 74 61 5b 63 6f 6e 66 69 67 5d 28 74 data[config](t 00016570: 68 69 73 29 5c 6e 20 20 20 20 7d 29 5c 6e 20 20 his)\n })\n 00016580: 7d 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 }\n}\n\n/**\n * 00016590: 44 61 74 61 20 41 50 49 20 69 6d 70 6c 65 6d 65 Data API impleme 000165a0: 6e 74 61 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e ntation\n */\n\n 000165b0: 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 EventHandler.on( 000165c0: 64 6f 63 75 6d 65 6e 74 2c 20 45 56 45 4e 54 5f document, EVENT_ 000165d0: 43 4c 49 43 4b 5f 44 41 54 41 5f 41 50 49 2c 20 CLICK_DATA_API, 000165e0: 53 45 4c 45 43 54 4f 52 5f 44 41 54 41 5f 54 4f SELECTOR_DATA_TO 000165f0: 47 47 4c 45 2c 20 66 75 6e 63 74 69 6f 6e 20 28 GGLE, function ( 00016600: 65 76 65 6e 74 29 20 7b 5c 6e 20 20 63 6f 6e 73 event) {\n cons 00016610: 74 20 74 61 72 67 65 74 20 3d 20 53 65 6c 65 63 t target = Selec 00016620: 74 6f 72 45 6e 67 69 6e 65 2e 67 65 74 45 6c 65 torEngine.getEle 00016630: 6d 65 6e 74 46 72 6f 6d 53 65 6c 65 63 74 6f 72 mentFromSelector 00016640: 28 74 68 69 73 29 5c 6e 5c 6e 20 20 69 66 20 28 (this)\n\n if ( 00016650: 5b 27 41 27 2c 20 27 41 52 45 41 27 5d 2e 69 6e ['A', 'AREA'].in 00016660: 63 6c 75 64 65 73 28 74 68 69 73 2e 74 61 67 4e cludes(this.tagN 00016670: 61 6d 65 29 29 20 7b 5c 6e 20 20 20 20 65 76 65 ame)) {\n eve 00016680: 6e 74 2e 70 72 65 76 65 6e 74 44 65 66 61 75 6c nt.preventDefaul 00016690: 74 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 69 66 t()\n }\n\n if 000166a0: 20 28 69 73 44 69 73 61 62 6c 65 64 28 74 68 69 (isDisabled(thi 000166b0: 73 29 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 s)) {\n retur 000166c0: 6e 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 45 76 65 6e n\n }\n\n Even 000166d0: 74 48 61 6e 64 6c 65 72 2e 6f 6e 65 28 74 61 72 tHandler.one(tar 000166e0: 67 65 74 2c 20 45 56 45 4e 54 5f 48 49 44 44 45 get, EVENT_HIDDE 000166f0: 4e 2c 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 N, () => {\n 00016700: 2f 2f 20 66 6f 63 75 73 20 6f 6e 20 74 72 69 67 // focus on trig 00016710: 67 65 72 20 77 68 65 6e 20 69 74 20 69 73 20 63 ger when it is c 00016720: 6c 6f 73 65 64 5c 6e 20 20 20 20 69 66 20 28 69 losed\n if (i 00016730: 73 56 69 73 69 62 6c 65 28 74 68 69 73 29 29 20 sVisible(this)) 00016740: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 66 6f {\n this.fo 00016750: 63 75 73 28 29 5c 6e 20 20 20 20 7d 5c 6e 20 20 cus()\n }\n 00016760: 7d 29 5c 6e 5c 6e 20 20 2f 2f 20 61 76 6f 69 64 })\n\n // avoid 00016770: 20 63 6f 6e 66 6c 69 63 74 20 77 68 65 6e 20 63 conflict when c 00016780: 6c 69 63 6b 69 6e 67 20 61 20 74 6f 67 67 6c 65 licking a toggle 00016790: 72 20 6f 66 20 61 6e 20 6f 66 66 63 61 6e 76 61 r of an offcanva 000167a0: 73 2c 20 77 68 69 6c 65 20 61 6e 6f 74 68 65 72 s, while another 000167b0: 20 69 73 20 6f 70 65 6e 5c 6e 20 20 63 6f 6e 73 is open\n cons 000167c0: 74 20 61 6c 72 65 61 64 79 4f 70 65 6e 20 3d 20 t alreadyOpen = 000167d0: 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 SelectorEngine.f 000167e0: 69 6e 64 4f 6e 65 28 4f 50 45 4e 5f 53 45 4c 45 indOne(OPEN_SELE 000167f0: 43 54 4f 52 29 5c 6e 20 20 69 66 20 28 61 6c 72 CTOR)\n if (alr 00016800: 65 61 64 79 4f 70 65 6e 20 26 26 20 61 6c 72 65 eadyOpen && alre 00016810: 61 64 79 4f 70 65 6e 20 21 3d 3d 20 74 61 72 67 adyOpen !== targ 00016820: 65 74 29 20 7b 5c 6e 20 20 20 20 4f 66 66 63 61 et) {\n Offca 00016830: 6e 76 61 73 2e 67 65 74 49 6e 73 74 61 6e 63 65 nvas.getInstance 00016840: 28 61 6c 72 65 61 64 79 4f 70 65 6e 29 2e 68 69 (alreadyOpen).hi 00016850: 64 65 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 63 de()\n }\n\n c 00016860: 6f 6e 73 74 20 64 61 74 61 20 3d 20 4f 66 66 63 onst data = Offc 00016870: 61 6e 76 61 73 2e 67 65 74 4f 72 43 72 65 61 74 anvas.getOrCreat 00016880: 65 49 6e 73 74 61 6e 63 65 28 74 61 72 67 65 74 eInstance(target 00016890: 29 5c 6e 20 20 64 61 74 61 2e 74 6f 67 67 6c 65 )\n data.toggle 000168a0: 28 74 68 69 73 29 5c 6e 7d 29 5c 6e 5c 6e 45 76 (this)\n})\n\nEv 000168b0: 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 77 69 entHandler.on(wi 000168c0: 6e 64 6f 77 2c 20 45 56 45 4e 54 5f 4c 4f 41 44 ndow, EVENT_LOAD 000168d0: 5f 44 41 54 41 5f 41 50 49 2c 20 28 29 20 3d 3e _DATA_API, () => 000168e0: 20 7b 5c 6e 20 20 66 6f 72 20 28 63 6f 6e 73 74 {\n for (const 000168f0: 20 73 65 6c 65 63 74 6f 72 20 6f 66 20 53 65 6c selector of Sel 00016900: 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 ectorEngine.find 00016910: 28 4f 50 45 4e 5f 53 45 4c 45 43 54 4f 52 29 29 (OPEN_SELECTOR)) 00016920: 20 7b 5c 6e 20 20 20 20 4f 66 66 63 61 6e 76 61 {\n Offcanva 00016930: 73 2e 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 s.getOrCreateIns 00016940: 74 61 6e 63 65 28 73 65 6c 65 63 74 6f 72 29 2e tance(selector). 00016950: 73 68 6f 77 28 29 5c 6e 20 20 7d 5c 6e 7d 29 5c show()\n }\n})\ 00016960: 6e 5c 6e 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e n\nEventHandler. 00016970: 6f 6e 28 77 69 6e 64 6f 77 2c 20 45 56 45 4e 54 on(window, EVENT 00016980: 5f 52 45 53 49 5a 45 2c 20 28 29 20 3d 3e 20 7b _RESIZE, () => { 00016990: 5c 6e 20 20 66 6f 72 20 28 63 6f 6e 73 74 20 65 \n for (const e 000169a0: 6c 65 6d 65 6e 74 20 6f 66 20 53 65 6c 65 63 74 lement of Select 000169b0: 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 28 27 5b orEngine.find('[ 000169c0: 61 72 69 61 2d 6d 6f 64 61 6c 5d 5b 63 6c 61 73 aria-modal][clas 000169d0: 73 2a 3d 73 68 6f 77 5d 5b 63 6c 61 73 73 2a 3d s*=show][class*= 000169e0: 6f 66 66 63 61 6e 76 61 73 2d 5d 27 29 29 20 7b offcanvas-]')) { 000169f0: 5c 6e 20 20 20 20 69 66 20 28 67 65 74 43 6f 6d \n if (getCom 00016a00: 70 75 74 65 64 53 74 79 6c 65 28 65 6c 65 6d 65 putedStyle(eleme 00016a10: 6e 74 29 2e 70 6f 73 69 74 69 6f 6e 20 21 3d 3d nt).position !== 00016a20: 20 27 66 69 78 65 64 27 29 20 7b 5c 6e 20 20 20 'fixed') {\n 00016a30: 20 20 20 4f 66 66 63 61 6e 76 61 73 2e 67 65 74 Offcanvas.get 00016a40: 4f 72 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 OrCreateInstance 00016a50: 28 65 6c 65 6d 65 6e 74 29 2e 68 69 64 65 28 29 (element).hide() 00016a60: 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 7d 29 \n }\n }\n}) 00016a70: 5c 6e 5c 6e 65 6e 61 62 6c 65 44 69 73 6d 69 73 \n\nenableDismis 00016a80: 73 54 72 69 67 67 65 72 28 4f 66 66 63 61 6e 76 sTrigger(Offcanv 00016a90: 61 73 29 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 6a as)\n\n/**\n * j 00016aa0: 51 75 65 72 79 5c 6e 20 2a 2f 5c 6e 5c 6e 64 65 Query\n */\n\nde 00016ab0: 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 6e fineJQueryPlugin 00016ac0: 28 4f 66 66 63 61 6e 76 61 73 29 5c 6e 5c 6e 65 (Offcanvas)\n\ne 00016ad0: 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 4f 66 xport default Of 00016ae0: 66 63 61 6e 76 61 73 5c 6e 22 2c 22 2f 2a 2a 5c fcanvas\n","/**\ 00016af0: 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d n * ------------ 00016b00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016b10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016b20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016b30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e --------------\n 00016b40: 20 2a 20 42 6f 6f 74 73 74 72 61 70 20 75 74 69 * Bootstrap uti 00016b50: 6c 2f 73 61 6e 69 74 69 7a 65 72 2e 6a 73 5c 6e l/sanitizer.js\n 00016b60: 20 2a 20 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 * Licensed unde 00016b70: 72 20 4d 49 54 20 28 68 74 74 70 73 3a 2f 2f 67 r MIT (https://g 00016b80: 69 74 68 75 62 2e 63 6f 6d 2f 74 77 62 73 2f 62 ithub.com/twbs/b 00016b90: 6f 6f 74 73 74 72 61 70 2f 62 6c 6f 62 2f 6d 61 ootstrap/blob/ma 00016ba0: 69 6e 2f 4c 49 43 45 4e 53 45 29 5c 6e 20 2a 20 in/LICENSE)\n * 00016bb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016bc0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016bd0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016be0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00016bf0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c ----------\n */\ 00016c00: 6e 5c 6e 2f 2f 20 6a 73 2d 64 6f 63 73 2d 73 74 n\n// js-docs-st 00016c10: 61 72 74 20 61 6c 6c 6f 77 2d 6c 69 73 74 5c 6e art allow-list\n 00016c20: 63 6f 6e 73 74 20 41 52 49 41 5f 41 54 54 52 49 const ARIA_ATTRI 00016c30: 42 55 54 45 5f 50 41 54 54 45 52 4e 20 3d 20 2f BUTE_PATTERN = / 00016c40: 5e 61 72 69 61 2d 5b 5c 5c 77 2d 5d 2a 24 2f 69 ^aria-[\\w-]*$/i 00016c50: 5c 6e 5c 6e 65 78 70 6f 72 74 20 63 6f 6e 73 74 \n\nexport const 00016c60: 20 44 65 66 61 75 6c 74 41 6c 6c 6f 77 6c 69 73 DefaultAllowlis 00016c70: 74 20 3d 20 7b 5c 6e 20 20 2f 2f 20 47 6c 6f 62 t = {\n // Glob 00016c80: 61 6c 20 61 74 74 72 69 62 75 74 65 73 20 61 6c al attributes al 00016c90: 6c 6f 77 65 64 20 6f 6e 20 61 6e 79 20 73 75 70 lowed on any sup 00016ca0: 70 6c 69 65 64 20 65 6c 65 6d 65 6e 74 20 62 65 plied element be 00016cb0: 6c 6f 77 2e 5c 6e 20 20 27 2a 27 3a 20 5b 27 63 low.\n '*': ['c 00016cc0: 6c 61 73 73 27 2c 20 27 64 69 72 27 2c 20 27 69 lass', 'dir', 'i 00016cd0: 64 27 2c 20 27 6c 61 6e 67 27 2c 20 27 72 6f 6c d', 'lang', 'rol 00016ce0: 65 27 2c 20 41 52 49 41 5f 41 54 54 52 49 42 55 e', ARIA_ATTRIBU 00016cf0: 54 45 5f 50 41 54 54 45 52 4e 5d 2c 5c 6e 20 20 TE_PATTERN],\n 00016d00: 61 3a 20 5b 27 74 61 72 67 65 74 27 2c 20 27 68 a: ['target', 'h 00016d10: 72 65 66 27 2c 20 27 74 69 74 6c 65 27 2c 20 27 ref', 'title', ' 00016d20: 72 65 6c 27 5d 2c 5c 6e 20 20 61 72 65 61 3a 20 rel'],\n area: 00016d30: 5b 5d 2c 5c 6e 20 20 62 3a 20 5b 5d 2c 5c 6e 20 [],\n b: [],\n 00016d40: 20 62 72 3a 20 5b 5d 2c 5c 6e 20 20 63 6f 6c 3a br: [],\n col: 00016d50: 20 5b 5d 2c 5c 6e 20 20 63 6f 64 65 3a 20 5b 5d [],\n code: [] 00016d60: 2c 5c 6e 20 20 64 64 3a 20 5b 5d 2c 5c 6e 20 20 ,\n dd: [],\n 00016d70: 64 69 76 3a 20 5b 5d 2c 5c 6e 20 20 64 6c 3a 20 div: [],\n dl: 00016d80: 5b 5d 2c 5c 6e 20 20 64 74 3a 20 5b 5d 2c 5c 6e [],\n dt: [],\n 00016d90: 20 20 65 6d 3a 20 5b 5d 2c 5c 6e 20 20 68 72 3a em: [],\n hr: 00016da0: 20 5b 5d 2c 5c 6e 20 20 68 31 3a 20 5b 5d 2c 5c [],\n h1: [],\ 00016db0: 6e 20 20 68 32 3a 20 5b 5d 2c 5c 6e 20 20 68 33 n h2: [],\n h3 00016dc0: 3a 20 5b 5d 2c 5c 6e 20 20 68 34 3a 20 5b 5d 2c : [],\n h4: [], 00016dd0: 5c 6e 20 20 68 35 3a 20 5b 5d 2c 5c 6e 20 20 68 \n h5: [],\n h 00016de0: 36 3a 20 5b 5d 2c 5c 6e 20 20 69 3a 20 5b 5d 2c 6: [],\n i: [], 00016df0: 5c 6e 20 20 69 6d 67 3a 20 5b 27 73 72 63 27 2c \n img: ['src', 00016e00: 20 27 73 72 63 73 65 74 27 2c 20 27 61 6c 74 27 'srcset', 'alt' 00016e10: 2c 20 27 74 69 74 6c 65 27 2c 20 27 77 69 64 74 , 'title', 'widt 00016e20: 68 27 2c 20 27 68 65 69 67 68 74 27 5d 2c 5c 6e h', 'height'],\n 00016e30: 20 20 6c 69 3a 20 5b 5d 2c 5c 6e 20 20 6f 6c 3a li: [],\n ol: 00016e40: 20 5b 5d 2c 5c 6e 20 20 70 3a 20 5b 5d 2c 5c 6e [],\n p: [],\n 00016e50: 20 20 70 72 65 3a 20 5b 5d 2c 5c 6e 20 20 73 3a pre: [],\n s: 00016e60: 20 5b 5d 2c 5c 6e 20 20 73 6d 61 6c 6c 3a 20 5b [],\n small: [ 00016e70: 5d 2c 5c 6e 20 20 73 70 61 6e 3a 20 5b 5d 2c 5c ],\n span: [],\ 00016e80: 6e 20 20 73 75 62 3a 20 5b 5d 2c 5c 6e 20 20 73 n sub: [],\n s 00016e90: 75 70 3a 20 5b 5d 2c 5c 6e 20 20 73 74 72 6f 6e up: [],\n stron 00016ea0: 67 3a 20 5b 5d 2c 5c 6e 20 20 75 3a 20 5b 5d 2c g: [],\n u: [], 00016eb0: 5c 6e 20 20 75 6c 3a 20 5b 5d 5c 6e 7d 5c 6e 2f \n ul: []\n}\n/ 00016ec0: 2f 20 6a 73 2d 64 6f 63 73 2d 65 6e 64 20 61 6c / js-docs-end al 00016ed0: 6c 6f 77 2d 6c 69 73 74 5c 6e 5c 6e 63 6f 6e 73 low-list\n\ncons 00016ee0: 74 20 75 72 69 41 74 74 72 69 62 75 74 65 73 20 t uriAttributes 00016ef0: 3d 20 6e 65 77 20 53 65 74 28 5b 5c 6e 20 20 27 = new Set([\n ' 00016f00: 62 61 63 6b 67 72 6f 75 6e 64 27 2c 5c 6e 20 20 background',\n 00016f10: 27 63 69 74 65 27 2c 5c 6e 20 20 27 68 72 65 66 'cite',\n 'href 00016f20: 27 2c 5c 6e 20 20 27 69 74 65 6d 74 79 70 65 27 ',\n 'itemtype' 00016f30: 2c 5c 6e 20 20 27 6c 6f 6e 67 64 65 73 63 27 2c ,\n 'longdesc', 00016f40: 5c 6e 20 20 27 70 6f 73 74 65 72 27 2c 5c 6e 20 \n 'poster',\n 00016f50: 20 27 73 72 63 27 2c 5c 6e 20 20 27 78 6c 69 6e 'src',\n 'xlin 00016f60: 6b 3a 68 72 65 66 27 5c 6e 5d 29 5c 6e 5c 6e 2f k:href'\n])\n\n/ 00016f70: 2a 2a 5c 6e 20 2a 20 41 20 70 61 74 74 65 72 6e **\n * A pattern 00016f80: 20 74 68 61 74 20 72 65 63 6f 67 6e 69 7a 65 73 that recognizes 00016f90: 20 55 52 4c 73 20 74 68 61 74 20 61 72 65 20 73 URLs that are s 00016fa0: 61 66 65 20 77 72 74 2e 20 58 53 53 20 69 6e 20 afe wrt. XSS in 00016fb0: 55 52 4c 20 6e 61 76 69 67 61 74 69 6f 6e 5c 6e URL navigation\n 00016fc0: 20 2a 20 63 6f 6e 74 65 78 74 73 2e 5c 6e 20 2a * contexts.\n * 00016fd0: 5c 6e 20 2a 20 53 68 6f 75 74 2d 6f 75 74 20 74 \n * Shout-out t 00016fe0: 6f 20 41 6e 67 75 6c 61 72 20 68 74 74 70 73 3a o Angular https: 00016ff0: 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 61 6e 67 //github.com/ang 00017000: 75 6c 61 72 2f 61 6e 67 75 6c 61 72 2f 62 6c 6f ular/angular/blo 00017010: 62 2f 31 35 2e 32 2e 38 2f 70 61 63 6b 61 67 65 b/15.2.8/package 00017020: 73 2f 63 6f 72 65 2f 73 72 63 2f 73 61 6e 69 74 s/core/src/sanit 00017030: 69 7a 61 74 69 6f 6e 2f 75 72 6c 5f 73 61 6e 69 ization/url_sani 00017040: 74 69 7a 65 72 2e 74 73 23 4c 33 38 5c 6e 20 2a tizer.ts#L38\n * 00017050: 2f 5c 6e 2f 2f 20 65 73 6c 69 6e 74 2d 64 69 73 /\n// eslint-dis 00017060: 61 62 6c 65 2d 6e 65 78 74 2d 6c 69 6e 65 20 75 able-next-line u 00017070: 6e 69 63 6f 72 6e 2f 62 65 74 74 65 72 2d 72 65 nicorn/better-re 00017080: 67 65 78 5c 6e 63 6f 6e 73 74 20 53 41 46 45 5f gex\nconst SAFE_ 00017090: 55 52 4c 5f 50 41 54 54 45 52 4e 20 3d 20 2f 5e URL_PATTERN = /^ 000170a0: 28 3f 21 6a 61 76 61 73 63 72 69 70 74 3a 29 28 (?!javascript:)( 000170b0: 3f 3a 5b 61 2d 7a 30 2d 39 2b 2e 2d 5d 2b 3a 7c ?:[a-z0-9+.-]+:| 000170c0: 5b 5e 26 3a 2f 3f 23 5d 2a 28 3f 3a 5b 2f 3f 23 [^&:/?#]*(?:[/?# 000170d0: 5d 7c 24 29 29 2f 69 5c 6e 5c 6e 63 6f 6e 73 74 ]|$))/i\n\nconst 000170e0: 20 61 6c 6c 6f 77 65 64 41 74 74 72 69 62 75 74 allowedAttribut 000170f0: 65 20 3d 20 28 61 74 74 72 69 62 75 74 65 2c 20 e = (attribute, 00017100: 61 6c 6c 6f 77 65 64 41 74 74 72 69 62 75 74 65 allowedAttribute 00017110: 4c 69 73 74 29 20 3d 3e 20 7b 5c 6e 20 20 63 6f List) => {\n co 00017120: 6e 73 74 20 61 74 74 72 69 62 75 74 65 4e 61 6d nst attributeNam 00017130: 65 20 3d 20 61 74 74 72 69 62 75 74 65 2e 6e 6f e = attribute.no 00017140: 64 65 4e 61 6d 65 2e 74 6f 4c 6f 77 65 72 43 61 deName.toLowerCa 00017150: 73 65 28 29 5c 6e 5c 6e 20 20 69 66 20 28 61 6c se()\n\n if (al 00017160: 6c 6f 77 65 64 41 74 74 72 69 62 75 74 65 4c 69 lowedAttributeLi 00017170: 73 74 2e 69 6e 63 6c 75 64 65 73 28 61 74 74 72 st.includes(attr 00017180: 69 62 75 74 65 4e 61 6d 65 29 29 20 7b 5c 6e 20 ibuteName)) {\n 00017190: 20 20 20 69 66 20 28 75 72 69 41 74 74 72 69 62 if (uriAttrib 000171a0: 75 74 65 73 2e 68 61 73 28 61 74 74 72 69 62 75 utes.has(attribu 000171b0: 74 65 4e 61 6d 65 29 29 20 7b 5c 6e 20 20 20 20 teName)) {\n 000171c0: 20 20 72 65 74 75 72 6e 20 42 6f 6f 6c 65 61 6e return Boolean 000171d0: 28 53 41 46 45 5f 55 52 4c 5f 50 41 54 54 45 52 (SAFE_URL_PATTER 000171e0: 4e 2e 74 65 73 74 28 61 74 74 72 69 62 75 74 65 N.test(attribute 000171f0: 2e 6e 6f 64 65 56 61 6c 75 65 29 29 5c 6e 20 20 .nodeValue))\n 00017200: 20 20 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 75 72 }\n\n retur 00017210: 6e 20 74 72 75 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 n true\n }\n\n 00017220: 20 2f 2f 20 43 68 65 63 6b 20 69 66 20 61 20 72 // Check if a r 00017230: 65 67 75 6c 61 72 20 65 78 70 72 65 73 73 69 6f egular expressio 00017240: 6e 20 76 61 6c 69 64 61 74 65 73 20 74 68 65 20 n validates the 00017250: 61 74 74 72 69 62 75 74 65 2e 5c 6e 20 20 72 65 attribute.\n re 00017260: 74 75 72 6e 20 61 6c 6c 6f 77 65 64 41 74 74 72 turn allowedAttr 00017270: 69 62 75 74 65 4c 69 73 74 2e 66 69 6c 74 65 72 ibuteList.filter 00017280: 28 61 74 74 72 69 62 75 74 65 52 65 67 65 78 20 (attributeRegex 00017290: 3d 3e 20 61 74 74 72 69 62 75 74 65 52 65 67 65 => attributeRege 000172a0: 78 20 69 6e 73 74 61 6e 63 65 6f 66 20 52 65 67 x instanceof Reg 000172b0: 45 78 70 29 5c 6e 20 20 20 20 2e 73 6f 6d 65 28 Exp)\n .some( 000172c0: 72 65 67 65 78 20 3d 3e 20 72 65 67 65 78 2e 74 regex => regex.t 000172d0: 65 73 74 28 61 74 74 72 69 62 75 74 65 4e 61 6d est(attributeNam 000172e0: 65 29 29 5c 6e 7d 5c 6e 5c 6e 65 78 70 6f 72 74 e))\n}\n\nexport 000172f0: 20 66 75 6e 63 74 69 6f 6e 20 73 61 6e 69 74 69 function saniti 00017300: 7a 65 48 74 6d 6c 28 75 6e 73 61 66 65 48 74 6d zeHtml(unsafeHtm 00017310: 6c 2c 20 61 6c 6c 6f 77 4c 69 73 74 2c 20 73 61 l, allowList, sa 00017320: 6e 69 74 69 7a 65 46 75 6e 63 74 69 6f 6e 29 20 nitizeFunction) 00017330: 7b 5c 6e 20 20 69 66 20 28 21 75 6e 73 61 66 65 {\n if (!unsafe 00017340: 48 74 6d 6c 2e 6c 65 6e 67 74 68 29 20 7b 5c 6e Html.length) {\n 00017350: 20 20 20 20 72 65 74 75 72 6e 20 75 6e 73 61 66 return unsaf 00017360: 65 48 74 6d 6c 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 eHtml\n }\n\n 00017370: 69 66 20 28 73 61 6e 69 74 69 7a 65 46 75 6e 63 if (sanitizeFunc 00017380: 74 69 6f 6e 20 26 26 20 74 79 70 65 6f 66 20 73 tion && typeof s 00017390: 61 6e 69 74 69 7a 65 46 75 6e 63 74 69 6f 6e 20 anitizeFunction 000173a0: 3d 3d 3d 20 27 66 75 6e 63 74 69 6f 6e 27 29 20 === 'function') 000173b0: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 73 61 {\n return sa 000173c0: 6e 69 74 69 7a 65 46 75 6e 63 74 69 6f 6e 28 75 nitizeFunction(u 000173d0: 6e 73 61 66 65 48 74 6d 6c 29 5c 6e 20 20 7d 5c nsafeHtml)\n }\ 000173e0: 6e 5c 6e 20 20 63 6f 6e 73 74 20 64 6f 6d 50 61 n\n const domPa 000173f0: 72 73 65 72 20 3d 20 6e 65 77 20 77 69 6e 64 6f rser = new windo 00017400: 77 2e 44 4f 4d 50 61 72 73 65 72 28 29 5c 6e 20 w.DOMParser()\n 00017410: 20 63 6f 6e 73 74 20 63 72 65 61 74 65 64 44 6f const createdDo 00017420: 63 75 6d 65 6e 74 20 3d 20 64 6f 6d 50 61 72 73 cument = domPars 00017430: 65 72 2e 70 61 72 73 65 46 72 6f 6d 53 74 72 69 er.parseFromStri 00017440: 6e 67 28 75 6e 73 61 66 65 48 74 6d 6c 2c 20 27 ng(unsafeHtml, ' 00017450: 74 65 78 74 2f 68 74 6d 6c 27 29 5c 6e 20 20 63 text/html')\n c 00017460: 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 73 20 3d 20 onst elements = 00017470: 5b 5d 2e 63 6f 6e 63 61 74 28 2e 2e 2e 63 72 65 [].concat(...cre 00017480: 61 74 65 64 44 6f 63 75 6d 65 6e 74 2e 62 6f 64 atedDocument.bod 00017490: 79 2e 71 75 65 72 79 53 65 6c 65 63 74 6f 72 41 y.querySelectorA 000174a0: 6c 6c 28 27 2a 27 29 29 5c 6e 5c 6e 20 20 66 6f ll('*'))\n\n fo 000174b0: 72 20 28 63 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 r (const element 000174c0: 20 6f 66 20 65 6c 65 6d 65 6e 74 73 29 20 7b 5c of elements) {\ 000174d0: 6e 20 20 20 20 63 6f 6e 73 74 20 65 6c 65 6d 65 n const eleme 000174e0: 6e 74 4e 61 6d 65 20 3d 20 65 6c 65 6d 65 6e 74 ntName = element 000174f0: 2e 6e 6f 64 65 4e 61 6d 65 2e 74 6f 4c 6f 77 65 .nodeName.toLowe 00017500: 72 43 61 73 65 28 29 5c 6e 5c 6e 20 20 20 20 69 rCase()\n\n i 00017510: 66 20 28 21 4f 62 6a 65 63 74 2e 6b 65 79 73 28 f (!Object.keys( 00017520: 61 6c 6c 6f 77 4c 69 73 74 29 2e 69 6e 63 6c 75 allowList).inclu 00017530: 64 65 73 28 65 6c 65 6d 65 6e 74 4e 61 6d 65 29 des(elementName) 00017540: 29 20 7b 5c 6e 20 20 20 20 20 20 65 6c 65 6d 65 ) {\n eleme 00017550: 6e 74 2e 72 65 6d 6f 76 65 28 29 5c 6e 20 20 20 nt.remove()\n 00017560: 20 20 20 63 6f 6e 74 69 6e 75 65 5c 6e 20 20 20 continue\n 00017570: 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 }\n\n const 00017580: 61 74 74 72 69 62 75 74 65 4c 69 73 74 20 3d 20 attributeList = 00017590: 5b 5d 2e 63 6f 6e 63 61 74 28 2e 2e 2e 65 6c 65 [].concat(...ele 000175a0: 6d 65 6e 74 2e 61 74 74 72 69 62 75 74 65 73 29 ment.attributes) 000175b0: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 61 6c 6c 6f \n const allo 000175c0: 77 65 64 41 74 74 72 69 62 75 74 65 73 20 3d 20 wedAttributes = 000175d0: 5b 5d 2e 63 6f 6e 63 61 74 28 61 6c 6c 6f 77 4c [].concat(allowL 000175e0: 69 73 74 5b 27 2a 27 5d 20 7c 7c 20 5b 5d 2c 20 ist['*'] || [], 000175f0: 61 6c 6c 6f 77 4c 69 73 74 5b 65 6c 65 6d 65 6e allowList[elemen 00017600: 74 4e 61 6d 65 5d 20 7c 7c 20 5b 5d 29 5c 6e 5c tName] || [])\n\ 00017610: 6e 20 20 20 20 66 6f 72 20 28 63 6f 6e 73 74 20 n for (const 00017620: 61 74 74 72 69 62 75 74 65 20 6f 66 20 61 74 74 attribute of att 00017630: 72 69 62 75 74 65 4c 69 73 74 29 20 7b 5c 6e 20 ributeList) {\n 00017640: 20 20 20 20 20 69 66 20 28 21 61 6c 6c 6f 77 65 if (!allowe 00017650: 64 41 74 74 72 69 62 75 74 65 28 61 74 74 72 69 dAttribute(attri 00017660: 62 75 74 65 2c 20 61 6c 6c 6f 77 65 64 41 74 74 bute, allowedAtt 00017670: 72 69 62 75 74 65 73 29 29 20 7b 5c 6e 20 20 20 ributes)) {\n 00017680: 20 20 20 20 20 65 6c 65 6d 65 6e 74 2e 72 65 6d element.rem 00017690: 6f 76 65 41 74 74 72 69 62 75 74 65 28 61 74 74 oveAttribute(att 000176a0: 72 69 62 75 74 65 2e 6e 6f 64 65 4e 61 6d 65 29 ribute.nodeName) 000176b0: 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d \n }\n } 000176c0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 72 \n }\n\n retur 000176d0: 6e 20 63 72 65 61 74 65 64 44 6f 63 75 6d 65 6e n createdDocumen 000176e0: 74 2e 62 6f 64 79 2e 69 6e 6e 65 72 48 54 4d 4c t.body.innerHTML 000176f0: 5c 6e 7d 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 \n}\n","/**\n * 00017700: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00017710: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00017720: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00017730: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00017740: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 ----------\n * B 00017750: 6f 6f 74 73 74 72 61 70 20 75 74 69 6c 2f 74 65 ootstrap util/te 00017760: 6d 70 6c 61 74 65 2d 66 61 63 74 6f 72 79 2e 6a mplate-factory.j 00017770: 73 5c 6e 20 2a 20 4c 69 63 65 6e 73 65 64 20 75 s\n * Licensed u 00017780: 6e 64 65 72 20 4d 49 54 20 28 68 74 74 70 73 3a nder MIT (https: 00017790: 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 77 62 //github.com/twb 000177a0: 73 2f 62 6f 6f 74 73 74 72 61 70 2f 62 6c 6f 62 s/bootstrap/blob 000177b0: 2f 6d 61 69 6e 2f 4c 49 43 45 4e 53 45 29 5c 6e /main/LICENSE)\n 000177c0: 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d * ------------- 000177d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000177e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000177f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00017800: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 -------------\n 00017810: 2a 2f 5c 6e 5c 6e 69 6d 70 6f 72 74 20 53 65 6c */\n\nimport Sel 00017820: 65 63 74 6f 72 45 6e 67 69 6e 65 20 66 72 6f 6d ectorEngine from 00017830: 20 27 2e 2e 2f 64 6f 6d 2f 73 65 6c 65 63 74 6f '../dom/selecto 00017840: 72 2d 65 6e 67 69 6e 65 2e 6a 73 27 5c 6e 69 6d r-engine.js'\nim 00017850: 70 6f 72 74 20 43 6f 6e 66 69 67 20 66 72 6f 6d port Config from 00017860: 20 27 2e 2f 63 6f 6e 66 69 67 2e 6a 73 27 5c 6e './config.js'\n 00017870: 69 6d 70 6f 72 74 20 7b 20 44 65 66 61 75 6c 74 import { Default 00017880: 41 6c 6c 6f 77 6c 69 73 74 2c 20 73 61 6e 69 74 Allowlist, sanit 00017890: 69 7a 65 48 74 6d 6c 20 7d 20 66 72 6f 6d 20 27 izeHtml } from ' 000178a0: 2e 2f 73 61 6e 69 74 69 7a 65 72 2e 6a 73 27 5c ./sanitizer.js'\ 000178b0: 6e 69 6d 70 6f 72 74 20 7b 20 65 78 65 63 75 74 nimport { execut 000178c0: 65 2c 20 67 65 74 45 6c 65 6d 65 6e 74 2c 20 69 e, getElement, i 000178d0: 73 45 6c 65 6d 65 6e 74 20 7d 20 66 72 6f 6d 20 sElement } from 000178e0: 27 2e 2f 69 6e 64 65 78 2e 6a 73 27 5c 6e 5c 6e './index.js'\n\n 000178f0: 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e 73 74 61 6e 74 /**\n * Constant 00017900: 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 20 s\n */\n\nconst 00017910: 4e 41 4d 45 20 3d 20 27 54 65 6d 70 6c 61 74 65 NAME = 'Template 00017920: 46 61 63 74 6f 72 79 27 5c 6e 5c 6e 63 6f 6e 73 Factory'\n\ncons 00017930: 74 20 44 65 66 61 75 6c 74 20 3d 20 7b 5c 6e 20 t Default = {\n 00017940: 20 61 6c 6c 6f 77 4c 69 73 74 3a 20 44 65 66 61 allowList: Defa 00017950: 75 6c 74 41 6c 6c 6f 77 6c 69 73 74 2c 5c 6e 20 ultAllowlist,\n 00017960: 20 63 6f 6e 74 65 6e 74 3a 20 7b 7d 2c 20 2f 2f content: {}, // 00017970: 20 7b 20 73 65 6c 65 63 74 6f 72 20 3a 20 74 65 { selector : te 00017980: 78 74 20 2c 20 20 73 65 6c 65 63 74 6f 72 32 20 xt , selector2 00017990: 3a 20 74 65 78 74 32 20 2c 20 7d 5c 6e 20 20 65 : text2 , }\n e 000179a0: 78 74 72 61 43 6c 61 73 73 3a 20 27 27 2c 5c 6e xtraClass: '',\n 000179b0: 20 20 68 74 6d 6c 3a 20 66 61 6c 73 65 2c 5c 6e html: false,\n 000179c0: 20 20 73 61 6e 69 74 69 7a 65 3a 20 74 72 75 65 sanitize: true 000179d0: 2c 5c 6e 20 20 73 61 6e 69 74 69 7a 65 46 6e 3a ,\n sanitizeFn: 000179e0: 20 6e 75 6c 6c 2c 5c 6e 20 20 74 65 6d 70 6c 61 null,\n templa 000179f0: 74 65 3a 20 27 3c 64 69 76 3e 3c 2f 64 69 76 3e te: '<div></div> 00017a00: 27 5c 6e 7d 5c 6e 5c 6e 63 6f 6e 73 74 20 44 65 '\n}\n\nconst De 00017a10: 66 61 75 6c 74 54 79 70 65 20 3d 20 7b 5c 6e 20 faultType = {\n 00017a20: 20 61 6c 6c 6f 77 4c 69 73 74 3a 20 27 6f 62 6a allowList: 'obj 00017a30: 65 63 74 27 2c 5c 6e 20 20 63 6f 6e 74 65 6e 74 ect',\n content 00017a40: 3a 20 27 6f 62 6a 65 63 74 27 2c 5c 6e 20 20 65 : 'object',\n e 00017a50: 78 74 72 61 43 6c 61 73 73 3a 20 27 28 73 74 72 xtraClass: '(str 00017a60: 69 6e 67 7c 66 75 6e 63 74 69 6f 6e 29 27 2c 5c ing|function)',\ 00017a70: 6e 20 20 68 74 6d 6c 3a 20 27 62 6f 6f 6c 65 61 n html: 'boolea 00017a80: 6e 27 2c 5c 6e 20 20 73 61 6e 69 74 69 7a 65 3a n',\n sanitize: 00017a90: 20 27 62 6f 6f 6c 65 61 6e 27 2c 5c 6e 20 20 73 'boolean',\n s 00017aa0: 61 6e 69 74 69 7a 65 46 6e 3a 20 27 28 6e 75 6c anitizeFn: '(nul 00017ab0: 6c 7c 66 75 6e 63 74 69 6f 6e 29 27 2c 5c 6e 20 l|function)',\n 00017ac0: 20 74 65 6d 70 6c 61 74 65 3a 20 27 73 74 72 69 template: 'stri 00017ad0: 6e 67 27 5c 6e 7d 5c 6e 5c 6e 63 6f 6e 73 74 20 ng'\n}\n\nconst 00017ae0: 44 65 66 61 75 6c 74 43 6f 6e 74 65 6e 74 54 79 DefaultContentTy 00017af0: 70 65 20 3d 20 7b 5c 6e 20 20 65 6e 74 72 79 3a pe = {\n entry: 00017b00: 20 27 28 73 74 72 69 6e 67 7c 65 6c 65 6d 65 6e '(string|elemen 00017b10: 74 7c 66 75 6e 63 74 69 6f 6e 7c 6e 75 6c 6c 29 t|function|null) 00017b20: 27 2c 5c 6e 20 20 73 65 6c 65 63 74 6f 72 3a 20 ',\n selector: 00017b30: 27 28 73 74 72 69 6e 67 7c 65 6c 65 6d 65 6e 74 '(string|element 00017b40: 29 27 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a )'\n}\n\n/**\n * 00017b50: 20 43 6c 61 73 73 20 64 65 66 69 6e 69 74 69 6f Class definitio 00017b60: 6e 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6c 61 73 73 20 n\n */\n\nclass 00017b70: 54 65 6d 70 6c 61 74 65 46 61 63 74 6f 72 79 20 TemplateFactory 00017b80: 65 78 74 65 6e 64 73 20 43 6f 6e 66 69 67 20 7b extends Config { 00017b90: 5c 6e 20 20 63 6f 6e 73 74 72 75 63 74 6f 72 28 \n constructor( 00017ba0: 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 73 config) {\n s 00017bb0: 75 70 65 72 28 29 5c 6e 20 20 20 20 74 68 69 73 uper()\n this 00017bc0: 2e 5f 63 6f 6e 66 69 67 20 3d 20 74 68 69 73 2e ._config = this. 00017bd0: 5f 67 65 74 43 6f 6e 66 69 67 28 63 6f 6e 66 69 _getConfig(confi 00017be0: 67 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 g)\n }\n\n // 00017bf0: 47 65 74 74 65 72 73 5c 6e 20 20 73 74 61 74 69 Getters\n stati 00017c00: 63 20 67 65 74 20 44 65 66 61 75 6c 74 28 29 20 c get Default() 00017c10: 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 44 65 {\n return De 00017c20: 66 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 fault\n }\n\n 00017c30: 73 74 61 74 69 63 20 67 65 74 20 44 65 66 61 75 static get Defau 00017c40: 6c 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 20 20 ltType() {\n 00017c50: 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 54 79 return DefaultTy 00017c60: 70 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 74 61 pe\n }\n\n sta 00017c70: 74 69 63 20 67 65 74 20 4e 41 4d 45 28 29 20 7b tic get NAME() { 00017c80: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 4e 41 4d \n return NAM 00017c90: 45 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 E\n }\n\n // P 00017ca0: 75 62 6c 69 63 5c 6e 20 20 67 65 74 43 6f 6e 74 ublic\n getCont 00017cb0: 65 6e 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 ent() {\n ret 00017cc0: 75 72 6e 20 4f 62 6a 65 63 74 2e 76 61 6c 75 65 urn Object.value 00017cd0: 73 28 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 63 s(this._config.c 00017ce0: 6f 6e 74 65 6e 74 29 5c 6e 20 20 20 20 20 20 2e ontent)\n . 00017cf0: 6d 61 70 28 63 6f 6e 66 69 67 20 3d 3e 20 74 68 map(config => th 00017d00: 69 73 2e 5f 72 65 73 6f 6c 76 65 50 6f 73 73 69 is._resolvePossi 00017d10: 62 6c 65 46 75 6e 63 74 69 6f 6e 28 63 6f 6e 66 bleFunction(conf 00017d20: 69 67 29 29 5c 6e 20 20 20 20 20 20 2e 66 69 6c ig))\n .fil 00017d30: 74 65 72 28 42 6f 6f 6c 65 61 6e 29 5c 6e 20 20 ter(Boolean)\n 00017d40: 7d 5c 6e 5c 6e 20 20 68 61 73 43 6f 6e 74 65 6e }\n\n hasConten 00017d50: 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 t() {\n retur 00017d60: 6e 20 74 68 69 73 2e 67 65 74 43 6f 6e 74 65 6e n this.getConten 00017d70: 74 28 29 2e 6c 65 6e 67 74 68 20 3e 20 30 5c 6e t().length > 0\n 00017d80: 20 20 7d 5c 6e 5c 6e 20 20 63 68 61 6e 67 65 43 }\n\n changeC 00017d90: 6f 6e 74 65 6e 74 28 63 6f 6e 74 65 6e 74 29 20 ontent(content) 00017da0: 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f 63 68 65 {\n this._che 00017db0: 63 6b 43 6f 6e 74 65 6e 74 28 63 6f 6e 74 65 6e ckContent(conten 00017dc0: 74 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 63 6f t)\n this._co 00017dd0: 6e 66 69 67 2e 63 6f 6e 74 65 6e 74 20 3d 20 7b nfig.content = { 00017de0: 20 2e 2e 2e 74 68 69 73 2e 5f 63 6f 6e 66 69 67 ...this._config 00017df0: 2e 63 6f 6e 74 65 6e 74 2c 20 2e 2e 2e 63 6f 6e .content, ...con 00017e00: 74 65 6e 74 20 7d 5c 6e 20 20 20 20 72 65 74 75 tent }\n retu 00017e10: 72 6e 20 74 68 69 73 5c 6e 20 20 7d 5c 6e 5c 6e rn this\n }\n\n 00017e20: 20 20 74 6f 48 74 6d 6c 28 29 20 7b 5c 6e 20 20 toHtml() {\n 00017e30: 20 20 63 6f 6e 73 74 20 74 65 6d 70 6c 61 74 65 const template 00017e40: 57 72 61 70 70 65 72 20 3d 20 64 6f 63 75 6d 65 Wrapper = docume 00017e50: 6e 74 2e 63 72 65 61 74 65 45 6c 65 6d 65 6e 74 nt.createElement 00017e60: 28 27 64 69 76 27 29 5c 6e 20 20 20 20 74 65 6d ('div')\n tem 00017e70: 70 6c 61 74 65 57 72 61 70 70 65 72 2e 69 6e 6e plateWrapper.inn 00017e80: 65 72 48 54 4d 4c 20 3d 20 74 68 69 73 2e 5f 6d erHTML = this._m 00017e90: 61 79 62 65 53 61 6e 69 74 69 7a 65 28 74 68 69 aybeSanitize(thi 00017ea0: 73 2e 5f 63 6f 6e 66 69 67 2e 74 65 6d 70 6c 61 s._config.templa 00017eb0: 74 65 29 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 te)\n\n for ( 00017ec0: 63 6f 6e 73 74 20 5b 73 65 6c 65 63 74 6f 72 2c const [selector, 00017ed0: 20 74 65 78 74 5d 20 6f 66 20 4f 62 6a 65 63 74 text] of Object 00017ee0: 2e 65 6e 74 72 69 65 73 28 74 68 69 73 2e 5f 63 .entries(this._c 00017ef0: 6f 6e 66 69 67 2e 63 6f 6e 74 65 6e 74 29 29 20 onfig.content)) 00017f00: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 73 {\n this._s 00017f10: 65 74 43 6f 6e 74 65 6e 74 28 74 65 6d 70 6c 61 etContent(templa 00017f20: 74 65 57 72 61 70 70 65 72 2c 20 74 65 78 74 2c teWrapper, text, 00017f30: 20 73 65 6c 65 63 74 6f 72 29 5c 6e 20 20 20 20 selector)\n 00017f40: 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 74 }\n\n const t 00017f50: 65 6d 70 6c 61 74 65 20 3d 20 74 65 6d 70 6c 61 emplate = templa 00017f60: 74 65 57 72 61 70 70 65 72 2e 63 68 69 6c 64 72 teWrapper.childr 00017f70: 65 6e 5b 30 5d 5c 6e 20 20 20 20 63 6f 6e 73 74 en[0]\n const 00017f80: 20 65 78 74 72 61 43 6c 61 73 73 20 3d 20 74 68 extraClass = th 00017f90: 69 73 2e 5f 72 65 73 6f 6c 76 65 50 6f 73 73 69 is._resolvePossi 00017fa0: 62 6c 65 46 75 6e 63 74 69 6f 6e 28 74 68 69 73 bleFunction(this 00017fb0: 2e 5f 63 6f 6e 66 69 67 2e 65 78 74 72 61 43 6c ._config.extraCl 00017fc0: 61 73 73 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 ass)\n\n if ( 00017fd0: 65 78 74 72 61 43 6c 61 73 73 29 20 7b 5c 6e 20 extraClass) {\n 00017fe0: 20 20 20 20 20 74 65 6d 70 6c 61 74 65 2e 63 6c template.cl 00017ff0: 61 73 73 4c 69 73 74 2e 61 64 64 28 2e 2e 2e 65 assList.add(...e 00018000: 78 74 72 61 43 6c 61 73 73 2e 73 70 6c 69 74 28 xtraClass.split( 00018010: 27 20 27 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e ' '))\n }\n\n 00018020: 20 20 20 20 72 65 74 75 72 6e 20 74 65 6d 70 6c return templ 00018030: 61 74 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f ate\n }\n\n // 00018040: 20 50 72 69 76 61 74 65 5c 6e 20 20 5f 74 79 70 Private\n _typ 00018050: 65 43 68 65 63 6b 43 6f 6e 66 69 67 28 63 6f 6e eCheckConfig(con 00018060: 66 69 67 29 20 7b 5c 6e 20 20 20 20 73 75 70 65 fig) {\n supe 00018070: 72 2e 5f 74 79 70 65 43 68 65 63 6b 43 6f 6e 66 r._typeCheckConf 00018080: 69 67 28 63 6f 6e 66 69 67 29 5c 6e 20 20 20 20 ig(config)\n 00018090: 74 68 69 73 2e 5f 63 68 65 63 6b 43 6f 6e 74 65 this._checkConte 000180a0: 6e 74 28 63 6f 6e 66 69 67 2e 63 6f 6e 74 65 6e nt(config.conten 000180b0: 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 68 t)\n }\n\n _ch 000180c0: 65 63 6b 43 6f 6e 74 65 6e 74 28 61 72 67 29 20 eckContent(arg) 000180d0: 7b 5c 6e 20 20 20 20 66 6f 72 20 28 63 6f 6e 73 {\n for (cons 000180e0: 74 20 5b 73 65 6c 65 63 74 6f 72 2c 20 63 6f 6e t [selector, con 000180f0: 74 65 6e 74 5d 20 6f 66 20 4f 62 6a 65 63 74 2e tent] of Object. 00018100: 65 6e 74 72 69 65 73 28 61 72 67 29 29 20 7b 5c entries(arg)) {\ 00018110: 6e 20 20 20 20 20 20 73 75 70 65 72 2e 5f 74 79 n super._ty 00018120: 70 65 43 68 65 63 6b 43 6f 6e 66 69 67 28 7b 20 peCheckConfig({ 00018130: 73 65 6c 65 63 74 6f 72 2c 20 65 6e 74 72 79 3a selector, entry: 00018140: 20 63 6f 6e 74 65 6e 74 20 7d 2c 20 44 65 66 61 content }, Defa 00018150: 75 6c 74 43 6f 6e 74 65 6e 74 54 79 70 65 29 5c ultContentType)\ 00018160: 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 n }\n }\n\n 00018170: 20 5f 73 65 74 43 6f 6e 74 65 6e 74 28 74 65 6d _setContent(tem 00018180: 70 6c 61 74 65 2c 20 63 6f 6e 74 65 6e 74 2c 20 plate, content, 00018190: 73 65 6c 65 63 74 6f 72 29 20 7b 5c 6e 20 20 20 selector) {\n 000181a0: 20 63 6f 6e 73 74 20 74 65 6d 70 6c 61 74 65 45 const templateE 000181b0: 6c 65 6d 65 6e 74 20 3d 20 53 65 6c 65 63 74 6f lement = Selecto 000181c0: 72 45 6e 67 69 6e 65 2e 66 69 6e 64 4f 6e 65 28 rEngine.findOne( 000181d0: 73 65 6c 65 63 74 6f 72 2c 20 74 65 6d 70 6c 61 selector, templa 000181e0: 74 65 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 te)\n\n if (! 000181f0: 74 65 6d 70 6c 61 74 65 45 6c 65 6d 65 6e 74 29 templateElement) 00018200: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 00018210: 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 \n }\n\n c 00018220: 6f 6e 74 65 6e 74 20 3d 20 74 68 69 73 2e 5f 72 ontent = this._r 00018230: 65 73 6f 6c 76 65 50 6f 73 73 69 62 6c 65 46 75 esolvePossibleFu 00018240: 6e 63 74 69 6f 6e 28 63 6f 6e 74 65 6e 74 29 5c nction(content)\ 00018250: 6e 5c 6e 20 20 20 20 69 66 20 28 21 63 6f 6e 74 n\n if (!cont 00018260: 65 6e 74 29 20 7b 5c 6e 20 20 20 20 20 20 74 65 ent) {\n te 00018270: 6d 70 6c 61 74 65 45 6c 65 6d 65 6e 74 2e 72 65 mplateElement.re 00018280: 6d 6f 76 65 28 29 5c 6e 20 20 20 20 20 20 72 65 move()\n re 00018290: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 000182a0: 20 20 20 69 66 20 28 69 73 45 6c 65 6d 65 6e 74 if (isElement 000182b0: 28 63 6f 6e 74 65 6e 74 29 29 20 7b 5c 6e 20 20 (content)) {\n 000182c0: 20 20 20 20 74 68 69 73 2e 5f 70 75 74 45 6c 65 this._putEle 000182d0: 6d 65 6e 74 49 6e 54 65 6d 70 6c 61 74 65 28 67 mentInTemplate(g 000182e0: 65 74 45 6c 65 6d 65 6e 74 28 63 6f 6e 74 65 6e etElement(conten 000182f0: 74 29 2c 20 74 65 6d 70 6c 61 74 65 45 6c 65 6d t), templateElem 00018300: 65 6e 74 29 5c 6e 20 20 20 20 20 20 72 65 74 75 ent)\n retu 00018310: 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 rn\n }\n\n 00018320: 20 69 66 20 28 74 68 69 73 2e 5f 63 6f 6e 66 69 if (this._confi 00018330: 67 2e 68 74 6d 6c 29 20 7b 5c 6e 20 20 20 20 20 g.html) {\n 00018340: 20 74 65 6d 70 6c 61 74 65 45 6c 65 6d 65 6e 74 templateElement 00018350: 2e 69 6e 6e 65 72 48 54 4d 4c 20 3d 20 74 68 69 .innerHTML = thi 00018360: 73 2e 5f 6d 61 79 62 65 53 61 6e 69 74 69 7a 65 s._maybeSanitize 00018370: 28 63 6f 6e 74 65 6e 74 29 5c 6e 20 20 20 20 20 (content)\n 00018380: 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e return\n }\n 00018390: 5c 6e 20 20 20 20 74 65 6d 70 6c 61 74 65 45 6c \n templateEl 000183a0: 65 6d 65 6e 74 2e 74 65 78 74 43 6f 6e 74 65 6e ement.textConten 000183b0: 74 20 3d 20 63 6f 6e 74 65 6e 74 5c 6e 20 20 7d t = content\n } 000183c0: 5c 6e 5c 6e 20 20 5f 6d 61 79 62 65 53 61 6e 69 \n\n _maybeSani 000183d0: 74 69 7a 65 28 61 72 67 29 20 7b 5c 6e 20 20 20 tize(arg) {\n 000183e0: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 63 6f return this._co 000183f0: 6e 66 69 67 2e 73 61 6e 69 74 69 7a 65 20 3f 20 nfig.sanitize ? 00018400: 73 61 6e 69 74 69 7a 65 48 74 6d 6c 28 61 72 67 sanitizeHtml(arg 00018410: 2c 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 61 , this._config.a 00018420: 6c 6c 6f 77 4c 69 73 74 2c 20 74 68 69 73 2e 5f llowList, this._ 00018430: 63 6f 6e 66 69 67 2e 73 61 6e 69 74 69 7a 65 46 config.sanitizeF 00018440: 6e 29 20 3a 20 61 72 67 5c 6e 20 20 7d 5c 6e 5c n) : arg\n }\n\ 00018450: 6e 20 20 5f 72 65 73 6f 6c 76 65 50 6f 73 73 69 n _resolvePossi 00018460: 62 6c 65 46 75 6e 63 74 69 6f 6e 28 61 72 67 29 bleFunction(arg) 00018470: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 65 {\n return e 00018480: 78 65 63 75 74 65 28 61 72 67 2c 20 5b 74 68 69 xecute(arg, [thi 00018490: 73 5d 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 70 s])\n }\n\n _p 000184a0: 75 74 45 6c 65 6d 65 6e 74 49 6e 54 65 6d 70 6c utElementInTempl 000184b0: 61 74 65 28 65 6c 65 6d 65 6e 74 2c 20 74 65 6d ate(element, tem 000184c0: 70 6c 61 74 65 45 6c 65 6d 65 6e 74 29 20 7b 5c plateElement) {\ 000184d0: 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f 63 n if (this._c 000184e0: 6f 6e 66 69 67 2e 68 74 6d 6c 29 20 7b 5c 6e 20 onfig.html) {\n 000184f0: 20 20 20 20 20 74 65 6d 70 6c 61 74 65 45 6c 65 templateEle 00018500: 6d 65 6e 74 2e 69 6e 6e 65 72 48 54 4d 4c 20 3d ment.innerHTML = 00018510: 20 27 27 5c 6e 20 20 20 20 20 20 74 65 6d 70 6c ''\n templ 00018520: 61 74 65 45 6c 65 6d 65 6e 74 2e 61 70 70 65 6e ateElement.appen 00018530: 64 28 65 6c 65 6d 65 6e 74 29 5c 6e 20 20 20 20 d(element)\n 00018540: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c return\n }\ 00018550: 6e 5c 6e 20 20 20 20 74 65 6d 70 6c 61 74 65 45 n\n templateE 00018560: 6c 65 6d 65 6e 74 2e 74 65 78 74 43 6f 6e 74 65 lement.textConte 00018570: 6e 74 20 3d 20 65 6c 65 6d 65 6e 74 2e 74 65 78 nt = element.tex 00018580: 74 43 6f 6e 74 65 6e 74 5c 6e 20 20 7d 5c 6e 7d tContent\n }\n} 00018590: 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 \n\nexport defau 000185a0: 6c 74 20 54 65 6d 70 6c 61 74 65 46 61 63 74 6f lt TemplateFacto 000185b0: 72 79 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d ry\n","/**\n * - 000185c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000185d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000185e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000185f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00018600: 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f ---------\n * Bo 00018610: 6f 74 73 74 72 61 70 20 74 6f 6f 6c 74 69 70 2e otstrap tooltip. 00018620: 6a 73 5c 6e 20 2a 20 4c 69 63 65 6e 73 65 64 20 js\n * Licensed 00018630: 75 6e 64 65 72 20 4d 49 54 20 28 68 74 74 70 73 under MIT (https 00018640: 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 77 ://github.com/tw 00018650: 62 73 2f 62 6f 6f 74 73 74 72 61 70 2f 62 6c 6f bs/bootstrap/blo 00018660: 62 2f 6d 61 69 6e 2f 4c 49 43 45 4e 53 45 29 5c b/main/LICENSE)\ 00018670: 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d n * ------------ 00018680: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00018690: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000186a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000186b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e --------------\n 000186c0: 20 2a 2f 5c 6e 5c 6e 69 6d 70 6f 72 74 20 2a 20 */\n\nimport * 000186d0: 61 73 20 50 6f 70 70 65 72 20 66 72 6f 6d 20 27 as Popper from ' 000186e0: 40 70 6f 70 70 65 72 6a 73 2f 63 6f 72 65 27 5c @popperjs/core'\ 000186f0: 6e 69 6d 70 6f 72 74 20 42 61 73 65 43 6f 6d 70 nimport BaseComp 00018700: 6f 6e 65 6e 74 20 66 72 6f 6d 20 27 2e 2f 62 61 onent from './ba 00018710: 73 65 2d 63 6f 6d 70 6f 6e 65 6e 74 2e 6a 73 27 se-component.js' 00018720: 5c 6e 69 6d 70 6f 72 74 20 45 76 65 6e 74 48 61 \nimport EventHa 00018730: 6e 64 6c 65 72 20 66 72 6f 6d 20 27 2e 2f 64 6f ndler from './do 00018740: 6d 2f 65 76 65 6e 74 2d 68 61 6e 64 6c 65 72 2e m/event-handler. 00018750: 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 4d 61 6e 69 js'\nimport Mani 00018760: 70 75 6c 61 74 6f 72 20 66 72 6f 6d 20 27 2e 2f pulator from './ 00018770: 64 6f 6d 2f 6d 61 6e 69 70 75 6c 61 74 6f 72 2e dom/manipulator. 00018780: 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 7b 5c 6e 20 js'\nimport {\n 00018790: 20 64 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 defineJQueryPlu 000187a0: 67 69 6e 2c 20 65 78 65 63 75 74 65 2c 20 66 69 gin, execute, fi 000187b0: 6e 64 53 68 61 64 6f 77 52 6f 6f 74 2c 20 67 65 ndShadowRoot, ge 000187c0: 74 45 6c 65 6d 65 6e 74 2c 20 67 65 74 55 49 44 tElement, getUID 000187d0: 2c 20 69 73 52 54 4c 2c 20 6e 6f 6f 70 5c 6e 7d , isRTL, noop\n} 000187e0: 20 66 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 69 6e from './util/in 000187f0: 64 65 78 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 dex.js'\nimport 00018800: 7b 20 44 65 66 61 75 6c 74 41 6c 6c 6f 77 6c 69 { DefaultAllowli 00018810: 73 74 20 7d 20 66 72 6f 6d 20 27 2e 2f 75 74 69 st } from './uti 00018820: 6c 2f 73 61 6e 69 74 69 7a 65 72 2e 6a 73 27 5c l/sanitizer.js'\ 00018830: 6e 69 6d 70 6f 72 74 20 54 65 6d 70 6c 61 74 65 nimport Template 00018840: 46 61 63 74 6f 72 79 20 66 72 6f 6d 20 27 2e 2f Factory from './ 00018850: 75 74 69 6c 2f 74 65 6d 70 6c 61 74 65 2d 66 61 util/template-fa 00018860: 63 74 6f 72 79 2e 6a 73 27 5c 6e 5c 6e 2f 2a 2a ctory.js'\n\n/** 00018870: 5c 6e 20 2a 20 43 6f 6e 73 74 61 6e 74 73 5c 6e \n * Constants\n 00018880: 20 2a 2f 5c 6e 5c 6e 63 6f 6e 73 74 20 4e 41 4d */\n\nconst NAM 00018890: 45 20 3d 20 27 74 6f 6f 6c 74 69 70 27 5c 6e 63 E = 'tooltip'\nc 000188a0: 6f 6e 73 74 20 44 49 53 41 4c 4c 4f 57 45 44 5f onst DISALLOWED_ 000188b0: 41 54 54 52 49 42 55 54 45 53 20 3d 20 6e 65 77 ATTRIBUTES = new 000188c0: 20 53 65 74 28 5b 27 73 61 6e 69 74 69 7a 65 27 Set(['sanitize' 000188d0: 2c 20 27 61 6c 6c 6f 77 4c 69 73 74 27 2c 20 27 , 'allowList', ' 000188e0: 73 61 6e 69 74 69 7a 65 46 6e 27 5d 29 5c 6e 5c sanitizeFn'])\n\ 000188f0: 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d nconst CLASS_NAM 00018900: 45 5f 46 41 44 45 20 3d 20 27 66 61 64 65 27 5c E_FADE = 'fade'\ 00018910: 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e 41 4d nconst CLASS_NAM 00018920: 45 5f 4d 4f 44 41 4c 20 3d 20 27 6d 6f 64 61 6c E_MODAL = 'modal 00018930: 27 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 5f 4e '\nconst CLASS_N 00018940: 41 4d 45 5f 53 48 4f 57 20 3d 20 27 73 68 6f 77 AME_SHOW = 'show 00018950: 27 5c 6e 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 '\n\nconst SELEC 00018960: 54 4f 52 5f 54 4f 4f 4c 54 49 50 5f 49 4e 4e 45 TOR_TOOLTIP_INNE 00018970: 52 20 3d 20 27 2e 74 6f 6f 6c 74 69 70 2d 69 6e R = '.tooltip-in 00018980: 6e 65 72 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 ner'\nconst SELE 00018990: 43 54 4f 52 5f 4d 4f 44 41 4c 20 3d 20 60 2e 24 CTOR_MODAL = `.$ 000189a0: 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 4d 4f 44 41 {CLASS_NAME_MODA 000189b0: 4c 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 20 45 56 45 L}`\n\nconst EVE 000189c0: 4e 54 5f 4d 4f 44 41 4c 5f 48 49 44 45 20 3d 20 NT_MODAL_HIDE = 000189d0: 27 68 69 64 65 2e 62 73 2e 6d 6f 64 61 6c 27 5c 'hide.bs.modal'\ 000189e0: 6e 5c 6e 63 6f 6e 73 74 20 54 52 49 47 47 45 52 n\nconst TRIGGER 000189f0: 5f 48 4f 56 45 52 20 3d 20 27 68 6f 76 65 72 27 _HOVER = 'hover' 00018a00: 5c 6e 63 6f 6e 73 74 20 54 52 49 47 47 45 52 5f \nconst TRIGGER_ 00018a10: 46 4f 43 55 53 20 3d 20 27 66 6f 63 75 73 27 5c FOCUS = 'focus'\ 00018a20: 6e 63 6f 6e 73 74 20 54 52 49 47 47 45 52 5f 43 nconst TRIGGER_C 00018a30: 4c 49 43 4b 20 3d 20 27 63 6c 69 63 6b 27 5c 6e LICK = 'click'\n 00018a40: 63 6f 6e 73 74 20 54 52 49 47 47 45 52 5f 4d 41 const TRIGGER_MA 00018a50: 4e 55 41 4c 20 3d 20 27 6d 61 6e 75 61 6c 27 5c NUAL = 'manual'\ 00018a60: 6e 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 48 n\nconst EVENT_H 00018a70: 49 44 45 20 3d 20 27 68 69 64 65 27 5c 6e 63 6f IDE = 'hide'\nco 00018a80: 6e 73 74 20 45 56 45 4e 54 5f 48 49 44 44 45 4e nst EVENT_HIDDEN 00018a90: 20 3d 20 27 68 69 64 64 65 6e 27 5c 6e 63 6f 6e = 'hidden'\ncon 00018aa0: 73 74 20 45 56 45 4e 54 5f 53 48 4f 57 20 3d 20 st EVENT_SHOW = 00018ab0: 27 73 68 6f 77 27 5c 6e 63 6f 6e 73 74 20 45 56 'show'\nconst EV 00018ac0: 45 4e 54 5f 53 48 4f 57 4e 20 3d 20 27 73 68 6f ENT_SHOWN = 'sho 00018ad0: 77 6e 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 wn'\nconst EVENT 00018ae0: 5f 49 4e 53 45 52 54 45 44 20 3d 20 27 69 6e 73 _INSERTED = 'ins 00018af0: 65 72 74 65 64 27 5c 6e 63 6f 6e 73 74 20 45 56 erted'\nconst EV 00018b00: 45 4e 54 5f 43 4c 49 43 4b 20 3d 20 27 63 6c 69 ENT_CLICK = 'cli 00018b10: 63 6b 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 ck'\nconst EVENT 00018b20: 5f 46 4f 43 55 53 49 4e 20 3d 20 27 66 6f 63 75 _FOCUSIN = 'focu 00018b30: 73 69 6e 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e sin'\nconst EVEN 00018b40: 54 5f 46 4f 43 55 53 4f 55 54 20 3d 20 27 66 6f T_FOCUSOUT = 'fo 00018b50: 63 75 73 6f 75 74 27 5c 6e 63 6f 6e 73 74 20 45 cusout'\nconst E 00018b60: 56 45 4e 54 5f 4d 4f 55 53 45 45 4e 54 45 52 20 VENT_MOUSEENTER 00018b70: 3d 20 27 6d 6f 75 73 65 65 6e 74 65 72 27 5c 6e = 'mouseenter'\n 00018b80: 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4d 4f 55 53 const EVENT_MOUS 00018b90: 45 4c 45 41 56 45 20 3d 20 27 6d 6f 75 73 65 6c ELEAVE = 'mousel 00018ba0: 65 61 76 65 27 5c 6e 5c 6e 63 6f 6e 73 74 20 41 eave'\n\nconst A 00018bb0: 74 74 61 63 68 6d 65 6e 74 4d 61 70 20 3d 20 7b ttachmentMap = { 00018bc0: 5c 6e 20 20 41 55 54 4f 3a 20 27 61 75 74 6f 27 \n AUTO: 'auto' 00018bd0: 2c 5c 6e 20 20 54 4f 50 3a 20 27 74 6f 70 27 2c ,\n TOP: 'top', 00018be0: 5c 6e 20 20 52 49 47 48 54 3a 20 69 73 52 54 4c \n RIGHT: isRTL 00018bf0: 28 29 20 3f 20 27 6c 65 66 74 27 20 3a 20 27 72 () ? 'left' : 'r 00018c00: 69 67 68 74 27 2c 5c 6e 20 20 42 4f 54 54 4f 4d ight',\n BOTTOM 00018c10: 3a 20 27 62 6f 74 74 6f 6d 27 2c 5c 6e 20 20 4c : 'bottom',\n L 00018c20: 45 46 54 3a 20 69 73 52 54 4c 28 29 20 3f 20 27 EFT: isRTL() ? ' 00018c30: 72 69 67 68 74 27 20 3a 20 27 6c 65 66 74 27 5c right' : 'left'\ 00018c40: 6e 7d 5c 6e 5c 6e 63 6f 6e 73 74 20 44 65 66 61 n}\n\nconst Defa 00018c50: 75 6c 74 20 3d 20 7b 5c 6e 20 20 61 6c 6c 6f 77 ult = {\n allow 00018c60: 4c 69 73 74 3a 20 44 65 66 61 75 6c 74 41 6c 6c List: DefaultAll 00018c70: 6f 77 6c 69 73 74 2c 5c 6e 20 20 61 6e 69 6d 61 owlist,\n anima 00018c80: 74 69 6f 6e 3a 20 74 72 75 65 2c 5c 6e 20 20 62 tion: true,\n b 00018c90: 6f 75 6e 64 61 72 79 3a 20 27 63 6c 69 70 70 69 oundary: 'clippi 00018ca0: 6e 67 50 61 72 65 6e 74 73 27 2c 5c 6e 20 20 63 ngParents',\n c 00018cb0: 6f 6e 74 61 69 6e 65 72 3a 20 66 61 6c 73 65 2c ontainer: false, 00018cc0: 5c 6e 20 20 63 75 73 74 6f 6d 43 6c 61 73 73 3a \n customClass: 00018cd0: 20 27 27 2c 5c 6e 20 20 64 65 6c 61 79 3a 20 30 '',\n delay: 0 00018ce0: 2c 5c 6e 20 20 66 61 6c 6c 62 61 63 6b 50 6c 61 ,\n fallbackPla 00018cf0: 63 65 6d 65 6e 74 73 3a 20 5b 27 74 6f 70 27 2c cements: ['top', 00018d00: 20 27 72 69 67 68 74 27 2c 20 27 62 6f 74 74 6f 'right', 'botto 00018d10: 6d 27 2c 20 27 6c 65 66 74 27 5d 2c 5c 6e 20 20 m', 'left'],\n 00018d20: 68 74 6d 6c 3a 20 66 61 6c 73 65 2c 5c 6e 20 20 html: false,\n 00018d30: 6f 66 66 73 65 74 3a 20 5b 30 2c 20 36 5d 2c 5c offset: [0, 6],\ 00018d40: 6e 20 20 70 6c 61 63 65 6d 65 6e 74 3a 20 27 74 n placement: 't 00018d50: 6f 70 27 2c 5c 6e 20 20 70 6f 70 70 65 72 43 6f op',\n popperCo 00018d60: 6e 66 69 67 3a 20 6e 75 6c 6c 2c 5c 6e 20 20 73 nfig: null,\n s 00018d70: 61 6e 69 74 69 7a 65 3a 20 74 72 75 65 2c 5c 6e anitize: true,\n 00018d80: 20 20 73 61 6e 69 74 69 7a 65 46 6e 3a 20 6e 75 sanitizeFn: nu 00018d90: 6c 6c 2c 5c 6e 20 20 73 65 6c 65 63 74 6f 72 3a ll,\n selector: 00018da0: 20 66 61 6c 73 65 2c 5c 6e 20 20 74 65 6d 70 6c false,\n templ 00018db0: 61 74 65 3a 20 27 3c 64 69 76 20 63 6c 61 73 73 ate: '<div class 00018dc0: 3d 5c 22 74 6f 6f 6c 74 69 70 5c 22 20 72 6f 6c =\"tooltip\" rol 00018dd0: 65 3d 5c 22 74 6f 6f 6c 74 69 70 5c 22 3e 27 20 e=\"tooltip\">' 00018de0: 2b 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 27 +\n ' 00018df0: 3c 64 69 76 20 63 6c 61 73 73 3d 5c 22 74 6f 6f <div class=\"too 00018e00: 6c 74 69 70 2d 61 72 72 6f 77 5c 22 3e 3c 2f 64 ltip-arrow\"></d 00018e10: 69 76 3e 27 20 2b 5c 6e 20 20 20 20 20 20 20 20 iv>' +\n 00018e20: 20 20 20 20 27 3c 64 69 76 20 63 6c 61 73 73 3d '<div class= 00018e30: 5c 22 74 6f 6f 6c 74 69 70 2d 69 6e 6e 65 72 5c \"tooltip-inner\ 00018e40: 22 3e 3c 2f 64 69 76 3e 27 20 2b 5c 6e 20 20 20 "></div>' +\n 00018e50: 20 20 20 20 20 20 20 20 20 27 3c 2f 64 69 76 3e '</div> 00018e60: 27 2c 5c 6e 20 20 74 69 74 6c 65 3a 20 27 27 2c ',\n title: '', 00018e70: 5c 6e 20 20 74 72 69 67 67 65 72 3a 20 27 68 6f \n trigger: 'ho 00018e80: 76 65 72 20 66 6f 63 75 73 27 5c 6e 7d 5c 6e 5c ver focus'\n}\n\ 00018e90: 6e 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 54 79 nconst DefaultTy 00018ea0: 70 65 20 3d 20 7b 5c 6e 20 20 61 6c 6c 6f 77 4c pe = {\n allowL 00018eb0: 69 73 74 3a 20 27 6f 62 6a 65 63 74 27 2c 5c 6e ist: 'object',\n 00018ec0: 20 20 61 6e 69 6d 61 74 69 6f 6e 3a 20 27 62 6f animation: 'bo 00018ed0: 6f 6c 65 61 6e 27 2c 5c 6e 20 20 62 6f 75 6e 64 olean',\n bound 00018ee0: 61 72 79 3a 20 27 28 73 74 72 69 6e 67 7c 65 6c ary: '(string|el 00018ef0: 65 6d 65 6e 74 29 27 2c 5c 6e 20 20 63 6f 6e 74 ement)',\n cont 00018f00: 61 69 6e 65 72 3a 20 27 28 73 74 72 69 6e 67 7c ainer: '(string| 00018f10: 65 6c 65 6d 65 6e 74 7c 62 6f 6f 6c 65 61 6e 29 element|boolean) 00018f20: 27 2c 5c 6e 20 20 63 75 73 74 6f 6d 43 6c 61 73 ',\n customClas 00018f30: 73 3a 20 27 28 73 74 72 69 6e 67 7c 66 75 6e 63 s: '(string|func 00018f40: 74 69 6f 6e 29 27 2c 5c 6e 20 20 64 65 6c 61 79 tion)',\n delay 00018f50: 3a 20 27 28 6e 75 6d 62 65 72 7c 6f 62 6a 65 63 : '(number|objec 00018f60: 74 29 27 2c 5c 6e 20 20 66 61 6c 6c 62 61 63 6b t)',\n fallback 00018f70: 50 6c 61 63 65 6d 65 6e 74 73 3a 20 27 61 72 72 Placements: 'arr 00018f80: 61 79 27 2c 5c 6e 20 20 68 74 6d 6c 3a 20 27 62 ay',\n html: 'b 00018f90: 6f 6f 6c 65 61 6e 27 2c 5c 6e 20 20 6f 66 66 73 oolean',\n offs 00018fa0: 65 74 3a 20 27 28 61 72 72 61 79 7c 73 74 72 69 et: '(array|stri 00018fb0: 6e 67 7c 66 75 6e 63 74 69 6f 6e 29 27 2c 5c 6e ng|function)',\n 00018fc0: 20 20 70 6c 61 63 65 6d 65 6e 74 3a 20 27 28 73 placement: '(s 00018fd0: 74 72 69 6e 67 7c 66 75 6e 63 74 69 6f 6e 29 27 tring|function)' 00018fe0: 2c 5c 6e 20 20 70 6f 70 70 65 72 43 6f 6e 66 69 ,\n popperConfi 00018ff0: 67 3a 20 27 28 6e 75 6c 6c 7c 6f 62 6a 65 63 74 g: '(null|object 00019000: 7c 66 75 6e 63 74 69 6f 6e 29 27 2c 5c 6e 20 20 |function)',\n 00019010: 73 61 6e 69 74 69 7a 65 3a 20 27 62 6f 6f 6c 65 sanitize: 'boole 00019020: 61 6e 27 2c 5c 6e 20 20 73 61 6e 69 74 69 7a 65 an',\n sanitize 00019030: 46 6e 3a 20 27 28 6e 75 6c 6c 7c 66 75 6e 63 74 Fn: '(null|funct 00019040: 69 6f 6e 29 27 2c 5c 6e 20 20 73 65 6c 65 63 74 ion)',\n select 00019050: 6f 72 3a 20 27 28 73 74 72 69 6e 67 7c 62 6f 6f or: '(string|boo 00019060: 6c 65 61 6e 29 27 2c 5c 6e 20 20 74 65 6d 70 6c lean)',\n templ 00019070: 61 74 65 3a 20 27 73 74 72 69 6e 67 27 2c 5c 6e ate: 'string',\n 00019080: 20 20 74 69 74 6c 65 3a 20 27 28 73 74 72 69 6e title: '(strin 00019090: 67 7c 65 6c 65 6d 65 6e 74 7c 66 75 6e 63 74 69 g|element|functi 000190a0: 6f 6e 29 27 2c 5c 6e 20 20 74 72 69 67 67 65 72 on)',\n trigger 000190b0: 3a 20 27 73 74 72 69 6e 67 27 5c 6e 7d 5c 6e 5c : 'string'\n}\n\ 000190c0: 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 73 20 64 n/**\n * Class d 000190d0: 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e efinition\n */\n 000190e0: 5c 6e 63 6c 61 73 73 20 54 6f 6f 6c 74 69 70 20 \nclass Tooltip 000190f0: 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 70 extends BaseComp 00019100: 6f 6e 65 6e 74 20 7b 5c 6e 20 20 63 6f 6e 73 74 onent {\n const 00019110: 72 75 63 74 6f 72 28 65 6c 65 6d 65 6e 74 2c 20 ructor(element, 00019120: 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 69 config) {\n i 00019130: 66 20 28 74 79 70 65 6f 66 20 50 6f 70 70 65 72 f (typeof Popper 00019140: 20 3d 3d 3d 20 27 75 6e 64 65 66 69 6e 65 64 27 === 'undefined' 00019150: 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 72 6f 77 ) {\n throw 00019160: 20 6e 65 77 20 54 79 70 65 45 72 72 6f 72 28 27 new TypeError(' 00019170: 42 6f 6f 74 73 74 72 61 70 5c 5c 27 73 20 74 6f Bootstrap\\'s to 00019180: 6f 6c 74 69 70 73 20 72 65 71 75 69 72 65 20 50 oltips require P 00019190: 6f 70 70 65 72 20 28 68 74 74 70 73 3a 2f 2f 70 opper (https://p 000191a0: 6f 70 70 65 72 2e 6a 73 2e 6f 72 67 29 27 29 5c opper.js.org)')\ 000191b0: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 73 75 n }\n\n su 000191c0: 70 65 72 28 65 6c 65 6d 65 6e 74 2c 20 63 6f 6e per(element, con 000191d0: 66 69 67 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 50 fig)\n\n // P 000191e0: 72 69 76 61 74 65 5c 6e 20 20 20 20 74 68 69 73 rivate\n this 000191f0: 2e 5f 69 73 45 6e 61 62 6c 65 64 20 3d 20 74 72 ._isEnabled = tr 00019200: 75 65 5c 6e 20 20 20 20 74 68 69 73 2e 5f 74 69 ue\n this._ti 00019210: 6d 65 6f 75 74 20 3d 20 30 5c 6e 20 20 20 20 74 meout = 0\n t 00019220: 68 69 73 2e 5f 69 73 48 6f 76 65 72 65 64 20 3d his._isHovered = 00019230: 20 6e 75 6c 6c 5c 6e 20 20 20 20 74 68 69 73 2e null\n this. 00019240: 5f 61 63 74 69 76 65 54 72 69 67 67 65 72 20 3d _activeTrigger = 00019250: 20 7b 7d 5c 6e 20 20 20 20 74 68 69 73 2e 5f 70 {}\n this._p 00019260: 6f 70 70 65 72 20 3d 20 6e 75 6c 6c 5c 6e 20 20 opper = null\n 00019270: 20 20 74 68 69 73 2e 5f 74 65 6d 70 6c 61 74 65 this._template 00019280: 46 61 63 74 6f 72 79 20 3d 20 6e 75 6c 6c 5c 6e Factory = null\n 00019290: 20 20 20 20 74 68 69 73 2e 5f 6e 65 77 43 6f 6e this._newCon 000192a0: 74 65 6e 74 20 3d 20 6e 75 6c 6c 5c 6e 5c 6e 20 tent = null\n\n 000192b0: 20 20 20 2f 2f 20 50 72 6f 74 65 63 74 65 64 5c // Protected\ 000192c0: 6e 20 20 20 20 74 68 69 73 2e 74 69 70 20 3d 20 n this.tip = 000192d0: 6e 75 6c 6c 5c 6e 5c 6e 20 20 20 20 74 68 69 73 null\n\n this 000192e0: 2e 5f 73 65 74 4c 69 73 74 65 6e 65 72 73 28 29 ._setListeners() 000192f0: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 \n\n if (!thi 00019300: 73 2e 5f 63 6f 6e 66 69 67 2e 73 65 6c 65 63 74 s._config.select 00019310: 6f 72 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 or) {\n thi 00019320: 73 2e 5f 66 69 78 54 69 74 6c 65 28 29 5c 6e 20 s._fixTitle()\n 00019330: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f }\n }\n\n / 00019340: 2f 20 47 65 74 74 65 72 73 5c 6e 20 20 73 74 61 / Getters\n sta 00019350: 74 69 63 20 67 65 74 20 44 65 66 61 75 6c 74 28 tic get Default( 00019360: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 00019370: 44 65 66 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e Default\n }\n\n 00019380: 20 20 73 74 61 74 69 63 20 67 65 74 20 44 65 66 static get Def 00019390: 61 75 6c 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 aultType() {\n 000193a0: 20 20 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 return Default 000193b0: 54 79 70 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 Type\n }\n\n s 000193c0: 74 61 74 69 63 20 67 65 74 20 4e 41 4d 45 28 29 tatic get NAME() 000193d0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 4e {\n return N 000193e0: 41 4d 45 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f AME\n }\n\n // 000193f0: 20 50 75 62 6c 69 63 5c 6e 20 20 65 6e 61 62 6c Public\n enabl 00019400: 65 28 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e e() {\n this. 00019410: 5f 69 73 45 6e 61 62 6c 65 64 20 3d 20 74 72 75 _isEnabled = tru 00019420: 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 64 69 73 61 e\n }\n\n disa 00019430: 62 6c 65 28 29 20 7b 5c 6e 20 20 20 20 74 68 69 ble() {\n thi 00019440: 73 2e 5f 69 73 45 6e 61 62 6c 65 64 20 3d 20 66 s._isEnabled = f 00019450: 61 6c 73 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 74 alse\n }\n\n t 00019460: 6f 67 67 6c 65 45 6e 61 62 6c 65 64 28 29 20 7b oggleEnabled() { 00019470: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 73 45 6e \n this._isEn 00019480: 61 62 6c 65 64 20 3d 20 21 74 68 69 73 2e 5f 69 abled = !this._i 00019490: 73 45 6e 61 62 6c 65 64 5c 6e 20 20 7d 5c 6e 5c sEnabled\n }\n\ 000194a0: 6e 20 20 74 6f 67 67 6c 65 28 29 20 7b 5c 6e 20 n toggle() {\n 000194b0: 20 20 20 69 66 20 28 21 74 68 69 73 2e 5f 69 73 if (!this._is 000194c0: 45 6e 61 62 6c 65 64 29 20 7b 5c 6e 20 20 20 20 Enabled) {\n 000194d0: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c return\n }\ 000194e0: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 63 74 n\n this._act 000194f0: 69 76 65 54 72 69 67 67 65 72 2e 63 6c 69 63 6b iveTrigger.click 00019500: 20 3d 20 21 74 68 69 73 2e 5f 61 63 74 69 76 65 = !this._active 00019510: 54 72 69 67 67 65 72 2e 63 6c 69 63 6b 5c 6e 20 Trigger.click\n 00019520: 20 20 20 69 66 20 28 74 68 69 73 2e 5f 69 73 53 if (this._isS 00019530: 68 6f 77 6e 28 29 29 20 7b 5c 6e 20 20 20 20 20 hown()) {\n 00019540: 20 74 68 69 73 2e 5f 6c 65 61 76 65 28 29 5c 6e this._leave()\n 00019550: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 00019560: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 00019570: 5f 65 6e 74 65 72 28 29 5c 6e 20 20 7d 5c 6e 5c _enter()\n }\n\ 00019580: 6e 20 20 64 69 73 70 6f 73 65 28 29 20 7b 5c 6e n dispose() {\n 00019590: 20 20 20 20 63 6c 65 61 72 54 69 6d 65 6f 75 74 clearTimeout 000195a0: 28 74 68 69 73 2e 5f 74 69 6d 65 6f 75 74 29 5c (this._timeout)\ 000195b0: 6e 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 n\n EventHand 000195c0: 6c 65 72 2e 6f 66 66 28 74 68 69 73 2e 5f 65 6c ler.off(this._el 000195d0: 65 6d 65 6e 74 2e 63 6c 6f 73 65 73 74 28 53 45 ement.closest(SE 000195e0: 4c 45 43 54 4f 52 5f 4d 4f 44 41 4c 29 2c 20 45 LECTOR_MODAL), E 000195f0: 56 45 4e 54 5f 4d 4f 44 41 4c 5f 48 49 44 45 2c VENT_MODAL_HIDE, 00019600: 20 74 68 69 73 2e 5f 68 69 64 65 4d 6f 64 61 6c this._hideModal 00019610: 48 61 6e 64 6c 65 72 29 5c 6e 5c 6e 20 20 20 20 Handler)\n\n 00019620: 69 66 20 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e if (this._elemen 00019630: 74 2e 67 65 74 41 74 74 72 69 62 75 74 65 28 27 t.getAttribute(' 00019640: 64 61 74 61 2d 62 73 2d 6f 72 69 67 69 6e 61 6c data-bs-original 00019650: 2d 74 69 74 6c 65 27 29 29 20 7b 5c 6e 20 20 20 -title')) {\n 00019660: 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 this._element 00019670: 2e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 74 .setAttribute('t 00019680: 69 74 6c 65 27 2c 20 74 68 69 73 2e 5f 65 6c 65 itle', this._ele 00019690: 6d 65 6e 74 2e 67 65 74 41 74 74 72 69 62 75 74 ment.getAttribut 000196a0: 65 28 27 64 61 74 61 2d 62 73 2d 6f 72 69 67 69 e('data-bs-origi 000196b0: 6e 61 6c 2d 74 69 74 6c 65 27 29 29 5c 6e 20 20 nal-title'))\n 000196c0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 000196d0: 5f 64 69 73 70 6f 73 65 50 6f 70 70 65 72 28 29 _disposePopper() 000196e0: 5c 6e 20 20 20 20 73 75 70 65 72 2e 64 69 73 70 \n super.disp 000196f0: 6f 73 65 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 ose()\n }\n\n 00019700: 73 68 6f 77 28 29 20 7b 5c 6e 20 20 20 20 69 66 show() {\n if 00019710: 20 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e (this._element. 00019720: 73 74 79 6c 65 2e 64 69 73 70 6c 61 79 20 3d 3d style.display == 00019730: 3d 20 27 6e 6f 6e 65 27 29 20 7b 5c 6e 20 20 20 = 'none') {\n 00019740: 20 20 20 74 68 72 6f 77 20 6e 65 77 20 45 72 72 throw new Err 00019750: 6f 72 28 27 50 6c 65 61 73 65 20 75 73 65 20 73 or('Please use s 00019760: 68 6f 77 20 6f 6e 20 76 69 73 69 62 6c 65 20 65 how on visible e 00019770: 6c 65 6d 65 6e 74 73 27 29 5c 6e 20 20 20 20 7d lements')\n } 00019780: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 28 74 68 \n\n if (!(th 00019790: 69 73 2e 5f 69 73 57 69 74 68 43 6f 6e 74 65 6e is._isWithConten 000197a0: 74 28 29 20 26 26 20 74 68 69 73 2e 5f 69 73 45 t() && this._isE 000197b0: 6e 61 62 6c 65 64 29 29 20 7b 5c 6e 20 20 20 20 nabled)) {\n 000197c0: 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c return\n }\ 000197d0: 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 73 68 6f n\n const sho 000197e0: 77 45 76 65 6e 74 20 3d 20 45 76 65 6e 74 48 61 wEvent = EventHa 000197f0: 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 ndler.trigger(th 00019800: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 74 68 69 is._element, thi 00019810: 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 65 76 s.constructor.ev 00019820: 65 6e 74 4e 61 6d 65 28 45 56 45 4e 54 5f 53 48 entName(EVENT_SH 00019830: 4f 57 29 29 5c 6e 20 20 20 20 63 6f 6e 73 74 20 OW))\n const 00019840: 73 68 61 64 6f 77 52 6f 6f 74 20 3d 20 66 69 6e shadowRoot = fin 00019850: 64 53 68 61 64 6f 77 52 6f 6f 74 28 74 68 69 73 dShadowRoot(this 00019860: 2e 5f 65 6c 65 6d 65 6e 74 29 5c 6e 20 20 20 20 ._element)\n 00019870: 63 6f 6e 73 74 20 69 73 49 6e 54 68 65 44 6f 6d const isInTheDom 00019880: 20 3d 20 28 73 68 61 64 6f 77 52 6f 6f 74 20 7c = (shadowRoot | 00019890: 7c 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e | this._element. 000198a0: 6f 77 6e 65 72 44 6f 63 75 6d 65 6e 74 2e 64 6f ownerDocument.do 000198b0: 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 29 2e 63 cumentElement).c 000198c0: 6f 6e 74 61 69 6e 73 28 74 68 69 73 2e 5f 65 6c ontains(this._el 000198d0: 65 6d 65 6e 74 29 5c 6e 5c 6e 20 20 20 20 69 66 ement)\n\n if 000198e0: 20 28 73 68 6f 77 45 76 65 6e 74 2e 64 65 66 61 (showEvent.defa 000198f0: 75 6c 74 50 72 65 76 65 6e 74 65 64 20 7c 7c 20 ultPrevented || 00019900: 21 69 73 49 6e 54 68 65 44 6f 6d 29 20 7b 5c 6e !isInTheDom) {\n 00019910: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 00019920: 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 54 4f }\n\n // TO 00019930: 44 4f 3a 20 76 36 20 72 65 6d 6f 76 65 20 74 68 DO: v6 remove th 00019940: 69 73 20 6f 72 20 6d 61 6b 65 20 69 74 20 6f 70 is or make it op 00019950: 74 69 6f 6e 61 6c 5c 6e 20 20 20 20 74 68 69 73 tional\n this 00019960: 2e 5f 64 69 73 70 6f 73 65 50 6f 70 70 65 72 28 ._disposePopper( 00019970: 29 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 74 )\n\n const t 00019980: 69 70 20 3d 20 74 68 69 73 2e 5f 67 65 74 54 69 ip = this._getTi 00019990: 70 45 6c 65 6d 65 6e 74 28 29 5c 6e 5c 6e 20 20 pElement()\n\n 000199a0: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e this._element. 000199b0: 73 65 74 41 74 74 72 69 62 75 74 65 28 27 61 72 setAttribute('ar 000199c0: 69 61 2d 64 65 73 63 72 69 62 65 64 62 79 27 2c ia-describedby', 000199d0: 20 74 69 70 2e 67 65 74 41 74 74 72 69 62 75 74 tip.getAttribut 000199e0: 65 28 27 69 64 27 29 29 5c 6e 5c 6e 20 20 20 20 e('id'))\n\n 000199f0: 63 6f 6e 73 74 20 7b 20 63 6f 6e 74 61 69 6e 65 const { containe 00019a00: 72 20 7d 20 3d 20 74 68 69 73 2e 5f 63 6f 6e 66 r } = this._conf 00019a10: 69 67 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 74 ig\n\n if (!t 00019a20: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 6f 77 6e his._element.own 00019a30: 65 72 44 6f 63 75 6d 65 6e 74 2e 64 6f 63 75 6d erDocument.docum 00019a40: 65 6e 74 45 6c 65 6d 65 6e 74 2e 63 6f 6e 74 61 entElement.conta 00019a50: 69 6e 73 28 74 68 69 73 2e 74 69 70 29 29 20 7b ins(this.tip)) { 00019a60: 5c 6e 20 20 20 20 20 20 63 6f 6e 74 61 69 6e 65 \n containe 00019a70: 72 2e 61 70 70 65 6e 64 28 74 69 70 29 5c 6e 20 r.append(tip)\n 00019a80: 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 EventHandle 00019a90: 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f r.trigger(this._ 00019aa0: 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 2e 63 6f element, this.co 00019ab0: 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 6e 74 4e nstructor.eventN 00019ac0: 61 6d 65 28 45 56 45 4e 54 5f 49 4e 53 45 52 54 ame(EVENT_INSERT 00019ad0: 45 44 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 ED))\n }\n\n 00019ae0: 20 20 20 74 68 69 73 2e 5f 70 6f 70 70 65 72 20 this._popper 00019af0: 3d 20 74 68 69 73 2e 5f 63 72 65 61 74 65 50 6f = this._createPo 00019b00: 70 70 65 72 28 74 69 70 29 5c 6e 5c 6e 20 20 20 pper(tip)\n\n 00019b10: 20 74 69 70 2e 63 6c 61 73 73 4c 69 73 74 2e 61 tip.classList.a 00019b20: 64 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 dd(CLASS_NAME_SH 00019b30: 4f 57 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 49 66 OW)\n\n // If 00019b40: 20 74 68 69 73 20 69 73 20 61 20 74 6f 75 63 68 this is a touch 00019b50: 2d 65 6e 61 62 6c 65 64 20 64 65 76 69 63 65 20 -enabled device 00019b60: 77 65 20 61 64 64 20 65 78 74 72 61 5c 6e 20 20 we add extra\n 00019b70: 20 20 2f 2f 20 65 6d 70 74 79 20 6d 6f 75 73 65 // empty mouse 00019b80: 6f 76 65 72 20 6c 69 73 74 65 6e 65 72 73 20 74 over listeners t 00019b90: 6f 20 74 68 65 20 62 6f 64 79 27 73 20 69 6d 6d o the body's imm 00019ba0: 65 64 69 61 74 65 20 63 68 69 6c 64 72 65 6e 3b ediate children; 00019bb0: 5c 6e 20 20 20 20 2f 2f 20 6f 6e 6c 79 20 6e 65 \n // only ne 00019bc0: 65 64 65 64 20 62 65 63 61 75 73 65 20 6f 66 20 eded because of 00019bd0: 62 72 6f 6b 65 6e 20 65 76 65 6e 74 20 64 65 6c broken event del 00019be0: 65 67 61 74 69 6f 6e 20 6f 6e 20 69 4f 53 5c 6e egation on iOS\n 00019bf0: 20 20 20 20 2f 2f 20 68 74 74 70 73 3a 2f 2f 77 // https://w 00019c00: 77 77 2e 71 75 69 72 6b 73 6d 6f 64 65 2e 6f 72 ww.quirksmode.or 00019c10: 67 2f 62 6c 6f 67 2f 61 72 63 68 69 76 65 73 2f g/blog/archives/ 00019c20: 32 30 31 34 2f 30 32 2f 6d 6f 75 73 65 5f 65 76 2014/02/mouse_ev 00019c30: 65 6e 74 5f 62 75 62 2e 68 74 6d 6c 5c 6e 20 20 ent_bub.html\n 00019c40: 20 20 69 66 20 28 27 6f 6e 74 6f 75 63 68 73 74 if ('ontouchst 00019c50: 61 72 74 27 20 69 6e 20 64 6f 63 75 6d 65 6e 74 art' in document 00019c60: 2e 64 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 .documentElement 00019c70: 29 20 7b 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 ) {\n for ( 00019c80: 63 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 20 6f 66 const element of 00019c90: 20 5b 5d 2e 63 6f 6e 63 61 74 28 2e 2e 2e 64 6f [].concat(...do 00019ca0: 63 75 6d 65 6e 74 2e 62 6f 64 79 2e 63 68 69 6c cument.body.chil 00019cb0: 64 72 65 6e 29 29 20 7b 5c 6e 20 20 20 20 20 20 dren)) {\n 00019cc0: 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f EventHandler.o 00019cd0: 6e 28 65 6c 65 6d 65 6e 74 2c 20 27 6d 6f 75 73 n(element, 'mous 00019ce0: 65 6f 76 65 72 27 2c 20 6e 6f 6f 70 29 5c 6e 20 eover', noop)\n 00019cf0: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c }\n }\n\ 00019d00: 6e 20 20 20 20 63 6f 6e 73 74 20 63 6f 6d 70 6c n const compl 00019d10: 65 74 65 20 3d 20 28 29 20 3d 3e 20 7b 5c 6e 20 ete = () => {\n 00019d20: 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 EventHandle 00019d30: 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f r.trigger(this._ 00019d40: 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 2e 63 6f element, this.co 00019d50: 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 6e 74 4e nstructor.eventN 00019d60: 61 6d 65 28 45 56 45 4e 54 5f 53 48 4f 57 4e 29 ame(EVENT_SHOWN) 00019d70: 29 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 74 )\n\n if (t 00019d80: 68 69 73 2e 5f 69 73 48 6f 76 65 72 65 64 20 3d his._isHovered = 00019d90: 3d 3d 20 66 61 6c 73 65 29 20 7b 5c 6e 20 20 20 == false) {\n 00019da0: 20 20 20 20 20 74 68 69 73 2e 5f 6c 65 61 76 65 this._leave 00019db0: 28 29 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 ()\n }\n\n 00019dc0: 20 20 20 20 20 74 68 69 73 2e 5f 69 73 48 6f 76 this._isHov 00019dd0: 65 72 65 64 20 3d 20 66 61 6c 73 65 5c 6e 20 20 ered = false\n 00019de0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 00019df0: 5f 71 75 65 75 65 43 61 6c 6c 62 61 63 6b 28 63 _queueCallback(c 00019e00: 6f 6d 70 6c 65 74 65 2c 20 74 68 69 73 2e 74 69 omplete, this.ti 00019e10: 70 2c 20 74 68 69 73 2e 5f 69 73 41 6e 69 6d 61 p, this._isAnima 00019e20: 74 65 64 28 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 ted())\n }\n\n 00019e30: 20 68 69 64 65 28 29 20 7b 5c 6e 20 20 20 20 69 hide() {\n i 00019e40: 66 20 28 21 74 68 69 73 2e 5f 69 73 53 68 6f 77 f (!this._isShow 00019e50: 6e 28 29 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 n()) {\n re 00019e60: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 00019e70: 20 20 20 63 6f 6e 73 74 20 68 69 64 65 45 76 65 const hideEve 00019e80: 6e 74 20 3d 20 45 76 65 6e 74 48 61 6e 64 6c 65 nt = EventHandle 00019e90: 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f r.trigger(this._ 00019ea0: 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 2e 63 6f element, this.co 00019eb0: 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 6e 74 4e nstructor.eventN 00019ec0: 61 6d 65 28 45 56 45 4e 54 5f 48 49 44 45 29 29 ame(EVENT_HIDE)) 00019ed0: 5c 6e 20 20 20 20 69 66 20 28 68 69 64 65 45 76 \n if (hideEv 00019ee0: 65 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 76 65 ent.defaultPreve 00019ef0: 6e 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 72 nted) {\n r 00019f00: 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e eturn\n }\n\n 00019f10: 20 20 20 20 63 6f 6e 73 74 20 74 69 70 20 3d 20 const tip = 00019f20: 74 68 69 73 2e 5f 67 65 74 54 69 70 45 6c 65 6d this._getTipElem 00019f30: 65 6e 74 28 29 5c 6e 20 20 20 20 74 69 70 2e 63 ent()\n tip.c 00019f40: 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 65 28 lassList.remove( 00019f50: 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 CLASS_NAME_SHOW) 00019f60: 5c 6e 5c 6e 20 20 20 20 2f 2f 20 49 66 20 74 68 \n\n // If th 00019f70: 69 73 20 69 73 20 61 20 74 6f 75 63 68 2d 65 6e is is a touch-en 00019f80: 61 62 6c 65 64 20 64 65 76 69 63 65 20 77 65 20 abled device we 00019f90: 72 65 6d 6f 76 65 20 74 68 65 20 65 78 74 72 61 remove the extra 00019fa0: 5c 6e 20 20 20 20 2f 2f 20 65 6d 70 74 79 20 6d \n // empty m 00019fb0: 6f 75 73 65 6f 76 65 72 20 6c 69 73 74 65 6e 65 ouseover listene 00019fc0: 72 73 20 77 65 20 61 64 64 65 64 20 66 6f 72 20 rs we added for 00019fd0: 69 4f 53 20 73 75 70 70 6f 72 74 5c 6e 20 20 20 iOS support\n 00019fe0: 20 69 66 20 28 27 6f 6e 74 6f 75 63 68 73 74 61 if ('ontouchsta 00019ff0: 72 74 27 20 69 6e 20 64 6f 63 75 6d 65 6e 74 2e rt' in document. 0001a000: 64 6f 63 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 29 documentElement) 0001a010: 20 7b 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 63 {\n for (c 0001a020: 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 20 6f 66 20 onst element of 0001a030: 5b 5d 2e 63 6f 6e 63 61 74 28 2e 2e 2e 64 6f 63 [].concat(...doc 0001a040: 75 6d 65 6e 74 2e 62 6f 64 79 2e 63 68 69 6c 64 ument.body.child 0001a050: 72 65 6e 29 29 20 7b 5c 6e 20 20 20 20 20 20 20 ren)) {\n 0001a060: 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 66 EventHandler.of 0001a070: 66 28 65 6c 65 6d 65 6e 74 2c 20 27 6d 6f 75 73 f(element, 'mous 0001a080: 65 6f 76 65 72 27 2c 20 6e 6f 6f 70 29 5c 6e 20 eover', noop)\n 0001a090: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c }\n }\n\ 0001a0a0: 6e 20 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 n this._activ 0001a0b0: 65 54 72 69 67 67 65 72 5b 54 52 49 47 47 45 52 eTrigger[TRIGGER 0001a0c0: 5f 43 4c 49 43 4b 5d 20 3d 20 66 61 6c 73 65 5c _CLICK] = false\ 0001a0d0: 6e 20 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 n this._activ 0001a0e0: 65 54 72 69 67 67 65 72 5b 54 52 49 47 47 45 52 eTrigger[TRIGGER 0001a0f0: 5f 46 4f 43 55 53 5d 20 3d 20 66 61 6c 73 65 5c _FOCUS] = false\ 0001a100: 6e 20 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 n this._activ 0001a110: 65 54 72 69 67 67 65 72 5b 54 52 49 47 47 45 52 eTrigger[TRIGGER 0001a120: 5f 48 4f 56 45 52 5d 20 3d 20 66 61 6c 73 65 5c _HOVER] = false\ 0001a130: 6e 20 20 20 20 74 68 69 73 2e 5f 69 73 48 6f 76 n this._isHov 0001a140: 65 72 65 64 20 3d 20 6e 75 6c 6c 20 2f 2f 20 69 ered = null // i 0001a150: 74 20 69 73 20 61 20 74 72 69 63 6b 20 74 6f 20 t is a trick to 0001a160: 73 75 70 70 6f 72 74 20 6d 61 6e 75 61 6c 20 74 support manual t 0001a170: 72 69 67 67 65 72 69 6e 67 5c 6e 5c 6e 20 20 20 riggering\n\n 0001a180: 20 63 6f 6e 73 74 20 63 6f 6d 70 6c 65 74 65 20 const complete 0001a190: 3d 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 = () => {\n 0001a1a0: 20 69 66 20 28 74 68 69 73 2e 5f 69 73 57 69 74 if (this._isWit 0001a1b0: 68 41 63 74 69 76 65 54 72 69 67 67 65 72 28 29 hActiveTrigger() 0001a1c0: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 65 74 ) {\n ret 0001a1d0: 75 72 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e urn\n }\n\n 0001a1e0: 20 20 20 20 20 20 69 66 20 28 21 74 68 69 73 2e if (!this. 0001a1f0: 5f 69 73 48 6f 76 65 72 65 64 29 20 7b 5c 6e 20 _isHovered) {\n 0001a200: 20 20 20 20 20 20 20 74 68 69 73 2e 5f 64 69 73 this._dis 0001a210: 70 6f 73 65 50 6f 70 70 65 72 28 29 5c 6e 20 20 posePopper()\n 0001a220: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 74 }\n\n t 0001a230: 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 65 6d his._element.rem 0001a240: 6f 76 65 41 74 74 72 69 62 75 74 65 28 27 61 72 oveAttribute('ar 0001a250: 69 61 2d 64 65 73 63 72 69 62 65 64 62 79 27 29 ia-describedby') 0001a260: 5c 6e 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e \n EventHan 0001a270: 64 6c 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 dler.trigger(thi 0001a280: 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 s._element, this 0001a290: 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 .constructor.eve 0001a2a0: 6e 74 4e 61 6d 65 28 45 56 45 4e 54 5f 48 49 44 ntName(EVENT_HID 0001a2b0: 44 45 4e 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e DEN))\n }\n\n 0001a2c0: 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 65 43 this._queueC 0001a2d0: 61 6c 6c 62 61 63 6b 28 63 6f 6d 70 6c 65 74 65 allback(complete 0001a2e0: 2c 20 74 68 69 73 2e 74 69 70 2c 20 74 68 69 73 , this.tip, this 0001a2f0: 2e 5f 69 73 41 6e 69 6d 61 74 65 64 28 29 29 5c ._isAnimated())\ 0001a300: 6e 20 20 7d 5c 6e 5c 6e 20 20 75 70 64 61 74 65 n }\n\n update 0001a310: 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 () {\n if (th 0001a320: 69 73 2e 5f 70 6f 70 70 65 72 29 20 7b 5c 6e 20 is._popper) {\n 0001a330: 20 20 20 20 20 74 68 69 73 2e 5f 70 6f 70 70 65 this._poppe 0001a340: 72 2e 75 70 64 61 74 65 28 29 5c 6e 20 20 20 20 r.update()\n 0001a350: 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 }\n }\n\n // P 0001a360: 72 6f 74 65 63 74 65 64 5c 6e 20 20 5f 69 73 57 rotected\n _isW 0001a370: 69 74 68 43 6f 6e 74 65 6e 74 28 29 20 7b 5c 6e ithContent() {\n 0001a380: 20 20 20 20 72 65 74 75 72 6e 20 42 6f 6f 6c 65 return Boole 0001a390: 61 6e 28 74 68 69 73 2e 5f 67 65 74 54 69 74 6c an(this._getTitl 0001a3a0: 65 28 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f e())\n }\n\n _ 0001a3b0: 67 65 74 54 69 70 45 6c 65 6d 65 6e 74 28 29 20 getTipElement() 0001a3c0: 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 73 {\n if (!this 0001a3d0: 2e 74 69 70 29 20 7b 5c 6e 20 20 20 20 20 20 74 .tip) {\n t 0001a3e0: 68 69 73 2e 74 69 70 20 3d 20 74 68 69 73 2e 5f his.tip = this._ 0001a3f0: 63 72 65 61 74 65 54 69 70 45 6c 65 6d 65 6e 74 createTipElement 0001a400: 28 74 68 69 73 2e 5f 6e 65 77 43 6f 6e 74 65 6e (this._newConten 0001a410: 74 20 7c 7c 20 74 68 69 73 2e 5f 67 65 74 43 6f t || this._getCo 0001a420: 6e 74 65 6e 74 46 6f 72 54 65 6d 70 6c 61 74 65 ntentForTemplate 0001a430: 28 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 ())\n }\n\n 0001a440: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 74 69 return this.ti 0001a450: 70 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 72 65 p\n }\n\n _cre 0001a460: 61 74 65 54 69 70 45 6c 65 6d 65 6e 74 28 63 6f ateTipElement(co 0001a470: 6e 74 65 6e 74 29 20 7b 5c 6e 20 20 20 20 63 6f ntent) {\n co 0001a480: 6e 73 74 20 74 69 70 20 3d 20 74 68 69 73 2e 5f nst tip = this._ 0001a490: 67 65 74 54 65 6d 70 6c 61 74 65 46 61 63 74 6f getTemplateFacto 0001a4a0: 72 79 28 63 6f 6e 74 65 6e 74 29 2e 74 6f 48 74 ry(content).toHt 0001a4b0: 6d 6c 28 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 54 ml()\n\n // T 0001a4c0: 4f 44 4f 3a 20 72 65 6d 6f 76 65 20 74 68 69 73 ODO: remove this 0001a4d0: 20 63 68 65 63 6b 20 69 6e 20 76 36 5c 6e 20 20 check in v6\n 0001a4e0: 20 20 69 66 20 28 21 74 69 70 29 20 7b 5c 6e 20 if (!tip) {\n 0001a4f0: 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6c 6c return null 0001a500: 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 \n }\n\n t 0001a510: 69 70 2e 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d ip.classList.rem 0001a520: 6f 76 65 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 46 ove(CLASS_NAME_F 0001a530: 41 44 45 2c 20 43 4c 41 53 53 5f 4e 41 4d 45 5f ADE, CLASS_NAME_ 0001a540: 53 48 4f 57 29 5c 6e 20 20 20 20 2f 2f 20 54 4f SHOW)\n // TO 0001a550: 44 4f 3a 20 76 36 20 74 68 65 20 66 6f 6c 6c 6f DO: v6 the follo 0001a560: 77 69 6e 67 20 63 61 6e 20 62 65 20 61 63 68 69 wing can be achi 0001a570: 65 76 65 64 20 77 69 74 68 20 43 53 53 20 6f 6e eved with CSS on 0001a580: 6c 79 5c 6e 20 20 20 20 74 69 70 2e 63 6c 61 73 ly\n tip.clas 0001a590: 73 4c 69 73 74 2e 61 64 64 28 60 62 73 2d 24 7b sList.add(`bs-${ 0001a5a0: 74 68 69 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 this.constructor 0001a5b0: 2e 4e 41 4d 45 7d 2d 61 75 74 6f 60 29 5c 6e 5c .NAME}-auto`)\n\ 0001a5c0: 6e 20 20 20 20 63 6f 6e 73 74 20 74 69 70 49 64 n const tipId 0001a5d0: 20 3d 20 67 65 74 55 49 44 28 74 68 69 73 2e 63 = getUID(this.c 0001a5e0: 6f 6e 73 74 72 75 63 74 6f 72 2e 4e 41 4d 45 29 onstructor.NAME) 0001a5f0: 2e 74 6f 53 74 72 69 6e 67 28 29 5c 6e 5c 6e 20 .toString()\n\n 0001a600: 20 20 20 74 69 70 2e 73 65 74 41 74 74 72 69 62 tip.setAttrib 0001a610: 75 74 65 28 27 69 64 27 2c 20 74 69 70 49 64 29 ute('id', tipId) 0001a620: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 \n\n if (this 0001a630: 2e 5f 69 73 41 6e 69 6d 61 74 65 64 28 29 29 20 ._isAnimated()) 0001a640: 7b 5c 6e 20 20 20 20 20 20 74 69 70 2e 63 6c 61 {\n tip.cla 0001a650: 73 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 53 53 ssList.add(CLASS 0001a660: 5f 4e 41 4d 45 5f 46 41 44 45 29 5c 6e 20 20 20 _NAME_FADE)\n 0001a670: 20 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e }\n\n return 0001a680: 20 74 69 70 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 tip\n }\n\n s 0001a690: 65 74 43 6f 6e 74 65 6e 74 28 63 6f 6e 74 65 6e etContent(conten 0001a6a0: 74 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f t) {\n this._ 0001a6b0: 6e 65 77 43 6f 6e 74 65 6e 74 20 3d 20 63 6f 6e newContent = con 0001a6c0: 74 65 6e 74 5c 6e 20 20 20 20 69 66 20 28 74 68 tent\n if (th 0001a6d0: 69 73 2e 5f 69 73 53 68 6f 77 6e 28 29 29 20 7b is._isShown()) { 0001a6e0: 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 64 69 \n this._di 0001a6f0: 73 70 6f 73 65 50 6f 70 70 65 72 28 29 5c 6e 20 sposePopper()\n 0001a700: 20 20 20 20 20 74 68 69 73 2e 73 68 6f 77 28 29 this.show() 0001a710: 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e \n }\n }\n\n 0001a720: 20 20 5f 67 65 74 54 65 6d 70 6c 61 74 65 46 61 _getTemplateFa 0001a730: 63 74 6f 72 79 28 63 6f 6e 74 65 6e 74 29 20 7b ctory(content) { 0001a740: 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f \n if (this._ 0001a750: 74 65 6d 70 6c 61 74 65 46 61 63 74 6f 72 79 29 templateFactory) 0001a760: 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f {\n this._ 0001a770: 74 65 6d 70 6c 61 74 65 46 61 63 74 6f 72 79 2e templateFactory. 0001a780: 63 68 61 6e 67 65 43 6f 6e 74 65 6e 74 28 63 6f changeContent(co 0001a790: 6e 74 65 6e 74 29 5c 6e 20 20 20 20 7d 20 65 6c ntent)\n } el 0001a7a0: 73 65 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 se {\n this 0001a7b0: 2e 5f 74 65 6d 70 6c 61 74 65 46 61 63 74 6f 72 ._templateFactor 0001a7c0: 79 20 3d 20 6e 65 77 20 54 65 6d 70 6c 61 74 65 y = new Template 0001a7d0: 46 61 63 74 6f 72 79 28 7b 5c 6e 20 20 20 20 20 Factory({\n 0001a7e0: 20 20 20 2e 2e 2e 74 68 69 73 2e 5f 63 6f 6e 66 ...this._conf 0001a7f0: 69 67 2c 5c 6e 20 20 20 20 20 20 20 20 2f 2f 20 ig,\n // 0001a800: 74 68 65 20 60 63 6f 6e 74 65 6e 74 60 20 76 61 the `content` va 0001a810: 72 20 68 61 73 20 74 6f 20 62 65 20 61 66 74 65 r has to be afte 0001a820: 72 20 60 74 68 69 73 2e 5f 63 6f 6e 66 69 67 60 r `this._config` 0001a830: 5c 6e 20 20 20 20 20 20 20 20 2f 2f 20 74 6f 20 \n // to 0001a840: 6f 76 65 72 72 69 64 65 20 63 6f 6e 66 69 67 2e override config. 0001a850: 63 6f 6e 74 65 6e 74 20 69 6e 20 63 61 73 65 20 content in case 0001a860: 6f 66 20 70 6f 70 6f 76 65 72 5c 6e 20 20 20 20 of popover\n 0001a870: 20 20 20 20 63 6f 6e 74 65 6e 74 2c 5c 6e 20 20 content,\n 0001a880: 20 20 20 20 20 20 65 78 74 72 61 43 6c 61 73 73 extraClass 0001a890: 3a 20 74 68 69 73 2e 5f 72 65 73 6f 6c 76 65 50 : this._resolveP 0001a8a0: 6f 73 73 69 62 6c 65 46 75 6e 63 74 69 6f 6e 28 ossibleFunction( 0001a8b0: 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 63 75 73 this._config.cus 0001a8c0: 74 6f 6d 43 6c 61 73 73 29 5c 6e 20 20 20 20 20 tomClass)\n 0001a8d0: 20 7d 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 })\n }\n\n 0001a8e0: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 74 return this._t 0001a8f0: 65 6d 70 6c 61 74 65 46 61 63 74 6f 72 79 5c 6e emplateFactory\n 0001a900: 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 74 43 6f 6e }\n\n _getCon 0001a910: 74 65 6e 74 46 6f 72 54 65 6d 70 6c 61 74 65 28 tentForTemplate( 0001a920: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 0001a930: 7b 5c 6e 20 20 20 20 20 20 5b 53 45 4c 45 43 54 {\n [SELECT 0001a940: 4f 52 5f 54 4f 4f 4c 54 49 50 5f 49 4e 4e 45 52 OR_TOOLTIP_INNER 0001a950: 5d 3a 20 74 68 69 73 2e 5f 67 65 74 54 69 74 6c ]: this._getTitl 0001a960: 65 28 29 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c e()\n }\n }\ 0001a970: 6e 5c 6e 20 20 5f 67 65 74 54 69 74 6c 65 28 29 n\n _getTitle() 0001a980: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 {\n return t 0001a990: 68 69 73 2e 5f 72 65 73 6f 6c 76 65 50 6f 73 73 his._resolvePoss 0001a9a0: 69 62 6c 65 46 75 6e 63 74 69 6f 6e 28 74 68 69 ibleFunction(thi 0001a9b0: 73 2e 5f 63 6f 6e 66 69 67 2e 74 69 74 6c 65 29 s._config.title) 0001a9c0: 20 7c 7c 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e || this._elemen 0001a9d0: 74 2e 67 65 74 41 74 74 72 69 62 75 74 65 28 27 t.getAttribute(' 0001a9e0: 64 61 74 61 2d 62 73 2d 6f 72 69 67 69 6e 61 6c data-bs-original 0001a9f0: 2d 74 69 74 6c 65 27 29 5c 6e 20 20 7d 5c 6e 5c -title')\n }\n\ 0001aa00: 6e 20 20 2f 2f 20 50 72 69 76 61 74 65 5c 6e 20 n // Private\n 0001aa10: 20 5f 69 6e 69 74 69 61 6c 69 7a 65 4f 6e 44 65 _initializeOnDe 0001aa20: 6c 65 67 61 74 65 64 54 61 72 67 65 74 28 65 76 legatedTarget(ev 0001aa30: 65 6e 74 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 ent) {\n retu 0001aa40: 72 6e 20 74 68 69 73 2e 63 6f 6e 73 74 72 75 63 rn this.construc 0001aa50: 74 6f 72 2e 67 65 74 4f 72 43 72 65 61 74 65 49 tor.getOrCreateI 0001aa60: 6e 73 74 61 6e 63 65 28 65 76 65 6e 74 2e 64 65 nstance(event.de 0001aa70: 6c 65 67 61 74 65 54 61 72 67 65 74 2c 20 74 68 legateTarget, th 0001aa80: 69 73 2e 5f 67 65 74 44 65 6c 65 67 61 74 65 43 is._getDelegateC 0001aa90: 6f 6e 66 69 67 28 29 29 5c 6e 20 20 7d 5c 6e 5c onfig())\n }\n\ 0001aaa0: 6e 20 20 5f 69 73 41 6e 69 6d 61 74 65 64 28 29 n _isAnimated() 0001aab0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 {\n return t 0001aac0: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 61 6e 69 6d his._config.anim 0001aad0: 61 74 69 6f 6e 20 7c 7c 20 28 74 68 69 73 2e 74 ation || (this.t 0001aae0: 69 70 20 26 26 20 74 68 69 73 2e 74 69 70 2e 63 ip && this.tip.c 0001aaf0: 6c 61 73 73 4c 69 73 74 2e 63 6f 6e 74 61 69 6e lassList.contain 0001ab00: 73 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 46 41 44 s(CLASS_NAME_FAD 0001ab10: 45 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 69 E))\n }\n\n _i 0001ab20: 73 53 68 6f 77 6e 28 29 20 7b 5c 6e 20 20 20 20 sShown() {\n 0001ab30: 72 65 74 75 72 6e 20 74 68 69 73 2e 74 69 70 20 return this.tip 0001ab40: 26 26 20 74 68 69 73 2e 74 69 70 2e 63 6c 61 73 && this.tip.clas 0001ab50: 73 4c 69 73 74 2e 63 6f 6e 74 61 69 6e 73 28 43 sList.contains(C 0001ab60: 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c LASS_NAME_SHOW)\ 0001ab70: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 72 65 61 74 n }\n\n _creat 0001ab80: 65 50 6f 70 70 65 72 28 74 69 70 29 20 7b 5c 6e ePopper(tip) {\n 0001ab90: 20 20 20 20 63 6f 6e 73 74 20 70 6c 61 63 65 6d const placem 0001aba0: 65 6e 74 20 3d 20 65 78 65 63 75 74 65 28 74 68 ent = execute(th 0001abb0: 69 73 2e 5f 63 6f 6e 66 69 67 2e 70 6c 61 63 65 is._config.place 0001abc0: 6d 65 6e 74 2c 20 5b 74 68 69 73 2c 20 74 69 70 ment, [this, tip 0001abd0: 2c 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 5d , this._element] 0001abe0: 29 5c 6e 20 20 20 20 63 6f 6e 73 74 20 61 74 74 )\n const att 0001abf0: 61 63 68 6d 65 6e 74 20 3d 20 41 74 74 61 63 68 achment = Attach 0001ac00: 6d 65 6e 74 4d 61 70 5b 70 6c 61 63 65 6d 65 6e mentMap[placemen 0001ac10: 74 2e 74 6f 55 70 70 65 72 43 61 73 65 28 29 5d t.toUpperCase()] 0001ac20: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 50 6f 70 \n return Pop 0001ac30: 70 65 72 2e 63 72 65 61 74 65 50 6f 70 70 65 72 per.createPopper 0001ac40: 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 (this._element, 0001ac50: 74 69 70 2c 20 74 68 69 73 2e 5f 67 65 74 50 6f tip, this._getPo 0001ac60: 70 70 65 72 43 6f 6e 66 69 67 28 61 74 74 61 63 pperConfig(attac 0001ac70: 68 6d 65 6e 74 29 29 5c 6e 20 20 7d 5c 6e 5c 6e hment))\n }\n\n 0001ac80: 20 20 5f 67 65 74 4f 66 66 73 65 74 28 29 20 7b _getOffset() { 0001ac90: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 7b 20 6f 66 \n const { of 0001aca0: 66 73 65 74 20 7d 20 3d 20 74 68 69 73 2e 5f 63 fset } = this._c 0001acb0: 6f 6e 66 69 67 5c 6e 5c 6e 20 20 20 20 69 66 20 onfig\n\n if 0001acc0: 28 74 79 70 65 6f 66 20 6f 66 66 73 65 74 20 3d (typeof offset = 0001acd0: 3d 3d 20 27 73 74 72 69 6e 67 27 29 20 7b 5c 6e == 'string') {\n 0001ace0: 20 20 20 20 20 20 72 65 74 75 72 6e 20 6f 66 66 return off 0001acf0: 73 65 74 2e 73 70 6c 69 74 28 27 2c 27 29 2e 6d set.split(',').m 0001ad00: 61 70 28 76 61 6c 75 65 20 3d 3e 20 4e 75 6d 62 ap(value => Numb 0001ad10: 65 72 2e 70 61 72 73 65 49 6e 74 28 76 61 6c 75 er.parseInt(valu 0001ad20: 65 2c 20 31 30 29 29 5c 6e 20 20 20 20 7d 5c 6e e, 10))\n }\n 0001ad30: 5c 6e 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 \n if (typeof 0001ad40: 20 6f 66 66 73 65 74 20 3d 3d 3d 20 27 66 75 6e offset === 'fun 0001ad50: 63 74 69 6f 6e 27 29 20 7b 5c 6e 20 20 20 20 20 ction') {\n 0001ad60: 20 72 65 74 75 72 6e 20 70 6f 70 70 65 72 44 61 return popperDa 0001ad70: 74 61 20 3d 3e 20 6f 66 66 73 65 74 28 70 6f 70 ta => offset(pop 0001ad80: 70 65 72 44 61 74 61 2c 20 74 68 69 73 2e 5f 65 perData, this._e 0001ad90: 6c 65 6d 65 6e 74 29 5c 6e 20 20 20 20 7d 5c 6e lement)\n }\n 0001ada0: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6f 66 66 \n return off 0001adb0: 73 65 74 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 72 set\n }\n\n _r 0001adc0: 65 73 6f 6c 76 65 50 6f 73 73 69 62 6c 65 46 75 esolvePossibleFu 0001add0: 6e 63 74 69 6f 6e 28 61 72 67 29 20 7b 5c 6e 20 nction(arg) {\n 0001ade0: 20 20 20 72 65 74 75 72 6e 20 65 78 65 63 75 74 return execut 0001adf0: 65 28 61 72 67 2c 20 5b 74 68 69 73 2e 5f 65 6c e(arg, [this._el 0001ae00: 65 6d 65 6e 74 5d 29 5c 6e 20 20 7d 5c 6e 5c 6e ement])\n }\n\n 0001ae10: 20 20 5f 67 65 74 50 6f 70 70 65 72 43 6f 6e 66 _getPopperConf 0001ae20: 69 67 28 61 74 74 61 63 68 6d 65 6e 74 29 20 7b ig(attachment) { 0001ae30: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 64 65 66 61 \n const defa 0001ae40: 75 6c 74 42 73 50 6f 70 70 65 72 43 6f 6e 66 69 ultBsPopperConfi 0001ae50: 67 20 3d 20 7b 5c 6e 20 20 20 20 20 20 70 6c 61 g = {\n pla 0001ae60: 63 65 6d 65 6e 74 3a 20 61 74 74 61 63 68 6d 65 cement: attachme 0001ae70: 6e 74 2c 5c 6e 20 20 20 20 20 20 6d 6f 64 69 66 nt,\n modif 0001ae80: 69 65 72 73 3a 20 5b 5c 6e 20 20 20 20 20 20 20 iers: [\n 0001ae90: 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6e 61 {\n na 0001aea0: 6d 65 3a 20 27 66 6c 69 70 27 2c 5c 6e 20 20 20 me: 'flip',\n 0001aeb0: 20 20 20 20 20 20 20 6f 70 74 69 6f 6e 73 3a 20 options: 0001aec0: 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 66 {\n f 0001aed0: 61 6c 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e 74 allbackPlacement 0001aee0: 73 3a 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e s: this._config. 0001aef0: 66 61 6c 6c 62 61 63 6b 50 6c 61 63 65 6d 65 6e fallbackPlacemen 0001af00: 74 73 5c 6e 20 20 20 20 20 20 20 20 20 20 7d 5c ts\n }\ 0001af10: 6e 20 20 20 20 20 20 20 20 7d 2c 5c 6e 20 20 20 n },\n 0001af20: 20 20 20 20 20 7b 5c 6e 20 20 20 20 20 20 20 20 {\n 0001af30: 20 20 6e 61 6d 65 3a 20 27 6f 66 66 73 65 74 27 name: 'offset' 0001af40: 2c 5c 6e 20 20 20 20 20 20 20 20 20 20 6f 70 74 ,\n opt 0001af50: 69 6f 6e 73 3a 20 7b 5c 6e 20 20 20 20 20 20 20 ions: {\n 0001af60: 20 20 20 20 20 6f 66 66 73 65 74 3a 20 74 68 69 offset: thi 0001af70: 73 2e 5f 67 65 74 4f 66 66 73 65 74 28 29 5c 6e s._getOffset()\n 0001af80: 20 20 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 }\n 0001af90: 20 20 20 20 20 7d 2c 5c 6e 20 20 20 20 20 20 20 },\n 0001afa0: 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6e 61 {\n na 0001afb0: 6d 65 3a 20 27 70 72 65 76 65 6e 74 4f 76 65 72 me: 'preventOver 0001afc0: 66 6c 6f 77 27 2c 5c 6e 20 20 20 20 20 20 20 20 flow',\n 0001afd0: 20 20 6f 70 74 69 6f 6e 73 3a 20 7b 5c 6e 20 20 options: {\n 0001afe0: 20 20 20 20 20 20 20 20 20 20 62 6f 75 6e 64 61 bounda 0001aff0: 72 79 3a 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 ry: this._config 0001b000: 2e 62 6f 75 6e 64 61 72 79 5c 6e 20 20 20 20 20 .boundary\n 0001b010: 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 20 20 }\n 0001b020: 7d 2c 5c 6e 20 20 20 20 20 20 20 20 7b 5c 6e 20 },\n {\n 0001b030: 20 20 20 20 20 20 20 20 20 6e 61 6d 65 3a 20 27 name: ' 0001b040: 61 72 72 6f 77 27 2c 5c 6e 20 20 20 20 20 20 20 arrow',\n 0001b050: 20 20 20 6f 70 74 69 6f 6e 73 3a 20 7b 5c 6e 20 options: {\n 0001b060: 20 20 20 20 20 20 20 20 20 20 20 65 6c 65 6d 65 eleme 0001b070: 6e 74 3a 20 60 2e 24 7b 74 68 69 73 2e 63 6f 6e nt: `.${this.con 0001b080: 73 74 72 75 63 74 6f 72 2e 4e 41 4d 45 7d 2d 61 structor.NAME}-a 0001b090: 72 72 6f 77 60 5c 6e 20 20 20 20 20 20 20 20 20 rrow`\n 0001b0a0: 20 7d 5c 6e 20 20 20 20 20 20 20 20 7d 2c 5c 6e }\n },\n 0001b0b0: 20 20 20 20 20 20 20 20 7b 5c 6e 20 20 20 20 20 {\n 0001b0c0: 20 20 20 20 20 6e 61 6d 65 3a 20 27 70 72 65 53 name: 'preS 0001b0d0: 65 74 50 6c 61 63 65 6d 65 6e 74 27 2c 5c 6e 20 etPlacement',\n 0001b0e0: 20 20 20 20 20 20 20 20 20 65 6e 61 62 6c 65 64 enabled 0001b0f0: 3a 20 74 72 75 65 2c 5c 6e 20 20 20 20 20 20 20 : true,\n 0001b100: 20 20 20 70 68 61 73 65 3a 20 27 62 65 66 6f 72 phase: 'befor 0001b110: 65 4d 61 69 6e 27 2c 5c 6e 20 20 20 20 20 20 20 eMain',\n 0001b120: 20 20 20 66 6e 3a 20 64 61 74 61 20 3d 3e 20 7b fn: data => { 0001b130: 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f \n // 0001b140: 20 50 72 65 2d 73 65 74 20 50 6f 70 70 65 72 27 Pre-set Popper' 0001b150: 73 20 70 6c 61 63 65 6d 65 6e 74 20 61 74 74 72 s placement attr 0001b160: 69 62 75 74 65 20 69 6e 20 6f 72 64 65 72 20 74 ibute in order t 0001b170: 6f 20 72 65 61 64 20 74 68 65 20 61 72 72 6f 77 o read the arrow 0001b180: 20 73 69 7a 65 73 20 70 72 6f 70 65 72 6c 79 2e sizes properly. 0001b190: 5c 6e 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f \n // 0001b1a0: 20 4f 74 68 65 72 77 69 73 65 2c 20 50 6f 70 70 Otherwise, Popp 0001b1b0: 65 72 20 6d 69 78 65 73 20 75 70 20 74 68 65 20 er mixes up the 0001b1c0: 77 69 64 74 68 20 61 6e 64 20 68 65 69 67 68 74 width and height 0001b1d0: 20 64 69 6d 65 6e 73 69 6f 6e 73 20 73 69 6e 63 dimensions sinc 0001b1e0: 65 20 74 68 65 20 69 6e 69 74 69 61 6c 20 61 72 e the initial ar 0001b1f0: 72 6f 77 20 73 74 79 6c 65 20 69 73 20 66 6f 72 row style is for 0001b200: 20 74 6f 70 20 70 6c 61 63 65 6d 65 6e 74 5c 6e top placement\n 0001b210: 20 20 20 20 20 20 20 20 20 20 20 20 74 68 69 73 this 0001b220: 2e 5f 67 65 74 54 69 70 45 6c 65 6d 65 6e 74 28 ._getTipElement( 0001b230: 29 2e 73 65 74 41 74 74 72 69 62 75 74 65 28 27 ).setAttribute(' 0001b240: 64 61 74 61 2d 70 6f 70 70 65 72 2d 70 6c 61 63 data-popper-plac 0001b250: 65 6d 65 6e 74 27 2c 20 64 61 74 61 2e 73 74 61 ement', data.sta 0001b260: 74 65 2e 70 6c 61 63 65 6d 65 6e 74 29 5c 6e 20 te.placement)\n 0001b270: 20 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 }\n 0001b280: 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 5d 5c 6e }\n ]\n 0001b290: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 }\n\n ret 0001b2a0: 75 72 6e 20 7b 5c 6e 20 20 20 20 20 20 2e 2e 2e urn {\n ... 0001b2b0: 64 65 66 61 75 6c 74 42 73 50 6f 70 70 65 72 43 defaultBsPopperC 0001b2c0: 6f 6e 66 69 67 2c 5c 6e 20 20 20 20 20 20 2e 2e onfig,\n .. 0001b2d0: 2e 65 78 65 63 75 74 65 28 74 68 69 73 2e 5f 63 .execute(this._c 0001b2e0: 6f 6e 66 69 67 2e 70 6f 70 70 65 72 43 6f 6e 66 onfig.popperConf 0001b2f0: 69 67 2c 20 5b 64 65 66 61 75 6c 74 42 73 50 6f ig, [defaultBsPo 0001b300: 70 70 65 72 43 6f 6e 66 69 67 5d 29 5c 6e 20 20 pperConfig])\n 0001b310: 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 73 }\n }\n\n _s 0001b320: 65 74 4c 69 73 74 65 6e 65 72 73 28 29 20 7b 5c etListeners() {\ 0001b330: 6e 20 20 20 20 63 6f 6e 73 74 20 74 72 69 67 67 n const trigg 0001b340: 65 72 73 20 3d 20 74 68 69 73 2e 5f 63 6f 6e 66 ers = this._conf 0001b350: 69 67 2e 74 72 69 67 67 65 72 2e 73 70 6c 69 74 ig.trigger.split 0001b360: 28 27 20 27 29 5c 6e 5c 6e 20 20 20 20 66 6f 72 (' ')\n\n for 0001b370: 20 28 63 6f 6e 73 74 20 74 72 69 67 67 65 72 20 (const trigger 0001b380: 6f 66 20 74 72 69 67 67 65 72 73 29 20 7b 5c 6e of triggers) {\n 0001b390: 20 20 20 20 20 20 69 66 20 28 74 72 69 67 67 65 if (trigge 0001b3a0: 72 20 3d 3d 3d 20 27 63 6c 69 63 6b 27 29 20 7b r === 'click') { 0001b3b0: 5c 6e 20 20 20 20 20 20 20 20 45 76 65 6e 74 48 \n EventH 0001b3c0: 61 6e 64 6c 65 72 2e 6f 6e 28 74 68 69 73 2e 5f andler.on(this._ 0001b3d0: 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 2e 63 6f element, this.co 0001b3e0: 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 6e 74 4e nstructor.eventN 0001b3f0: 61 6d 65 28 45 56 45 4e 54 5f 43 4c 49 43 4b 29 ame(EVENT_CLICK) 0001b400: 2c 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 73 , this._config.s 0001b410: 65 6c 65 63 74 6f 72 2c 20 65 76 65 6e 74 20 3d elector, event = 0001b420: 3e 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 63 > {\n c 0001b430: 6f 6e 73 74 20 63 6f 6e 74 65 78 74 20 3d 20 74 onst context = t 0001b440: 68 69 73 2e 5f 69 6e 69 74 69 61 6c 69 7a 65 4f his._initializeO 0001b450: 6e 44 65 6c 65 67 61 74 65 64 54 61 72 67 65 74 nDelegatedTarget 0001b460: 28 65 76 65 6e 74 29 5c 6e 20 20 20 20 20 20 20 (event)\n 0001b470: 20 20 20 63 6f 6e 74 65 78 74 2e 74 6f 67 67 6c context.toggl 0001b480: 65 28 29 5c 6e 20 20 20 20 20 20 20 20 7d 29 5c e()\n })\ 0001b490: 6e 20 20 20 20 20 20 7d 20 65 6c 73 65 20 69 66 n } else if 0001b4a0: 20 28 74 72 69 67 67 65 72 20 21 3d 3d 20 54 52 (trigger !== TR 0001b4b0: 49 47 47 45 52 5f 4d 41 4e 55 41 4c 29 20 7b 5c IGGER_MANUAL) {\ 0001b4c0: 6e 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 65 n const e 0001b4d0: 76 65 6e 74 49 6e 20 3d 20 74 72 69 67 67 65 72 ventIn = trigger 0001b4e0: 20 3d 3d 3d 20 54 52 49 47 47 45 52 5f 48 4f 56 === TRIGGER_HOV 0001b4f0: 45 52 20 3f 5c 6e 20 20 20 20 20 20 20 20 20 20 ER ?\n 0001b500: 74 68 69 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 this.constructor 0001b510: 2e 65 76 65 6e 74 4e 61 6d 65 28 45 56 45 4e 54 .eventName(EVENT 0001b520: 5f 4d 4f 55 53 45 45 4e 54 45 52 29 20 3a 5c 6e _MOUSEENTER) :\n 0001b530: 20 20 20 20 20 20 20 20 20 20 74 68 69 73 2e 63 this.c 0001b540: 6f 6e 73 74 72 75 63 74 6f 72 2e 65 76 65 6e 74 onstructor.event 0001b550: 4e 61 6d 65 28 45 56 45 4e 54 5f 46 4f 43 55 53 Name(EVENT_FOCUS 0001b560: 49 4e 29 5c 6e 20 20 20 20 20 20 20 20 63 6f 6e IN)\n con 0001b570: 73 74 20 65 76 65 6e 74 4f 75 74 20 3d 20 74 72 st eventOut = tr 0001b580: 69 67 67 65 72 20 3d 3d 3d 20 54 52 49 47 47 45 igger === TRIGGE 0001b590: 52 5f 48 4f 56 45 52 20 3f 5c 6e 20 20 20 20 20 R_HOVER ?\n 0001b5a0: 20 20 20 20 20 74 68 69 73 2e 63 6f 6e 73 74 72 this.constr 0001b5b0: 75 63 74 6f 72 2e 65 76 65 6e 74 4e 61 6d 65 28 uctor.eventName( 0001b5c0: 45 56 45 4e 54 5f 4d 4f 55 53 45 4c 45 41 56 45 EVENT_MOUSELEAVE 0001b5d0: 29 20 3a 5c 6e 20 20 20 20 20 20 20 20 20 20 74 ) :\n t 0001b5e0: 68 69 73 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e his.constructor. 0001b5f0: 65 76 65 6e 74 4e 61 6d 65 28 45 56 45 4e 54 5f eventName(EVENT_ 0001b600: 46 4f 43 55 53 4f 55 54 29 5c 6e 5c 6e 20 20 20 FOCUSOUT)\n\n 0001b610: 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 EventHandle 0001b620: 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d 65 r.on(this._eleme 0001b630: 6e 74 2c 20 65 76 65 6e 74 49 6e 2c 20 74 68 69 nt, eventIn, thi 0001b640: 73 2e 5f 63 6f 6e 66 69 67 2e 73 65 6c 65 63 74 s._config.select 0001b650: 6f 72 2c 20 65 76 65 6e 74 20 3d 3e 20 7b 5c 6e or, event => {\n 0001b660: 20 20 20 20 20 20 20 20 20 20 63 6f 6e 73 74 20 const 0001b670: 63 6f 6e 74 65 78 74 20 3d 20 74 68 69 73 2e 5f context = this._ 0001b680: 69 6e 69 74 69 61 6c 69 7a 65 4f 6e 44 65 6c 65 initializeOnDele 0001b690: 67 61 74 65 64 54 61 72 67 65 74 28 65 76 65 6e gatedTarget(even 0001b6a0: 74 29 5c 6e 20 20 20 20 20 20 20 20 20 20 63 6f t)\n co 0001b6b0: 6e 74 65 78 74 2e 5f 61 63 74 69 76 65 54 72 69 ntext._activeTri 0001b6c0: 67 67 65 72 5b 65 76 65 6e 74 2e 74 79 70 65 20 gger[event.type 0001b6d0: 3d 3d 3d 20 27 66 6f 63 75 73 69 6e 27 20 3f 20 === 'focusin' ? 0001b6e0: 54 52 49 47 47 45 52 5f 46 4f 43 55 53 20 3a 20 TRIGGER_FOCUS : 0001b6f0: 54 52 49 47 47 45 52 5f 48 4f 56 45 52 5d 20 3d TRIGGER_HOVER] = 0001b700: 20 74 72 75 65 5c 6e 20 20 20 20 20 20 20 20 20 true\n 0001b710: 20 63 6f 6e 74 65 78 74 2e 5f 65 6e 74 65 72 28 context._enter( 0001b720: 29 5c 6e 20 20 20 20 20 20 20 20 7d 29 5c 6e 20 )\n })\n 0001b730: 20 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 EventHand 0001b740: 6c 65 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 ler.on(this._ele 0001b750: 6d 65 6e 74 2c 20 65 76 65 6e 74 4f 75 74 2c 20 ment, eventOut, 0001b760: 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 73 65 6c this._config.sel 0001b770: 65 63 74 6f 72 2c 20 65 76 65 6e 74 20 3d 3e 20 ector, event => 0001b780: 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 63 6f 6e {\n con 0001b790: 73 74 20 63 6f 6e 74 65 78 74 20 3d 20 74 68 69 st context = thi 0001b7a0: 73 2e 5f 69 6e 69 74 69 61 6c 69 7a 65 4f 6e 44 s._initializeOnD 0001b7b0: 65 6c 65 67 61 74 65 64 54 61 72 67 65 74 28 65 elegatedTarget(e 0001b7c0: 76 65 6e 74 29 5c 6e 20 20 20 20 20 20 20 20 20 vent)\n 0001b7d0: 20 63 6f 6e 74 65 78 74 2e 5f 61 63 74 69 76 65 context._active 0001b7e0: 54 72 69 67 67 65 72 5b 65 76 65 6e 74 2e 74 79 Trigger[event.ty 0001b7f0: 70 65 20 3d 3d 3d 20 27 66 6f 63 75 73 6f 75 74 pe === 'focusout 0001b800: 27 20 3f 20 54 52 49 47 47 45 52 5f 46 4f 43 55 ' ? TRIGGER_FOCU 0001b810: 53 20 3a 20 54 52 49 47 47 45 52 5f 48 4f 56 45 S : TRIGGER_HOVE 0001b820: 52 5d 20 3d 5c 6e 20 20 20 20 20 20 20 20 20 20 R] =\n 0001b830: 20 20 63 6f 6e 74 65 78 74 2e 5f 65 6c 65 6d 65 context._eleme 0001b840: 6e 74 2e 63 6f 6e 74 61 69 6e 73 28 65 76 65 6e nt.contains(even 0001b850: 74 2e 72 65 6c 61 74 65 64 54 61 72 67 65 74 29 t.relatedTarget) 0001b860: 5c 6e 5c 6e 20 20 20 20 20 20 20 20 20 20 63 6f \n\n co 0001b870: 6e 74 65 78 74 2e 5f 6c 65 61 76 65 28 29 5c 6e ntext._leave()\n 0001b880: 20 20 20 20 20 20 20 20 7d 29 5c 6e 20 20 20 20 })\n 0001b890: 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 }\n }\n\n 0001b8a0: 20 20 74 68 69 73 2e 5f 68 69 64 65 4d 6f 64 61 this._hideModa 0001b8b0: 6c 48 61 6e 64 6c 65 72 20 3d 20 28 29 20 3d 3e lHandler = () => 0001b8c0: 20 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 74 68 {\n if (th 0001b8d0: 69 73 2e 5f 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e is._element) {\n 0001b8e0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 68 69 64 this.hid 0001b8f0: 65 28 29 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 e()\n }\n 0001b900: 20 20 7d 5c 6e 5c 6e 20 20 20 20 45 76 65 6e 74 }\n\n Event 0001b910: 48 61 6e 64 6c 65 72 2e 6f 6e 28 74 68 69 73 2e Handler.on(this. 0001b920: 5f 65 6c 65 6d 65 6e 74 2e 63 6c 6f 73 65 73 74 _element.closest 0001b930: 28 53 45 4c 45 43 54 4f 52 5f 4d 4f 44 41 4c 29 (SELECTOR_MODAL) 0001b940: 2c 20 45 56 45 4e 54 5f 4d 4f 44 41 4c 5f 48 49 , EVENT_MODAL_HI 0001b950: 44 45 2c 20 74 68 69 73 2e 5f 68 69 64 65 4d 6f DE, this._hideMo 0001b960: 64 61 6c 48 61 6e 64 6c 65 72 29 5c 6e 20 20 7d dalHandler)\n } 0001b970: 5c 6e 5c 6e 20 20 5f 66 69 78 54 69 74 6c 65 28 \n\n _fixTitle( 0001b980: 29 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 74 ) {\n const t 0001b990: 69 74 6c 65 20 3d 20 74 68 69 73 2e 5f 65 6c 65 itle = this._ele 0001b9a0: 6d 65 6e 74 2e 67 65 74 41 74 74 72 69 62 75 74 ment.getAttribut 0001b9b0: 65 28 27 74 69 74 6c 65 27 29 5c 6e 5c 6e 20 20 e('title')\n\n 0001b9c0: 20 20 69 66 20 28 21 74 69 74 6c 65 29 20 7b 5c if (!title) {\ 0001b9d0: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 n return\n 0001b9e0: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 }\n\n if ( 0001b9f0: 21 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 67 !this._element.g 0001ba00: 65 74 41 74 74 72 69 62 75 74 65 28 27 61 72 69 etAttribute('ari 0001ba10: 61 2d 6c 61 62 65 6c 27 29 20 26 26 20 21 74 68 a-label') && !th 0001ba20: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 74 65 78 74 is._element.text 0001ba30: 43 6f 6e 74 65 6e 74 2e 74 72 69 6d 28 29 29 20 Content.trim()) 0001ba40: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 65 {\n this._e 0001ba50: 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 lement.setAttrib 0001ba60: 75 74 65 28 27 61 72 69 61 2d 6c 61 62 65 6c 27 ute('aria-label' 0001ba70: 2c 20 74 69 74 6c 65 29 5c 6e 20 20 20 20 7d 5c , title)\n }\ 0001ba80: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 n\n this._ele 0001ba90: 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 75 74 ment.setAttribut 0001baa0: 65 28 27 64 61 74 61 2d 62 73 2d 6f 72 69 67 69 e('data-bs-origi 0001bab0: 6e 61 6c 2d 74 69 74 6c 65 27 2c 20 74 69 74 6c nal-title', titl 0001bac0: 65 29 20 2f 2f 20 44 4f 20 4e 4f 54 20 55 53 45 e) // DO NOT USE 0001bad0: 20 49 54 2e 20 49 73 20 6f 6e 6c 79 20 66 6f 72 IT. Is only for 0001bae0: 20 62 61 63 6b 77 61 72 64 73 20 63 6f 6d 70 61 backwards compa 0001baf0: 74 69 62 69 6c 69 74 79 5c 6e 20 20 20 20 74 68 tibility\n th 0001bb00: 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 72 65 6d 6f is._element.remo 0001bb10: 76 65 41 74 74 72 69 62 75 74 65 28 27 74 69 74 veAttribute('tit 0001bb20: 6c 65 27 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f le')\n }\n\n _ 0001bb30: 65 6e 74 65 72 28 29 20 7b 5c 6e 20 20 20 20 69 enter() {\n i 0001bb40: 66 20 28 74 68 69 73 2e 5f 69 73 53 68 6f 77 6e f (this._isShown 0001bb50: 28 29 20 7c 7c 20 74 68 69 73 2e 5f 69 73 48 6f () || this._isHo 0001bb60: 76 65 72 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 vered) {\n 0001bb70: 74 68 69 73 2e 5f 69 73 48 6f 76 65 72 65 64 20 this._isHovered 0001bb80: 3d 20 74 72 75 65 5c 6e 20 20 20 20 20 20 72 65 = true\n re 0001bb90: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 0001bba0: 20 20 20 74 68 69 73 2e 5f 69 73 48 6f 76 65 72 this._isHover 0001bbb0: 65 64 20 3d 20 74 72 75 65 5c 6e 5c 6e 20 20 20 ed = true\n\n 0001bbc0: 20 74 68 69 73 2e 5f 73 65 74 54 69 6d 65 6f 75 this._setTimeou 0001bbd0: 74 28 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 t(() => {\n 0001bbe0: 20 69 66 20 28 74 68 69 73 2e 5f 69 73 48 6f 76 if (this._isHov 0001bbf0: 65 72 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 20 ered) {\n 0001bc00: 20 74 68 69 73 2e 73 68 6f 77 28 29 5c 6e 20 20 this.show()\n 0001bc10: 20 20 20 20 7d 5c 6e 20 20 20 20 7d 2c 20 74 68 }\n }, th 0001bc20: 69 73 2e 5f 63 6f 6e 66 69 67 2e 64 65 6c 61 79 is._config.delay 0001bc30: 2e 73 68 6f 77 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 .show)\n }\n\n 0001bc40: 20 5f 6c 65 61 76 65 28 29 20 7b 5c 6e 20 20 20 _leave() {\n 0001bc50: 20 69 66 20 28 74 68 69 73 2e 5f 69 73 57 69 74 if (this._isWit 0001bc60: 68 41 63 74 69 76 65 54 72 69 67 67 65 72 28 29 hActiveTrigger() 0001bc70: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 ) {\n retur 0001bc80: 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 n\n }\n\n 0001bc90: 74 68 69 73 2e 5f 69 73 48 6f 76 65 72 65 64 20 this._isHovered 0001bca0: 3d 20 66 61 6c 73 65 5c 6e 5c 6e 20 20 20 20 74 = false\n\n t 0001bcb0: 68 69 73 2e 5f 73 65 74 54 69 6d 65 6f 75 74 28 his._setTimeout( 0001bcc0: 28 29 20 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 69 () => {\n i 0001bcd0: 66 20 28 21 74 68 69 73 2e 5f 69 73 48 6f 76 65 f (!this._isHove 0001bce0: 72 65 64 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 red) {\n 0001bcf0: 74 68 69 73 2e 68 69 64 65 28 29 5c 6e 20 20 20 this.hide()\n 0001bd00: 20 20 20 7d 5c 6e 20 20 20 20 7d 2c 20 74 68 69 }\n }, thi 0001bd10: 73 2e 5f 63 6f 6e 66 69 67 2e 64 65 6c 61 79 2e s._config.delay. 0001bd20: 68 69 64 65 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 hide)\n }\n\n 0001bd30: 5f 73 65 74 54 69 6d 65 6f 75 74 28 68 61 6e 64 _setTimeout(hand 0001bd40: 6c 65 72 2c 20 74 69 6d 65 6f 75 74 29 20 7b 5c ler, timeout) {\ 0001bd50: 6e 20 20 20 20 63 6c 65 61 72 54 69 6d 65 6f 75 n clearTimeou 0001bd60: 74 28 74 68 69 73 2e 5f 74 69 6d 65 6f 75 74 29 t(this._timeout) 0001bd70: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 74 69 6d 65 \n this._time 0001bd80: 6f 75 74 20 3d 20 73 65 74 54 69 6d 65 6f 75 74 out = setTimeout 0001bd90: 28 68 61 6e 64 6c 65 72 2c 20 74 69 6d 65 6f 75 (handler, timeou 0001bda0: 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 69 73 t)\n }\n\n _is 0001bdb0: 57 69 74 68 41 63 74 69 76 65 54 72 69 67 67 65 WithActiveTrigge 0001bdc0: 72 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 r() {\n retur 0001bdd0: 6e 20 4f 62 6a 65 63 74 2e 76 61 6c 75 65 73 28 n Object.values( 0001bde0: 74 68 69 73 2e 5f 61 63 74 69 76 65 54 72 69 67 this._activeTrig 0001bdf0: 67 65 72 29 2e 69 6e 63 6c 75 64 65 73 28 74 72 ger).includes(tr 0001be00: 75 65 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 67 ue)\n }\n\n _g 0001be10: 65 74 43 6f 6e 66 69 67 28 63 6f 6e 66 69 67 29 etConfig(config) 0001be20: 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 64 61 {\n const da 0001be30: 74 61 41 74 74 72 69 62 75 74 65 73 20 3d 20 4d taAttributes = M 0001be40: 61 6e 69 70 75 6c 61 74 6f 72 2e 67 65 74 44 61 anipulator.getDa 0001be50: 74 61 41 74 74 72 69 62 75 74 65 73 28 74 68 69 taAttributes(thi 0001be60: 73 2e 5f 65 6c 65 6d 65 6e 74 29 5c 6e 5c 6e 20 s._element)\n\n 0001be70: 20 20 20 66 6f 72 20 28 63 6f 6e 73 74 20 64 61 for (const da 0001be80: 74 61 41 74 74 72 69 62 75 74 65 20 6f 66 20 4f taAttribute of O 0001be90: 62 6a 65 63 74 2e 6b 65 79 73 28 64 61 74 61 41 bject.keys(dataA 0001bea0: 74 74 72 69 62 75 74 65 73 29 29 20 7b 5c 6e 20 ttributes)) {\n 0001beb0: 20 20 20 20 20 69 66 20 28 44 49 53 41 4c 4c 4f if (DISALLO 0001bec0: 57 45 44 5f 41 54 54 52 49 42 55 54 45 53 2e 68 WED_ATTRIBUTES.h 0001bed0: 61 73 28 64 61 74 61 41 74 74 72 69 62 75 74 65 as(dataAttribute 0001bee0: 29 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 64 65 )) {\n de 0001bef0: 6c 65 74 65 20 64 61 74 61 41 74 74 72 69 62 75 lete dataAttribu 0001bf00: 74 65 73 5b 64 61 74 61 41 74 74 72 69 62 75 74 tes[dataAttribut 0001bf10: 65 5d 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 e]\n }\n 0001bf20: 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 66 69 67 }\n\n config 0001bf30: 20 3d 20 7b 5c 6e 20 20 20 20 20 20 2e 2e 2e 64 = {\n ...d 0001bf40: 61 74 61 41 74 74 72 69 62 75 74 65 73 2c 5c 6e ataAttributes,\n 0001bf50: 20 20 20 20 20 20 2e 2e 2e 28 74 79 70 65 6f 66 ...(typeof 0001bf60: 20 63 6f 6e 66 69 67 20 3d 3d 3d 20 27 6f 62 6a config === 'obj 0001bf70: 65 63 74 27 20 26 26 20 63 6f 6e 66 69 67 20 3f ect' && config ? 0001bf80: 20 63 6f 6e 66 69 67 20 3a 20 7b 7d 29 5c 6e 20 config : {})\n 0001bf90: 20 20 20 7d 5c 6e 20 20 20 20 63 6f 6e 66 69 67 }\n config 0001bfa0: 20 3d 20 74 68 69 73 2e 5f 6d 65 72 67 65 43 6f = this._mergeCo 0001bfb0: 6e 66 69 67 4f 62 6a 28 63 6f 6e 66 69 67 29 5c nfigObj(config)\ 0001bfc0: 6e 20 20 20 20 63 6f 6e 66 69 67 20 3d 20 74 68 n config = th 0001bfd0: 69 73 2e 5f 63 6f 6e 66 69 67 41 66 74 65 72 4d is._configAfterM 0001bfe0: 65 72 67 65 28 63 6f 6e 66 69 67 29 5c 6e 20 20 erge(config)\n 0001bff0: 20 20 74 68 69 73 2e 5f 74 79 70 65 43 68 65 63 this._typeChec 0001c000: 6b 43 6f 6e 66 69 67 28 63 6f 6e 66 69 67 29 5c kConfig(config)\ 0001c010: 6e 20 20 20 20 72 65 74 75 72 6e 20 63 6f 6e 66 n return conf 0001c020: 69 67 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 6f ig\n }\n\n _co 0001c030: 6e 66 69 67 41 66 74 65 72 4d 65 72 67 65 28 63 nfigAfterMerge(c 0001c040: 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 63 6f onfig) {\n co 0001c050: 6e 66 69 67 2e 63 6f 6e 74 61 69 6e 65 72 20 3d nfig.container = 0001c060: 20 63 6f 6e 66 69 67 2e 63 6f 6e 74 61 69 6e 65 config.containe 0001c070: 72 20 3d 3d 3d 20 66 61 6c 73 65 20 3f 20 64 6f r === false ? do 0001c080: 63 75 6d 65 6e 74 2e 62 6f 64 79 20 3a 20 67 65 cument.body : ge 0001c090: 74 45 6c 65 6d 65 6e 74 28 63 6f 6e 66 69 67 2e tElement(config. 0001c0a0: 63 6f 6e 74 61 69 6e 65 72 29 5c 6e 5c 6e 20 20 container)\n\n 0001c0b0: 20 20 69 66 20 28 74 79 70 65 6f 66 20 63 6f 6e if (typeof con 0001c0c0: 66 69 67 2e 64 65 6c 61 79 20 3d 3d 3d 20 27 6e fig.delay === 'n 0001c0d0: 75 6d 62 65 72 27 29 20 7b 5c 6e 20 20 20 20 20 umber') {\n 0001c0e0: 20 63 6f 6e 66 69 67 2e 64 65 6c 61 79 20 3d 20 config.delay = 0001c0f0: 7b 5c 6e 20 20 20 20 20 20 20 20 73 68 6f 77 3a {\n show: 0001c100: 20 63 6f 6e 66 69 67 2e 64 65 6c 61 79 2c 5c 6e config.delay,\n 0001c110: 20 20 20 20 20 20 20 20 68 69 64 65 3a 20 63 6f hide: co 0001c120: 6e 66 69 67 2e 64 65 6c 61 79 5c 6e 20 20 20 20 nfig.delay\n 0001c130: 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 }\n }\n\n 0001c140: 20 20 69 66 20 28 74 79 70 65 6f 66 20 63 6f 6e if (typeof con 0001c150: 66 69 67 2e 74 69 74 6c 65 20 3d 3d 3d 20 27 6e fig.title === 'n 0001c160: 75 6d 62 65 72 27 29 20 7b 5c 6e 20 20 20 20 20 umber') {\n 0001c170: 20 63 6f 6e 66 69 67 2e 74 69 74 6c 65 20 3d 20 config.title = 0001c180: 63 6f 6e 66 69 67 2e 74 69 74 6c 65 2e 74 6f 53 config.title.toS 0001c190: 74 72 69 6e 67 28 29 5c 6e 20 20 20 20 7d 5c 6e tring()\n }\n 0001c1a0: 5c 6e 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 \n if (typeof 0001c1b0: 20 63 6f 6e 66 69 67 2e 63 6f 6e 74 65 6e 74 20 config.content 0001c1c0: 3d 3d 3d 20 27 6e 75 6d 62 65 72 27 29 20 7b 5c === 'number') {\ 0001c1d0: 6e 20 20 20 20 20 20 63 6f 6e 66 69 67 2e 63 6f n config.co 0001c1e0: 6e 74 65 6e 74 20 3d 20 63 6f 6e 66 69 67 2e 63 ntent = config.c 0001c1f0: 6f 6e 74 65 6e 74 2e 74 6f 53 74 72 69 6e 67 28 ontent.toString( 0001c200: 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 )\n }\n\n 0001c210: 72 65 74 75 72 6e 20 63 6f 6e 66 69 67 5c 6e 20 return config\n 0001c220: 20 7d 5c 6e 5c 6e 20 20 5f 67 65 74 44 65 6c 65 }\n\n _getDele 0001c230: 67 61 74 65 43 6f 6e 66 69 67 28 29 20 7b 5c 6e gateConfig() {\n 0001c240: 20 20 20 20 63 6f 6e 73 74 20 63 6f 6e 66 69 67 const config 0001c250: 20 3d 20 7b 7d 5c 6e 5c 6e 20 20 20 20 66 6f 72 = {}\n\n for 0001c260: 20 28 63 6f 6e 73 74 20 5b 6b 65 79 2c 20 76 61 (const [key, va 0001c270: 6c 75 65 5d 20 6f 66 20 4f 62 6a 65 63 74 2e 65 lue] of Object.e 0001c280: 6e 74 72 69 65 73 28 74 68 69 73 2e 5f 63 6f 6e ntries(this._con 0001c290: 66 69 67 29 29 20 7b 5c 6e 20 20 20 20 20 20 69 fig)) {\n i 0001c2a0: 66 20 28 74 68 69 73 2e 63 6f 6e 73 74 72 75 63 f (this.construc 0001c2b0: 74 6f 72 2e 44 65 66 61 75 6c 74 5b 6b 65 79 5d tor.Default[key] 0001c2c0: 20 21 3d 3d 20 76 61 6c 75 65 29 20 7b 5c 6e 20 !== value) {\n 0001c2d0: 20 20 20 20 20 20 20 63 6f 6e 66 69 67 5b 6b 65 config[ke 0001c2e0: 79 5d 20 3d 20 76 61 6c 75 65 5c 6e 20 20 20 20 y] = value\n 0001c2f0: 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 }\n }\n\n 0001c300: 20 20 63 6f 6e 66 69 67 2e 73 65 6c 65 63 74 6f config.selecto 0001c310: 72 20 3d 20 66 61 6c 73 65 5c 6e 20 20 20 20 63 r = false\n c 0001c320: 6f 6e 66 69 67 2e 74 72 69 67 67 65 72 20 3d 20 onfig.trigger = 0001c330: 27 6d 61 6e 75 61 6c 27 5c 6e 5c 6e 20 20 20 20 'manual'\n\n 0001c340: 2f 2f 20 49 6e 20 74 68 65 20 66 75 74 75 72 65 // In the future 0001c350: 20 63 61 6e 20 62 65 20 72 65 70 6c 61 63 65 64 can be replaced 0001c360: 20 77 69 74 68 3a 5c 6e 20 20 20 20 2f 2f 20 63 with:\n // c 0001c370: 6f 6e 73 74 20 6b 65 79 73 57 69 74 68 44 69 66 onst keysWithDif 0001c380: 66 65 72 65 6e 74 56 61 6c 75 65 73 20 3d 20 4f ferentValues = O 0001c390: 62 6a 65 63 74 2e 65 6e 74 72 69 65 73 28 74 68 bject.entries(th 0001c3a0: 69 73 2e 5f 63 6f 6e 66 69 67 29 2e 66 69 6c 74 is._config).filt 0001c3b0: 65 72 28 65 6e 74 72 79 20 3d 3e 20 74 68 69 73 er(entry => this 0001c3c0: 2e 63 6f 6e 73 74 72 75 63 74 6f 72 2e 44 65 66 .constructor.Def 0001c3d0: 61 75 6c 74 5b 65 6e 74 72 79 5b 30 5d 5d 20 21 ault[entry[0]] ! 0001c3e0: 3d 3d 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 5b == this._config[ 0001c3f0: 65 6e 74 72 79 5b 30 5d 5d 29 5c 6e 20 20 20 20 entry[0]])\n 0001c400: 2f 2f 20 60 4f 62 6a 65 63 74 2e 66 72 6f 6d 45 // `Object.fromE 0001c410: 6e 74 72 69 65 73 28 6b 65 79 73 57 69 74 68 44 ntries(keysWithD 0001c420: 69 66 66 65 72 65 6e 74 56 61 6c 75 65 73 29 60 ifferentValues)` 0001c430: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 63 6f 6e \n return con 0001c440: 66 69 67 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 64 fig\n }\n\n _d 0001c450: 69 73 70 6f 73 65 50 6f 70 70 65 72 28 29 20 7b isposePopper() { 0001c460: 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f \n if (this._ 0001c470: 70 6f 70 70 65 72 29 20 7b 5c 6e 20 20 20 20 20 popper) {\n 0001c480: 20 74 68 69 73 2e 5f 70 6f 70 70 65 72 2e 64 65 this._popper.de 0001c490: 73 74 72 6f 79 28 29 5c 6e 20 20 20 20 20 20 74 stroy()\n t 0001c4a0: 68 69 73 2e 5f 70 6f 70 70 65 72 20 3d 20 6e 75 his._popper = nu 0001c4b0: 6c 6c 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 ll\n }\n\n 0001c4c0: 20 69 66 20 28 74 68 69 73 2e 74 69 70 29 20 7b if (this.tip) { 0001c4d0: 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 74 69 70 \n this.tip 0001c4e0: 2e 72 65 6d 6f 76 65 28 29 5c 6e 20 20 20 20 20 .remove()\n 0001c4f0: 20 74 68 69 73 2e 74 69 70 20 3d 20 6e 75 6c 6c this.tip = null 0001c500: 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e \n }\n }\n\n 0001c510: 20 20 2f 2f 20 53 74 61 74 69 63 5c 6e 20 20 73 // Static\n s 0001c520: 74 61 74 69 63 20 6a 51 75 65 72 79 49 6e 74 65 tatic jQueryInte 0001c530: 72 66 61 63 65 28 63 6f 6e 66 69 67 29 20 7b 5c rface(config) {\ 0001c540: 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 n return this 0001c550: 2e 65 61 63 68 28 66 75 6e 63 74 69 6f 6e 20 28 .each(function ( 0001c560: 29 20 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 ) {\n const 0001c570: 20 64 61 74 61 20 3d 20 54 6f 6f 6c 74 69 70 2e data = Tooltip. 0001c580: 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 getOrCreateInsta 0001c590: 6e 63 65 28 74 68 69 73 2c 20 63 6f 6e 66 69 67 nce(this, config 0001c5a0: 29 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 74 )\n\n if (t 0001c5b0: 79 70 65 6f 66 20 63 6f 6e 66 69 67 20 21 3d 3d ypeof config !== 0001c5c0: 20 27 73 74 72 69 6e 67 27 29 20 7b 5c 6e 20 20 'string') {\n 0001c5d0: 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 return\n 0001c5e0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 }\n\n i 0001c5f0: 66 20 28 74 79 70 65 6f 66 20 64 61 74 61 5b 63 f (typeof data[c 0001c600: 6f 6e 66 69 67 5d 20 3d 3d 3d 20 27 75 6e 64 65 onfig] === 'unde 0001c610: 66 69 6e 65 64 27 29 20 7b 5c 6e 20 20 20 20 20 fined') {\n 0001c620: 20 20 20 74 68 72 6f 77 20 6e 65 77 20 54 79 70 throw new Typ 0001c630: 65 45 72 72 6f 72 28 60 4e 6f 20 6d 65 74 68 6f eError(`No metho 0001c640: 64 20 6e 61 6d 65 64 20 5c 22 24 7b 63 6f 6e 66 d named \"${conf 0001c650: 69 67 7d 5c 22 60 29 5c 6e 20 20 20 20 20 20 7d ig}\"`)\n } 0001c660: 5c 6e 5c 6e 20 20 20 20 20 20 64 61 74 61 5b 63 \n\n data[c 0001c670: 6f 6e 66 69 67 5d 28 29 5c 6e 20 20 20 20 7d 29 onfig]()\n }) 0001c680: 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c \n }\n}\n\n/**\ 0001c690: 6e 20 2a 20 6a 51 75 65 72 79 5c 6e 20 2a 2f 5c n * jQuery\n */\ 0001c6a0: 6e 5c 6e 64 65 66 69 6e 65 4a 51 75 65 72 79 50 n\ndefineJQueryP 0001c6b0: 6c 75 67 69 6e 28 54 6f 6f 6c 74 69 70 29 5c 6e lugin(Tooltip)\n 0001c6c0: 5c 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 \nexport default 0001c6d0: 20 54 6f 6f 6c 74 69 70 5c 6e 22 2c 22 2f 2a 2a Tooltip\n","/** 0001c6e0: 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d \n * ----------- 0001c6f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c700: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c710: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c720: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c ---------------\ 0001c730: 6e 20 2a 20 42 6f 6f 74 73 74 72 61 70 20 70 6f n * Bootstrap po 0001c740: 70 6f 76 65 72 2e 6a 73 5c 6e 20 2a 20 4c 69 63 pover.js\n * Lic 0001c750: 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 20 ensed under MIT 0001c760: 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e (https://github. 0001c770: 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 72 com/twbs/bootstr 0001c780: 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 43 ap/blob/main/LIC 0001c790: 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d ENSE)\n * ------ 0001c7a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c7b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c7c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c7d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001c7e0: 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d 70 ----\n */\n\nimp 0001c7f0: 6f 72 74 20 54 6f 6f 6c 74 69 70 20 66 72 6f 6d ort Tooltip from 0001c800: 20 27 2e 2f 74 6f 6f 6c 74 69 70 2e 6a 73 27 5c './tooltip.js'\ 0001c810: 6e 69 6d 70 6f 72 74 20 7b 20 64 65 66 69 6e 65 nimport { define 0001c820: 4a 51 75 65 72 79 50 6c 75 67 69 6e 20 7d 20 66 JQueryPlugin } f 0001c830: 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 69 6e 64 65 rom './util/inde 0001c840: 78 2e 6a 73 27 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a x.js'\n\n/**\n * 0001c850: 20 43 6f 6e 73 74 61 6e 74 73 5c 6e 20 2a 2f 5c Constants\n */\ 0001c860: 6e 5c 6e 63 6f 6e 73 74 20 4e 41 4d 45 20 3d 20 n\nconst NAME = 0001c870: 27 70 6f 70 6f 76 65 72 27 5c 6e 5c 6e 63 6f 6e 'popover'\n\ncon 0001c880: 73 74 20 53 45 4c 45 43 54 4f 52 5f 54 49 54 4c st SELECTOR_TITL 0001c890: 45 20 3d 20 27 2e 70 6f 70 6f 76 65 72 2d 68 65 E = '.popover-he 0001c8a0: 61 64 65 72 27 5c 6e 63 6f 6e 73 74 20 53 45 4c ader'\nconst SEL 0001c8b0: 45 43 54 4f 52 5f 43 4f 4e 54 45 4e 54 20 3d 20 ECTOR_CONTENT = 0001c8c0: 27 2e 70 6f 70 6f 76 65 72 2d 62 6f 64 79 27 5c '.popover-body'\ 0001c8d0: 6e 5c 6e 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 n\nconst Default 0001c8e0: 20 3d 20 7b 5c 6e 20 20 2e 2e 2e 54 6f 6f 6c 74 = {\n ...Toolt 0001c8f0: 69 70 2e 44 65 66 61 75 6c 74 2c 5c 6e 20 20 63 ip.Default,\n c 0001c900: 6f 6e 74 65 6e 74 3a 20 27 27 2c 5c 6e 20 20 6f ontent: '',\n o 0001c910: 66 66 73 65 74 3a 20 5b 30 2c 20 38 5d 2c 5c 6e ffset: [0, 8],\n 0001c920: 20 20 70 6c 61 63 65 6d 65 6e 74 3a 20 27 72 69 placement: 'ri 0001c930: 67 68 74 27 2c 5c 6e 20 20 74 65 6d 70 6c 61 74 ght',\n templat 0001c940: 65 3a 20 27 3c 64 69 76 20 63 6c 61 73 73 3d 5c e: '<div class=\ 0001c950: 22 70 6f 70 6f 76 65 72 5c 22 20 72 6f 6c 65 3d "popover\" role= 0001c960: 5c 22 74 6f 6f 6c 74 69 70 5c 22 3e 27 20 2b 5c \"tooltip\">' +\ 0001c970: 6e 20 20 20 20 27 3c 64 69 76 20 63 6c 61 73 73 n '<div class 0001c980: 3d 5c 22 70 6f 70 6f 76 65 72 2d 61 72 72 6f 77 =\"popover-arrow 0001c990: 5c 22 3e 3c 2f 64 69 76 3e 27 20 2b 5c 6e 20 20 \"></div>' +\n 0001c9a0: 20 20 27 3c 68 33 20 63 6c 61 73 73 3d 5c 22 70 '<h3 class=\"p 0001c9b0: 6f 70 6f 76 65 72 2d 68 65 61 64 65 72 5c 22 3e opover-header\"> 0001c9c0: 3c 2f 68 33 3e 27 20 2b 5c 6e 20 20 20 20 27 3c </h3>' +\n '< 0001c9d0: 64 69 76 20 63 6c 61 73 73 3d 5c 22 70 6f 70 6f div class=\"popo 0001c9e0: 76 65 72 2d 62 6f 64 79 5c 22 3e 3c 2f 64 69 76 ver-body\"></div 0001c9f0: 3e 27 20 2b 5c 6e 20 20 20 20 27 3c 2f 64 69 76 >' +\n '</div 0001ca00: 3e 27 2c 5c 6e 20 20 74 72 69 67 67 65 72 3a 20 >',\n trigger: 0001ca10: 27 63 6c 69 63 6b 27 5c 6e 7d 5c 6e 5c 6e 63 6f 'click'\n}\n\nco 0001ca20: 6e 73 74 20 44 65 66 61 75 6c 74 54 79 70 65 20 nst DefaultType 0001ca30: 3d 20 7b 5c 6e 20 20 2e 2e 2e 54 6f 6f 6c 74 69 = {\n ...Toolti 0001ca40: 70 2e 44 65 66 61 75 6c 74 54 79 70 65 2c 5c 6e p.DefaultType,\n 0001ca50: 20 20 63 6f 6e 74 65 6e 74 3a 20 27 28 6e 75 6c content: '(nul 0001ca60: 6c 7c 73 74 72 69 6e 67 7c 65 6c 65 6d 65 6e 74 l|string|element 0001ca70: 7c 66 75 6e 63 74 69 6f 6e 29 27 5c 6e 7d 5c 6e |function)'\n}\n 0001ca80: 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 73 20 \n/**\n * Class 0001ca90: 64 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a 2f 5c definition\n */\ 0001caa0: 6e 5c 6e 63 6c 61 73 73 20 50 6f 70 6f 76 65 72 n\nclass Popover 0001cab0: 20 65 78 74 65 6e 64 73 20 54 6f 6f 6c 74 69 70 extends Tooltip 0001cac0: 20 7b 5c 6e 20 20 2f 2f 20 47 65 74 74 65 72 73 {\n // Getters 0001cad0: 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 20 44 \n static get D 0001cae0: 65 66 61 75 6c 74 28 29 20 7b 5c 6e 20 20 20 20 efault() {\n 0001caf0: 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 5c 6e return Default\n 0001cb00: 20 20 7d 5c 6e 5c 6e 20 20 73 74 61 74 69 63 20 }\n\n static 0001cb10: 67 65 74 20 44 65 66 61 75 6c 74 54 79 70 65 28 get DefaultType( 0001cb20: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 0001cb30: 44 65 66 61 75 6c 74 54 79 70 65 5c 6e 20 20 7d DefaultType\n } 0001cb40: 5c 6e 5c 6e 20 20 73 74 61 74 69 63 20 67 65 74 \n\n static get 0001cb50: 20 4e 41 4d 45 28 29 20 7b 5c 6e 20 20 20 20 72 NAME() {\n r 0001cb60: 65 74 75 72 6e 20 4e 41 4d 45 5c 6e 20 20 7d 5c eturn NAME\n }\ 0001cb70: 6e 5c 6e 20 20 2f 2f 20 4f 76 65 72 72 69 64 65 n\n // Override 0001cb80: 73 5c 6e 20 20 5f 69 73 57 69 74 68 43 6f 6e 74 s\n _isWithCont 0001cb90: 65 6e 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 ent() {\n ret 0001cba0: 75 72 6e 20 74 68 69 73 2e 5f 67 65 74 54 69 74 urn this._getTit 0001cbb0: 6c 65 28 29 20 7c 7c 20 74 68 69 73 2e 5f 67 65 le() || this._ge 0001cbc0: 74 43 6f 6e 74 65 6e 74 28 29 5c 6e 20 20 7d 5c tContent()\n }\ 0001cbd0: 6e 5c 6e 20 20 2f 2f 20 50 72 69 76 61 74 65 5c n\n // Private\ 0001cbe0: 6e 20 20 5f 67 65 74 43 6f 6e 74 65 6e 74 46 6f n _getContentFo 0001cbf0: 72 54 65 6d 70 6c 61 74 65 28 29 20 7b 5c 6e 20 rTemplate() {\n 0001cc00: 20 20 20 72 65 74 75 72 6e 20 7b 5c 6e 20 20 20 return {\n 0001cc10: 20 20 20 5b 53 45 4c 45 43 54 4f 52 5f 54 49 54 [SELECTOR_TIT 0001cc20: 4c 45 5d 3a 20 74 68 69 73 2e 5f 67 65 74 54 69 LE]: this._getTi 0001cc30: 74 6c 65 28 29 2c 5c 6e 20 20 20 20 20 20 5b 53 tle(),\n [S 0001cc40: 45 4c 45 43 54 4f 52 5f 43 4f 4e 54 45 4e 54 5d ELECTOR_CONTENT] 0001cc50: 3a 20 74 68 69 73 2e 5f 67 65 74 43 6f 6e 74 65 : this._getConte 0001cc60: 6e 74 28 29 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d nt()\n }\n } 0001cc70: 5c 6e 5c 6e 20 20 5f 67 65 74 43 6f 6e 74 65 6e \n\n _getConten 0001cc80: 74 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 t() {\n retur 0001cc90: 6e 20 74 68 69 73 2e 5f 72 65 73 6f 6c 76 65 50 n this._resolveP 0001cca0: 6f 73 73 69 62 6c 65 46 75 6e 63 74 69 6f 6e 28 ossibleFunction( 0001ccb0: 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 63 6f 6e this._config.con 0001ccc0: 74 65 6e 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 tent)\n }\n\n 0001ccd0: 2f 2f 20 53 74 61 74 69 63 5c 6e 20 20 73 74 61 // Static\n sta 0001cce0: 74 69 63 20 6a 51 75 65 72 79 49 6e 74 65 72 66 tic jQueryInterf 0001ccf0: 61 63 65 28 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 ace(config) {\n 0001cd00: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 65 return this.e 0001cd10: 61 63 68 28 66 75 6e 63 74 69 6f 6e 20 28 29 20 ach(function () 0001cd20: 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 64 {\n const d 0001cd30: 61 74 61 20 3d 20 50 6f 70 6f 76 65 72 2e 67 65 ata = Popover.ge 0001cd40: 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 6e 63 tOrCreateInstanc 0001cd50: 65 28 74 68 69 73 2c 20 63 6f 6e 66 69 67 29 5c e(this, config)\ 0001cd60: 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 74 79 70 n\n if (typ 0001cd70: 65 6f 66 20 63 6f 6e 66 69 67 20 21 3d 3d 20 27 eof config !== ' 0001cd80: 73 74 72 69 6e 67 27 29 20 7b 5c 6e 20 20 20 20 string') {\n 0001cd90: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 0001cda0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 }\n\n if 0001cdb0: 28 74 79 70 65 6f 66 20 64 61 74 61 5b 63 6f 6e (typeof data[con 0001cdc0: 66 69 67 5d 20 3d 3d 3d 20 27 75 6e 64 65 66 69 fig] === 'undefi 0001cdd0: 6e 65 64 27 29 20 7b 5c 6e 20 20 20 20 20 20 20 ned') {\n 0001cde0: 20 74 68 72 6f 77 20 6e 65 77 20 54 79 70 65 45 throw new TypeE 0001cdf0: 72 72 6f 72 28 60 4e 6f 20 6d 65 74 68 6f 64 20 rror(`No method 0001ce00: 6e 61 6d 65 64 20 5c 22 24 7b 63 6f 6e 66 69 67 named \"${config 0001ce10: 7d 5c 22 60 29 5c 6e 20 20 20 20 20 20 7d 5c 6e }\"`)\n }\n 0001ce20: 5c 6e 20 20 20 20 20 20 64 61 74 61 5b 63 6f 6e \n data[con 0001ce30: 66 69 67 5d 28 29 5c 6e 20 20 20 20 7d 29 5c 6e fig]()\n })\n 0001ce40: 20 20 7d 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 }\n}\n\n/**\n 0001ce50: 2a 20 6a 51 75 65 72 79 5c 6e 20 2a 2f 5c 6e 5c * jQuery\n */\n\ 0001ce60: 6e 64 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 ndefineJQueryPlu 0001ce70: 67 69 6e 28 50 6f 70 6f 76 65 72 29 5c 6e 5c 6e gin(Popover)\n\n 0001ce80: 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 50 export default P 0001ce90: 6f 70 6f 76 65 72 5c 6e 22 2c 22 2f 2a 2a 5c 6e opover\n","/**\n 0001cea0: 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d * ------------- 0001ceb0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cec0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001ced0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cee0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 -------------\n 0001cef0: 2a 20 42 6f 6f 74 73 74 72 61 70 20 73 63 72 6f * Bootstrap scro 0001cf00: 6c 6c 73 70 79 2e 6a 73 5c 6e 20 2a 20 4c 69 63 llspy.js\n * Lic 0001cf10: 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 20 ensed under MIT 0001cf20: 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e (https://github. 0001cf30: 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 72 com/twbs/bootstr 0001cf40: 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 43 ap/blob/main/LIC 0001cf50: 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d ENSE)\n * ------ 0001cf60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cf70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cf80: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cf90: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001cfa0: 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d 70 ----\n */\n\nimp 0001cfb0: 6f 72 74 20 42 61 73 65 43 6f 6d 70 6f 6e 65 6e ort BaseComponen 0001cfc0: 74 20 66 72 6f 6d 20 27 2e 2f 62 61 73 65 2d 63 t from './base-c 0001cfd0: 6f 6d 70 6f 6e 65 6e 74 2e 6a 73 27 5c 6e 69 6d omponent.js'\nim 0001cfe0: 70 6f 72 74 20 45 76 65 6e 74 48 61 6e 64 6c 65 port EventHandle 0001cff0: 72 20 66 72 6f 6d 20 27 2e 2f 64 6f 6d 2f 65 76 r from './dom/ev 0001d000: 65 6e 74 2d 68 61 6e 64 6c 65 72 2e 6a 73 27 5c ent-handler.js'\ 0001d010: 6e 69 6d 70 6f 72 74 20 53 65 6c 65 63 74 6f 72 nimport Selector 0001d020: 45 6e 67 69 6e 65 20 66 72 6f 6d 20 27 2e 2f 64 Engine from './d 0001d030: 6f 6d 2f 73 65 6c 65 63 74 6f 72 2d 65 6e 67 69 om/selector-engi 0001d040: 6e 65 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 7b ne.js'\nimport { 0001d050: 5c 6e 20 20 64 65 66 69 6e 65 4a 51 75 65 72 79 \n defineJQuery 0001d060: 50 6c 75 67 69 6e 2c 20 67 65 74 45 6c 65 6d 65 Plugin, getEleme 0001d070: 6e 74 2c 20 69 73 44 69 73 61 62 6c 65 64 2c 20 nt, isDisabled, 0001d080: 69 73 56 69 73 69 62 6c 65 5c 6e 7d 20 66 72 6f isVisible\n} fro 0001d090: 6d 20 27 2e 2f 75 74 69 6c 2f 69 6e 64 65 78 2e m './util/index. 0001d0a0: 6a 73 27 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 js'\n\n/**\n * C 0001d0b0: 6f 6e 73 74 61 6e 74 73 5c 6e 20 2a 2f 5c 6e 5c onstants\n */\n\ 0001d0c0: 6e 63 6f 6e 73 74 20 4e 41 4d 45 20 3d 20 27 73 nconst NAME = 's 0001d0d0: 63 72 6f 6c 6c 73 70 79 27 5c 6e 63 6f 6e 73 74 crollspy'\nconst 0001d0e0: 20 44 41 54 41 5f 4b 45 59 20 3d 20 27 62 73 2e DATA_KEY = 'bs. 0001d0f0: 73 63 72 6f 6c 6c 73 70 79 27 5c 6e 63 6f 6e 73 scrollspy'\ncons 0001d100: 74 20 45 56 45 4e 54 5f 4b 45 59 20 3d 20 60 2e t EVENT_KEY = `. 0001d110: 24 7b 44 41 54 41 5f 4b 45 59 7d 60 5c 6e 63 6f ${DATA_KEY}`\nco 0001d120: 6e 73 74 20 44 41 54 41 5f 41 50 49 5f 4b 45 59 nst DATA_API_KEY 0001d130: 20 3d 20 27 2e 64 61 74 61 2d 61 70 69 27 5c 6e = '.data-api'\n 0001d140: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 41 43 \nconst EVENT_AC 0001d150: 54 49 56 41 54 45 20 3d 20 60 61 63 74 69 76 61 TIVATE = `activa 0001d160: 74 65 24 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c te${EVENT_KEY}`\ 0001d170: 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 43 4c 49 nconst EVENT_CLI 0001d180: 43 4b 20 3d 20 60 63 6c 69 63 6b 24 7b 45 56 45 CK = `click${EVE 0001d190: 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 NT_KEY}`\nconst 0001d1a0: 45 56 45 4e 54 5f 4c 4f 41 44 5f 44 41 54 41 5f EVENT_LOAD_DATA_ 0001d1b0: 41 50 49 20 3d 20 60 6c 6f 61 64 24 7b 45 56 45 API = `load${EVE 0001d1c0: 4e 54 5f 4b 45 59 7d 24 7b 44 41 54 41 5f 41 50 NT_KEY}${DATA_AP 0001d1d0: 49 5f 4b 45 59 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 I_KEY}`\n\nconst 0001d1e0: 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 44 52 4f 50 CLASS_NAME_DROP 0001d1f0: 44 4f 57 4e 5f 49 54 45 4d 20 3d 20 27 64 72 6f DOWN_ITEM = 'dro 0001d200: 70 64 6f 77 6e 2d 69 74 65 6d 27 5c 6e 63 6f 6e pdown-item'\ncon 0001d210: 73 74 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 st CLASS_NAME_AC 0001d220: 54 49 56 45 20 3d 20 27 61 63 74 69 76 65 27 5c TIVE = 'active'\ 0001d230: 6e 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f n\nconst SELECTO 0001d240: 52 5f 44 41 54 41 5f 53 50 59 20 3d 20 27 5b 64 R_DATA_SPY = '[d 0001d250: 61 74 61 2d 62 73 2d 73 70 79 3d 5c 22 73 63 72 ata-bs-spy=\"scr 0001d260: 6f 6c 6c 5c 22 5d 27 5c 6e 63 6f 6e 73 74 20 53 oll\"]'\nconst S 0001d270: 45 4c 45 43 54 4f 52 5f 54 41 52 47 45 54 5f 4c ELECTOR_TARGET_L 0001d280: 49 4e 4b 53 20 3d 20 27 5b 68 72 65 66 5d 27 5c INKS = '[href]'\ 0001d290: 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f nconst SELECTOR_ 0001d2a0: 4e 41 56 5f 4c 49 53 54 5f 47 52 4f 55 50 20 3d NAV_LIST_GROUP = 0001d2b0: 20 27 2e 6e 61 76 2c 20 2e 6c 69 73 74 2d 67 72 '.nav, .list-gr 0001d2c0: 6f 75 70 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 oup'\nconst SELE 0001d2d0: 43 54 4f 52 5f 4e 41 56 5f 4c 49 4e 4b 53 20 3d CTOR_NAV_LINKS = 0001d2e0: 20 27 2e 6e 61 76 2d 6c 69 6e 6b 27 5c 6e 63 6f '.nav-link'\nco 0001d2f0: 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 4e 41 56 nst SELECTOR_NAV 0001d300: 5f 49 54 45 4d 53 20 3d 20 27 2e 6e 61 76 2d 69 _ITEMS = '.nav-i 0001d310: 74 65 6d 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 tem'\nconst SELE 0001d320: 43 54 4f 52 5f 4c 49 53 54 5f 49 54 45 4d 53 20 CTOR_LIST_ITEMS 0001d330: 3d 20 27 2e 6c 69 73 74 2d 67 72 6f 75 70 2d 69 = '.list-group-i 0001d340: 74 65 6d 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 tem'\nconst SELE 0001d350: 43 54 4f 52 5f 4c 49 4e 4b 5f 49 54 45 4d 53 20 CTOR_LINK_ITEMS 0001d360: 3d 20 60 24 7b 53 45 4c 45 43 54 4f 52 5f 4e 41 = `${SELECTOR_NA 0001d370: 56 5f 4c 49 4e 4b 53 7d 2c 20 24 7b 53 45 4c 45 V_LINKS}, ${SELE 0001d380: 43 54 4f 52 5f 4e 41 56 5f 49 54 45 4d 53 7d 20 CTOR_NAV_ITEMS} 0001d390: 3e 20 24 7b 53 45 4c 45 43 54 4f 52 5f 4e 41 56 > ${SELECTOR_NAV 0001d3a0: 5f 4c 49 4e 4b 53 7d 2c 20 24 7b 53 45 4c 45 43 _LINKS}, ${SELEC 0001d3b0: 54 4f 52 5f 4c 49 53 54 5f 49 54 45 4d 53 7d 60 TOR_LIST_ITEMS}` 0001d3c0: 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 \nconst SELECTOR 0001d3d0: 5f 44 52 4f 50 44 4f 57 4e 20 3d 20 27 2e 64 72 _DROPDOWN = '.dr 0001d3e0: 6f 70 64 6f 77 6e 27 5c 6e 63 6f 6e 73 74 20 53 opdown'\nconst S 0001d3f0: 45 4c 45 43 54 4f 52 5f 44 52 4f 50 44 4f 57 4e ELECTOR_DROPDOWN 0001d400: 5f 54 4f 47 47 4c 45 20 3d 20 27 2e 64 72 6f 70 _TOGGLE = '.drop 0001d410: 64 6f 77 6e 2d 74 6f 67 67 6c 65 27 5c 6e 5c 6e down-toggle'\n\n 0001d420: 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 20 3d 20 const Default = 0001d430: 7b 5c 6e 20 20 6f 66 66 73 65 74 3a 20 6e 75 6c {\n offset: nul 0001d440: 6c 2c 20 2f 2f 20 54 4f 44 4f 3a 20 76 36 20 40 l, // TODO: v6 @ 0001d450: 64 65 70 72 65 63 61 74 65 64 2c 20 6b 65 65 70 deprecated, keep 0001d460: 20 69 74 20 66 6f 72 20 62 61 63 6b 77 61 72 64 it for backward 0001d470: 73 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 s compatibility 0001d480: 72 65 61 73 6f 6e 73 5c 6e 20 20 72 6f 6f 74 4d reasons\n rootM 0001d490: 61 72 67 69 6e 3a 20 27 30 70 78 20 30 70 78 20 argin: '0px 0px 0001d4a0: 2d 32 35 25 27 2c 5c 6e 20 20 73 6d 6f 6f 74 68 -25%',\n smooth 0001d4b0: 53 63 72 6f 6c 6c 3a 20 66 61 6c 73 65 2c 5c 6e Scroll: false,\n 0001d4c0: 20 20 74 61 72 67 65 74 3a 20 6e 75 6c 6c 2c 5c target: null,\ 0001d4d0: 6e 20 20 74 68 72 65 73 68 6f 6c 64 3a 20 5b 30 n threshold: [0 0001d4e0: 2e 31 2c 20 30 2e 35 2c 20 31 5d 5c 6e 7d 5c 6e .1, 0.5, 1]\n}\n 0001d4f0: 5c 6e 63 6f 6e 73 74 20 44 65 66 61 75 6c 74 54 \nconst DefaultT 0001d500: 79 70 65 20 3d 20 7b 5c 6e 20 20 6f 66 66 73 65 ype = {\n offse 0001d510: 74 3a 20 27 28 6e 75 6d 62 65 72 7c 6e 75 6c 6c t: '(number|null 0001d520: 29 27 2c 20 2f 2f 20 54 4f 44 4f 20 76 36 20 40 )', // TODO v6 @ 0001d530: 64 65 70 72 65 63 61 74 65 64 2c 20 6b 65 65 70 deprecated, keep 0001d540: 20 69 74 20 66 6f 72 20 62 61 63 6b 77 61 72 64 it for backward 0001d550: 73 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 20 s compatibility 0001d560: 72 65 61 73 6f 6e 73 5c 6e 20 20 72 6f 6f 74 4d reasons\n rootM 0001d570: 61 72 67 69 6e 3a 20 27 73 74 72 69 6e 67 27 2c argin: 'string', 0001d580: 5c 6e 20 20 73 6d 6f 6f 74 68 53 63 72 6f 6c 6c \n smoothScroll 0001d590: 3a 20 27 62 6f 6f 6c 65 61 6e 27 2c 5c 6e 20 20 : 'boolean',\n 0001d5a0: 74 61 72 67 65 74 3a 20 27 65 6c 65 6d 65 6e 74 target: 'element 0001d5b0: 27 2c 5c 6e 20 20 74 68 72 65 73 68 6f 6c 64 3a ',\n threshold: 0001d5c0: 20 27 61 72 72 61 79 27 5c 6e 7d 5c 6e 5c 6e 2f 'array'\n}\n\n/ 0001d5d0: 2a 2a 5c 6e 20 2a 20 43 6c 61 73 73 20 64 65 66 **\n * Class def 0001d5e0: 69 6e 69 74 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e inition\n */\n\n 0001d5f0: 63 6c 61 73 73 20 53 63 72 6f 6c 6c 53 70 79 20 class ScrollSpy 0001d600: 65 78 74 65 6e 64 73 20 42 61 73 65 43 6f 6d 70 extends BaseComp 0001d610: 6f 6e 65 6e 74 20 7b 5c 6e 20 20 63 6f 6e 73 74 onent {\n const 0001d620: 72 75 63 74 6f 72 28 65 6c 65 6d 65 6e 74 2c 20 ructor(element, 0001d630: 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 73 config) {\n s 0001d640: 75 70 65 72 28 65 6c 65 6d 65 6e 74 2c 20 63 6f uper(element, co 0001d650: 6e 66 69 67 29 5c 6e 5c 6e 20 20 20 20 2f 2f 20 nfig)\n\n // 0001d660: 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 20 69 73 this._element is 0001d670: 20 74 68 65 20 6f 62 73 65 72 76 61 62 6c 65 73 the observables 0001d680: 43 6f 6e 74 61 69 6e 65 72 20 61 6e 64 20 63 6f Container and co 0001d690: 6e 66 69 67 2e 74 61 72 67 65 74 20 74 68 65 20 nfig.target the 0001d6a0: 6d 65 6e 75 20 6c 69 6e 6b 73 20 77 72 61 70 70 menu links wrapp 0001d6b0: 65 72 5c 6e 20 20 20 20 74 68 69 73 2e 5f 74 61 er\n this._ta 0001d6c0: 72 67 65 74 4c 69 6e 6b 73 20 3d 20 6e 65 77 20 rgetLinks = new 0001d6d0: 4d 61 70 28 29 5c 6e 20 20 20 20 74 68 69 73 2e Map()\n this. 0001d6e0: 5f 6f 62 73 65 72 76 61 62 6c 65 53 65 63 74 69 _observableSecti 0001d6f0: 6f 6e 73 20 3d 20 6e 65 77 20 4d 61 70 28 29 5c ons = new Map()\ 0001d700: 6e 20 20 20 20 74 68 69 73 2e 5f 72 6f 6f 74 45 n this._rootE 0001d710: 6c 65 6d 65 6e 74 20 3d 20 67 65 74 43 6f 6d 70 lement = getComp 0001d720: 75 74 65 64 53 74 79 6c 65 28 74 68 69 73 2e 5f utedStyle(this._ 0001d730: 65 6c 65 6d 65 6e 74 29 2e 6f 76 65 72 66 6c 6f element).overflo 0001d740: 77 59 20 3d 3d 3d 20 27 76 69 73 69 62 6c 65 27 wY === 'visible' 0001d750: 20 3f 20 6e 75 6c 6c 20 3a 20 74 68 69 73 2e 5f ? null : this._ 0001d760: 65 6c 65 6d 65 6e 74 5c 6e 20 20 20 20 74 68 69 element\n thi 0001d770: 73 2e 5f 61 63 74 69 76 65 54 61 72 67 65 74 20 s._activeTarget 0001d780: 3d 20 6e 75 6c 6c 5c 6e 20 20 20 20 74 68 69 73 = null\n this 0001d790: 2e 5f 6f 62 73 65 72 76 65 72 20 3d 20 6e 75 6c ._observer = nul 0001d7a0: 6c 5c 6e 20 20 20 20 74 68 69 73 2e 5f 70 72 65 l\n this._pre 0001d7b0: 76 69 6f 75 73 53 63 72 6f 6c 6c 44 61 74 61 20 viousScrollData 0001d7c0: 3d 20 7b 5c 6e 20 20 20 20 20 20 76 69 73 69 62 = {\n visib 0001d7d0: 6c 65 45 6e 74 72 79 54 6f 70 3a 20 30 2c 5c 6e leEntryTop: 0,\n 0001d7e0: 20 20 20 20 20 20 70 61 72 65 6e 74 53 63 72 6f parentScro 0001d7f0: 6c 6c 54 6f 70 3a 20 30 5c 6e 20 20 20 20 7d 5c llTop: 0\n }\ 0001d800: 6e 20 20 20 20 74 68 69 73 2e 72 65 66 72 65 73 n this.refres 0001d810: 68 28 29 20 2f 2f 20 69 6e 69 74 69 61 6c 69 7a h() // initializ 0001d820: 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 47 e\n }\n\n // G 0001d830: 65 74 74 65 72 73 5c 6e 20 20 73 74 61 74 69 63 etters\n static 0001d840: 20 67 65 74 20 44 65 66 61 75 6c 74 28 29 20 7b get Default() { 0001d850: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 44 65 66 \n return Def 0001d860: 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 ault\n }\n\n s 0001d870: 74 61 74 69 63 20 67 65 74 20 44 65 66 61 75 6c tatic get Defaul 0001d880: 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 20 20 72 tType() {\n r 0001d890: 65 74 75 72 6e 20 44 65 66 61 75 6c 74 54 79 70 eturn DefaultTyp 0001d8a0: 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 74 61 74 e\n }\n\n stat 0001d8b0: 69 63 20 67 65 74 20 4e 41 4d 45 28 29 20 7b 5c ic get NAME() {\ 0001d8c0: 6e 20 20 20 20 72 65 74 75 72 6e 20 4e 41 4d 45 n return NAME 0001d8d0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 75 \n }\n\n // Pu 0001d8e0: 62 6c 69 63 5c 6e 20 20 72 65 66 72 65 73 68 28 blic\n refresh( 0001d8f0: 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f 69 ) {\n this._i 0001d900: 6e 69 74 69 61 6c 69 7a 65 54 61 72 67 65 74 73 nitializeTargets 0001d910: 41 6e 64 4f 62 73 65 72 76 61 62 6c 65 73 28 29 AndObservables() 0001d920: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 6d 61 79 62 \n this._mayb 0001d930: 65 45 6e 61 62 6c 65 53 6d 6f 6f 74 68 53 63 72 eEnableSmoothScr 0001d940: 6f 6c 6c 28 29 5c 6e 5c 6e 20 20 20 20 69 66 20 oll()\n\n if 0001d950: 28 74 68 69 73 2e 5f 6f 62 73 65 72 76 65 72 29 (this._observer) 0001d960: 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f {\n this._ 0001d970: 6f 62 73 65 72 76 65 72 2e 64 69 73 63 6f 6e 6e observer.disconn 0001d980: 65 63 74 28 29 5c 6e 20 20 20 20 7d 20 65 6c 73 ect()\n } els 0001d990: 65 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e e {\n this. 0001d9a0: 5f 6f 62 73 65 72 76 65 72 20 3d 20 74 68 69 73 _observer = this 0001d9b0: 2e 5f 67 65 74 4e 65 77 4f 62 73 65 72 76 65 72 ._getNewObserver 0001d9c0: 28 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 ()\n }\n\n 0001d9d0: 20 66 6f 72 20 28 63 6f 6e 73 74 20 73 65 63 74 for (const sect 0001d9e0: 69 6f 6e 20 6f 66 20 74 68 69 73 2e 5f 6f 62 73 ion of this._obs 0001d9f0: 65 72 76 61 62 6c 65 53 65 63 74 69 6f 6e 73 2e ervableSections. 0001da00: 76 61 6c 75 65 73 28 29 29 20 7b 5c 6e 20 20 20 values()) {\n 0001da10: 20 20 20 74 68 69 73 2e 5f 6f 62 73 65 72 76 65 this._observe 0001da20: 72 2e 6f 62 73 65 72 76 65 28 73 65 63 74 69 6f r.observe(sectio 0001da30: 6e 29 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e n)\n }\n }\n 0001da40: 5c 6e 20 20 64 69 73 70 6f 73 65 28 29 20 7b 5c \n dispose() {\ 0001da50: 6e 20 20 20 20 74 68 69 73 2e 5f 6f 62 73 65 72 n this._obser 0001da60: 76 65 72 2e 64 69 73 63 6f 6e 6e 65 63 74 28 29 ver.disconnect() 0001da70: 5c 6e 20 20 20 20 73 75 70 65 72 2e 64 69 73 70 \n super.disp 0001da80: 6f 73 65 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 ose()\n }\n\n 0001da90: 2f 2f 20 50 72 69 76 61 74 65 5c 6e 20 20 5f 63 // Private\n _c 0001daa0: 6f 6e 66 69 67 41 66 74 65 72 4d 65 72 67 65 28 onfigAfterMerge( 0001dab0: 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 20 20 2f config) {\n / 0001dac0: 2f 20 54 4f 44 4f 3a 20 6f 6e 20 76 36 20 74 61 / TODO: on v6 ta 0001dad0: 72 67 65 74 20 73 68 6f 75 6c 64 20 62 65 20 67 rget should be g 0001dae0: 69 76 65 6e 20 65 78 70 6c 69 63 69 74 6c 79 20 iven explicitly 0001daf0: 26 20 72 65 6d 6f 76 65 20 74 68 65 20 7b 74 61 & remove the {ta 0001db00: 72 67 65 74 3a 20 27 73 73 2d 74 61 72 67 65 74 rget: 'ss-target 0001db10: 27 7d 20 63 61 73 65 5c 6e 20 20 20 20 63 6f 6e '} case\n con 0001db20: 66 69 67 2e 74 61 72 67 65 74 20 3d 20 67 65 74 fig.target = get 0001db30: 45 6c 65 6d 65 6e 74 28 63 6f 6e 66 69 67 2e 74 Element(config.t 0001db40: 61 72 67 65 74 29 20 7c 7c 20 64 6f 63 75 6d 65 arget) || docume 0001db50: 6e 74 2e 62 6f 64 79 5c 6e 5c 6e 20 20 20 20 2f nt.body\n\n / 0001db60: 2f 20 54 4f 44 4f 3a 20 76 36 20 4f 6e 6c 79 20 / TODO: v6 Only 0001db70: 66 6f 72 20 62 61 63 6b 77 61 72 64 73 20 63 6f for backwards co 0001db80: 6d 70 61 74 69 62 69 6c 69 74 79 20 72 65 61 73 mpatibility reas 0001db90: 6f 6e 73 2e 20 55 73 65 20 72 6f 6f 74 4d 61 72 ons. Use rootMar 0001dba0: 67 69 6e 20 6f 6e 6c 79 5c 6e 20 20 20 20 63 6f gin only\n co 0001dbb0: 6e 66 69 67 2e 72 6f 6f 74 4d 61 72 67 69 6e 20 nfig.rootMargin 0001dbc0: 3d 20 63 6f 6e 66 69 67 2e 6f 66 66 73 65 74 20 = config.offset 0001dbd0: 3f 20 60 24 7b 63 6f 6e 66 69 67 2e 6f 66 66 73 ? `${config.offs 0001dbe0: 65 74 7d 70 78 20 30 70 78 20 2d 33 30 25 60 20 et}px 0px -30%` 0001dbf0: 3a 20 63 6f 6e 66 69 67 2e 72 6f 6f 74 4d 61 72 : config.rootMar 0001dc00: 67 69 6e 5c 6e 5c 6e 20 20 20 20 69 66 20 28 74 gin\n\n if (t 0001dc10: 79 70 65 6f 66 20 63 6f 6e 66 69 67 2e 74 68 72 ypeof config.thr 0001dc20: 65 73 68 6f 6c 64 20 3d 3d 3d 20 27 73 74 72 69 eshold === 'stri 0001dc30: 6e 67 27 29 20 7b 5c 6e 20 20 20 20 20 20 63 6f ng') {\n co 0001dc40: 6e 66 69 67 2e 74 68 72 65 73 68 6f 6c 64 20 3d nfig.threshold = 0001dc50: 20 63 6f 6e 66 69 67 2e 74 68 72 65 73 68 6f 6c config.threshol 0001dc60: 64 2e 73 70 6c 69 74 28 27 2c 27 29 2e 6d 61 70 d.split(',').map 0001dc70: 28 76 61 6c 75 65 20 3d 3e 20 4e 75 6d 62 65 72 (value => Number 0001dc80: 2e 70 61 72 73 65 46 6c 6f 61 74 28 76 61 6c 75 .parseFloat(valu 0001dc90: 65 29 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 e))\n }\n\n 0001dca0: 20 20 72 65 74 75 72 6e 20 63 6f 6e 66 69 67 5c return config\ 0001dcb0: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 6d 61 79 62 65 n }\n\n _maybe 0001dcc0: 45 6e 61 62 6c 65 53 6d 6f 6f 74 68 53 63 72 6f EnableSmoothScro 0001dcd0: 6c 6c 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 ll() {\n if ( 0001dce0: 21 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 73 6d !this._config.sm 0001dcf0: 6f 6f 74 68 53 63 72 6f 6c 6c 29 20 7b 5c 6e 20 oothScroll) {\n 0001dd00: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 0001dd10: 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 75 6e 72 }\n\n // unr 0001dd20: 65 67 69 73 74 65 72 20 61 6e 79 20 70 72 65 76 egister any prev 0001dd30: 69 6f 75 73 20 6c 69 73 74 65 6e 65 72 73 5c 6e ious listeners\n 0001dd40: 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 EventHandler 0001dd50: 2e 6f 66 66 28 74 68 69 73 2e 5f 63 6f 6e 66 69 .off(this._confi 0001dd60: 67 2e 74 61 72 67 65 74 2c 20 45 56 45 4e 54 5f g.target, EVENT_ 0001dd70: 43 4c 49 43 4b 29 5c 6e 5c 6e 20 20 20 20 45 76 CLICK)\n\n Ev 0001dd80: 65 6e 74 48 61 6e 64 6c 65 72 2e 6f 6e 28 74 68 entHandler.on(th 0001dd90: 69 73 2e 5f 63 6f 6e 66 69 67 2e 74 61 72 67 65 is._config.targe 0001dda0: 74 2c 20 45 56 45 4e 54 5f 43 4c 49 43 4b 2c 20 t, EVENT_CLICK, 0001ddb0: 53 45 4c 45 43 54 4f 52 5f 54 41 52 47 45 54 5f SELECTOR_TARGET_ 0001ddc0: 4c 49 4e 4b 53 2c 20 65 76 65 6e 74 20 3d 3e 20 LINKS, event => 0001ddd0: 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 6f {\n const o 0001dde0: 62 73 65 72 76 61 62 6c 65 53 65 63 74 69 6f 6e bservableSection 0001ddf0: 20 3d 20 74 68 69 73 2e 5f 6f 62 73 65 72 76 61 = this._observa 0001de00: 62 6c 65 53 65 63 74 69 6f 6e 73 2e 67 65 74 28 bleSections.get( 0001de10: 65 76 65 6e 74 2e 74 61 72 67 65 74 2e 68 61 73 event.target.has 0001de20: 68 29 5c 6e 20 20 20 20 20 20 69 66 20 28 6f 62 h)\n if (ob 0001de30: 73 65 72 76 61 62 6c 65 53 65 63 74 69 6f 6e 29 servableSection) 0001de40: 20 7b 5c 6e 20 20 20 20 20 20 20 20 65 76 65 6e {\n even 0001de50: 74 2e 70 72 65 76 65 6e 74 44 65 66 61 75 6c 74 t.preventDefault 0001de60: 28 29 5c 6e 20 20 20 20 20 20 20 20 63 6f 6e 73 ()\n cons 0001de70: 74 20 72 6f 6f 74 20 3d 20 74 68 69 73 2e 5f 72 t root = this._r 0001de80: 6f 6f 74 45 6c 65 6d 65 6e 74 20 7c 7c 20 77 69 ootElement || wi 0001de90: 6e 64 6f 77 5c 6e 20 20 20 20 20 20 20 20 63 6f ndow\n co 0001dea0: 6e 73 74 20 68 65 69 67 68 74 20 3d 20 6f 62 73 nst height = obs 0001deb0: 65 72 76 61 62 6c 65 53 65 63 74 69 6f 6e 2e 6f ervableSection.o 0001dec0: 66 66 73 65 74 54 6f 70 20 2d 20 74 68 69 73 2e ffsetTop - this. 0001ded0: 5f 65 6c 65 6d 65 6e 74 2e 6f 66 66 73 65 74 54 _element.offsetT 0001dee0: 6f 70 5c 6e 20 20 20 20 20 20 20 20 69 66 20 28 op\n if ( 0001def0: 72 6f 6f 74 2e 73 63 72 6f 6c 6c 54 6f 29 20 7b root.scrollTo) { 0001df00: 5c 6e 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 \n root 0001df10: 2e 73 63 72 6f 6c 6c 54 6f 28 7b 20 74 6f 70 3a .scrollTo({ top: 0001df20: 20 68 65 69 67 68 74 2c 20 62 65 68 61 76 69 6f height, behavio 0001df30: 72 3a 20 27 73 6d 6f 6f 74 68 27 20 7d 29 5c 6e r: 'smooth' })\n 0001df40: 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e return 0001df50: 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 \n }\n\n 0001df60: 20 20 20 20 20 20 20 2f 2f 20 43 68 72 6f 6d 65 // Chrome 0001df70: 20 36 30 20 64 6f 65 73 6e 27 74 20 73 75 70 70 60 doesn't supp 0001df80: 6f 72 74 20 60 73 63 72 6f 6c 6c 54 6f 60 5c 6e ort `scrollTo`\n 0001df90: 20 20 20 20 20 20 20 20 72 6f 6f 74 2e 73 63 72 root.scr 0001dfa0: 6f 6c 6c 54 6f 70 20 3d 20 68 65 69 67 68 74 5c ollTop = height\ 0001dfb0: 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 29 n }\n }) 0001dfc0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 74 4e \n }\n\n _getN 0001dfd0: 65 77 4f 62 73 65 72 76 65 72 28 29 20 7b 5c 6e ewObserver() {\n 0001dfe0: 20 20 20 20 63 6f 6e 73 74 20 6f 70 74 69 6f 6e const option 0001dff0: 73 20 3d 20 7b 5c 6e 20 20 20 20 20 20 72 6f 6f s = {\n roo 0001e000: 74 3a 20 74 68 69 73 2e 5f 72 6f 6f 74 45 6c 65 t: this._rootEle 0001e010: 6d 65 6e 74 2c 5c 6e 20 20 20 20 20 20 74 68 72 ment,\n thr 0001e020: 65 73 68 6f 6c 64 3a 20 74 68 69 73 2e 5f 63 6f eshold: this._co 0001e030: 6e 66 69 67 2e 74 68 72 65 73 68 6f 6c 64 2c 5c nfig.threshold,\ 0001e040: 6e 20 20 20 20 20 20 72 6f 6f 74 4d 61 72 67 69 n rootMargi 0001e050: 6e 3a 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e n: this._config. 0001e060: 72 6f 6f 74 4d 61 72 67 69 6e 5c 6e 20 20 20 20 rootMargin\n 0001e070: 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 }\n\n return 0001e080: 6e 65 77 20 49 6e 74 65 72 73 65 63 74 69 6f 6e new Intersection 0001e090: 4f 62 73 65 72 76 65 72 28 65 6e 74 72 69 65 73 Observer(entries 0001e0a0: 20 3d 3e 20 74 68 69 73 2e 5f 6f 62 73 65 72 76 => this._observ 0001e0b0: 65 72 43 61 6c 6c 62 61 63 6b 28 65 6e 74 72 69 erCallback(entri 0001e0c0: 65 73 29 2c 20 6f 70 74 69 6f 6e 73 29 5c 6e 20 es), options)\n 0001e0d0: 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 54 68 65 20 6c }\n\n // The l 0001e0e0: 6f 67 69 63 20 6f 66 20 73 65 6c 65 63 74 69 6f ogic of selectio 0001e0f0: 6e 5c 6e 20 20 5f 6f 62 73 65 72 76 65 72 43 61 n\n _observerCa 0001e100: 6c 6c 62 61 63 6b 28 65 6e 74 72 69 65 73 29 20 llback(entries) 0001e110: 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 74 61 72 {\n const tar 0001e120: 67 65 74 45 6c 65 6d 65 6e 74 20 3d 20 65 6e 74 getElement = ent 0001e130: 72 79 20 3d 3e 20 74 68 69 73 2e 5f 74 61 72 67 ry => this._targ 0001e140: 65 74 4c 69 6e 6b 73 2e 67 65 74 28 60 23 24 7b etLinks.get(`#${ 0001e150: 65 6e 74 72 79 2e 74 61 72 67 65 74 2e 69 64 7d entry.target.id} 0001e160: 60 29 5c 6e 20 20 20 20 63 6f 6e 73 74 20 61 63 `)\n const ac 0001e170: 74 69 76 61 74 65 20 3d 20 65 6e 74 72 79 20 3d tivate = entry = 0001e180: 3e 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e > {\n this. 0001e190: 5f 70 72 65 76 69 6f 75 73 53 63 72 6f 6c 6c 44 _previousScrollD 0001e1a0: 61 74 61 2e 76 69 73 69 62 6c 65 45 6e 74 72 79 ata.visibleEntry 0001e1b0: 54 6f 70 20 3d 20 65 6e 74 72 79 2e 74 61 72 67 Top = entry.targ 0001e1c0: 65 74 2e 6f 66 66 73 65 74 54 6f 70 5c 6e 20 20 et.offsetTop\n 0001e1d0: 20 20 20 20 74 68 69 73 2e 5f 70 72 6f 63 65 73 this._proces 0001e1e0: 73 28 74 61 72 67 65 74 45 6c 65 6d 65 6e 74 28 s(targetElement( 0001e1f0: 65 6e 74 72 79 29 29 5c 6e 20 20 20 20 7d 5c 6e entry))\n }\n 0001e200: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 70 61 72 65 \n const pare 0001e210: 6e 74 53 63 72 6f 6c 6c 54 6f 70 20 3d 20 28 74 ntScrollTop = (t 0001e220: 68 69 73 2e 5f 72 6f 6f 74 45 6c 65 6d 65 6e 74 his._rootElement 0001e230: 20 7c 7c 20 64 6f 63 75 6d 65 6e 74 2e 64 6f 63 || document.doc 0001e240: 75 6d 65 6e 74 45 6c 65 6d 65 6e 74 29 2e 73 63 umentElement).sc 0001e250: 72 6f 6c 6c 54 6f 70 5c 6e 20 20 20 20 63 6f 6e rollTop\n con 0001e260: 73 74 20 75 73 65 72 53 63 72 6f 6c 6c 73 44 6f st userScrollsDo 0001e270: 77 6e 20 3d 20 70 61 72 65 6e 74 53 63 72 6f 6c wn = parentScrol 0001e280: 6c 54 6f 70 20 3e 3d 20 74 68 69 73 2e 5f 70 72 lTop >= this._pr 0001e290: 65 76 69 6f 75 73 53 63 72 6f 6c 6c 44 61 74 61 eviousScrollData 0001e2a0: 2e 70 61 72 65 6e 74 53 63 72 6f 6c 6c 54 6f 70 .parentScrollTop 0001e2b0: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 70 72 65 76 \n this._prev 0001e2c0: 69 6f 75 73 53 63 72 6f 6c 6c 44 61 74 61 2e 70 iousScrollData.p 0001e2d0: 61 72 65 6e 74 53 63 72 6f 6c 6c 54 6f 70 20 3d arentScrollTop = 0001e2e0: 20 70 61 72 65 6e 74 53 63 72 6f 6c 6c 54 6f 70 parentScrollTop 0001e2f0: 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 63 6f 6e \n\n for (con 0001e300: 73 74 20 65 6e 74 72 79 20 6f 66 20 65 6e 74 72 st entry of entr 0001e310: 69 65 73 29 20 7b 5c 6e 20 20 20 20 20 20 69 66 ies) {\n if 0001e320: 20 28 21 65 6e 74 72 79 2e 69 73 49 6e 74 65 72 (!entry.isInter 0001e330: 73 65 63 74 69 6e 67 29 20 7b 5c 6e 20 20 20 20 secting) {\n 0001e340: 20 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 65 this._active 0001e350: 54 61 72 67 65 74 20 3d 20 6e 75 6c 6c 5c 6e 20 Target = null\n 0001e360: 20 20 20 20 20 20 20 74 68 69 73 2e 5f 63 6c 65 this._cle 0001e370: 61 72 41 63 74 69 76 65 43 6c 61 73 73 28 74 61 arActiveClass(ta 0001e380: 72 67 65 74 45 6c 65 6d 65 6e 74 28 65 6e 74 72 rgetElement(entr 0001e390: 79 29 29 5c 6e 5c 6e 20 20 20 20 20 20 20 20 63 y))\n\n c 0001e3a0: 6f 6e 74 69 6e 75 65 5c 6e 20 20 20 20 20 20 7d ontinue\n } 0001e3b0: 5c 6e 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 \n\n const 0001e3c0: 65 6e 74 72 79 49 73 4c 6f 77 65 72 54 68 61 6e entryIsLowerThan 0001e3d0: 50 72 65 76 69 6f 75 73 20 3d 20 65 6e 74 72 79 Previous = entry 0001e3e0: 2e 74 61 72 67 65 74 2e 6f 66 66 73 65 74 54 6f .target.offsetTo 0001e3f0: 70 20 3e 3d 20 74 68 69 73 2e 5f 70 72 65 76 69 p >= this._previ 0001e400: 6f 75 73 53 63 72 6f 6c 6c 44 61 74 61 2e 76 69 ousScrollData.vi 0001e410: 73 69 62 6c 65 45 6e 74 72 79 54 6f 70 5c 6e 20 sibleEntryTop\n 0001e420: 20 20 20 20 20 2f 2f 20 69 66 20 77 65 20 61 72 // if we ar 0001e430: 65 20 73 63 72 6f 6c 6c 69 6e 67 20 64 6f 77 6e e scrolling down 0001e440: 2c 20 70 69 63 6b 20 74 68 65 20 62 69 67 67 65 , pick the bigge 0001e450: 72 20 6f 66 66 73 65 74 54 6f 70 5c 6e 20 20 20 r offsetTop\n 0001e460: 20 20 20 69 66 20 28 75 73 65 72 53 63 72 6f 6c if (userScrol 0001e470: 6c 73 44 6f 77 6e 20 26 26 20 65 6e 74 72 79 49 lsDown && entryI 0001e480: 73 4c 6f 77 65 72 54 68 61 6e 50 72 65 76 69 6f sLowerThanPrevio 0001e490: 75 73 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 61 us) {\n a 0001e4a0: 63 74 69 76 61 74 65 28 65 6e 74 72 79 29 5c 6e ctivate(entry)\n 0001e4b0: 20 20 20 20 20 20 20 20 2f 2f 20 69 66 20 70 61 // if pa 0001e4c0: 72 65 6e 74 20 69 73 6e 27 74 20 73 63 72 6f 6c rent isn't scrol 0001e4d0: 6c 65 64 2c 20 6c 65 74 27 73 20 6b 65 65 70 20 led, let's keep 0001e4e0: 74 68 65 20 66 69 72 73 74 20 76 69 73 69 62 6c the first visibl 0001e4f0: 65 20 69 74 65 6d 2c 20 62 72 65 61 6b 69 6e 67 e item, breaking 0001e500: 20 74 68 65 20 69 74 65 72 61 74 69 6f 6e 5c 6e the iteration\n 0001e510: 20 20 20 20 20 20 20 20 69 66 20 28 21 70 61 72 if (!par 0001e520: 65 6e 74 53 63 72 6f 6c 6c 54 6f 70 29 20 7b 5c entScrollTop) {\ 0001e530: 6e 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 n retur 0001e540: 6e 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 5c 6e n\n }\n\n 0001e550: 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 continue 0001e560: 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 \n }\n\n 0001e570: 20 20 20 2f 2f 20 69 66 20 77 65 20 61 72 65 20 // if we are 0001e580: 73 63 72 6f 6c 6c 69 6e 67 20 75 70 2c 20 70 69 scrolling up, pi 0001e590: 63 6b 20 74 68 65 20 73 6d 61 6c 6c 65 73 74 20 ck the smallest 0001e5a0: 6f 66 66 73 65 74 54 6f 70 5c 6e 20 20 20 20 20 offsetTop\n 0001e5b0: 20 69 66 20 28 21 75 73 65 72 53 63 72 6f 6c 6c if (!userScroll 0001e5c0: 73 44 6f 77 6e 20 26 26 20 21 65 6e 74 72 79 49 sDown && !entryI 0001e5d0: 73 4c 6f 77 65 72 54 68 61 6e 50 72 65 76 69 6f sLowerThanPrevio 0001e5e0: 75 73 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 61 us) {\n a 0001e5f0: 63 74 69 76 61 74 65 28 65 6e 74 72 79 29 5c 6e ctivate(entry)\n 0001e600: 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e }\n }\n 0001e610: 20 20 7d 5c 6e 5c 6e 20 20 5f 69 6e 69 74 69 61 }\n\n _initia 0001e620: 6c 69 7a 65 54 61 72 67 65 74 73 41 6e 64 4f 62 lizeTargetsAndOb 0001e630: 73 65 72 76 61 62 6c 65 73 28 29 20 7b 5c 6e 20 servables() {\n 0001e640: 20 20 20 74 68 69 73 2e 5f 74 61 72 67 65 74 4c this._targetL 0001e650: 69 6e 6b 73 20 3d 20 6e 65 77 20 4d 61 70 28 29 inks = new Map() 0001e660: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 6f 62 73 65 \n this._obse 0001e670: 72 76 61 62 6c 65 53 65 63 74 69 6f 6e 73 20 3d rvableSections = 0001e680: 20 6e 65 77 20 4d 61 70 28 29 5c 6e 5c 6e 20 20 new Map()\n\n 0001e690: 20 20 63 6f 6e 73 74 20 74 61 72 67 65 74 4c 69 const targetLi 0001e6a0: 6e 6b 73 20 3d 20 53 65 6c 65 63 74 6f 72 45 6e nks = SelectorEn 0001e6b0: 67 69 6e 65 2e 66 69 6e 64 28 53 45 4c 45 43 54 gine.find(SELECT 0001e6c0: 4f 52 5f 54 41 52 47 45 54 5f 4c 49 4e 4b 53 2c OR_TARGET_LINKS, 0001e6d0: 20 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 74 61 this._config.ta 0001e6e0: 72 67 65 74 29 5c 6e 5c 6e 20 20 20 20 66 6f 72 rget)\n\n for 0001e6f0: 20 28 63 6f 6e 73 74 20 61 6e 63 68 6f 72 20 6f (const anchor o 0001e700: 66 20 74 61 72 67 65 74 4c 69 6e 6b 73 29 20 7b f targetLinks) { 0001e710: 5c 6e 20 20 20 20 20 20 2f 2f 20 65 6e 73 75 72 \n // ensur 0001e720: 65 20 74 68 61 74 20 74 68 65 20 61 6e 63 68 6f e that the ancho 0001e730: 72 20 68 61 73 20 61 6e 20 69 64 20 61 6e 64 20 r has an id and 0001e740: 69 73 20 6e 6f 74 20 64 69 73 61 62 6c 65 64 5c is not disabled\ 0001e750: 6e 20 20 20 20 20 20 69 66 20 28 21 61 6e 63 68 n if (!anch 0001e760: 6f 72 2e 68 61 73 68 20 7c 7c 20 69 73 44 69 73 or.hash || isDis 0001e770: 61 62 6c 65 64 28 61 6e 63 68 6f 72 29 29 20 7b abled(anchor)) { 0001e780: 5c 6e 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e \n contin 0001e790: 75 65 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 ue\n }\n\n 0001e7a0: 20 20 20 20 20 63 6f 6e 73 74 20 6f 62 73 65 72 const obser 0001e7b0: 76 61 62 6c 65 53 65 63 74 69 6f 6e 20 3d 20 53 vableSection = S 0001e7c0: 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 electorEngine.fi 0001e7d0: 6e 64 4f 6e 65 28 64 65 63 6f 64 65 55 52 49 28 ndOne(decodeURI( 0001e7e0: 61 6e 63 68 6f 72 2e 68 61 73 68 29 2c 20 74 68 anchor.hash), th 0001e7f0: 69 73 2e 5f 65 6c 65 6d 65 6e 74 29 5c 6e 5c 6e is._element)\n\n 0001e800: 20 20 20 20 20 20 2f 2f 20 65 6e 73 75 72 65 20 // ensure 0001e810: 74 68 61 74 20 74 68 65 20 6f 62 73 65 72 76 61 that the observa 0001e820: 62 6c 65 53 65 63 74 69 6f 6e 20 65 78 69 73 74 bleSection exist 0001e830: 73 20 26 20 69 73 20 76 69 73 69 62 6c 65 5c 6e s & is visible\n 0001e840: 20 20 20 20 20 20 69 66 20 28 69 73 56 69 73 69 if (isVisi 0001e850: 62 6c 65 28 6f 62 73 65 72 76 61 62 6c 65 53 65 ble(observableSe 0001e860: 63 74 69 6f 6e 29 29 20 7b 5c 6e 20 20 20 20 20 ction)) {\n 0001e870: 20 20 20 74 68 69 73 2e 5f 74 61 72 67 65 74 4c this._targetL 0001e880: 69 6e 6b 73 2e 73 65 74 28 64 65 63 6f 64 65 55 inks.set(decodeU 0001e890: 52 49 28 61 6e 63 68 6f 72 2e 68 61 73 68 29 2c RI(anchor.hash), 0001e8a0: 20 61 6e 63 68 6f 72 29 5c 6e 20 20 20 20 20 20 anchor)\n 0001e8b0: 20 20 74 68 69 73 2e 5f 6f 62 73 65 72 76 61 62 this._observab 0001e8c0: 6c 65 53 65 63 74 69 6f 6e 73 2e 73 65 74 28 61 leSections.set(a 0001e8d0: 6e 63 68 6f 72 2e 68 61 73 68 2c 20 6f 62 73 65 nchor.hash, obse 0001e8e0: 72 76 61 62 6c 65 53 65 63 74 69 6f 6e 29 5c 6e rvableSection)\n 0001e8f0: 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e }\n }\n 0001e900: 20 20 7d 5c 6e 5c 6e 20 20 5f 70 72 6f 63 65 73 }\n\n _proces 0001e910: 73 28 74 61 72 67 65 74 29 20 7b 5c 6e 20 20 20 s(target) {\n 0001e920: 20 69 66 20 28 74 68 69 73 2e 5f 61 63 74 69 76 if (this._activ 0001e930: 65 54 61 72 67 65 74 20 3d 3d 3d 20 74 61 72 67 eTarget === targ 0001e940: 65 74 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 et) {\n ret 0001e950: 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 urn\n }\n\n 0001e960: 20 20 74 68 69 73 2e 5f 63 6c 65 61 72 41 63 74 this._clearAct 0001e970: 69 76 65 43 6c 61 73 73 28 74 68 69 73 2e 5f 63 iveClass(this._c 0001e980: 6f 6e 66 69 67 2e 74 61 72 67 65 74 29 5c 6e 20 onfig.target)\n 0001e990: 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 65 54 this._activeT 0001e9a0: 61 72 67 65 74 20 3d 20 74 61 72 67 65 74 5c 6e arget = target\n 0001e9b0: 20 20 20 20 74 61 72 67 65 74 2e 63 6c 61 73 73 target.class 0001e9c0: 4c 69 73 74 2e 61 64 64 28 43 4c 41 53 53 5f 4e List.add(CLASS_N 0001e9d0: 41 4d 45 5f 41 43 54 49 56 45 29 5c 6e 20 20 20 AME_ACTIVE)\n 0001e9e0: 20 74 68 69 73 2e 5f 61 63 74 69 76 61 74 65 50 this._activateP 0001e9f0: 61 72 65 6e 74 73 28 74 61 72 67 65 74 29 5c 6e arents(target)\n 0001ea00: 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c \n EventHandl 0001ea10: 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e er.trigger(this. 0001ea20: 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f _element, EVENT_ 0001ea30: 41 43 54 49 56 41 54 45 2c 20 7b 20 72 65 6c 61 ACTIVATE, { rela 0001ea40: 74 65 64 54 61 72 67 65 74 3a 20 74 61 72 67 65 tedTarget: targe 0001ea50: 74 20 7d 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f t })\n }\n\n _ 0001ea60: 61 63 74 69 76 61 74 65 50 61 72 65 6e 74 73 28 activateParents( 0001ea70: 74 61 72 67 65 74 29 20 7b 5c 6e 20 20 20 20 2f target) {\n / 0001ea80: 2f 20 41 63 74 69 76 61 74 65 20 64 72 6f 70 64 / Activate dropd 0001ea90: 6f 77 6e 20 70 61 72 65 6e 74 73 5c 6e 20 20 20 own parents\n 0001eaa0: 20 69 66 20 28 74 61 72 67 65 74 2e 63 6c 61 73 if (target.clas 0001eab0: 73 4c 69 73 74 2e 63 6f 6e 74 61 69 6e 73 28 43 sList.contains(C 0001eac0: 4c 41 53 53 5f 4e 41 4d 45 5f 44 52 4f 50 44 4f LASS_NAME_DROPDO 0001ead0: 57 4e 5f 49 54 45 4d 29 29 20 7b 5c 6e 20 20 20 WN_ITEM)) {\n 0001eae0: 20 20 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e SelectorEngin 0001eaf0: 65 2e 66 69 6e 64 4f 6e 65 28 53 45 4c 45 43 54 e.findOne(SELECT 0001eb00: 4f 52 5f 44 52 4f 50 44 4f 57 4e 5f 54 4f 47 47 OR_DROPDOWN_TOGG 0001eb10: 4c 45 2c 20 74 61 72 67 65 74 2e 63 6c 6f 73 65 LE, target.close 0001eb20: 73 74 28 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 st(SELECTOR_DROP 0001eb30: 44 4f 57 4e 29 29 5c 6e 20 20 20 20 20 20 20 20 DOWN))\n 0001eb40: 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 .classList.add(C 0001eb50: 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 54 49 56 45 LASS_NAME_ACTIVE 0001eb60: 29 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c )\n return\ 0001eb70: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 66 6f n }\n\n fo 0001eb80: 72 20 28 63 6f 6e 73 74 20 6c 69 73 74 47 72 6f r (const listGro 0001eb90: 75 70 20 6f 66 20 53 65 6c 65 63 74 6f 72 45 6e up of SelectorEn 0001eba0: 67 69 6e 65 2e 70 61 72 65 6e 74 73 28 74 61 72 gine.parents(tar 0001ebb0: 67 65 74 2c 20 53 45 4c 45 43 54 4f 52 5f 4e 41 get, SELECTOR_NA 0001ebc0: 56 5f 4c 49 53 54 5f 47 52 4f 55 50 29 29 20 7b V_LIST_GROUP)) { 0001ebd0: 5c 6e 20 20 20 20 20 20 2f 2f 20 53 65 74 20 74 \n // Set t 0001ebe0: 72 69 67 67 65 72 65 64 20 6c 69 6e 6b 73 20 70 riggered links p 0001ebf0: 61 72 65 6e 74 73 20 61 73 20 61 63 74 69 76 65 arents as active 0001ec00: 5c 6e 20 20 20 20 20 20 2f 2f 20 57 69 74 68 20 \n // With 0001ec10: 62 6f 74 68 20 3c 75 6c 3e 20 61 6e 64 20 3c 6e both <ul> and <n 0001ec20: 61 76 3e 20 6d 61 72 6b 75 70 20 61 20 70 61 72 av> markup a par 0001ec30: 65 6e 74 20 69 73 20 74 68 65 20 70 72 65 76 69 ent is the previ 0001ec40: 6f 75 73 20 73 69 62 6c 69 6e 67 20 6f 66 20 61 ous sibling of a 0001ec50: 6e 79 20 6e 61 76 20 61 6e 63 65 73 74 6f 72 5c ny nav ancestor\ 0001ec60: 6e 20 20 20 20 20 20 66 6f 72 20 28 63 6f 6e 73 n for (cons 0001ec70: 74 20 69 74 65 6d 20 6f 66 20 53 65 6c 65 63 74 t item of Select 0001ec80: 6f 72 45 6e 67 69 6e 65 2e 70 72 65 76 28 6c 69 orEngine.prev(li 0001ec90: 73 74 47 72 6f 75 70 2c 20 53 45 4c 45 43 54 4f stGroup, SELECTO 0001eca0: 52 5f 4c 49 4e 4b 5f 49 54 45 4d 53 29 29 20 7b R_LINK_ITEMS)) { 0001ecb0: 5c 6e 20 20 20 20 20 20 20 20 69 74 65 6d 2e 63 \n item.c 0001ecc0: 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 lassList.add(CLA 0001ecd0: 53 53 5f 4e 41 4d 45 5f 41 43 54 49 56 45 29 5c SS_NAME_ACTIVE)\ 0001ece0: 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c n }\n }\ 0001ecf0: 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 63 6c 65 61 72 n }\n\n _clear 0001ed00: 41 63 74 69 76 65 43 6c 61 73 73 28 70 61 72 65 ActiveClass(pare 0001ed10: 6e 74 29 20 7b 5c 6e 20 20 20 20 70 61 72 65 6e nt) {\n paren 0001ed20: 74 2e 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f t.classList.remo 0001ed30: 76 65 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 ve(CLASS_NAME_AC 0001ed40: 54 49 56 45 29 5c 6e 5c 6e 20 20 20 20 63 6f 6e TIVE)\n\n con 0001ed50: 73 74 20 61 63 74 69 76 65 4e 6f 64 65 73 20 3d st activeNodes = 0001ed60: 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e SelectorEngine. 0001ed70: 66 69 6e 64 28 60 24 7b 53 45 4c 45 43 54 4f 52 find(`${SELECTOR 0001ed80: 5f 54 41 52 47 45 54 5f 4c 49 4e 4b 53 7d 2e 24 _TARGET_LINKS}.$ 0001ed90: 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 54 49 {CLASS_NAME_ACTI 0001eda0: 56 45 7d 60 2c 20 70 61 72 65 6e 74 29 5c 6e 20 VE}`, parent)\n 0001edb0: 20 20 20 66 6f 72 20 28 63 6f 6e 73 74 20 6e 6f for (const no 0001edc0: 64 65 20 6f 66 20 61 63 74 69 76 65 4e 6f 64 65 de of activeNode 0001edd0: 73 29 20 7b 5c 6e 20 20 20 20 20 20 6e 6f 64 65 s) {\n node 0001ede0: 2e 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 .classList.remov 0001edf0: 65 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 54 e(CLASS_NAME_ACT 0001ee00: 49 56 45 29 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d IVE)\n }\n } 0001ee10: 5c 6e 5c 6e 20 20 2f 2f 20 53 74 61 74 69 63 5c \n\n // Static\ 0001ee20: 6e 20 20 73 74 61 74 69 63 20 6a 51 75 65 72 79 n static jQuery 0001ee30: 49 6e 74 65 72 66 61 63 65 28 63 6f 6e 66 69 67 Interface(config 0001ee40: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 0001ee50: 74 68 69 73 2e 65 61 63 68 28 66 75 6e 63 74 69 this.each(functi 0001ee60: 6f 6e 20 28 29 20 7b 5c 6e 20 20 20 20 20 20 63 on () {\n c 0001ee70: 6f 6e 73 74 20 64 61 74 61 20 3d 20 53 63 72 6f onst data = Scro 0001ee80: 6c 6c 53 70 79 2e 67 65 74 4f 72 43 72 65 61 74 llSpy.getOrCreat 0001ee90: 65 49 6e 73 74 61 6e 63 65 28 74 68 69 73 2c 20 eInstance(this, 0001eea0: 63 6f 6e 66 69 67 29 5c 6e 5c 6e 20 20 20 20 20 config)\n\n 0001eeb0: 20 69 66 20 28 74 79 70 65 6f 66 20 63 6f 6e 66 if (typeof conf 0001eec0: 69 67 20 21 3d 3d 20 27 73 74 72 69 6e 67 27 29 ig !== 'string') 0001eed0: 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 65 74 75 {\n retu 0001eee0: 72 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 rn\n }\n\n 0001eef0: 20 20 20 20 20 69 66 20 28 64 61 74 61 5b 63 6f if (data[co 0001ef00: 6e 66 69 67 5d 20 3d 3d 3d 20 75 6e 64 65 66 69 nfig] === undefi 0001ef10: 6e 65 64 20 7c 7c 20 63 6f 6e 66 69 67 2e 73 74 ned || config.st 0001ef20: 61 72 74 73 57 69 74 68 28 27 5f 27 29 20 7c 7c artsWith('_') || 0001ef30: 20 63 6f 6e 66 69 67 20 3d 3d 3d 20 27 63 6f 6e config === 'con 0001ef40: 73 74 72 75 63 74 6f 72 27 29 20 7b 5c 6e 20 20 structor') {\n 0001ef50: 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 throw new 0001ef60: 54 79 70 65 45 72 72 6f 72 28 60 4e 6f 20 6d 65 TypeError(`No me 0001ef70: 74 68 6f 64 20 6e 61 6d 65 64 20 5c 22 24 7b 63 thod named \"${c 0001ef80: 6f 6e 66 69 67 7d 5c 22 60 29 5c 6e 20 20 20 20 onfig}\"`)\n 0001ef90: 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 64 61 74 }\n\n dat 0001efa0: 61 5b 63 6f 6e 66 69 67 5d 28 29 5c 6e 20 20 20 a[config]()\n 0001efb0: 20 7d 29 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c 6e 2f })\n }\n}\n\n/ 0001efc0: 2a 2a 5c 6e 20 2a 20 44 61 74 61 20 41 50 49 20 **\n * Data API 0001efd0: 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 5c 6e implementation\n 0001efe0: 20 2a 2f 5c 6e 5c 6e 45 76 65 6e 74 48 61 6e 64 */\n\nEventHand 0001eff0: 6c 65 72 2e 6f 6e 28 77 69 6e 64 6f 77 2c 20 45 ler.on(window, E 0001f000: 56 45 4e 54 5f 4c 4f 41 44 5f 44 41 54 41 5f 41 VENT_LOAD_DATA_A 0001f010: 50 49 2c 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 66 PI, () => {\n f 0001f020: 6f 72 20 28 63 6f 6e 73 74 20 73 70 79 20 6f 66 or (const spy of 0001f030: 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 2e SelectorEngine. 0001f040: 66 69 6e 64 28 53 45 4c 45 43 54 4f 52 5f 44 41 find(SELECTOR_DA 0001f050: 54 41 5f 53 50 59 29 29 20 7b 5c 6e 20 20 20 20 TA_SPY)) {\n 0001f060: 53 63 72 6f 6c 6c 53 70 79 2e 67 65 74 4f 72 43 ScrollSpy.getOrC 0001f070: 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 73 70 reateInstance(sp 0001f080: 79 29 5c 6e 20 20 7d 5c 6e 7d 29 5c 6e 5c 6e 2f y)\n }\n})\n\n/ 0001f090: 2a 2a 5c 6e 20 2a 20 6a 51 75 65 72 79 5c 6e 20 **\n * jQuery\n 0001f0a0: 2a 2f 5c 6e 5c 6e 64 65 66 69 6e 65 4a 51 75 65 */\n\ndefineJQue 0001f0b0: 72 79 50 6c 75 67 69 6e 28 53 63 72 6f 6c 6c 53 ryPlugin(ScrollS 0001f0c0: 70 79 29 5c 6e 5c 6e 65 78 70 6f 72 74 20 64 65 py)\n\nexport de 0001f0d0: 66 61 75 6c 74 20 53 63 72 6f 6c 6c 53 70 79 5c fault ScrollSpy\ 0001f0e0: 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d 2d 2d 2d n","/**\n * ---- 0001f0f0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f100: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f110: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f120: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f130: 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f 6f 74 73 ------\n * Boots 0001f140: 74 72 61 70 20 74 61 62 2e 6a 73 5c 6e 20 2a 20 trap tab.js\n * 0001f150: 4c 69 63 65 6e 73 65 64 20 75 6e 64 65 72 20 4d Licensed under M 0001f160: 49 54 20 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 IT (https://gith 0001f170: 75 62 2e 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 ub.com/twbs/boot 0001f180: 73 74 72 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f strap/blob/main/ 0001f190: 4c 49 43 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d LICENSE)\n * --- 0001f1a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f1b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f1c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f1d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 0001f1e0: 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e -------\n */\n\n 0001f1f0: 69 6d 70 6f 72 74 20 42 61 73 65 43 6f 6d 70 6f import BaseCompo 0001f200: 6e 65 6e 74 20 66 72 6f 6d 20 27 2e 2f 62 61 73 nent from './bas 0001f210: 65 2d 63 6f 6d 70 6f 6e 65 6e 74 2e 6a 73 27 5c e-component.js'\ 0001f220: 6e 69 6d 70 6f 72 74 20 45 76 65 6e 74 48 61 6e nimport EventHan 0001f230: 64 6c 65 72 20 66 72 6f 6d 20 27 2e 2f 64 6f 6d dler from './dom 0001f240: 2f 65 76 65 6e 74 2d 68 61 6e 64 6c 65 72 2e 6a /event-handler.j 0001f250: 73 27 5c 6e 69 6d 70 6f 72 74 20 53 65 6c 65 63 s'\nimport Selec 0001f260: 74 6f 72 45 6e 67 69 6e 65 20 66 72 6f 6d 20 27 torEngine from ' 0001f270: 2e 2f 64 6f 6d 2f 73 65 6c 65 63 74 6f 72 2d 65 ./dom/selector-e 0001f280: 6e 67 69 6e 65 2e 6a 73 27 5c 6e 69 6d 70 6f 72 ngine.js'\nimpor 0001f290: 74 20 7b 20 64 65 66 69 6e 65 4a 51 75 65 72 79 t { defineJQuery 0001f2a0: 50 6c 75 67 69 6e 2c 20 67 65 74 4e 65 78 74 41 Plugin, getNextA 0001f2b0: 63 74 69 76 65 45 6c 65 6d 65 6e 74 2c 20 69 73 ctiveElement, is 0001f2c0: 44 69 73 61 62 6c 65 64 20 7d 20 66 72 6f 6d 20 Disabled } from 0001f2d0: 27 2e 2f 75 74 69 6c 2f 69 6e 64 65 78 2e 6a 73 './util/index.js 0001f2e0: 27 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6f 6e '\n\n/**\n * Con 0001f2f0: 73 74 61 6e 74 73 5c 6e 20 2a 2f 5c 6e 5c 6e 63 stants\n */\n\nc 0001f300: 6f 6e 73 74 20 4e 41 4d 45 20 3d 20 27 74 61 62 onst NAME = 'tab 0001f310: 27 5c 6e 63 6f 6e 73 74 20 44 41 54 41 5f 4b 45 '\nconst DATA_KE 0001f320: 59 20 3d 20 27 62 73 2e 74 61 62 27 5c 6e 63 6f Y = 'bs.tab'\nco 0001f330: 6e 73 74 20 45 56 45 4e 54 5f 4b 45 59 20 3d 20 nst EVENT_KEY = 0001f340: 60 2e 24 7b 44 41 54 41 5f 4b 45 59 7d 60 5c 6e `.${DATA_KEY}`\n 0001f350: 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 48 49 \nconst EVENT_HI 0001f360: 44 45 20 3d 20 60 68 69 64 65 24 7b 45 56 45 4e DE = `hide${EVEN 0001f370: 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 T_KEY}`\nconst E 0001f380: 56 45 4e 54 5f 48 49 44 44 45 4e 20 3d 20 60 68 VENT_HIDDEN = `h 0001f390: 69 64 64 65 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 idden${EVENT_KEY 0001f3a0: 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f }`\nconst EVENT_ 0001f3b0: 53 48 4f 57 20 3d 20 60 73 68 6f 77 24 7b 45 56 SHOW = `show${EV 0001f3c0: 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 ENT_KEY}`\nconst 0001f3d0: 20 45 56 45 4e 54 5f 53 48 4f 57 4e 20 3d 20 60 EVENT_SHOWN = ` 0001f3e0: 73 68 6f 77 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 shown${EVENT_KEY 0001f3f0: 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f }`\nconst EVENT_ 0001f400: 43 4c 49 43 4b 5f 44 41 54 41 5f 41 50 49 20 3d CLICK_DATA_API = 0001f410: 20 60 63 6c 69 63 6b 24 7b 45 56 45 4e 54 5f 4b `click${EVENT_K 0001f420: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e EY}`\nconst EVEN 0001f430: 54 5f 4b 45 59 44 4f 57 4e 20 3d 20 60 6b 65 79 T_KEYDOWN = `key 0001f440: 64 6f 77 6e 24 7b 45 56 45 4e 54 5f 4b 45 59 7d down${EVENT_KEY} 0001f450: 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 5f 4c `\nconst EVENT_L 0001f460: 4f 41 44 5f 44 41 54 41 5f 41 50 49 20 3d 20 60 OAD_DATA_API = ` 0001f470: 6c 6f 61 64 24 7b 45 56 45 4e 54 5f 4b 45 59 7d load${EVENT_KEY} 0001f480: 60 5c 6e 5c 6e 63 6f 6e 73 74 20 41 52 52 4f 57 `\n\nconst ARROW 0001f490: 5f 4c 45 46 54 5f 4b 45 59 20 3d 20 27 41 72 72 _LEFT_KEY = 'Arr 0001f4a0: 6f 77 4c 65 66 74 27 5c 6e 63 6f 6e 73 74 20 41 owLeft'\nconst A 0001f4b0: 52 52 4f 57 5f 52 49 47 48 54 5f 4b 45 59 20 3d RROW_RIGHT_KEY = 0001f4c0: 20 27 41 72 72 6f 77 52 69 67 68 74 27 5c 6e 63 'ArrowRight'\nc 0001f4d0: 6f 6e 73 74 20 41 52 52 4f 57 5f 55 50 5f 4b 45 onst ARROW_UP_KE 0001f4e0: 59 20 3d 20 27 41 72 72 6f 77 55 70 27 5c 6e 63 Y = 'ArrowUp'\nc 0001f4f0: 6f 6e 73 74 20 41 52 52 4f 57 5f 44 4f 57 4e 5f onst ARROW_DOWN_ 0001f500: 4b 45 59 20 3d 20 27 41 72 72 6f 77 44 6f 77 6e KEY = 'ArrowDown 0001f510: 27 5c 6e 63 6f 6e 73 74 20 48 4f 4d 45 5f 4b 45 '\nconst HOME_KE 0001f520: 59 20 3d 20 27 48 6f 6d 65 27 5c 6e 63 6f 6e 73 Y = 'Home'\ncons 0001f530: 74 20 45 4e 44 5f 4b 45 59 20 3d 20 27 45 6e 64 t END_KEY = 'End 0001f540: 27 5c 6e 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 '\n\nconst CLASS 0001f550: 5f 4e 41 4d 45 5f 41 43 54 49 56 45 20 3d 20 27 _NAME_ACTIVE = ' 0001f560: 61 63 74 69 76 65 27 5c 6e 63 6f 6e 73 74 20 43 active'\nconst C 0001f570: 4c 41 53 53 5f 4e 41 4d 45 5f 46 41 44 45 20 3d LASS_NAME_FADE = 0001f580: 20 27 66 61 64 65 27 5c 6e 63 6f 6e 73 74 20 43 'fade'\nconst C 0001f590: 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 20 3d LASS_NAME_SHOW = 0001f5a0: 20 27 73 68 6f 77 27 5c 6e 63 6f 6e 73 74 20 43 'show'\nconst C 0001f5b0: 4c 41 53 53 5f 44 52 4f 50 44 4f 57 4e 20 3d 20 LASS_DROPDOWN = 0001f5c0: 27 64 72 6f 70 64 6f 77 6e 27 5c 6e 5c 6e 63 6f 'dropdown'\n\nco 0001f5d0: 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 44 52 4f nst SELECTOR_DRO 0001f5e0: 50 44 4f 57 4e 5f 54 4f 47 47 4c 45 20 3d 20 27 PDOWN_TOGGLE = ' 0001f5f0: 2e 64 72 6f 70 64 6f 77 6e 2d 74 6f 67 67 6c 65 .dropdown-toggle 0001f600: 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f '\nconst SELECTO 0001f610: 52 5f 44 52 4f 50 44 4f 57 4e 5f 4d 45 4e 55 20 R_DROPDOWN_MENU 0001f620: 3d 20 27 2e 64 72 6f 70 64 6f 77 6e 2d 6d 65 6e = '.dropdown-men 0001f630: 75 27 5c 6e 63 6f 6e 73 74 20 4e 4f 54 5f 53 45 u'\nconst NOT_SE 0001f640: 4c 45 43 54 4f 52 5f 44 52 4f 50 44 4f 57 4e 5f LECTOR_DROPDOWN_ 0001f650: 54 4f 47 47 4c 45 20 3d 20 60 3a 6e 6f 74 28 24 TOGGLE = `:not($ 0001f660: 7b 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 44 4f {SELECTOR_DROPDO 0001f670: 57 4e 5f 54 4f 47 47 4c 45 7d 29 60 5c 6e 5c 6e WN_TOGGLE})`\n\n 0001f680: 63 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 54 const SELECTOR_T 0001f690: 41 42 5f 50 41 4e 45 4c 20 3d 20 27 2e 6c 69 73 AB_PANEL = '.lis 0001f6a0: 74 2d 67 72 6f 75 70 2c 20 2e 6e 61 76 2c 20 5b t-group, .nav, [ 0001f6b0: 72 6f 6c 65 3d 5c 22 74 61 62 6c 69 73 74 5c 22 role=\"tablist\" 0001f6c0: 5d 27 5c 6e 63 6f 6e 73 74 20 53 45 4c 45 43 54 ]'\nconst SELECT 0001f6d0: 4f 52 5f 4f 55 54 45 52 20 3d 20 27 2e 6e 61 76 OR_OUTER = '.nav 0001f6e0: 2d 69 74 65 6d 2c 20 2e 6c 69 73 74 2d 67 72 6f -item, .list-gro 0001f6f0: 75 70 2d 69 74 65 6d 27 5c 6e 63 6f 6e 73 74 20 up-item'\nconst 0001f700: 53 45 4c 45 43 54 4f 52 5f 49 4e 4e 45 52 20 3d SELECTOR_INNER = 0001f710: 20 60 2e 6e 61 76 2d 6c 69 6e 6b 24 7b 4e 4f 54 `.nav-link${NOT 0001f720: 5f 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 44 4f _SELECTOR_DROPDO 0001f730: 57 4e 5f 54 4f 47 47 4c 45 7d 2c 20 2e 6c 69 73 WN_TOGGLE}, .lis 0001f740: 74 2d 67 72 6f 75 70 2d 69 74 65 6d 24 7b 4e 4f t-group-item${NO 0001f750: 54 5f 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 44 T_SELECTOR_DROPD 0001f760: 4f 57 4e 5f 54 4f 47 47 4c 45 7d 2c 20 5b 72 6f OWN_TOGGLE}, [ro 0001f770: 6c 65 3d 5c 22 74 61 62 5c 22 5d 24 7b 4e 4f 54 le=\"tab\"]${NOT 0001f780: 5f 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 44 4f _SELECTOR_DROPDO 0001f790: 57 4e 5f 54 4f 47 47 4c 45 7d 60 5c 6e 63 6f 6e WN_TOGGLE}`\ncon 0001f7a0: 73 74 20 53 45 4c 45 43 54 4f 52 5f 44 41 54 41 st SELECTOR_DATA 0001f7b0: 5f 54 4f 47 47 4c 45 20 3d 20 27 5b 64 61 74 61 _TOGGLE = '[data 0001f7c0: 2d 62 73 2d 74 6f 67 67 6c 65 3d 5c 22 74 61 62 -bs-toggle=\"tab 0001f7d0: 5c 22 5d 2c 20 5b 64 61 74 61 2d 62 73 2d 74 6f \"], [data-bs-to 0001f7e0: 67 67 6c 65 3d 5c 22 70 69 6c 6c 5c 22 5d 2c 20 ggle=\"pill\"], 0001f7f0: 5b 64 61 74 61 2d 62 73 2d 74 6f 67 67 6c 65 3d [data-bs-toggle= 0001f800: 5c 22 6c 69 73 74 5c 22 5d 27 20 2f 2f 20 54 4f \"list\"]' // TO 0001f810: 44 4f 3a 20 63 6f 75 6c 64 20 6f 6e 6c 79 20 62 DO: could only b 0001f820: 65 20 60 74 61 62 60 20 69 6e 20 76 36 5c 6e 63 e `tab` in v6\nc 0001f830: 6f 6e 73 74 20 53 45 4c 45 43 54 4f 52 5f 49 4e onst SELECTOR_IN 0001f840: 4e 45 52 5f 45 4c 45 4d 20 3d 20 60 24 7b 53 45 NER_ELEM = `${SE 0001f850: 4c 45 43 54 4f 52 5f 49 4e 4e 45 52 7d 2c 20 24 LECTOR_INNER}, $ 0001f860: 7b 53 45 4c 45 43 54 4f 52 5f 44 41 54 41 5f 54 {SELECTOR_DATA_T 0001f870: 4f 47 47 4c 45 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 OGGLE}`\n\nconst 0001f880: 20 53 45 4c 45 43 54 4f 52 5f 44 41 54 41 5f 54 SELECTOR_DATA_T 0001f890: 4f 47 47 4c 45 5f 41 43 54 49 56 45 20 3d 20 60 OGGLE_ACTIVE = ` 0001f8a0: 2e 24 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 .${CLASS_NAME_AC 0001f8b0: 54 49 56 45 7d 5b 64 61 74 61 2d 62 73 2d 74 6f TIVE}[data-bs-to 0001f8c0: 67 67 6c 65 3d 5c 22 74 61 62 5c 22 5d 2c 20 2e ggle=\"tab\"], . 0001f8d0: 24 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 54 ${CLASS_NAME_ACT 0001f8e0: 49 56 45 7d 5b 64 61 74 61 2d 62 73 2d 74 6f 67 IVE}[data-bs-tog 0001f8f0: 67 6c 65 3d 5c 22 70 69 6c 6c 5c 22 5d 2c 20 2e gle=\"pill\"], . 0001f900: 24 7b 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 43 54 ${CLASS_NAME_ACT 0001f910: 49 56 45 7d 5b 64 61 74 61 2d 62 73 2d 74 6f 67 IVE}[data-bs-tog 0001f920: 67 6c 65 3d 5c 22 6c 69 73 74 5c 22 5d 60 5c 6e gle=\"list\"]`\n 0001f930: 5c 6e 2f 2a 2a 5c 6e 20 2a 20 43 6c 61 73 73 20 \n/**\n * Class 0001f940: 64 65 66 69 6e 69 74 69 6f 6e 5c 6e 20 2a 2f 5c definition\n */\ 0001f950: 6e 5c 6e 63 6c 61 73 73 20 54 61 62 20 65 78 74 n\nclass Tab ext 0001f960: 65 6e 64 73 20 42 61 73 65 43 6f 6d 70 6f 6e 65 ends BaseCompone 0001f970: 6e 74 20 7b 5c 6e 20 20 63 6f 6e 73 74 72 75 63 nt {\n construc 0001f980: 74 6f 72 28 65 6c 65 6d 65 6e 74 29 20 7b 5c 6e tor(element) {\n 0001f990: 20 20 20 20 73 75 70 65 72 28 65 6c 65 6d 65 6e super(elemen 0001f9a0: 74 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 70 61 t)\n this._pa 0001f9b0: 72 65 6e 74 20 3d 20 74 68 69 73 2e 5f 65 6c 65 rent = this._ele 0001f9c0: 6d 65 6e 74 2e 63 6c 6f 73 65 73 74 28 53 45 4c ment.closest(SEL 0001f9d0: 45 43 54 4f 52 5f 54 41 42 5f 50 41 4e 45 4c 29 ECTOR_TAB_PANEL) 0001f9e0: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 \n\n if (!thi 0001f9f0: 73 2e 5f 70 61 72 65 6e 74 29 20 7b 5c 6e 20 20 s._parent) {\n 0001fa00: 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 return\n 0001fa10: 20 20 2f 2f 20 54 4f 44 4f 3a 20 73 68 6f 75 6c // TODO: shoul 0001fa20: 64 20 74 68 72 6f 77 20 65 78 63 65 70 74 69 6f d throw exceptio 0001fa30: 6e 20 69 6e 20 76 36 5c 6e 20 20 20 20 20 20 2f n in v6\n / 0001fa40: 2f 20 74 68 72 6f 77 20 6e 65 77 20 54 79 70 65 / throw new Type 0001fa50: 45 72 72 6f 72 28 60 24 7b 65 6c 65 6d 65 6e 74 Error(`${element 0001fa60: 2e 6f 75 74 65 72 48 54 4d 4c 7d 20 68 61 73 20 .outerHTML} has 0001fa70: 6e 6f 74 20 61 20 76 61 6c 69 64 20 70 61 72 65 not a valid pare 0001fa80: 6e 74 20 24 7b 53 45 4c 45 43 54 4f 52 5f 49 4e nt ${SELECTOR_IN 0001fa90: 4e 45 52 5f 45 4c 45 4d 7d 60 29 5c 6e 20 20 20 NER_ELEM}`)\n 0001faa0: 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 53 65 74 }\n\n // Set 0001fab0: 20 75 70 20 69 6e 69 74 69 61 6c 20 61 72 69 61 up initial aria 0001fac0: 20 61 74 74 72 69 62 75 74 65 73 5c 6e 20 20 20 attributes\n 0001fad0: 20 74 68 69 73 2e 5f 73 65 74 49 6e 69 74 69 61 this._setInitia 0001fae0: 6c 41 74 74 72 69 62 75 74 65 73 28 74 68 69 73 lAttributes(this 0001faf0: 2e 5f 70 61 72 65 6e 74 2c 20 74 68 69 73 2e 5f ._parent, this._ 0001fb00: 67 65 74 43 68 69 6c 64 72 65 6e 28 29 29 5c 6e getChildren())\n 0001fb10: 5c 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c \n EventHandl 0001fb20: 65 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d er.on(this._elem 0001fb30: 65 6e 74 2c 20 45 56 45 4e 54 5f 4b 45 59 44 4f ent, EVENT_KEYDO 0001fb40: 57 4e 2c 20 65 76 65 6e 74 20 3d 3e 20 74 68 69 WN, event => thi 0001fb50: 73 2e 5f 6b 65 79 64 6f 77 6e 28 65 76 65 6e 74 s._keydown(event 0001fb60: 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 ))\n }\n\n // 0001fb70: 47 65 74 74 65 72 73 5c 6e 20 20 73 74 61 74 69 Getters\n stati 0001fb80: 63 20 67 65 74 20 4e 41 4d 45 28 29 20 7b 5c 6e c get NAME() {\n 0001fb90: 20 20 20 20 72 65 74 75 72 6e 20 4e 41 4d 45 5c return NAME\ 0001fba0: 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 50 75 62 n }\n\n // Pub 0001fbb0: 6c 69 63 5c 6e 20 20 73 68 6f 77 28 29 20 7b 20 lic\n show() { 0001fbc0: 2f 2f 20 53 68 6f 77 73 20 74 68 69 73 20 65 6c // Shows this el 0001fbd0: 65 6d 20 61 6e 64 20 64 65 61 63 74 69 76 61 74 em and deactivat 0001fbe0: 65 20 74 68 65 20 61 63 74 69 76 65 20 73 69 62 e the active sib 0001fbf0: 6c 69 6e 67 20 69 66 20 65 78 69 73 74 73 5c 6e ling if exists\n 0001fc00: 20 20 20 20 63 6f 6e 73 74 20 69 6e 6e 65 72 45 const innerE 0001fc10: 6c 65 6d 20 3d 20 74 68 69 73 2e 5f 65 6c 65 6d lem = this._elem 0001fc20: 65 6e 74 5c 6e 20 20 20 20 69 66 20 28 74 68 69 ent\n if (thi 0001fc30: 73 2e 5f 65 6c 65 6d 49 73 41 63 74 69 76 65 28 s._elemIsActive( 0001fc40: 69 6e 6e 65 72 45 6c 65 6d 29 29 20 7b 5c 6e 20 innerElem)) {\n 0001fc50: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 0001fc60: 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 53 65 61 }\n\n // Sea 0001fc70: 72 63 68 20 66 6f 72 20 61 63 74 69 76 65 20 74 rch for active t 0001fc80: 61 62 20 6f 6e 20 73 61 6d 65 20 70 61 72 65 6e ab on same paren 0001fc90: 74 20 74 6f 20 64 65 61 63 74 69 76 61 74 65 20 t to deactivate 0001fca0: 69 74 5c 6e 20 20 20 20 63 6f 6e 73 74 20 61 63 it\n const ac 0001fcb0: 74 69 76 65 20 3d 20 74 68 69 73 2e 5f 67 65 74 tive = this._get 0001fcc0: 41 63 74 69 76 65 45 6c 65 6d 28 29 5c 6e 5c 6e ActiveElem()\n\n 0001fcd0: 20 20 20 20 63 6f 6e 73 74 20 68 69 64 65 45 76 const hideEv 0001fce0: 65 6e 74 20 3d 20 61 63 74 69 76 65 20 3f 5c 6e ent = active ?\n 0001fcf0: 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c EventHandl 0001fd00: 65 72 2e 74 72 69 67 67 65 72 28 61 63 74 69 76 er.trigger(activ 0001fd10: 65 2c 20 45 56 45 4e 54 5f 48 49 44 45 2c 20 7b e, EVENT_HIDE, { 0001fd20: 20 72 65 6c 61 74 65 64 54 61 72 67 65 74 3a 20 relatedTarget: 0001fd30: 69 6e 6e 65 72 45 6c 65 6d 20 7d 29 20 3a 5c 6e innerElem }) :\n 0001fd40: 20 20 20 20 20 20 6e 75 6c 6c 5c 6e 5c 6e 20 20 null\n\n 0001fd50: 20 20 63 6f 6e 73 74 20 73 68 6f 77 45 76 65 6e const showEven 0001fd60: 74 20 3d 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 t = EventHandler 0001fd70: 2e 74 72 69 67 67 65 72 28 69 6e 6e 65 72 45 6c .trigger(innerEl 0001fd80: 65 6d 2c 20 45 56 45 4e 54 5f 53 48 4f 57 2c 20 em, EVENT_SHOW, 0001fd90: 7b 20 72 65 6c 61 74 65 64 54 61 72 67 65 74 3a { relatedTarget: 0001fda0: 20 61 63 74 69 76 65 20 7d 29 5c 6e 5c 6e 20 20 active })\n\n 0001fdb0: 20 20 69 66 20 28 73 68 6f 77 45 76 65 6e 74 2e if (showEvent. 0001fdc0: 64 65 66 61 75 6c 74 50 72 65 76 65 6e 74 65 64 defaultPrevented 0001fdd0: 20 7c 7c 20 28 68 69 64 65 45 76 65 6e 74 20 26 || (hideEvent & 0001fde0: 26 20 68 69 64 65 45 76 65 6e 74 2e 64 65 66 61 & hideEvent.defa 0001fdf0: 75 6c 74 50 72 65 76 65 6e 74 65 64 29 29 20 7b ultPrevented)) { 0001fe00: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 0001fe10: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 }\n\n thi 0001fe20: 73 2e 5f 64 65 61 63 74 69 76 61 74 65 28 61 63 s._deactivate(ac 0001fe30: 74 69 76 65 2c 20 69 6e 6e 65 72 45 6c 65 6d 29 tive, innerElem) 0001fe40: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 61 63 74 69 \n this._acti 0001fe50: 76 61 74 65 28 69 6e 6e 65 72 45 6c 65 6d 2c 20 vate(innerElem, 0001fe60: 61 63 74 69 76 65 29 5c 6e 20 20 7d 5c 6e 5c 6e active)\n }\n\n 0001fe70: 20 20 2f 2f 20 50 72 69 76 61 74 65 5c 6e 20 20 // Private\n 0001fe80: 5f 61 63 74 69 76 61 74 65 28 65 6c 65 6d 65 6e _activate(elemen 0001fe90: 74 2c 20 72 65 6c 61 74 65 64 45 6c 65 6d 29 20 t, relatedElem) 0001fea0: 7b 5c 6e 20 20 20 20 69 66 20 28 21 65 6c 65 6d {\n if (!elem 0001feb0: 65 6e 74 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 ent) {\n re 0001fec0: 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 turn\n }\n\n 0001fed0: 20 20 20 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 element.class 0001fee0: 4c 69 73 74 2e 61 64 64 28 43 4c 41 53 53 5f 4e List.add(CLASS_N 0001fef0: 41 4d 45 5f 41 43 54 49 56 45 29 5c 6e 5c 6e 20 AME_ACTIVE)\n\n 0001ff00: 20 20 20 74 68 69 73 2e 5f 61 63 74 69 76 61 74 this._activat 0001ff10: 65 28 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e 65 e(SelectorEngine 0001ff20: 2e 67 65 74 45 6c 65 6d 65 6e 74 46 72 6f 6d 53 .getElementFromS 0001ff30: 65 6c 65 63 74 6f 72 28 65 6c 65 6d 65 6e 74 29 elector(element) 0001ff40: 29 20 2f 2f 20 53 65 61 72 63 68 20 61 6e 64 20 ) // Search and 0001ff50: 61 63 74 69 76 61 74 65 2f 73 68 6f 77 20 74 68 activate/show th 0001ff60: 65 20 70 72 6f 70 65 72 20 73 65 63 74 69 6f 6e e proper section 0001ff70: 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 20 63 6f \n\n const co 0001ff80: 6d 70 6c 65 74 65 20 3d 20 28 29 20 3d 3e 20 7b mplete = () => { 0001ff90: 5c 6e 20 20 20 20 20 20 69 66 20 28 65 6c 65 6d \n if (elem 0001ffa0: 65 6e 74 2e 67 65 74 41 74 74 72 69 62 75 74 65 ent.getAttribute 0001ffb0: 28 27 72 6f 6c 65 27 29 20 21 3d 3d 20 27 74 61 ('role') !== 'ta 0001ffc0: 62 27 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 65 b') {\n e 0001ffd0: 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 lement.classList 0001ffe0: 2e 61 64 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f .add(CLASS_NAME_ 0001fff0: 53 48 4f 57 29 5c 6e 20 20 20 20 20 20 20 20 72 SHOW)\n r 00020000: 65 74 75 72 6e 5c 6e 20 20 20 20 20 20 7d 5c 6e eturn\n }\n 00020010: 5c 6e 20 20 20 20 20 20 65 6c 65 6d 65 6e 74 2e \n element. 00020020: 72 65 6d 6f 76 65 41 74 74 72 69 62 75 74 65 28 removeAttribute( 00020030: 27 74 61 62 69 6e 64 65 78 27 29 5c 6e 20 20 20 'tabindex')\n 00020040: 20 20 20 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 element.setAt 00020050: 74 72 69 62 75 74 65 28 27 61 72 69 61 2d 73 65 tribute('aria-se 00020060: 6c 65 63 74 65 64 27 2c 20 74 72 75 65 29 5c 6e lected', true)\n 00020070: 20 20 20 20 20 20 74 68 69 73 2e 5f 74 6f 67 67 this._togg 00020080: 6c 65 44 72 6f 70 44 6f 77 6e 28 65 6c 65 6d 65 leDropDown(eleme 00020090: 6e 74 2c 20 74 72 75 65 29 5c 6e 20 20 20 20 20 nt, true)\n 000200a0: 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 74 72 EventHandler.tr 000200b0: 69 67 67 65 72 28 65 6c 65 6d 65 6e 74 2c 20 45 igger(element, E 000200c0: 56 45 4e 54 5f 53 48 4f 57 4e 2c 20 7b 5c 6e 20 VENT_SHOWN, {\n 000200d0: 20 20 20 20 20 20 20 72 65 6c 61 74 65 64 54 61 relatedTa 000200e0: 72 67 65 74 3a 20 72 65 6c 61 74 65 64 45 6c 65 rget: relatedEle 000200f0: 6d 5c 6e 20 20 20 20 20 20 7d 29 5c 6e 20 20 20 m\n })\n 00020100: 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f }\n\n this._ 00020110: 71 75 65 75 65 43 61 6c 6c 62 61 63 6b 28 63 6f queueCallback(co 00020120: 6d 70 6c 65 74 65 2c 20 65 6c 65 6d 65 6e 74 2c mplete, element, 00020130: 20 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 element.classLi 00020140: 73 74 2e 63 6f 6e 74 61 69 6e 73 28 43 4c 41 53 st.contains(CLAS 00020150: 53 5f 4e 41 4d 45 5f 46 41 44 45 29 29 5c 6e 20 S_NAME_FADE))\n 00020160: 20 7d 5c 6e 5c 6e 20 20 5f 64 65 61 63 74 69 76 }\n\n _deactiv 00020170: 61 74 65 28 65 6c 65 6d 65 6e 74 2c 20 72 65 6c ate(element, rel 00020180: 61 74 65 64 45 6c 65 6d 29 20 7b 5c 6e 20 20 20 atedElem) {\n 00020190: 20 69 66 20 28 21 65 6c 65 6d 65 6e 74 29 20 7b if (!element) { 000201a0: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 5c 6e \n return\n 000201b0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 65 6c 65 }\n\n ele 000201c0: 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e 72 ment.classList.r 000201d0: 65 6d 6f 76 65 28 43 4c 41 53 53 5f 4e 41 4d 45 emove(CLASS_NAME 000201e0: 5f 41 43 54 49 56 45 29 5c 6e 20 20 20 20 65 6c _ACTIVE)\n el 000201f0: 65 6d 65 6e 74 2e 62 6c 75 72 28 29 5c 6e 5c 6e ement.blur()\n\n 00020200: 20 20 20 20 74 68 69 73 2e 5f 64 65 61 63 74 69 this._deacti 00020210: 76 61 74 65 28 53 65 6c 65 63 74 6f 72 45 6e 67 vate(SelectorEng 00020220: 69 6e 65 2e 67 65 74 45 6c 65 6d 65 6e 74 46 72 ine.getElementFr 00020230: 6f 6d 53 65 6c 65 63 74 6f 72 28 65 6c 65 6d 65 omSelector(eleme 00020240: 6e 74 29 29 20 2f 2f 20 53 65 61 72 63 68 20 61 nt)) // Search a 00020250: 6e 64 20 64 65 61 63 74 69 76 61 74 65 20 74 68 nd deactivate th 00020260: 65 20 73 68 6f 77 6e 20 73 65 63 74 69 6f 6e 20 e shown section 00020270: 74 6f 6f 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 74 too\n\n const 00020280: 20 63 6f 6d 70 6c 65 74 65 20 3d 20 28 29 20 3d complete = () = 00020290: 3e 20 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 65 > {\n if (e 000202a0: 6c 65 6d 65 6e 74 2e 67 65 74 41 74 74 72 69 62 lement.getAttrib 000202b0: 75 74 65 28 27 72 6f 6c 65 27 29 20 21 3d 3d 20 ute('role') !== 000202c0: 27 74 61 62 27 29 20 7b 5c 6e 20 20 20 20 20 20 'tab') {\n 000202d0: 20 20 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c element.classL 000202e0: 69 73 74 2e 72 65 6d 6f 76 65 28 43 4c 41 53 53 ist.remove(CLASS 000202f0: 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 20 20 20 _NAME_SHOW)\n 00020300: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 00020310: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 65 6c }\n\n el 00020320: 65 6d 65 6e 74 2e 73 65 74 41 74 74 72 69 62 75 ement.setAttribu 00020330: 74 65 28 27 61 72 69 61 2d 73 65 6c 65 63 74 65 te('aria-selecte 00020340: 64 27 2c 20 66 61 6c 73 65 29 5c 6e 20 20 20 20 d', false)\n 00020350: 20 20 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 74 element.setAtt 00020360: 72 69 62 75 74 65 28 27 74 61 62 69 6e 64 65 78 ribute('tabindex 00020370: 27 2c 20 27 2d 31 27 29 5c 6e 20 20 20 20 20 20 ', '-1')\n 00020380: 74 68 69 73 2e 5f 74 6f 67 67 6c 65 44 72 6f 70 this._toggleDrop 00020390: 44 6f 77 6e 28 65 6c 65 6d 65 6e 74 2c 20 66 61 Down(element, fa 000203a0: 6c 73 65 29 5c 6e 20 20 20 20 20 20 45 76 65 6e lse)\n Even 000203b0: 74 48 61 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 tHandler.trigger 000203c0: 28 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f (element, EVENT_ 000203d0: 48 49 44 44 45 4e 2c 20 7b 20 72 65 6c 61 74 65 HIDDEN, { relate 000203e0: 64 54 61 72 67 65 74 3a 20 72 65 6c 61 74 65 64 dTarget: related 000203f0: 45 6c 65 6d 20 7d 29 5c 6e 20 20 20 20 7d 5c 6e Elem })\n }\n 00020400: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 71 75 65 75 \n this._queu 00020410: 65 43 61 6c 6c 62 61 63 6b 28 63 6f 6d 70 6c 65 eCallback(comple 00020420: 74 65 2c 20 65 6c 65 6d 65 6e 74 2c 20 65 6c 65 te, element, ele 00020430: 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e 63 ment.classList.c 00020440: 6f 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f 4e 41 ontains(CLASS_NA 00020450: 4d 45 5f 46 41 44 45 29 29 5c 6e 20 20 7d 5c 6e ME_FADE))\n }\n 00020460: 5c 6e 20 20 5f 6b 65 79 64 6f 77 6e 28 65 76 65 \n _keydown(eve 00020470: 6e 74 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 nt) {\n if (! 00020480: 28 5b 41 52 52 4f 57 5f 4c 45 46 54 5f 4b 45 59 ([ARROW_LEFT_KEY 00020490: 2c 20 41 52 52 4f 57 5f 52 49 47 48 54 5f 4b 45 , ARROW_RIGHT_KE 000204a0: 59 2c 20 41 52 52 4f 57 5f 55 50 5f 4b 45 59 2c Y, ARROW_UP_KEY, 000204b0: 20 41 52 52 4f 57 5f 44 4f 57 4e 5f 4b 45 59 2c ARROW_DOWN_KEY, 000204c0: 20 48 4f 4d 45 5f 4b 45 59 2c 20 45 4e 44 5f 4b HOME_KEY, END_K 000204d0: 45 59 5d 2e 69 6e 63 6c 75 64 65 73 28 65 76 65 EY].includes(eve 000204e0: 6e 74 2e 6b 65 79 29 29 29 20 7b 5c 6e 20 20 20 nt.key))) {\n 000204f0: 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d return\n } 00020500: 5c 6e 5c 6e 20 20 20 20 65 76 65 6e 74 2e 73 74 \n\n event.st 00020510: 6f 70 50 72 6f 70 61 67 61 74 69 6f 6e 28 29 2f opPropagation()/ 00020520: 2f 20 73 74 6f 70 50 72 6f 70 61 67 61 74 69 6f / stopPropagatio 00020530: 6e 2f 70 72 65 76 65 6e 74 44 65 66 61 75 6c 74 n/preventDefault 00020540: 20 62 6f 74 68 20 61 64 64 65 64 20 74 6f 20 73 both added to s 00020550: 75 70 70 6f 72 74 20 75 70 2f 64 6f 77 6e 20 6b upport up/down k 00020560: 65 79 73 20 77 69 74 68 6f 75 74 20 73 63 72 6f eys without scro 00020570: 6c 6c 69 6e 67 20 74 68 65 20 70 61 67 65 5c 6e lling the page\n 00020580: 20 20 20 20 65 76 65 6e 74 2e 70 72 65 76 65 6e event.preven 00020590: 74 44 65 66 61 75 6c 74 28 29 5c 6e 5c 6e 20 20 tDefault()\n\n 000205a0: 20 20 63 6f 6e 73 74 20 63 68 69 6c 64 72 65 6e const children 000205b0: 20 3d 20 74 68 69 73 2e 5f 67 65 74 43 68 69 6c = this._getChil 000205c0: 64 72 65 6e 28 29 2e 66 69 6c 74 65 72 28 65 6c dren().filter(el 000205d0: 65 6d 65 6e 74 20 3d 3e 20 21 69 73 44 69 73 61 ement => !isDisa 000205e0: 62 6c 65 64 28 65 6c 65 6d 65 6e 74 29 29 5c 6e bled(element))\n 000205f0: 20 20 20 20 6c 65 74 20 6e 65 78 74 41 63 74 69 let nextActi 00020600: 76 65 45 6c 65 6d 65 6e 74 5c 6e 5c 6e 20 20 20 veElement\n\n 00020610: 20 69 66 20 28 5b 48 4f 4d 45 5f 4b 45 59 2c 20 if ([HOME_KEY, 00020620: 45 4e 44 5f 4b 45 59 5d 2e 69 6e 63 6c 75 64 65 END_KEY].include 00020630: 73 28 65 76 65 6e 74 2e 6b 65 79 29 29 20 7b 5c s(event.key)) {\ 00020640: 6e 20 20 20 20 20 20 6e 65 78 74 41 63 74 69 76 n nextActiv 00020650: 65 45 6c 65 6d 65 6e 74 20 3d 20 63 68 69 6c 64 eElement = child 00020660: 72 65 6e 5b 65 76 65 6e 74 2e 6b 65 79 20 3d 3d ren[event.key == 00020670: 3d 20 48 4f 4d 45 5f 4b 45 59 20 3f 20 30 20 3a = HOME_KEY ? 0 : 00020680: 20 63 68 69 6c 64 72 65 6e 2e 6c 65 6e 67 74 68 children.length 00020690: 20 2d 20 31 5d 5c 6e 20 20 20 20 7d 20 65 6c 73 - 1]\n } els 000206a0: 65 20 7b 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 e {\n const 000206b0: 20 69 73 4e 65 78 74 20 3d 20 5b 41 52 52 4f 57 isNext = [ARROW 000206c0: 5f 52 49 47 48 54 5f 4b 45 59 2c 20 41 52 52 4f _RIGHT_KEY, ARRO 000206d0: 57 5f 44 4f 57 4e 5f 4b 45 59 5d 2e 69 6e 63 6c W_DOWN_KEY].incl 000206e0: 75 64 65 73 28 65 76 65 6e 74 2e 6b 65 79 29 5c udes(event.key)\ 000206f0: 6e 20 20 20 20 20 20 6e 65 78 74 41 63 74 69 76 n nextActiv 00020700: 65 45 6c 65 6d 65 6e 74 20 3d 20 67 65 74 4e 65 eElement = getNe 00020710: 78 74 41 63 74 69 76 65 45 6c 65 6d 65 6e 74 28 xtActiveElement( 00020720: 63 68 69 6c 64 72 65 6e 2c 20 65 76 65 6e 74 2e children, event. 00020730: 74 61 72 67 65 74 2c 20 69 73 4e 65 78 74 2c 20 target, isNext, 00020740: 74 72 75 65 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e true)\n }\n\n 00020750: 20 20 20 20 69 66 20 28 6e 65 78 74 41 63 74 69 if (nextActi 00020760: 76 65 45 6c 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 veElement) {\n 00020770: 20 20 20 20 6e 65 78 74 41 63 74 69 76 65 45 6c nextActiveEl 00020780: 65 6d 65 6e 74 2e 66 6f 63 75 73 28 7b 20 70 72 ement.focus({ pr 00020790: 65 76 65 6e 74 53 63 72 6f 6c 6c 3a 20 74 72 75 eventScroll: tru 000207a0: 65 20 7d 29 5c 6e 20 20 20 20 20 20 54 61 62 2e e })\n Tab. 000207b0: 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 getOrCreateInsta 000207c0: 6e 63 65 28 6e 65 78 74 41 63 74 69 76 65 45 6c nce(nextActiveEl 000207d0: 65 6d 65 6e 74 29 2e 73 68 6f 77 28 29 5c 6e 20 ement).show()\n 000207e0: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f }\n }\n\n _ 000207f0: 67 65 74 43 68 69 6c 64 72 65 6e 28 29 20 7b 20 getChildren() { 00020800: 2f 2f 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 6f 66 // collection of 00020810: 20 69 6e 6e 65 72 20 65 6c 65 6d 65 6e 74 73 5c inner elements\ 00020820: 6e 20 20 20 20 72 65 74 75 72 6e 20 53 65 6c 65 n return Sele 00020830: 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 28 ctorEngine.find( 00020840: 53 45 4c 45 43 54 4f 52 5f 49 4e 4e 45 52 5f 45 SELECTOR_INNER_E 00020850: 4c 45 4d 2c 20 74 68 69 73 2e 5f 70 61 72 65 6e LEM, this._paren 00020860: 74 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 67 65 t)\n }\n\n _ge 00020870: 74 41 63 74 69 76 65 45 6c 65 6d 28 29 20 7b 5c tActiveElem() {\ 00020880: 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 n return this 00020890: 2e 5f 67 65 74 43 68 69 6c 64 72 65 6e 28 29 2e ._getChildren(). 000208a0: 66 69 6e 64 28 63 68 69 6c 64 20 3d 3e 20 74 68 find(child => th 000208b0: 69 73 2e 5f 65 6c 65 6d 49 73 41 63 74 69 76 65 is._elemIsActive 000208c0: 28 63 68 69 6c 64 29 29 20 7c 7c 20 6e 75 6c 6c (child)) || null 000208d0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 73 65 74 49 \n }\n\n _setI 000208e0: 6e 69 74 69 61 6c 41 74 74 72 69 62 75 74 65 73 nitialAttributes 000208f0: 28 70 61 72 65 6e 74 2c 20 63 68 69 6c 64 72 65 (parent, childre 00020900: 6e 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f n) {\n this._ 00020910: 73 65 74 41 74 74 72 69 62 75 74 65 49 66 4e 6f setAttributeIfNo 00020920: 74 45 78 69 73 74 73 28 70 61 72 65 6e 74 2c 20 tExists(parent, 00020930: 27 72 6f 6c 65 27 2c 20 27 74 61 62 6c 69 73 74 'role', 'tablist 00020940: 27 29 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 63 ')\n\n for (c 00020950: 6f 6e 73 74 20 63 68 69 6c 64 20 6f 66 20 63 68 onst child of ch 00020960: 69 6c 64 72 65 6e 29 20 7b 5c 6e 20 20 20 20 20 ildren) {\n 00020970: 20 74 68 69 73 2e 5f 73 65 74 49 6e 69 74 69 61 this._setInitia 00020980: 6c 41 74 74 72 69 62 75 74 65 73 4f 6e 43 68 69 lAttributesOnChi 00020990: 6c 64 28 63 68 69 6c 64 29 5c 6e 20 20 20 20 7d ld(child)\n } 000209a0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 73 65 74 49 \n }\n\n _setI 000209b0: 6e 69 74 69 61 6c 41 74 74 72 69 62 75 74 65 73 nitialAttributes 000209c0: 4f 6e 43 68 69 6c 64 28 63 68 69 6c 64 29 20 7b OnChild(child) { 000209d0: 5c 6e 20 20 20 20 63 68 69 6c 64 20 3d 20 74 68 \n child = th 000209e0: 69 73 2e 5f 67 65 74 49 6e 6e 65 72 45 6c 65 6d is._getInnerElem 000209f0: 65 6e 74 28 63 68 69 6c 64 29 5c 6e 20 20 20 20 ent(child)\n 00020a00: 63 6f 6e 73 74 20 69 73 41 63 74 69 76 65 20 3d const isActive = 00020a10: 20 74 68 69 73 2e 5f 65 6c 65 6d 49 73 41 63 74 this._elemIsAct 00020a20: 69 76 65 28 63 68 69 6c 64 29 5c 6e 20 20 20 20 ive(child)\n 00020a30: 63 6f 6e 73 74 20 6f 75 74 65 72 45 6c 65 6d 20 const outerElem 00020a40: 3d 20 74 68 69 73 2e 5f 67 65 74 4f 75 74 65 72 = this._getOuter 00020a50: 45 6c 65 6d 65 6e 74 28 63 68 69 6c 64 29 5c 6e Element(child)\n 00020a60: 20 20 20 20 63 68 69 6c 64 2e 73 65 74 41 74 74 child.setAtt 00020a70: 72 69 62 75 74 65 28 27 61 72 69 61 2d 73 65 6c ribute('aria-sel 00020a80: 65 63 74 65 64 27 2c 20 69 73 41 63 74 69 76 65 ected', isActive 00020a90: 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 6f 75 74 )\n\n if (out 00020aa0: 65 72 45 6c 65 6d 20 21 3d 3d 20 63 68 69 6c 64 erElem !== child 00020ab0: 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e ) {\n this. 00020ac0: 5f 73 65 74 41 74 74 72 69 62 75 74 65 49 66 4e _setAttributeIfN 00020ad0: 6f 74 45 78 69 73 74 73 28 6f 75 74 65 72 45 6c otExists(outerEl 00020ae0: 65 6d 2c 20 27 72 6f 6c 65 27 2c 20 27 70 72 65 em, 'role', 'pre 00020af0: 73 65 6e 74 61 74 69 6f 6e 27 29 5c 6e 20 20 20 sentation')\n 00020b00: 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 21 69 }\n\n if (!i 00020b10: 73 41 63 74 69 76 65 29 20 7b 5c 6e 20 20 20 20 sActive) {\n 00020b20: 20 20 63 68 69 6c 64 2e 73 65 74 41 74 74 72 69 child.setAttri 00020b30: 62 75 74 65 28 27 74 61 62 69 6e 64 65 78 27 2c bute('tabindex', 00020b40: 20 27 2d 31 27 29 5c 6e 20 20 20 20 7d 5c 6e 5c '-1')\n }\n\ 00020b50: 6e 20 20 20 20 74 68 69 73 2e 5f 73 65 74 41 74 n this._setAt 00020b60: 74 72 69 62 75 74 65 49 66 4e 6f 74 45 78 69 73 tributeIfNotExis 00020b70: 74 73 28 63 68 69 6c 64 2c 20 27 72 6f 6c 65 27 ts(child, 'role' 00020b80: 2c 20 27 74 61 62 27 29 5c 6e 5c 6e 20 20 20 20 , 'tab')\n\n 00020b90: 2f 2f 20 73 65 74 20 61 74 74 72 69 62 75 74 65 // set attribute 00020ba0: 73 20 74 6f 20 74 68 65 20 72 65 6c 61 74 65 64 s to the related 00020bb0: 20 70 61 6e 65 6c 20 74 6f 6f 5c 6e 20 20 20 20 panel too\n 00020bc0: 74 68 69 73 2e 5f 73 65 74 49 6e 69 74 69 61 6c this._setInitial 00020bd0: 41 74 74 72 69 62 75 74 65 73 4f 6e 54 61 72 67 AttributesOnTarg 00020be0: 65 74 50 61 6e 65 6c 28 63 68 69 6c 64 29 5c 6e etPanel(child)\n 00020bf0: 20 20 7d 5c 6e 5c 6e 20 20 5f 73 65 74 49 6e 69 }\n\n _setIni 00020c00: 74 69 61 6c 41 74 74 72 69 62 75 74 65 73 4f 6e tialAttributesOn 00020c10: 54 61 72 67 65 74 50 61 6e 65 6c 28 63 68 69 6c TargetPanel(chil 00020c20: 64 29 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 d) {\n const 00020c30: 74 61 72 67 65 74 20 3d 20 53 65 6c 65 63 74 6f target = Selecto 00020c40: 72 45 6e 67 69 6e 65 2e 67 65 74 45 6c 65 6d 65 rEngine.getEleme 00020c50: 6e 74 46 72 6f 6d 53 65 6c 65 63 74 6f 72 28 63 ntFromSelector(c 00020c60: 68 69 6c 64 29 5c 6e 5c 6e 20 20 20 20 69 66 20 hild)\n\n if 00020c70: 28 21 74 61 72 67 65 74 29 20 7b 5c 6e 20 20 20 (!target) {\n 00020c80: 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d return\n } 00020c90: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 65 \n\n this._se 00020ca0: 74 41 74 74 72 69 62 75 74 65 49 66 4e 6f 74 45 tAttributeIfNotE 00020cb0: 78 69 73 74 73 28 74 61 72 67 65 74 2c 20 27 72 xists(target, 'r 00020cc0: 6f 6c 65 27 2c 20 27 74 61 62 70 61 6e 65 6c 27 ole', 'tabpanel' 00020cd0: 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 63 68 69 )\n\n if (chi 00020ce0: 6c 64 2e 69 64 29 20 7b 5c 6e 20 20 20 20 20 20 ld.id) {\n 00020cf0: 74 68 69 73 2e 5f 73 65 74 41 74 74 72 69 62 75 this._setAttribu 00020d00: 74 65 49 66 4e 6f 74 45 78 69 73 74 73 28 74 61 teIfNotExists(ta 00020d10: 72 67 65 74 2c 20 27 61 72 69 61 2d 6c 61 62 65 rget, 'aria-labe 00020d20: 6c 6c 65 64 62 79 27 2c 20 60 24 7b 63 68 69 6c lledby', `${chil 00020d30: 64 2e 69 64 7d 60 29 5c 6e 20 20 20 20 7d 5c 6e d.id}`)\n }\n 00020d40: 20 20 7d 5c 6e 5c 6e 20 20 5f 74 6f 67 67 6c 65 }\n\n _toggle 00020d50: 44 72 6f 70 44 6f 77 6e 28 65 6c 65 6d 65 6e 74 DropDown(element 00020d60: 2c 20 6f 70 65 6e 29 20 7b 5c 6e 20 20 20 20 63 , open) {\n c 00020d70: 6f 6e 73 74 20 6f 75 74 65 72 45 6c 65 6d 20 3d onst outerElem = 00020d80: 20 74 68 69 73 2e 5f 67 65 74 4f 75 74 65 72 45 this._getOuterE 00020d90: 6c 65 6d 65 6e 74 28 65 6c 65 6d 65 6e 74 29 5c lement(element)\ 00020da0: 6e 20 20 20 20 69 66 20 28 21 6f 75 74 65 72 45 n if (!outerE 00020db0: 6c 65 6d 2e 63 6c 61 73 73 4c 69 73 74 2e 63 6f lem.classList.co 00020dc0: 6e 74 61 69 6e 73 28 43 4c 41 53 53 5f 44 52 4f ntains(CLASS_DRO 00020dd0: 50 44 4f 57 4e 29 29 20 7b 5c 6e 20 20 20 20 20 PDOWN)) {\n 00020de0: 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e return\n }\n 00020df0: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 74 6f 67 67 \n const togg 00020e00: 6c 65 20 3d 20 28 73 65 6c 65 63 74 6f 72 2c 20 le = (selector, 00020e10: 63 6c 61 73 73 4e 61 6d 65 29 20 3d 3e 20 7b 5c className) => {\ 00020e20: 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 65 6c 65 n const ele 00020e30: 6d 65 6e 74 20 3d 20 53 65 6c 65 63 74 6f 72 45 ment = SelectorE 00020e40: 6e 67 69 6e 65 2e 66 69 6e 64 4f 6e 65 28 73 65 ngine.findOne(se 00020e50: 6c 65 63 74 6f 72 2c 20 6f 75 74 65 72 45 6c 65 lector, outerEle 00020e60: 6d 29 5c 6e 20 20 20 20 20 20 69 66 20 28 65 6c m)\n if (el 00020e70: 65 6d 65 6e 74 29 20 7b 5c 6e 20 20 20 20 20 20 ement) {\n 00020e80: 20 20 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c element.classL 00020e90: 69 73 74 2e 74 6f 67 67 6c 65 28 63 6c 61 73 73 ist.toggle(class 00020ea0: 4e 61 6d 65 2c 20 6f 70 65 6e 29 5c 6e 20 20 20 Name, open)\n 00020eb0: 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 }\n }\n\n 00020ec0: 20 20 20 74 6f 67 67 6c 65 28 53 45 4c 45 43 54 toggle(SELECT 00020ed0: 4f 52 5f 44 52 4f 50 44 4f 57 4e 5f 54 4f 47 47 OR_DROPDOWN_TOGG 00020ee0: 4c 45 2c 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 41 LE, CLASS_NAME_A 00020ef0: 43 54 49 56 45 29 5c 6e 20 20 20 20 74 6f 67 67 CTIVE)\n togg 00020f00: 6c 65 28 53 45 4c 45 43 54 4f 52 5f 44 52 4f 50 le(SELECTOR_DROP 00020f10: 44 4f 57 4e 5f 4d 45 4e 55 2c 20 43 4c 41 53 53 DOWN_MENU, CLASS 00020f20: 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 20 20 20 _NAME_SHOW)\n 00020f30: 20 6f 75 74 65 72 45 6c 65 6d 2e 73 65 74 41 74 outerElem.setAt 00020f40: 74 72 69 62 75 74 65 28 27 61 72 69 61 2d 65 78 tribute('aria-ex 00020f50: 70 61 6e 64 65 64 27 2c 20 6f 70 65 6e 29 5c 6e panded', open)\n 00020f60: 20 20 7d 5c 6e 5c 6e 20 20 5f 73 65 74 41 74 74 }\n\n _setAtt 00020f70: 72 69 62 75 74 65 49 66 4e 6f 74 45 78 69 73 74 ributeIfNotExist 00020f80: 73 28 65 6c 65 6d 65 6e 74 2c 20 61 74 74 72 69 s(element, attri 00020f90: 62 75 74 65 2c 20 76 61 6c 75 65 29 20 7b 5c 6e bute, value) {\n 00020fa0: 20 20 20 20 69 66 20 28 21 65 6c 65 6d 65 6e 74 if (!element 00020fb0: 2e 68 61 73 41 74 74 72 69 62 75 74 65 28 61 74 .hasAttribute(at 00020fc0: 74 72 69 62 75 74 65 29 29 20 7b 5c 6e 20 20 20 tribute)) {\n 00020fd0: 20 20 20 65 6c 65 6d 65 6e 74 2e 73 65 74 41 74 element.setAt 00020fe0: 74 72 69 62 75 74 65 28 61 74 74 72 69 62 75 74 tribute(attribut 00020ff0: 65 2c 20 76 61 6c 75 65 29 5c 6e 20 20 20 20 7d e, value)\n } 00021000: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 65 6c 65 6d \n }\n\n _elem 00021010: 49 73 41 63 74 69 76 65 28 65 6c 65 6d 29 20 7b IsActive(elem) { 00021020: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 65 6c 65 \n return ele 00021030: 6d 2e 63 6c 61 73 73 4c 69 73 74 2e 63 6f 6e 74 m.classList.cont 00021040: 61 69 6e 73 28 43 4c 41 53 53 5f 4e 41 4d 45 5f ains(CLASS_NAME_ 00021050: 41 43 54 49 56 45 29 5c 6e 20 20 7d 5c 6e 5c 6e ACTIVE)\n }\n\n 00021060: 20 20 2f 2f 20 54 72 79 20 74 6f 20 67 65 74 20 // Try to get 00021070: 74 68 65 20 69 6e 6e 65 72 20 65 6c 65 6d 65 6e the inner elemen 00021080: 74 20 28 75 73 75 61 6c 6c 79 20 74 68 65 20 2e t (usually the . 00021090: 6e 61 76 2d 6c 69 6e 6b 29 5c 6e 20 20 5f 67 65 nav-link)\n _ge 000210a0: 74 49 6e 6e 65 72 45 6c 65 6d 65 6e 74 28 65 6c tInnerElement(el 000210b0: 65 6d 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 em) {\n retur 000210c0: 6e 20 65 6c 65 6d 2e 6d 61 74 63 68 65 73 28 53 n elem.matches(S 000210d0: 45 4c 45 43 54 4f 52 5f 49 4e 4e 45 52 5f 45 4c ELECTOR_INNER_EL 000210e0: 45 4d 29 20 3f 20 65 6c 65 6d 20 3a 20 53 65 6c EM) ? elem : Sel 000210f0: 65 63 74 6f 72 45 6e 67 69 6e 65 2e 66 69 6e 64 ectorEngine.find 00021100: 4f 6e 65 28 53 45 4c 45 43 54 4f 52 5f 49 4e 4e One(SELECTOR_INN 00021110: 45 52 5f 45 4c 45 4d 2c 20 65 6c 65 6d 29 5c 6e ER_ELEM, elem)\n 00021120: 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 54 72 79 20 }\n\n // Try 00021130: 74 6f 20 67 65 74 20 74 68 65 20 6f 75 74 65 72 to get the outer 00021140: 20 65 6c 65 6d 65 6e 74 20 28 75 73 75 61 6c 6c element (usuall 00021150: 79 20 74 68 65 20 2e 6e 61 76 2d 69 74 65 6d 29 y the .nav-item) 00021160: 5c 6e 20 20 5f 67 65 74 4f 75 74 65 72 45 6c 65 \n _getOuterEle 00021170: 6d 65 6e 74 28 65 6c 65 6d 29 20 7b 5c 6e 20 20 ment(elem) {\n 00021180: 20 20 72 65 74 75 72 6e 20 65 6c 65 6d 2e 63 6c return elem.cl 00021190: 6f 73 65 73 74 28 53 45 4c 45 43 54 4f 52 5f 4f osest(SELECTOR_O 000211a0: 55 54 45 52 29 20 7c 7c 20 65 6c 65 6d 5c 6e 20 UTER) || elem\n 000211b0: 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 53 74 61 74 69 }\n\n // Stati 000211c0: 63 5c 6e 20 20 73 74 61 74 69 63 20 6a 51 75 65 c\n static jQue 000211d0: 72 79 49 6e 74 65 72 66 61 63 65 28 63 6f 6e 66 ryInterface(conf 000211e0: 69 67 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 ig) {\n retur 000211f0: 6e 20 74 68 69 73 2e 65 61 63 68 28 66 75 6e 63 n this.each(func 00021200: 74 69 6f 6e 20 28 29 20 7b 5c 6e 20 20 20 20 20 tion () {\n 00021210: 20 63 6f 6e 73 74 20 64 61 74 61 20 3d 20 54 61 const data = Ta 00021220: 62 2e 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 b.getOrCreateIns 00021230: 74 61 6e 63 65 28 74 68 69 73 29 5c 6e 5c 6e 20 tance(this)\n\n 00021240: 20 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 20 if (typeof 00021250: 63 6f 6e 66 69 67 20 21 3d 3d 20 27 73 74 72 69 config !== 'stri 00021260: 6e 67 27 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 ng') {\n 00021270: 72 65 74 75 72 6e 5c 6e 20 20 20 20 20 20 7d 5c return\n }\ 00021280: 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 64 61 74 n\n if (dat 00021290: 61 5b 63 6f 6e 66 69 67 5d 20 3d 3d 3d 20 75 6e a[config] === un 000212a0: 64 65 66 69 6e 65 64 20 7c 7c 20 63 6f 6e 66 69 defined || confi 000212b0: 67 2e 73 74 61 72 74 73 57 69 74 68 28 27 5f 27 g.startsWith('_' 000212c0: 29 20 7c 7c 20 63 6f 6e 66 69 67 20 3d 3d 3d 20 ) || config === 000212d0: 27 63 6f 6e 73 74 72 75 63 74 6f 72 27 29 20 7b 'constructor') { 000212e0: 5c 6e 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 \n throw 000212f0: 6e 65 77 20 54 79 70 65 45 72 72 6f 72 28 60 4e new TypeError(`N 00021300: 6f 20 6d 65 74 68 6f 64 20 6e 61 6d 65 64 20 5c o method named \ 00021310: 22 24 7b 63 6f 6e 66 69 67 7d 5c 22 60 29 5c 6e "${config}\"`)\n 00021320: 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 }\n\n 00021330: 20 64 61 74 61 5b 63 6f 6e 66 69 67 5d 28 29 5c data[config]()\ 00021340: 6e 20 20 20 20 7d 29 5c 6e 20 20 7d 5c 6e 7d 5c n })\n }\n}\ 00021350: 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 44 61 74 61 20 n\n/**\n * Data 00021360: 41 50 49 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 API implementati 00021370: 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e 45 76 65 6e 74 on\n */\n\nEvent 00021380: 48 61 6e 64 6c 65 72 2e 6f 6e 28 64 6f 63 75 6d Handler.on(docum 00021390: 65 6e 74 2c 20 45 56 45 4e 54 5f 43 4c 49 43 4b ent, EVENT_CLICK 000213a0: 5f 44 41 54 41 5f 41 50 49 2c 20 53 45 4c 45 43 _DATA_API, SELEC 000213b0: 54 4f 52 5f 44 41 54 41 5f 54 4f 47 47 4c 45 2c TOR_DATA_TOGGLE, 000213c0: 20 66 75 6e 63 74 69 6f 6e 20 28 65 76 65 6e 74 function (event 000213d0: 29 20 7b 5c 6e 20 20 69 66 20 28 5b 27 41 27 2c ) {\n if (['A', 000213e0: 20 27 41 52 45 41 27 5d 2e 69 6e 63 6c 75 64 65 'AREA'].include 000213f0: 73 28 74 68 69 73 2e 74 61 67 4e 61 6d 65 29 29 s(this.tagName)) 00021400: 20 7b 5c 6e 20 20 20 20 65 76 65 6e 74 2e 70 72 {\n event.pr 00021410: 65 76 65 6e 74 44 65 66 61 75 6c 74 28 29 5c 6e eventDefault()\n 00021420: 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 69 73 44 }\n\n if (isD 00021430: 69 73 61 62 6c 65 64 28 74 68 69 73 29 29 20 7b isabled(this)) { 00021440: 5c 6e 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 \n return\n 00021450: 7d 5c 6e 5c 6e 20 20 54 61 62 2e 67 65 74 4f 72 }\n\n Tab.getOr 00021460: 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 74 CreateInstance(t 00021470: 68 69 73 29 2e 73 68 6f 77 28 29 5c 6e 7d 29 5c his).show()\n})\ 00021480: 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 49 6e 69 74 69 n\n/**\n * Initi 00021490: 61 6c 69 7a 65 20 6f 6e 20 66 6f 63 75 73 5c 6e alize on focus\n 000214a0: 20 2a 2f 5c 6e 45 76 65 6e 74 48 61 6e 64 6c 65 */\nEventHandle 000214b0: 72 2e 6f 6e 28 77 69 6e 64 6f 77 2c 20 45 56 45 r.on(window, EVE 000214c0: 4e 54 5f 4c 4f 41 44 5f 44 41 54 41 5f 41 50 49 NT_LOAD_DATA_API 000214d0: 2c 20 28 29 20 3d 3e 20 7b 5c 6e 20 20 66 6f 72 , () => {\n for 000214e0: 20 28 63 6f 6e 73 74 20 65 6c 65 6d 65 6e 74 20 (const element 000214f0: 6f 66 20 53 65 6c 65 63 74 6f 72 45 6e 67 69 6e of SelectorEngin 00021500: 65 2e 66 69 6e 64 28 53 45 4c 45 43 54 4f 52 5f e.find(SELECTOR_ 00021510: 44 41 54 41 5f 54 4f 47 47 4c 45 5f 41 43 54 49 DATA_TOGGLE_ACTI 00021520: 56 45 29 29 20 7b 5c 6e 20 20 20 20 54 61 62 2e VE)) {\n Tab. 00021530: 67 65 74 4f 72 43 72 65 61 74 65 49 6e 73 74 61 getOrCreateInsta 00021540: 6e 63 65 28 65 6c 65 6d 65 6e 74 29 5c 6e 20 20 nce(element)\n 00021550: 7d 5c 6e 7d 29 5c 6e 2f 2a 2a 5c 6e 20 2a 20 6a }\n})\n/**\n * j 00021560: 51 75 65 72 79 5c 6e 20 2a 2f 5c 6e 5c 6e 64 65 Query\n */\n\nde 00021570: 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 6e fineJQueryPlugin 00021580: 28 54 61 62 29 5c 6e 5c 6e 65 78 70 6f 72 74 20 (Tab)\n\nexport 00021590: 64 65 66 61 75 6c 74 20 54 61 62 5c 6e 22 2c 22 default Tab\n"," 000215a0: 2f 2a 2a 5c 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d /**\n * -------- 000215b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000215c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000215d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000215e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000215f0: 2d 2d 5c 6e 20 2a 20 42 6f 6f 74 73 74 72 61 70 --\n * Bootstrap 00021600: 20 74 6f 61 73 74 2e 6a 73 5c 6e 20 2a 20 4c 69 toast.js\n * Li 00021610: 63 65 6e 73 65 64 20 75 6e 64 65 72 20 4d 49 54 censed under MIT 00021620: 20 28 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 (https://github 00021630: 2e 63 6f 6d 2f 74 77 62 73 2f 62 6f 6f 74 73 74 .com/twbs/bootst 00021640: 72 61 70 2f 62 6c 6f 62 2f 6d 61 69 6e 2f 4c 49 rap/blob/main/LI 00021650: 43 45 4e 53 45 29 5c 6e 20 2a 20 2d 2d 2d 2d 2d CENSE)\n * ----- 00021660: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00021670: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00021680: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00021690: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 000216a0: 2d 2d 2d 2d 2d 5c 6e 20 2a 2f 5c 6e 5c 6e 69 6d -----\n */\n\nim 000216b0: 70 6f 72 74 20 42 61 73 65 43 6f 6d 70 6f 6e 65 port BaseCompone 000216c0: 6e 74 20 66 72 6f 6d 20 27 2e 2f 62 61 73 65 2d nt from './base- 000216d0: 63 6f 6d 70 6f 6e 65 6e 74 2e 6a 73 27 5c 6e 69 component.js'\ni 000216e0: 6d 70 6f 72 74 20 45 76 65 6e 74 48 61 6e 64 6c mport EventHandl 000216f0: 65 72 20 66 72 6f 6d 20 27 2e 2f 64 6f 6d 2f 65 er from './dom/e 00021700: 76 65 6e 74 2d 68 61 6e 64 6c 65 72 2e 6a 73 27 vent-handler.js' 00021710: 5c 6e 69 6d 70 6f 72 74 20 7b 20 65 6e 61 62 6c \nimport { enabl 00021720: 65 44 69 73 6d 69 73 73 54 72 69 67 67 65 72 20 eDismissTrigger 00021730: 7d 20 66 72 6f 6d 20 27 2e 2f 75 74 69 6c 2f 63 } from './util/c 00021740: 6f 6d 70 6f 6e 65 6e 74 2d 66 75 6e 63 74 69 6f omponent-functio 00021750: 6e 73 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 7b ns.js'\nimport { 00021760: 20 64 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 defineJQueryPlu 00021770: 67 69 6e 2c 20 72 65 66 6c 6f 77 20 7d 20 66 72 gin, reflow } fr 00021780: 6f 6d 20 27 2e 2f 75 74 69 6c 2f 69 6e 64 65 78 om './util/index 00021790: 2e 6a 73 27 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 .js'\n\n/**\n * 000217a0: 43 6f 6e 73 74 61 6e 74 73 5c 6e 20 2a 2f 5c 6e Constants\n */\n 000217b0: 5c 6e 63 6f 6e 73 74 20 4e 41 4d 45 20 3d 20 27 \nconst NAME = ' 000217c0: 74 6f 61 73 74 27 5c 6e 63 6f 6e 73 74 20 44 41 toast'\nconst DA 000217d0: 54 41 5f 4b 45 59 20 3d 20 27 62 73 2e 74 6f 61 TA_KEY = 'bs.toa 000217e0: 73 74 27 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 st'\nconst EVENT 000217f0: 5f 4b 45 59 20 3d 20 60 2e 24 7b 44 41 54 41 5f _KEY = `.${DATA_ 00021800: 4b 45 59 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 20 45 KEY}`\n\nconst E 00021810: 56 45 4e 54 5f 4d 4f 55 53 45 4f 56 45 52 20 3d VENT_MOUSEOVER = 00021820: 20 60 6d 6f 75 73 65 6f 76 65 72 24 7b 45 56 45 `mouseover${EVE 00021830: 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 NT_KEY}`\nconst 00021840: 45 56 45 4e 54 5f 4d 4f 55 53 45 4f 55 54 20 3d EVENT_MOUSEOUT = 00021850: 20 60 6d 6f 75 73 65 6f 75 74 24 7b 45 56 45 4e `mouseout${EVEN 00021860: 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 T_KEY}`\nconst E 00021870: 56 45 4e 54 5f 46 4f 43 55 53 49 4e 20 3d 20 60 VENT_FOCUSIN = ` 00021880: 66 6f 63 75 73 69 6e 24 7b 45 56 45 4e 54 5f 4b focusin${EVENT_K 00021890: 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e EY}`\nconst EVEN 000218a0: 54 5f 46 4f 43 55 53 4f 55 54 20 3d 20 60 66 6f T_FOCUSOUT = `fo 000218b0: 63 75 73 6f 75 74 24 7b 45 56 45 4e 54 5f 4b 45 cusout${EVENT_KE 000218c0: 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 4e 54 Y}`\nconst EVENT 000218d0: 5f 48 49 44 45 20 3d 20 60 68 69 64 65 24 7b 45 _HIDE = `hide${E 000218e0: 56 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f 6e 73 VENT_KEY}`\ncons 000218f0: 74 20 45 56 45 4e 54 5f 48 49 44 44 45 4e 20 3d t EVENT_HIDDEN = 00021900: 20 60 68 69 64 64 65 6e 24 7b 45 56 45 4e 54 5f `hidden${EVENT_ 00021910: 4b 45 59 7d 60 5c 6e 63 6f 6e 73 74 20 45 56 45 KEY}`\nconst EVE 00021920: 4e 54 5f 53 48 4f 57 20 3d 20 60 73 68 6f 77 24 NT_SHOW = `show$ 00021930: 7b 45 56 45 4e 54 5f 4b 45 59 7d 60 5c 6e 63 6f {EVENT_KEY}`\nco 00021940: 6e 73 74 20 45 56 45 4e 54 5f 53 48 4f 57 4e 20 nst EVENT_SHOWN 00021950: 3d 20 60 73 68 6f 77 6e 24 7b 45 56 45 4e 54 5f = `shown${EVENT_ 00021960: 4b 45 59 7d 60 5c 6e 5c 6e 63 6f 6e 73 74 20 43 KEY}`\n\nconst C 00021970: 4c 41 53 53 5f 4e 41 4d 45 5f 46 41 44 45 20 3d LASS_NAME_FADE = 00021980: 20 27 66 61 64 65 27 5c 6e 63 6f 6e 73 74 20 43 'fade'\nconst C 00021990: 4c 41 53 53 5f 4e 41 4d 45 5f 48 49 44 45 20 3d LASS_NAME_HIDE = 000219a0: 20 27 68 69 64 65 27 20 2f 2f 20 40 64 65 70 72 'hide' // @depr 000219b0: 65 63 61 74 65 64 20 2d 20 6b 65 70 74 20 68 65 ecated - kept he 000219c0: 72 65 20 6f 6e 6c 79 20 66 6f 72 20 62 61 63 6b re only for back 000219d0: 77 61 72 64 73 20 63 6f 6d 70 61 74 69 62 69 6c wards compatibil 000219e0: 69 74 79 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 ity\nconst CLASS 000219f0: 5f 4e 41 4d 45 5f 53 48 4f 57 20 3d 20 27 73 68 _NAME_SHOW = 'sh 00021a00: 6f 77 27 5c 6e 63 6f 6e 73 74 20 43 4c 41 53 53 ow'\nconst CLASS 00021a10: 5f 4e 41 4d 45 5f 53 48 4f 57 49 4e 47 20 3d 20 _NAME_SHOWING = 00021a20: 27 73 68 6f 77 69 6e 67 27 5c 6e 5c 6e 63 6f 6e 'showing'\n\ncon 00021a30: 73 74 20 44 65 66 61 75 6c 74 54 79 70 65 20 3d st DefaultType = 00021a40: 20 7b 5c 6e 20 20 61 6e 69 6d 61 74 69 6f 6e 3a {\n animation: 00021a50: 20 27 62 6f 6f 6c 65 61 6e 27 2c 5c 6e 20 20 61 'boolean',\n a 00021a60: 75 74 6f 68 69 64 65 3a 20 27 62 6f 6f 6c 65 61 utohide: 'boolea 00021a70: 6e 27 2c 5c 6e 20 20 64 65 6c 61 79 3a 20 27 6e n',\n delay: 'n 00021a80: 75 6d 62 65 72 27 5c 6e 7d 5c 6e 5c 6e 63 6f 6e umber'\n}\n\ncon 00021a90: 73 74 20 44 65 66 61 75 6c 74 20 3d 20 7b 5c 6e st Default = {\n 00021aa0: 20 20 61 6e 69 6d 61 74 69 6f 6e 3a 20 74 72 75 animation: tru 00021ab0: 65 2c 5c 6e 20 20 61 75 74 6f 68 69 64 65 3a 20 e,\n autohide: 00021ac0: 74 72 75 65 2c 5c 6e 20 20 64 65 6c 61 79 3a 20 true,\n delay: 00021ad0: 35 30 30 30 5c 6e 7d 5c 6e 5c 6e 2f 2a 2a 5c 6e 5000\n}\n\n/**\n 00021ae0: 20 2a 20 43 6c 61 73 73 20 64 65 66 69 6e 69 74 * Class definit 00021af0: 69 6f 6e 5c 6e 20 2a 2f 5c 6e 5c 6e 63 6c 61 73 ion\n */\n\nclas 00021b00: 73 20 54 6f 61 73 74 20 65 78 74 65 6e 64 73 20 s Toast extends 00021b10: 42 61 73 65 43 6f 6d 70 6f 6e 65 6e 74 20 7b 5c BaseComponent {\ 00021b20: 6e 20 20 63 6f 6e 73 74 72 75 63 74 6f 72 28 65 n constructor(e 00021b30: 6c 65 6d 65 6e 74 2c 20 63 6f 6e 66 69 67 29 20 lement, config) 00021b40: 7b 5c 6e 20 20 20 20 73 75 70 65 72 28 65 6c 65 {\n super(ele 00021b50: 6d 65 6e 74 2c 20 63 6f 6e 66 69 67 29 5c 6e 5c ment, config)\n\ 00021b60: 6e 20 20 20 20 74 68 69 73 2e 5f 74 69 6d 65 6f n this._timeo 00021b70: 75 74 20 3d 20 6e 75 6c 6c 5c 6e 20 20 20 20 74 ut = null\n t 00021b80: 68 69 73 2e 5f 68 61 73 4d 6f 75 73 65 49 6e 74 his._hasMouseInt 00021b90: 65 72 61 63 74 69 6f 6e 20 3d 20 66 61 6c 73 65 eraction = false 00021ba0: 5c 6e 20 20 20 20 74 68 69 73 2e 5f 68 61 73 4b \n this._hasK 00021bb0: 65 79 62 6f 61 72 64 49 6e 74 65 72 61 63 74 69 eyboardInteracti 00021bc0: 6f 6e 20 3d 20 66 61 6c 73 65 5c 6e 20 20 20 20 on = false\n 00021bd0: 74 68 69 73 2e 5f 73 65 74 4c 69 73 74 65 6e 65 this._setListene 00021be0: 72 73 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f rs()\n }\n\n / 00021bf0: 2f 20 47 65 74 74 65 72 73 5c 6e 20 20 73 74 61 / Getters\n sta 00021c00: 74 69 63 20 67 65 74 20 44 65 66 61 75 6c 74 28 tic get Default( 00021c10: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 00021c20: 44 65 66 61 75 6c 74 5c 6e 20 20 7d 5c 6e 5c 6e Default\n }\n\n 00021c30: 20 20 73 74 61 74 69 63 20 67 65 74 20 44 65 66 static get Def 00021c40: 61 75 6c 74 54 79 70 65 28 29 20 7b 5c 6e 20 20 aultType() {\n 00021c50: 20 20 72 65 74 75 72 6e 20 44 65 66 61 75 6c 74 return Default 00021c60: 54 79 70 65 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 73 Type\n }\n\n s 00021c70: 74 61 74 69 63 20 67 65 74 20 4e 41 4d 45 28 29 tatic get NAME() 00021c80: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 4e {\n return N 00021c90: 41 4d 45 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f AME\n }\n\n // 00021ca0: 20 50 75 62 6c 69 63 5c 6e 20 20 73 68 6f 77 28 Public\n show( 00021cb0: 29 20 7b 5c 6e 20 20 20 20 63 6f 6e 73 74 20 73 ) {\n const s 00021cc0: 68 6f 77 45 76 65 6e 74 20 3d 20 45 76 65 6e 74 howEvent = Event 00021cd0: 48 61 6e 64 6c 65 72 2e 74 72 69 67 67 65 72 28 Handler.trigger( 00021ce0: 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 45 this._element, E 00021cf0: 56 45 4e 54 5f 53 48 4f 57 29 5c 6e 5c 6e 20 20 VENT_SHOW)\n\n 00021d00: 20 20 69 66 20 28 73 68 6f 77 45 76 65 6e 74 2e if (showEvent. 00021d10: 64 65 66 61 75 6c 74 50 72 65 76 65 6e 74 65 64 defaultPrevented 00021d20: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 ) {\n retur 00021d30: 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 n\n }\n\n 00021d40: 74 68 69 73 2e 5f 63 6c 65 61 72 54 69 6d 65 6f this._clearTimeo 00021d50: 75 74 28 29 5c 6e 5c 6e 20 20 20 20 69 66 20 28 ut()\n\n if ( 00021d60: 74 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 61 6e 69 this._config.ani 00021d70: 6d 61 74 69 6f 6e 29 20 7b 5c 6e 20 20 20 20 20 mation) {\n 00021d80: 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e 63 this._element.c 00021d90: 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 43 4c 41 lassList.add(CLA 00021da0: 53 53 5f 4e 41 4d 45 5f 46 41 44 45 29 5c 6e 20 SS_NAME_FADE)\n 00021db0: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 6f 6e 73 }\n\n cons 00021dc0: 74 20 63 6f 6d 70 6c 65 74 65 20 3d 20 28 29 20 t complete = () 00021dd0: 3d 3e 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 => {\n this 00021de0: 2e 5f 65 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c ._element.classL 00021df0: 69 73 74 2e 72 65 6d 6f 76 65 28 43 4c 41 53 53 ist.remove(CLASS 00021e00: 5f 4e 41 4d 45 5f 53 48 4f 57 49 4e 47 29 5c 6e _NAME_SHOWING)\n 00021e10: 20 20 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c EventHandl 00021e20: 65 72 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e er.trigger(this. 00021e30: 5f 65 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f _element, EVENT_ 00021e40: 53 48 4f 57 4e 29 5c 6e 5c 6e 20 20 20 20 20 20 SHOWN)\n\n 00021e50: 74 68 69 73 2e 5f 6d 61 79 62 65 53 63 68 65 64 this._maybeSched 00021e60: 75 6c 65 48 69 64 65 28 29 5c 6e 20 20 20 20 7d uleHide()\n } 00021e70: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c \n\n this._el 00021e80: 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e ement.classList. 00021e90: 72 65 6d 6f 76 65 28 43 4c 41 53 53 5f 4e 41 4d remove(CLASS_NAM 00021ea0: 45 5f 48 49 44 45 29 20 2f 2f 20 40 64 65 70 72 E_HIDE) // @depr 00021eb0: 65 63 61 74 65 64 5c 6e 20 20 20 20 72 65 66 6c ecated\n refl 00021ec0: 6f 77 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 ow(this._element 00021ed0: 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 )\n this._ele 00021ee0: 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e 61 ment.classList.a 00021ef0: 64 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 dd(CLASS_NAME_SH 00021f00: 4f 57 2c 20 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 OW, CLASS_NAME_S 00021f10: 48 4f 57 49 4e 47 29 5c 6e 5c 6e 20 20 20 20 74 HOWING)\n\n t 00021f20: 68 69 73 2e 5f 71 75 65 75 65 43 61 6c 6c 62 61 his._queueCallba 00021f30: 63 6b 28 63 6f 6d 70 6c 65 74 65 2c 20 74 68 69 ck(complete, thi 00021f40: 73 2e 5f 65 6c 65 6d 65 6e 74 2c 20 74 68 69 73 s._element, this 00021f50: 2e 5f 63 6f 6e 66 69 67 2e 61 6e 69 6d 61 74 69 ._config.animati 00021f60: 6f 6e 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 68 69 on)\n }\n\n hi 00021f70: 64 65 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 de() {\n if ( 00021f80: 21 74 68 69 73 2e 69 73 53 68 6f 77 6e 28 29 29 !this.isShown()) 00021f90: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 00021fa0: 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 63 \n }\n\n c 00021fb0: 6f 6e 73 74 20 68 69 64 65 45 76 65 6e 74 20 3d onst hideEvent = 00021fc0: 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e 74 72 EventHandler.tr 00021fd0: 69 67 67 65 72 28 74 68 69 73 2e 5f 65 6c 65 6d igger(this._elem 00021fe0: 65 6e 74 2c 20 45 56 45 4e 54 5f 48 49 44 45 29 ent, EVENT_HIDE) 00021ff0: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 68 69 64 65 \n\n if (hide 00022000: 45 76 65 6e 74 2e 64 65 66 61 75 6c 74 50 72 65 Event.defaultPre 00022010: 76 65 6e 74 65 64 29 20 7b 5c 6e 20 20 20 20 20 vented) {\n 00022020: 20 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e return\n }\n 00022030: 5c 6e 20 20 20 20 63 6f 6e 73 74 20 63 6f 6d 70 \n const comp 00022040: 6c 65 74 65 20 3d 20 28 29 20 3d 3e 20 7b 5c 6e lete = () => {\n 00022050: 20 20 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d this._elem 00022060: 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 ent.classList.ad 00022070: 64 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 48 49 44 d(CLASS_NAME_HID 00022080: 45 29 20 2f 2f 20 40 64 65 70 72 65 63 61 74 65 E) // @deprecate 00022090: 64 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 5f 65 d\n this._e 000220a0: 6c 65 6d 65 6e 74 2e 63 6c 61 73 73 4c 69 73 74 lement.classList 000220b0: 2e 72 65 6d 6f 76 65 28 43 4c 41 53 53 5f 4e 41 .remove(CLASS_NA 000220c0: 4d 45 5f 53 48 4f 57 49 4e 47 2c 20 43 4c 41 53 ME_SHOWING, CLAS 000220d0: 53 5f 4e 41 4d 45 5f 53 48 4f 57 29 5c 6e 20 20 S_NAME_SHOW)\n 000220e0: 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 EventHandler 000220f0: 2e 74 72 69 67 67 65 72 28 74 68 69 73 2e 5f 65 .trigger(this._e 00022100: 6c 65 6d 65 6e 74 2c 20 45 56 45 4e 54 5f 48 49 lement, EVENT_HI 00022110: 44 44 45 4e 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e DDEN)\n }\n\n 00022120: 20 20 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e this._elemen 00022130: 74 2e 63 6c 61 73 73 4c 69 73 74 2e 61 64 64 28 t.classList.add( 00022140: 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 49 CLASS_NAME_SHOWI 00022150: 4e 47 29 5c 6e 20 20 20 20 74 68 69 73 2e 5f 71 NG)\n this._q 00022160: 75 65 75 65 43 61 6c 6c 62 61 63 6b 28 63 6f 6d ueueCallback(com 00022170: 70 6c 65 74 65 2c 20 74 68 69 73 2e 5f 65 6c 65 plete, this._ele 00022180: 6d 65 6e 74 2c 20 74 68 69 73 2e 5f 63 6f 6e 66 ment, this._conf 00022190: 69 67 2e 61 6e 69 6d 61 74 69 6f 6e 29 5c 6e 20 ig.animation)\n 000221a0: 20 7d 5c 6e 5c 6e 20 20 64 69 73 70 6f 73 65 28 }\n\n dispose( 000221b0: 29 20 7b 5c 6e 20 20 20 20 74 68 69 73 2e 5f 63 ) {\n this._c 000221c0: 6c 65 61 72 54 69 6d 65 6f 75 74 28 29 5c 6e 5c learTimeout()\n\ 000221d0: 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 69 73 n if (this.is 000221e0: 53 68 6f 77 6e 28 29 29 20 7b 5c 6e 20 20 20 20 Shown()) {\n 000221f0: 20 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e this._element. 00022200: 63 6c 61 73 73 4c 69 73 74 2e 72 65 6d 6f 76 65 classList.remove 00022210: 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 4f 57 (CLASS_NAME_SHOW 00022220: 29 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 )\n }\n\n 00022230: 73 75 70 65 72 2e 64 69 73 70 6f 73 65 28 29 5c super.dispose()\ 00022240: 6e 20 20 7d 5c 6e 5c 6e 20 20 69 73 53 68 6f 77 n }\n\n isShow 00022250: 6e 28 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 n() {\n retur 00022260: 6e 20 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 2e n this._element. 00022270: 63 6c 61 73 73 4c 69 73 74 2e 63 6f 6e 74 61 69 classList.contai 00022280: 6e 73 28 43 4c 41 53 53 5f 4e 41 4d 45 5f 53 48 ns(CLASS_NAME_SH 00022290: 4f 57 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f OW)\n }\n\n // 000222a0: 20 50 72 69 76 61 74 65 5c 6e 5c 6e 20 20 5f 6d Private\n\n _m 000222b0: 61 79 62 65 53 63 68 65 64 75 6c 65 48 69 64 65 aybeScheduleHide 000222c0: 28 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 () {\n if (!t 000222d0: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 61 75 74 6f his._config.auto 000222e0: 68 69 64 65 29 20 7b 5c 6e 20 20 20 20 20 20 72 hide) {\n r 000222f0: 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e eturn\n }\n\n 00022300: 20 20 20 20 69 66 20 28 74 68 69 73 2e 5f 68 61 if (this._ha 00022310: 73 4d 6f 75 73 65 49 6e 74 65 72 61 63 74 69 6f sMouseInteractio 00022320: 6e 20 7c 7c 20 74 68 69 73 2e 5f 68 61 73 4b 65 n || this._hasKe 00022330: 79 62 6f 61 72 64 49 6e 74 65 72 61 63 74 69 6f yboardInteractio 00022340: 6e 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 n) {\n retu 00022350: 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 rn\n }\n\n 00022360: 20 74 68 69 73 2e 5f 74 69 6d 65 6f 75 74 20 3d this._timeout = 00022370: 20 73 65 74 54 69 6d 65 6f 75 74 28 28 29 20 3d setTimeout(() = 00022380: 3e 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e > {\n this. 00022390: 68 69 64 65 28 29 5c 6e 20 20 20 20 7d 2c 20 74 hide()\n }, t 000223a0: 68 69 73 2e 5f 63 6f 6e 66 69 67 2e 64 65 6c 61 his._config.dela 000223b0: 79 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 6f 6e y)\n }\n\n _on 000223c0: 49 6e 74 65 72 61 63 74 69 6f 6e 28 65 76 65 6e Interaction(even 000223d0: 74 2c 20 69 73 49 6e 74 65 72 61 63 74 69 6e 67 t, isInteracting 000223e0: 29 20 7b 5c 6e 20 20 20 20 73 77 69 74 63 68 20 ) {\n switch 000223f0: 28 65 76 65 6e 74 2e 74 79 70 65 29 20 7b 5c 6e (event.type) {\n 00022400: 20 20 20 20 20 20 63 61 73 65 20 27 6d 6f 75 73 case 'mous 00022410: 65 6f 76 65 72 27 3a 5c 6e 20 20 20 20 20 20 63 eover':\n c 00022420: 61 73 65 20 27 6d 6f 75 73 65 6f 75 74 27 3a 20 ase 'mouseout': 00022430: 7b 5c 6e 20 20 20 20 20 20 20 20 74 68 69 73 2e {\n this. 00022440: 5f 68 61 73 4d 6f 75 73 65 49 6e 74 65 72 61 63 _hasMouseInterac 00022450: 74 69 6f 6e 20 3d 20 69 73 49 6e 74 65 72 61 63 tion = isInterac 00022460: 74 69 6e 67 5c 6e 20 20 20 20 20 20 20 20 62 72 ting\n br 00022470: 65 61 6b 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e eak\n }\n\n 00022480: 20 20 20 20 20 20 63 61 73 65 20 27 66 6f 63 75 case 'focu 00022490: 73 69 6e 27 3a 5c 6e 20 20 20 20 20 20 63 61 73 sin':\n cas 000224a0: 65 20 27 66 6f 63 75 73 6f 75 74 27 3a 20 7b 5c e 'focusout': {\ 000224b0: 6e 20 20 20 20 20 20 20 20 74 68 69 73 2e 5f 68 n this._h 000224c0: 61 73 4b 65 79 62 6f 61 72 64 49 6e 74 65 72 61 asKeyboardIntera 000224d0: 63 74 69 6f 6e 20 3d 20 69 73 49 6e 74 65 72 61 ction = isIntera 000224e0: 63 74 69 6e 67 5c 6e 20 20 20 20 20 20 20 20 62 cting\n b 000224f0: 72 65 61 6b 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c reak\n }\n\ 00022500: 6e 20 20 20 20 20 20 64 65 66 61 75 6c 74 3a 20 n default: 00022510: 7b 5c 6e 20 20 20 20 20 20 20 20 62 72 65 61 6b {\n break 00022520: 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d \n }\n } 00022530: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 69 73 49 6e \n\n if (isIn 00022540: 74 65 72 61 63 74 69 6e 67 29 20 7b 5c 6e 20 20 teracting) {\n 00022550: 20 20 20 20 74 68 69 73 2e 5f 63 6c 65 61 72 54 this._clearT 00022560: 69 6d 65 6f 75 74 28 29 5c 6e 20 20 20 20 20 20 imeout()\n 00022570: 72 65 74 75 72 6e 5c 6e 20 20 20 20 7d 5c 6e 5c return\n }\n\ 00022580: 6e 20 20 20 20 63 6f 6e 73 74 20 6e 65 78 74 45 n const nextE 00022590: 6c 65 6d 65 6e 74 20 3d 20 65 76 65 6e 74 2e 72 lement = event.r 000225a0: 65 6c 61 74 65 64 54 61 72 67 65 74 5c 6e 20 20 elatedTarget\n 000225b0: 20 20 69 66 20 28 74 68 69 73 2e 5f 65 6c 65 6d if (this._elem 000225c0: 65 6e 74 20 3d 3d 3d 20 6e 65 78 74 45 6c 65 6d ent === nextElem 000225d0: 65 6e 74 20 7c 7c 20 74 68 69 73 2e 5f 65 6c 65 ent || this._ele 000225e0: 6d 65 6e 74 2e 63 6f 6e 74 61 69 6e 73 28 6e 65 ment.contains(ne 000225f0: 78 74 45 6c 65 6d 65 6e 74 29 29 20 7b 5c 6e 20 xtElement)) {\n 00022600: 20 20 20 20 20 72 65 74 75 72 6e 5c 6e 20 20 20 return\n 00022610: 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f }\n\n this._ 00022620: 6d 61 79 62 65 53 63 68 65 64 75 6c 65 48 69 64 maybeScheduleHid 00022630: 65 28 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 5f 73 e()\n }\n\n _s 00022640: 65 74 4c 69 73 74 65 6e 65 72 73 28 29 20 7b 5c etListeners() {\ 00022650: 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 n EventHandle 00022660: 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d 65 r.on(this._eleme 00022670: 6e 74 2c 20 45 56 45 4e 54 5f 4d 4f 55 53 45 4f nt, EVENT_MOUSEO 00022680: 56 45 52 2c 20 65 76 65 6e 74 20 3d 3e 20 74 68 VER, event => th 00022690: 69 73 2e 5f 6f 6e 49 6e 74 65 72 61 63 74 69 6f is._onInteractio 000226a0: 6e 28 65 76 65 6e 74 2c 20 74 72 75 65 29 29 5c n(event, true))\ 000226b0: 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 n EventHandle 000226c0: 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d 65 r.on(this._eleme 000226d0: 6e 74 2c 20 45 56 45 4e 54 5f 4d 4f 55 53 45 4f nt, EVENT_MOUSEO 000226e0: 55 54 2c 20 65 76 65 6e 74 20 3d 3e 20 74 68 69 UT, event => thi 000226f0: 73 2e 5f 6f 6e 49 6e 74 65 72 61 63 74 69 6f 6e s._onInteraction 00022700: 28 65 76 65 6e 74 2c 20 66 61 6c 73 65 29 29 5c (event, false))\ 00022710: 6e 20 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 n EventHandle 00022720: 72 2e 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d 65 r.on(this._eleme 00022730: 6e 74 2c 20 45 56 45 4e 54 5f 46 4f 43 55 53 49 nt, EVENT_FOCUSI 00022740: 4e 2c 20 65 76 65 6e 74 20 3d 3e 20 74 68 69 73 N, event => this 00022750: 2e 5f 6f 6e 49 6e 74 65 72 61 63 74 69 6f 6e 28 ._onInteraction( 00022760: 65 76 65 6e 74 2c 20 74 72 75 65 29 29 5c 6e 20 event, true))\n 00022770: 20 20 20 45 76 65 6e 74 48 61 6e 64 6c 65 72 2e EventHandler. 00022780: 6f 6e 28 74 68 69 73 2e 5f 65 6c 65 6d 65 6e 74 on(this._element 00022790: 2c 20 45 56 45 4e 54 5f 46 4f 43 55 53 4f 55 54 , EVENT_FOCUSOUT 000227a0: 2c 20 65 76 65 6e 74 20 3d 3e 20 74 68 69 73 2e , event => this. 000227b0: 5f 6f 6e 49 6e 74 65 72 61 63 74 69 6f 6e 28 65 _onInteraction(e 000227c0: 76 65 6e 74 2c 20 66 61 6c 73 65 29 29 5c 6e 20 vent, false))\n 000227d0: 20 7d 5c 6e 5c 6e 20 20 5f 63 6c 65 61 72 54 69 }\n\n _clearTi 000227e0: 6d 65 6f 75 74 28 29 20 7b 5c 6e 20 20 20 20 63 meout() {\n c 000227f0: 6c 65 61 72 54 69 6d 65 6f 75 74 28 74 68 69 73 learTimeout(this 00022800: 2e 5f 74 69 6d 65 6f 75 74 29 5c 6e 20 20 20 20 ._timeout)\n 00022810: 74 68 69 73 2e 5f 74 69 6d 65 6f 75 74 20 3d 20 this._timeout = 00022820: 6e 75 6c 6c 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f null\n }\n\n / 00022830: 2f 20 53 74 61 74 69 63 5c 6e 20 20 73 74 61 74 / Static\n stat 00022840: 69 63 20 6a 51 75 65 72 79 49 6e 74 65 72 66 61 ic jQueryInterfa 00022850: 63 65 28 63 6f 6e 66 69 67 29 20 7b 5c 6e 20 20 ce(config) {\n 00022860: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 65 61 return this.ea 00022870: 63 68 28 66 75 6e 63 74 69 6f 6e 20 28 29 20 7b ch(function () { 00022880: 5c 6e 20 20 20 20 20 20 63 6f 6e 73 74 20 64 61 \n const da 00022890: 74 61 20 3d 20 54 6f 61 73 74 2e 67 65 74 4f 72 ta = Toast.getOr 000228a0: 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 74 CreateInstance(t 000228b0: 68 69 73 2c 20 63 6f 6e 66 69 67 29 5c 6e 5c 6e his, config)\n\n 000228c0: 20 20 20 20 20 20 69 66 20 28 74 79 70 65 6f 66 if (typeof 000228d0: 20 63 6f 6e 66 69 67 20 3d 3d 3d 20 27 73 74 72 config === 'str 000228e0: 69 6e 67 27 29 20 7b 5c 6e 20 20 20 20 20 20 20 ing') {\n 000228f0: 20 69 66 20 28 74 79 70 65 6f 66 20 64 61 74 61 if (typeof data 00022900: 5b 63 6f 6e 66 69 67 5d 20 3d 3d 3d 20 27 75 6e [config] === 'un 00022910: 64 65 66 69 6e 65 64 27 29 20 7b 5c 6e 20 20 20 defined') {\n 00022920: 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 throw new 00022930: 20 54 79 70 65 45 72 72 6f 72 28 60 4e 6f 20 6d TypeError(`No m 00022940: 65 74 68 6f 64 20 6e 61 6d 65 64 20 5c 22 24 7b ethod named \"${ 00022950: 63 6f 6e 66 69 67 7d 5c 22 60 29 5c 6e 20 20 20 config}\"`)\n 00022960: 20 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 }\n\n 00022970: 20 20 64 61 74 61 5b 63 6f 6e 66 69 67 5d 28 74 data[config](t 00022980: 68 69 73 29 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 his)\n }\n 00022990: 20 20 20 7d 29 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c })\n }\n}\n\ 000229a0: 6e 2f 2a 2a 5c 6e 20 2a 20 44 61 74 61 20 41 50 n/**\n * Data AP 000229b0: 49 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e I implementation 000229c0: 5c 6e 20 2a 2f 5c 6e 5c 6e 65 6e 61 62 6c 65 44 \n */\n\nenableD 000229d0: 69 73 6d 69 73 73 54 72 69 67 67 65 72 28 54 6f ismissTrigger(To 000229e0: 61 73 74 29 5c 6e 5c 6e 2f 2a 2a 5c 6e 20 2a 20 ast)\n\n/**\n * 000229f0: 6a 51 75 65 72 79 5c 6e 20 2a 2f 5c 6e 5c 6e 64 jQuery\n */\n\nd 00022a00: 65 66 69 6e 65 4a 51 75 65 72 79 50 6c 75 67 69 efineJQueryPlugi 00022a10: 6e 28 54 6f 61 73 74 29 5c 6e 5c 6e 65 78 70 6f n(Toast)\n\nexpo 00022a20: 72 74 20 64 65 66 61 75 6c 74 20 54 6f 61 73 74 rt default Toast 00022a30: 5c 6e 22 2c 22 2f 2a 2a 5c 6e 20 2a 20 2d 2d 2d \n","/**\n * --- 00022a40: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022a50: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022a60: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022a70: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022a80: 2d 2d 2d 2d 2d 2d 2d 5c 6e 20 2a 20 42 6f 6f 74 -------\n * Boot 00022a90: 73 74 72 61 70 20 69 6e 64 65 78 2e 75 6d 64 2e strap index.umd. 00022aa0: 6a 73 5c 6e 20 2a 20 4c 69 63 65 6e 73 65 64 20 js\n * Licensed 00022ab0: 75 6e 64 65 72 20 4d 49 54 20 28 68 74 74 70 73 under MIT (https 00022ac0: 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 77 ://github.com/tw 00022ad0: 62 73 2f 62 6f 6f 74 73 74 72 61 70 2f 62 6c 6f bs/bootstrap/blo 00022ae0: 62 2f 6d 61 69 6e 2f 4c 49 43 45 4e 53 45 29 5c b/main/LICENSE)\ 00022af0: 6e 20 2a 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d n * ------------ 00022b00: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022b10: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022b20: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d ---------------- 00022b30: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 5c 6e --------------\n 00022b40: 20 2a 2f 5c 6e 5c 6e 69 6d 70 6f 72 74 20 41 6c */\n\nimport Al 00022b50: 65 72 74 20 66 72 6f 6d 20 27 2e 2f 73 72 63 2f ert from './src/ 00022b60: 61 6c 65 72 74 2e 6a 73 27 5c 6e 69 6d 70 6f 72 alert.js'\nimpor 00022b70: 74 20 42 75 74 74 6f 6e 20 66 72 6f 6d 20 27 2e t Button from '. 00022b80: 2f 73 72 63 2f 62 75 74 74 6f 6e 2e 6a 73 27 5c /src/button.js'\ 00022b90: 6e 69 6d 70 6f 72 74 20 43 61 72 6f 75 73 65 6c nimport Carousel 00022ba0: 20 66 72 6f 6d 20 27 2e 2f 73 72 63 2f 63 61 72 from './src/car 00022bb0: 6f 75 73 65 6c 2e 6a 73 27 5c 6e 69 6d 70 6f 72 ousel.js'\nimpor 00022bc0: 74 20 43 6f 6c 6c 61 70 73 65 20 66 72 6f 6d 20 t Collapse from 00022bd0: 27 2e 2f 73 72 63 2f 63 6f 6c 6c 61 70 73 65 2e './src/collapse. 00022be0: 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 44 72 6f 70 js'\nimport Drop 00022bf0: 64 6f 77 6e 20 66 72 6f 6d 20 27 2e 2f 73 72 63 down from './src 00022c00: 2f 64 72 6f 70 64 6f 77 6e 2e 6a 73 27 5c 6e 69 /dropdown.js'\ni 00022c10: 6d 70 6f 72 74 20 4d 6f 64 61 6c 20 66 72 6f 6d mport Modal from 00022c20: 20 27 2e 2f 73 72 63 2f 6d 6f 64 61 6c 2e 6a 73 './src/modal.js 00022c30: 27 5c 6e 69 6d 70 6f 72 74 20 4f 66 66 63 61 6e '\nimport Offcan 00022c40: 76 61 73 20 66 72 6f 6d 20 27 2e 2f 73 72 63 2f vas from './src/ 00022c50: 6f 66 66 63 61 6e 76 61 73 2e 6a 73 27 5c 6e 69 offcanvas.js'\ni 00022c60: 6d 70 6f 72 74 20 50 6f 70 6f 76 65 72 20 66 72 mport Popover fr 00022c70: 6f 6d 20 27 2e 2f 73 72 63 2f 70 6f 70 6f 76 65 om './src/popove 00022c80: 72 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 53 63 r.js'\nimport Sc 00022c90: 72 6f 6c 6c 53 70 79 20 66 72 6f 6d 20 27 2e 2f rollSpy from './ 00022ca0: 73 72 63 2f 73 63 72 6f 6c 6c 73 70 79 2e 6a 73 src/scrollspy.js 00022cb0: 27 5c 6e 69 6d 70 6f 72 74 20 54 61 62 20 66 72 '\nimport Tab fr 00022cc0: 6f 6d 20 27 2e 2f 73 72 63 2f 74 61 62 2e 6a 73 om './src/tab.js 00022cd0: 27 5c 6e 69 6d 70 6f 72 74 20 54 6f 61 73 74 20 '\nimport Toast 00022ce0: 66 72 6f 6d 20 27 2e 2f 73 72 63 2f 74 6f 61 73 from './src/toas 00022cf0: 74 2e 6a 73 27 5c 6e 69 6d 70 6f 72 74 20 54 6f t.js'\nimport To 00022d00: 6f 6c 74 69 70 20 66 72 6f 6d 20 27 2e 2f 73 72 oltip from './sr 00022d10: 63 2f 74 6f 6f 6c 74 69 70 2e 6a 73 27 5c 6e 5c c/tooltip.js'\n\ 00022d20: 6e 65 78 70 6f 72 74 20 64 65 66 61 75 6c 74 20 nexport default 00022d30: 7b 5c 6e 20 20 41 6c 65 72 74 2c 5c 6e 20 20 42 {\n Alert,\n B 00022d40: 75 74 74 6f 6e 2c 5c 6e 20 20 43 61 72 6f 75 73 utton,\n Carous 00022d50: 65 6c 2c 5c 6e 20 20 43 6f 6c 6c 61 70 73 65 2c el,\n Collapse, 00022d60: 5c 6e 20 20 44 72 6f 70 64 6f 77 6e 2c 5c 6e 20 \n Dropdown,\n 00022d70: 20 4d 6f 64 61 6c 2c 5c 6e 20 20 4f 66 66 63 61 Modal,\n Offca 00022d80: 6e 76 61 73 2c 5c 6e 20 20 50 6f 70 6f 76 65 72 nvas,\n Popover 00022d90: 2c 5c 6e 20 20 53 63 72 6f 6c 6c 53 70 79 2c 5c ,\n ScrollSpy,\ 00022da0: 6e 20 20 54 61 62 2c 5c 6e 20 20 54 6f 61 73 74 n Tab,\n Toast 00022db0: 2c 5c 6e 20 20 54 6f 6f 6c 74 69 70 5c 6e 7d 5c ,\n Tooltip\n}\ 00022dc0: 6e 22 2c 22 27 75 73 65 20 73 74 72 69 63 74 27 n","'use strict' 00022dd0: 5c 6e 5c 6e 65 78 70 6f 72 74 73 2e 62 79 74 65 \n\nexports.byte 00022de0: 4c 65 6e 67 74 68 20 3d 20 62 79 74 65 4c 65 6e Length = byteLen 00022df0: 67 74 68 5c 6e 65 78 70 6f 72 74 73 2e 74 6f 42 gth\nexports.toB 00022e00: 79 74 65 41 72 72 61 79 20 3d 20 74 6f 42 79 74 yteArray = toByt 00022e10: 65 41 72 72 61 79 5c 6e 65 78 70 6f 72 74 73 2e eArray\nexports. 00022e20: 66 72 6f 6d 42 79 74 65 41 72 72 61 79 20 3d 20 fromByteArray = 00022e30: 66 72 6f 6d 42 79 74 65 41 72 72 61 79 5c 6e 5c fromByteArray\n\ 00022e40: 6e 76 61 72 20 6c 6f 6f 6b 75 70 20 3d 20 5b 5d nvar lookup = [] 00022e50: 5c 6e 76 61 72 20 72 65 76 4c 6f 6f 6b 75 70 20 \nvar revLookup 00022e60: 3d 20 5b 5d 5c 6e 76 61 72 20 41 72 72 20 3d 20 = []\nvar Arr = 00022e70: 74 79 70 65 6f 66 20 55 69 6e 74 38 41 72 72 61 typeof Uint8Arra 00022e80: 79 20 21 3d 3d 20 27 75 6e 64 65 66 69 6e 65 64 y !== 'undefined 00022e90: 27 20 3f 20 55 69 6e 74 38 41 72 72 61 79 20 3a ' ? Uint8Array : 00022ea0: 20 41 72 72 61 79 5c 6e 5c 6e 76 61 72 20 63 6f Array\n\nvar co 00022eb0: 64 65 20 3d 20 27 41 42 43 44 45 46 47 48 49 4a de = 'ABCDEFGHIJ 00022ec0: 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 57 58 59 5a KLMNOPQRSTUVWXYZ 00022ed0: 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 abcdefghijklmnop 00022ee0: 71 72 73 74 75 76 77 78 79 7a 30 31 32 33 34 35 qrstuvwxyz012345 00022ef0: 36 37 38 39 2b 2f 27 5c 6e 66 6f 72 20 28 76 61 6789+/'\nfor (va 00022f00: 72 20 69 20 3d 20 30 2c 20 6c 65 6e 20 3d 20 63 r i = 0, len = c 00022f10: 6f 64 65 2e 6c 65 6e 67 74 68 3b 20 69 20 3c 20 ode.length; i < 00022f20: 6c 65 6e 3b 20 2b 2b 69 29 20 7b 5c 6e 20 20 6c len; ++i) {\n l 00022f30: 6f 6f 6b 75 70 5b 69 5d 20 3d 20 63 6f 64 65 5b ookup[i] = code[ 00022f40: 69 5d 5c 6e 20 20 72 65 76 4c 6f 6f 6b 75 70 5b i]\n revLookup[ 00022f50: 63 6f 64 65 2e 63 68 61 72 43 6f 64 65 41 74 28 code.charCodeAt( 00022f60: 69 29 5d 20 3d 20 69 5c 6e 7d 5c 6e 5c 6e 2f 2f i)] = i\n}\n\n// 00022f70: 20 53 75 70 70 6f 72 74 20 64 65 63 6f 64 69 6e Support decodin 00022f80: 67 20 55 52 4c 2d 73 61 66 65 20 62 61 73 65 36 g URL-safe base6 00022f90: 34 20 73 74 72 69 6e 67 73 2c 20 61 73 20 4e 6f 4 strings, as No 00022fa0: 64 65 2e 6a 73 20 64 6f 65 73 2e 5c 6e 2f 2f 20 de.js does.\n// 00022fb0: 53 65 65 3a 20 68 74 74 70 73 3a 2f 2f 65 6e 2e See: https://en. 00022fc0: 77 69 6b 69 70 65 64 69 61 2e 6f 72 67 2f 77 69 wikipedia.org/wi 00022fd0: 6b 69 2f 42 61 73 65 36 34 23 55 52 4c 5f 61 70 ki/Base64#URL_ap 00022fe0: 70 6c 69 63 61 74 69 6f 6e 73 5c 6e 72 65 76 4c plications\nrevL 00022ff0: 6f 6f 6b 75 70 5b 27 2d 27 2e 63 68 61 72 43 6f ookup['-'.charCo 00023000: 64 65 41 74 28 30 29 5d 20 3d 20 36 32 5c 6e 72 deAt(0)] = 62\nr 00023010: 65 76 4c 6f 6f 6b 75 70 5b 27 5f 27 2e 63 68 61 evLookup['_'.cha 00023020: 72 43 6f 64 65 41 74 28 30 29 5d 20 3d 20 36 33 rCodeAt(0)] = 63 00023030: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 67 65 74 \n\nfunction get 00023040: 4c 65 6e 73 20 28 62 36 34 29 20 7b 5c 6e 20 20 Lens (b64) {\n 00023050: 76 61 72 20 6c 65 6e 20 3d 20 62 36 34 2e 6c 65 var len = b64.le 00023060: 6e 67 74 68 5c 6e 5c 6e 20 20 69 66 20 28 6c 65 ngth\n\n if (le 00023070: 6e 20 25 20 34 20 3e 20 30 29 20 7b 5c 6e 20 20 n % 4 > 0) {\n 00023080: 20 20 74 68 72 6f 77 20 6e 65 77 20 45 72 72 6f throw new Erro 00023090: 72 28 27 49 6e 76 61 6c 69 64 20 73 74 72 69 6e r('Invalid strin 000230a0: 67 2e 20 4c 65 6e 67 74 68 20 6d 75 73 74 20 62 g. Length must b 000230b0: 65 20 61 20 6d 75 6c 74 69 70 6c 65 20 6f 66 20 e a multiple of 000230c0: 34 27 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 4')\n }\n\n // 000230d0: 20 54 72 69 6d 20 6f 66 66 20 65 78 74 72 61 20 Trim off extra 000230e0: 62 79 74 65 73 20 61 66 74 65 72 20 70 6c 61 63 bytes after plac 000230f0: 65 68 6f 6c 64 65 72 20 62 79 74 65 73 20 61 72 eholder bytes ar 00023100: 65 20 66 6f 75 6e 64 5c 6e 20 20 2f 2f 20 53 65 e found\n // Se 00023110: 65 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 e: https://githu 00023120: 62 2e 63 6f 6d 2f 62 65 61 74 67 61 6d 6d 69 74 b.com/beatgammit 00023130: 2f 62 61 73 65 36 34 2d 6a 73 2f 69 73 73 75 65 /base64-js/issue 00023140: 73 2f 34 32 5c 6e 20 20 76 61 72 20 76 61 6c 69 s/42\n var vali 00023150: 64 4c 65 6e 20 3d 20 62 36 34 2e 69 6e 64 65 78 dLen = b64.index 00023160: 4f 66 28 27 3d 27 29 5c 6e 20 20 69 66 20 28 76 Of('=')\n if (v 00023170: 61 6c 69 64 4c 65 6e 20 3d 3d 3d 20 2d 31 29 20 alidLen === -1) 00023180: 76 61 6c 69 64 4c 65 6e 20 3d 20 6c 65 6e 5c 6e validLen = len\n 00023190: 5c 6e 20 20 76 61 72 20 70 6c 61 63 65 48 6f 6c \n var placeHol 000231a0: 64 65 72 73 4c 65 6e 20 3d 20 76 61 6c 69 64 4c dersLen = validL 000231b0: 65 6e 20 3d 3d 3d 20 6c 65 6e 5c 6e 20 20 20 20 en === len\n 000231c0: 3f 20 30 5c 6e 20 20 20 20 3a 20 34 20 2d 20 28 ? 0\n : 4 - ( 000231d0: 76 61 6c 69 64 4c 65 6e 20 25 20 34 29 5c 6e 5c validLen % 4)\n\ 000231e0: 6e 20 20 72 65 74 75 72 6e 20 5b 76 61 6c 69 64 n return [valid 000231f0: 4c 65 6e 2c 20 70 6c 61 63 65 48 6f 6c 64 65 72 Len, placeHolder 00023200: 73 4c 65 6e 5d 5c 6e 7d 5c 6e 5c 6e 2f 2f 20 62 sLen]\n}\n\n// b 00023210: 61 73 65 36 34 20 69 73 20 34 2f 33 20 2b 20 75 ase64 is 4/3 + u 00023220: 70 20 74 6f 20 74 77 6f 20 63 68 61 72 61 63 74 p to two charact 00023230: 65 72 73 20 6f 66 20 74 68 65 20 6f 72 69 67 69 ers of the origi 00023240: 6e 61 6c 20 64 61 74 61 5c 6e 66 75 6e 63 74 69 nal data\nfuncti 00023250: 6f 6e 20 62 79 74 65 4c 65 6e 67 74 68 20 28 62 on byteLength (b 00023260: 36 34 29 20 7b 5c 6e 20 20 76 61 72 20 6c 65 6e 64) {\n var len 00023270: 73 20 3d 20 67 65 74 4c 65 6e 73 28 62 36 34 29 s = getLens(b64) 00023280: 5c 6e 20 20 76 61 72 20 76 61 6c 69 64 4c 65 6e \n var validLen 00023290: 20 3d 20 6c 65 6e 73 5b 30 5d 5c 6e 20 20 76 61 = lens[0]\n va 000232a0: 72 20 70 6c 61 63 65 48 6f 6c 64 65 72 73 4c 65 r placeHoldersLe 000232b0: 6e 20 3d 20 6c 65 6e 73 5b 31 5d 5c 6e 20 20 72 n = lens[1]\n r 000232c0: 65 74 75 72 6e 20 28 28 76 61 6c 69 64 4c 65 6e eturn ((validLen 000232d0: 20 2b 20 70 6c 61 63 65 48 6f 6c 64 65 72 73 4c + placeHoldersL 000232e0: 65 6e 29 20 2a 20 33 20 2f 20 34 29 20 2d 20 70 en) * 3 / 4) - p 000232f0: 6c 61 63 65 48 6f 6c 64 65 72 73 4c 65 6e 5c 6e laceHoldersLen\n 00023300: 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 5f 62 }\n\nfunction _b 00023310: 79 74 65 4c 65 6e 67 74 68 20 28 62 36 34 2c 20 yteLength (b64, 00023320: 76 61 6c 69 64 4c 65 6e 2c 20 70 6c 61 63 65 48 validLen, placeH 00023330: 6f 6c 64 65 72 73 4c 65 6e 29 20 7b 5c 6e 20 20 oldersLen) {\n 00023340: 72 65 74 75 72 6e 20 28 28 76 61 6c 69 64 4c 65 return ((validLe 00023350: 6e 20 2b 20 70 6c 61 63 65 48 6f 6c 64 65 72 73 n + placeHolders 00023360: 4c 65 6e 29 20 2a 20 33 20 2f 20 34 29 20 2d 20 Len) * 3 / 4) - 00023370: 70 6c 61 63 65 48 6f 6c 64 65 72 73 4c 65 6e 5c placeHoldersLen\ 00023380: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 74 n}\n\nfunction t 00023390: 6f 42 79 74 65 41 72 72 61 79 20 28 62 36 34 29 oByteArray (b64) 000233a0: 20 7b 5c 6e 20 20 76 61 72 20 74 6d 70 5c 6e 20 {\n var tmp\n 000233b0: 20 76 61 72 20 6c 65 6e 73 20 3d 20 67 65 74 4c var lens = getL 000233c0: 65 6e 73 28 62 36 34 29 5c 6e 20 20 76 61 72 20 ens(b64)\n var 000233d0: 76 61 6c 69 64 4c 65 6e 20 3d 20 6c 65 6e 73 5b validLen = lens[ 000233e0: 30 5d 5c 6e 20 20 76 61 72 20 70 6c 61 63 65 48 0]\n var placeH 000233f0: 6f 6c 64 65 72 73 4c 65 6e 20 3d 20 6c 65 6e 73 oldersLen = lens 00023400: 5b 31 5d 5c 6e 5c 6e 20 20 76 61 72 20 61 72 72 [1]\n\n var arr 00023410: 20 3d 20 6e 65 77 20 41 72 72 28 5f 62 79 74 65 = new Arr(_byte 00023420: 4c 65 6e 67 74 68 28 62 36 34 2c 20 76 61 6c 69 Length(b64, vali 00023430: 64 4c 65 6e 2c 20 70 6c 61 63 65 48 6f 6c 64 65 dLen, placeHolde 00023440: 72 73 4c 65 6e 29 29 5c 6e 5c 6e 20 20 76 61 72 rsLen))\n\n var 00023450: 20 63 75 72 42 79 74 65 20 3d 20 30 5c 6e 5c 6e curByte = 0\n\n 00023460: 20 20 2f 2f 20 69 66 20 74 68 65 72 65 20 61 72 // if there ar 00023470: 65 20 70 6c 61 63 65 68 6f 6c 64 65 72 73 2c 20 e placeholders, 00023480: 6f 6e 6c 79 20 67 65 74 20 75 70 20 74 6f 20 74 only get up to t 00023490: 68 65 20 6c 61 73 74 20 63 6f 6d 70 6c 65 74 65 he last complete 000234a0: 20 34 20 63 68 61 72 73 5c 6e 20 20 76 61 72 20 4 chars\n var 000234b0: 6c 65 6e 20 3d 20 70 6c 61 63 65 48 6f 6c 64 65 len = placeHolde 000234c0: 72 73 4c 65 6e 20 3e 20 30 5c 6e 20 20 20 20 3f rsLen > 0\n ? 000234d0: 20 76 61 6c 69 64 4c 65 6e 20 2d 20 34 5c 6e 20 validLen - 4\n 000234e0: 20 20 20 3a 20 76 61 6c 69 64 4c 65 6e 5c 6e 5c : validLen\n\ 000234f0: 6e 20 20 76 61 72 20 69 5c 6e 20 20 66 6f 72 20 n var i\n for 00023500: 28 69 20 3d 20 30 3b 20 69 20 3c 20 6c 65 6e 3b (i = 0; i < len; 00023510: 20 69 20 2b 3d 20 34 29 20 7b 5c 6e 20 20 20 20 i += 4) {\n 00023520: 74 6d 70 20 3d 5c 6e 20 20 20 20 20 20 28 72 65 tmp =\n (re 00023530: 76 4c 6f 6f 6b 75 70 5b 62 36 34 2e 63 68 61 72 vLookup[b64.char 00023540: 43 6f 64 65 41 74 28 69 29 5d 20 3c 3c 20 31 38 CodeAt(i)] << 18 00023550: 29 20 7c 5c 6e 20 20 20 20 20 20 28 72 65 76 4c ) |\n (revL 00023560: 6f 6f 6b 75 70 5b 62 36 34 2e 63 68 61 72 43 6f ookup[b64.charCo 00023570: 64 65 41 74 28 69 20 2b 20 31 29 5d 20 3c 3c 20 deAt(i + 1)] << 00023580: 31 32 29 20 7c 5c 6e 20 20 20 20 20 20 28 72 65 12) |\n (re 00023590: 76 4c 6f 6f 6b 75 70 5b 62 36 34 2e 63 68 61 72 vLookup[b64.char 000235a0: 43 6f 64 65 41 74 28 69 20 2b 20 32 29 5d 20 3c CodeAt(i + 2)] < 000235b0: 3c 20 36 29 20 7c 5c 6e 20 20 20 20 20 20 72 65 < 6) |\n re 000235c0: 76 4c 6f 6f 6b 75 70 5b 62 36 34 2e 63 68 61 72 vLookup[b64.char 000235d0: 43 6f 64 65 41 74 28 69 20 2b 20 33 29 5d 5c 6e CodeAt(i + 3)]\n 000235e0: 20 20 20 20 61 72 72 5b 63 75 72 42 79 74 65 2b arr[curByte+ 000235f0: 2b 5d 20 3d 20 28 74 6d 70 20 3e 3e 20 31 36 29 +] = (tmp >> 16) 00023600: 20 26 20 30 78 46 46 5c 6e 20 20 20 20 61 72 72 & 0xFF\n arr 00023610: 5b 63 75 72 42 79 74 65 2b 2b 5d 20 3d 20 28 74 [curByte++] = (t 00023620: 6d 70 20 3e 3e 20 38 29 20 26 20 30 78 46 46 5c mp >> 8) & 0xFF\ 00023630: 6e 20 20 20 20 61 72 72 5b 63 75 72 42 79 74 65 n arr[curByte 00023640: 2b 2b 5d 20 3d 20 74 6d 70 20 26 20 30 78 46 46 ++] = tmp & 0xFF 00023650: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 70 \n }\n\n if (p 00023660: 6c 61 63 65 48 6f 6c 64 65 72 73 4c 65 6e 20 3d laceHoldersLen = 00023670: 3d 3d 20 32 29 20 7b 5c 6e 20 20 20 20 74 6d 70 == 2) {\n tmp 00023680: 20 3d 5c 6e 20 20 20 20 20 20 28 72 65 76 4c 6f =\n (revLo 00023690: 6f 6b 75 70 5b 62 36 34 2e 63 68 61 72 43 6f 64 okup[b64.charCod 000236a0: 65 41 74 28 69 29 5d 20 3c 3c 20 32 29 20 7c 5c eAt(i)] << 2) |\ 000236b0: 6e 20 20 20 20 20 20 28 72 65 76 4c 6f 6f 6b 75 n (revLooku 000236c0: 70 5b 62 36 34 2e 63 68 61 72 43 6f 64 65 41 74 p[b64.charCodeAt 000236d0: 28 69 20 2b 20 31 29 5d 20 3e 3e 20 34 29 5c 6e (i + 1)] >> 4)\n 000236e0: 20 20 20 20 61 72 72 5b 63 75 72 42 79 74 65 2b arr[curByte+ 000236f0: 2b 5d 20 3d 20 74 6d 70 20 26 20 30 78 46 46 5c +] = tmp & 0xFF\ 00023700: 6e 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 28 70 6c n }\n\n if (pl 00023710: 61 63 65 48 6f 6c 64 65 72 73 4c 65 6e 20 3d 3d aceHoldersLen == 00023720: 3d 20 31 29 20 7b 5c 6e 20 20 20 20 74 6d 70 20 = 1) {\n tmp 00023730: 3d 5c 6e 20 20 20 20 20 20 28 72 65 76 4c 6f 6f =\n (revLoo 00023740: 6b 75 70 5b 62 36 34 2e 63 68 61 72 43 6f 64 65 kup[b64.charCode 00023750: 41 74 28 69 29 5d 20 3c 3c 20 31 30 29 20 7c 5c At(i)] << 10) |\ 00023760: 6e 20 20 20 20 20 20 28 72 65 76 4c 6f 6f 6b 75 n (revLooku 00023770: 70 5b 62 36 34 2e 63 68 61 72 43 6f 64 65 41 74 p[b64.charCodeAt 00023780: 28 69 20 2b 20 31 29 5d 20 3c 3c 20 34 29 20 7c (i + 1)] << 4) | 00023790: 5c 6e 20 20 20 20 20 20 28 72 65 76 4c 6f 6f 6b \n (revLook 000237a0: 75 70 5b 62 36 34 2e 63 68 61 72 43 6f 64 65 41 up[b64.charCodeA 000237b0: 74 28 69 20 2b 20 32 29 5d 20 3e 3e 20 32 29 5c t(i + 2)] >> 2)\ 000237c0: 6e 20 20 20 20 61 72 72 5b 63 75 72 42 79 74 65 n arr[curByte 000237d0: 2b 2b 5d 20 3d 20 28 74 6d 70 20 3e 3e 20 38 29 ++] = (tmp >> 8) 000237e0: 20 26 20 30 78 46 46 5c 6e 20 20 20 20 61 72 72 & 0xFF\n arr 000237f0: 5b 63 75 72 42 79 74 65 2b 2b 5d 20 3d 20 74 6d [curByte++] = tm 00023800: 70 20 26 20 30 78 46 46 5c 6e 20 20 7d 5c 6e 5c p & 0xFF\n }\n\ 00023810: 6e 20 20 72 65 74 75 72 6e 20 61 72 72 5c 6e 7d n return arr\n} 00023820: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 74 72 69 \n\nfunction tri 00023830: 70 6c 65 74 54 6f 42 61 73 65 36 34 20 28 6e 75 pletToBase64 (nu 00023840: 6d 29 20 7b 5c 6e 20 20 72 65 74 75 72 6e 20 6c m) {\n return l 00023850: 6f 6f 6b 75 70 5b 6e 75 6d 20 3e 3e 20 31 38 20 ookup[num >> 18 00023860: 26 20 30 78 33 46 5d 20 2b 5c 6e 20 20 20 20 6c & 0x3F] +\n l 00023870: 6f 6f 6b 75 70 5b 6e 75 6d 20 3e 3e 20 31 32 20 ookup[num >> 12 00023880: 26 20 30 78 33 46 5d 20 2b 5c 6e 20 20 20 20 6c & 0x3F] +\n l 00023890: 6f 6f 6b 75 70 5b 6e 75 6d 20 3e 3e 20 36 20 26 ookup[num >> 6 & 000238a0: 20 30 78 33 46 5d 20 2b 5c 6e 20 20 20 20 6c 6f 0x3F] +\n lo 000238b0: 6f 6b 75 70 5b 6e 75 6d 20 26 20 30 78 33 46 5d okup[num & 0x3F] 000238c0: 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 \n}\n\nfunction 000238d0: 65 6e 63 6f 64 65 43 68 75 6e 6b 20 28 75 69 6e encodeChunk (uin 000238e0: 74 38 2c 20 73 74 61 72 74 2c 20 65 6e 64 29 20 t8, start, end) 000238f0: 7b 5c 6e 20 20 76 61 72 20 74 6d 70 5c 6e 20 20 {\n var tmp\n 00023900: 76 61 72 20 6f 75 74 70 75 74 20 3d 20 5b 5d 5c var output = []\ 00023910: 6e 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 n for (var i = 00023920: 73 74 61 72 74 3b 20 69 20 3c 20 65 6e 64 3b 20 start; i < end; 00023930: 69 20 2b 3d 20 33 29 20 7b 5c 6e 20 20 20 20 74 i += 3) {\n t 00023940: 6d 70 20 3d 5c 6e 20 20 20 20 20 20 28 28 75 69 mp =\n ((ui 00023950: 6e 74 38 5b 69 5d 20 3c 3c 20 31 36 29 20 26 20 nt8[i] << 16) & 00023960: 30 78 46 46 30 30 30 30 29 20 2b 5c 6e 20 20 20 0xFF0000) +\n 00023970: 20 20 20 28 28 75 69 6e 74 38 5b 69 20 2b 20 31 ((uint8[i + 1 00023980: 5d 20 3c 3c 20 38 29 20 26 20 30 78 46 46 30 30 ] << 8) & 0xFF00 00023990: 29 20 2b 5c 6e 20 20 20 20 20 20 28 75 69 6e 74 ) +\n (uint 000239a0: 38 5b 69 20 2b 20 32 5d 20 26 20 30 78 46 46 29 8[i + 2] & 0xFF) 000239b0: 5c 6e 20 20 20 20 6f 75 74 70 75 74 2e 70 75 73 \n output.pus 000239c0: 68 28 74 72 69 70 6c 65 74 54 6f 42 61 73 65 36 h(tripletToBase6 000239d0: 34 28 74 6d 70 29 29 5c 6e 20 20 7d 5c 6e 20 20 4(tmp))\n }\n 000239e0: 72 65 74 75 72 6e 20 6f 75 74 70 75 74 2e 6a 6f return output.jo 000239f0: 69 6e 28 27 27 29 5c 6e 7d 5c 6e 5c 6e 66 75 6e in('')\n}\n\nfun 00023a00: 63 74 69 6f 6e 20 66 72 6f 6d 42 79 74 65 41 72 ction fromByteAr 00023a10: 72 61 79 20 28 75 69 6e 74 38 29 20 7b 5c 6e 20 ray (uint8) {\n 00023a20: 20 76 61 72 20 74 6d 70 5c 6e 20 20 76 61 72 20 var tmp\n var 00023a30: 6c 65 6e 20 3d 20 75 69 6e 74 38 2e 6c 65 6e 67 len = uint8.leng 00023a40: 74 68 5c 6e 20 20 76 61 72 20 65 78 74 72 61 42 th\n var extraB 00023a50: 79 74 65 73 20 3d 20 6c 65 6e 20 25 20 33 20 2f ytes = len % 3 / 00023a60: 2f 20 69 66 20 77 65 20 68 61 76 65 20 31 20 62 / if we have 1 b 00023a70: 79 74 65 20 6c 65 66 74 2c 20 70 61 64 20 32 20 yte left, pad 2 00023a80: 62 79 74 65 73 5c 6e 20 20 76 61 72 20 70 61 72 bytes\n var par 00023a90: 74 73 20 3d 20 5b 5d 5c 6e 20 20 76 61 72 20 6d ts = []\n var m 00023aa0: 61 78 43 68 75 6e 6b 4c 65 6e 67 74 68 20 3d 20 axChunkLength = 00023ab0: 31 36 33 38 33 20 2f 2f 20 6d 75 73 74 20 62 65 16383 // must be 00023ac0: 20 6d 75 6c 74 69 70 6c 65 20 6f 66 20 33 5c 6e multiple of 3\n 00023ad0: 5c 6e 20 20 2f 2f 20 67 6f 20 74 68 72 6f 75 67 \n // go throug 00023ae0: 68 20 74 68 65 20 61 72 72 61 79 20 65 76 65 72 h the array ever 00023af0: 79 20 74 68 72 65 65 20 62 79 74 65 73 2c 20 77 y three bytes, w 00023b00: 65 27 6c 6c 20 64 65 61 6c 20 77 69 74 68 20 74 e'll deal with t 00023b10: 72 61 69 6c 69 6e 67 20 73 74 75 66 66 20 6c 61 railing stuff la 00023b20: 74 65 72 5c 6e 20 20 66 6f 72 20 28 76 61 72 20 ter\n for (var 00023b30: 69 20 3d 20 30 2c 20 6c 65 6e 32 20 3d 20 6c 65 i = 0, len2 = le 00023b40: 6e 20 2d 20 65 78 74 72 61 42 79 74 65 73 3b 20 n - extraBytes; 00023b50: 69 20 3c 20 6c 65 6e 32 3b 20 69 20 2b 3d 20 6d i < len2; i += m 00023b60: 61 78 43 68 75 6e 6b 4c 65 6e 67 74 68 29 20 7b axChunkLength) { 00023b70: 5c 6e 20 20 20 20 70 61 72 74 73 2e 70 75 73 68 \n parts.push 00023b80: 28 65 6e 63 6f 64 65 43 68 75 6e 6b 28 75 69 6e (encodeChunk(uin 00023b90: 74 38 2c 20 69 2c 20 28 69 20 2b 20 6d 61 78 43 t8, i, (i + maxC 00023ba0: 68 75 6e 6b 4c 65 6e 67 74 68 29 20 3e 20 6c 65 hunkLength) > le 00023bb0: 6e 32 20 3f 20 6c 65 6e 32 20 3a 20 28 69 20 2b n2 ? len2 : (i + 00023bc0: 20 6d 61 78 43 68 75 6e 6b 4c 65 6e 67 74 68 29 maxChunkLength) 00023bd0: 29 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 ))\n }\n\n // 00023be0: 70 61 64 20 74 68 65 20 65 6e 64 20 77 69 74 68 pad the end with 00023bf0: 20 7a 65 72 6f 73 2c 20 62 75 74 20 6d 61 6b 65 zeros, but make 00023c00: 20 73 75 72 65 20 74 6f 20 6e 6f 74 20 66 6f 72 sure to not for 00023c10: 67 65 74 20 74 68 65 20 65 78 74 72 61 20 62 79 get the extra by 00023c20: 74 65 73 5c 6e 20 20 69 66 20 28 65 78 74 72 61 tes\n if (extra 00023c30: 42 79 74 65 73 20 3d 3d 3d 20 31 29 20 7b 5c 6e Bytes === 1) {\n 00023c40: 20 20 20 20 74 6d 70 20 3d 20 75 69 6e 74 38 5b tmp = uint8[ 00023c50: 6c 65 6e 20 2d 20 31 5d 5c 6e 20 20 20 20 70 61 len - 1]\n pa 00023c60: 72 74 73 2e 70 75 73 68 28 5c 6e 20 20 20 20 20 rts.push(\n 00023c70: 20 6c 6f 6f 6b 75 70 5b 74 6d 70 20 3e 3e 20 32 lookup[tmp >> 2 00023c80: 5d 20 2b 5c 6e 20 20 20 20 20 20 6c 6f 6f 6b 75 ] +\n looku 00023c90: 70 5b 28 74 6d 70 20 3c 3c 20 34 29 20 26 20 30 p[(tmp << 4) & 0 00023ca0: 78 33 46 5d 20 2b 5c 6e 20 20 20 20 20 20 27 3d x3F] +\n '= 00023cb0: 3d 27 5c 6e 20 20 20 20 29 5c 6e 20 20 7d 20 65 ='\n )\n } e 00023cc0: 6c 73 65 20 69 66 20 28 65 78 74 72 61 42 79 74 lse if (extraByt 00023cd0: 65 73 20 3d 3d 3d 20 32 29 20 7b 5c 6e 20 20 20 es === 2) {\n 00023ce0: 20 74 6d 70 20 3d 20 28 75 69 6e 74 38 5b 6c 65 tmp = (uint8[le 00023cf0: 6e 20 2d 20 32 5d 20 3c 3c 20 38 29 20 2b 20 75 n - 2] << 8) + u 00023d00: 69 6e 74 38 5b 6c 65 6e 20 2d 20 31 5d 5c 6e 20 int8[len - 1]\n 00023d10: 20 20 20 70 61 72 74 73 2e 70 75 73 68 28 5c 6e parts.push(\n 00023d20: 20 20 20 20 20 20 6c 6f 6f 6b 75 70 5b 74 6d 70 lookup[tmp 00023d30: 20 3e 3e 20 31 30 5d 20 2b 5c 6e 20 20 20 20 20 >> 10] +\n 00023d40: 20 6c 6f 6f 6b 75 70 5b 28 74 6d 70 20 3e 3e 20 lookup[(tmp >> 00023d50: 34 29 20 26 20 30 78 33 46 5d 20 2b 5c 6e 20 20 4) & 0x3F] +\n 00023d60: 20 20 20 20 6c 6f 6f 6b 75 70 5b 28 74 6d 70 20 lookup[(tmp 00023d70: 3c 3c 20 32 29 20 26 20 30 78 33 46 5d 20 2b 5c << 2) & 0x3F] +\ 00023d80: 6e 20 20 20 20 20 20 27 3d 27 5c 6e 20 20 20 20 n '='\n 00023d90: 29 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 72 65 74 75 )\n }\n\n retu 00023da0: 72 6e 20 70 61 72 74 73 2e 6a 6f 69 6e 28 27 27 rn parts.join('' 00023db0: 29 5c 6e 7d 5c 6e 22 2c 22 2f 2a 21 20 69 65 65 )\n}\n","/*! iee 00023dc0: 65 37 35 34 2e 20 42 53 44 2d 33 2d 43 6c 61 75 e754. BSD-3-Clau 00023dd0: 73 65 20 4c 69 63 65 6e 73 65 2e 20 46 65 72 6f se License. Fero 00023de0: 73 73 20 41 62 6f 75 6b 68 61 64 69 6a 65 68 20 ss Aboukhadijeh 00023df0: 3c 68 74 74 70 73 3a 2f 2f 66 65 72 6f 73 73 2e <https://feross. 00023e00: 6f 72 67 2f 6f 70 65 6e 73 6f 75 72 63 65 3e 20 org/opensource> 00023e10: 2a 2f 5c 6e 65 78 70 6f 72 74 73 2e 72 65 61 64 */\nexports.read 00023e20: 20 3d 20 66 75 6e 63 74 69 6f 6e 20 28 62 75 66 = function (buf 00023e30: 66 65 72 2c 20 6f 66 66 73 65 74 2c 20 69 73 4c fer, offset, isL 00023e40: 45 2c 20 6d 4c 65 6e 2c 20 6e 42 79 74 65 73 29 E, mLen, nBytes) 00023e50: 20 7b 5c 6e 20 20 76 61 72 20 65 2c 20 6d 5c 6e {\n var e, m\n 00023e60: 20 20 76 61 72 20 65 4c 65 6e 20 3d 20 28 6e 42 var eLen = (nB 00023e70: 79 74 65 73 20 2a 20 38 29 20 2d 20 6d 4c 65 6e ytes * 8) - mLen 00023e80: 20 2d 20 31 5c 6e 20 20 76 61 72 20 65 4d 61 78 - 1\n var eMax 00023e90: 20 3d 20 28 31 20 3c 3c 20 65 4c 65 6e 29 20 2d = (1 << eLen) - 00023ea0: 20 31 5c 6e 20 20 76 61 72 20 65 42 69 61 73 20 1\n var eBias 00023eb0: 3d 20 65 4d 61 78 20 3e 3e 20 31 5c 6e 20 20 76 = eMax >> 1\n v 00023ec0: 61 72 20 6e 42 69 74 73 20 3d 20 2d 37 5c 6e 20 ar nBits = -7\n 00023ed0: 20 76 61 72 20 69 20 3d 20 69 73 4c 45 20 3f 20 var i = isLE ? 00023ee0: 28 6e 42 79 74 65 73 20 2d 20 31 29 20 3a 20 30 (nBytes - 1) : 0 00023ef0: 5c 6e 20 20 76 61 72 20 64 20 3d 20 69 73 4c 45 \n var d = isLE 00023f00: 20 3f 20 2d 31 20 3a 20 31 5c 6e 20 20 76 61 72 ? -1 : 1\n var 00023f10: 20 73 20 3d 20 62 75 66 66 65 72 5b 6f 66 66 73 s = buffer[offs 00023f20: 65 74 20 2b 20 69 5d 5c 6e 5c 6e 20 20 69 20 2b et + i]\n\n i + 00023f30: 3d 20 64 5c 6e 5c 6e 20 20 65 20 3d 20 73 20 26 = d\n\n e = s & 00023f40: 20 28 28 31 20 3c 3c 20 28 2d 6e 42 69 74 73 29 ((1 << (-nBits) 00023f50: 29 20 2d 20 31 29 5c 6e 20 20 73 20 3e 3e 3d 20 ) - 1)\n s >>= 00023f60: 28 2d 6e 42 69 74 73 29 5c 6e 20 20 6e 42 69 74 (-nBits)\n nBit 00023f70: 73 20 2b 3d 20 65 4c 65 6e 5c 6e 20 20 66 6f 72 s += eLen\n for 00023f80: 20 28 3b 20 6e 42 69 74 73 20 3e 20 30 3b 20 65 (; nBits > 0; e 00023f90: 20 3d 20 28 65 20 2a 20 32 35 36 29 20 2b 20 62 = (e * 256) + b 00023fa0: 75 66 66 65 72 5b 6f 66 66 73 65 74 20 2b 20 69 uffer[offset + i 00023fb0: 5d 2c 20 69 20 2b 3d 20 64 2c 20 6e 42 69 74 73 ], i += d, nBits 00023fc0: 20 2d 3d 20 38 29 20 7b 7d 5c 6e 5c 6e 20 20 6d -= 8) {}\n\n m 00023fd0: 20 3d 20 65 20 26 20 28 28 31 20 3c 3c 20 28 2d = e & ((1 << (- 00023fe0: 6e 42 69 74 73 29 29 20 2d 20 31 29 5c 6e 20 20 nBits)) - 1)\n 00023ff0: 65 20 3e 3e 3d 20 28 2d 6e 42 69 74 73 29 5c 6e e >>= (-nBits)\n 00024000: 20 20 6e 42 69 74 73 20 2b 3d 20 6d 4c 65 6e 5c nBits += mLen\ 00024010: 6e 20 20 66 6f 72 20 28 3b 20 6e 42 69 74 73 20 n for (; nBits 00024020: 3e 20 30 3b 20 6d 20 3d 20 28 6d 20 2a 20 32 35 > 0; m = (m * 25 00024030: 36 29 20 2b 20 62 75 66 66 65 72 5b 6f 66 66 73 6) + buffer[offs 00024040: 65 74 20 2b 20 69 5d 2c 20 69 20 2b 3d 20 64 2c et + i], i += d, 00024050: 20 6e 42 69 74 73 20 2d 3d 20 38 29 20 7b 7d 5c nBits -= 8) {}\ 00024060: 6e 5c 6e 20 20 69 66 20 28 65 20 3d 3d 3d 20 30 n\n if (e === 0 00024070: 29 20 7b 5c 6e 20 20 20 20 65 20 3d 20 31 20 2d ) {\n e = 1 - 00024080: 20 65 42 69 61 73 5c 6e 20 20 7d 20 65 6c 73 65 eBias\n } else 00024090: 20 69 66 20 28 65 20 3d 3d 3d 20 65 4d 61 78 29 if (e === eMax) 000240a0: 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6d {\n return m 000240b0: 20 3f 20 4e 61 4e 20 3a 20 28 28 73 20 3f 20 2d ? NaN : ((s ? - 000240c0: 31 20 3a 20 31 29 20 2a 20 49 6e 66 69 6e 69 74 1 : 1) * Infinit 000240d0: 79 29 5c 6e 20 20 7d 20 65 6c 73 65 20 7b 5c 6e y)\n } else {\n 000240e0: 20 20 20 20 6d 20 3d 20 6d 20 2b 20 4d 61 74 68 m = m + Math 000240f0: 2e 70 6f 77 28 32 2c 20 6d 4c 65 6e 29 5c 6e 20 .pow(2, mLen)\n 00024100: 20 20 20 65 20 3d 20 65 20 2d 20 65 42 69 61 73 e = e - eBias 00024110: 5c 6e 20 20 7d 5c 6e 20 20 72 65 74 75 72 6e 20 \n }\n return 00024120: 28 73 20 3f 20 2d 31 20 3a 20 31 29 20 2a 20 6d (s ? -1 : 1) * m 00024130: 20 2a 20 4d 61 74 68 2e 70 6f 77 28 32 2c 20 65 * Math.pow(2, e 00024140: 20 2d 20 6d 4c 65 6e 29 5c 6e 7d 5c 6e 5c 6e 65 - mLen)\n}\n\ne 00024150: 78 70 6f 72 74 73 2e 77 72 69 74 65 20 3d 20 66 xports.write = f 00024160: 75 6e 63 74 69 6f 6e 20 28 62 75 66 66 65 72 2c unction (buffer, 00024170: 20 76 61 6c 75 65 2c 20 6f 66 66 73 65 74 2c 20 value, offset, 00024180: 69 73 4c 45 2c 20 6d 4c 65 6e 2c 20 6e 42 79 74 isLE, mLen, nByt 00024190: 65 73 29 20 7b 5c 6e 20 20 76 61 72 20 65 2c 20 es) {\n var e, 000241a0: 6d 2c 20 63 5c 6e 20 20 76 61 72 20 65 4c 65 6e m, c\n var eLen 000241b0: 20 3d 20 28 6e 42 79 74 65 73 20 2a 20 38 29 20 = (nBytes * 8) 000241c0: 2d 20 6d 4c 65 6e 20 2d 20 31 5c 6e 20 20 76 61 - mLen - 1\n va 000241d0: 72 20 65 4d 61 78 20 3d 20 28 31 20 3c 3c 20 65 r eMax = (1 << e 000241e0: 4c 65 6e 29 20 2d 20 31 5c 6e 20 20 76 61 72 20 Len) - 1\n var 000241f0: 65 42 69 61 73 20 3d 20 65 4d 61 78 20 3e 3e 20 eBias = eMax >> 00024200: 31 5c 6e 20 20 76 61 72 20 72 74 20 3d 20 28 6d 1\n var rt = (m 00024210: 4c 65 6e 20 3d 3d 3d 20 32 33 20 3f 20 4d 61 74 Len === 23 ? Mat 00024220: 68 2e 70 6f 77 28 32 2c 20 2d 32 34 29 20 2d 20 h.pow(2, -24) - 00024230: 4d 61 74 68 2e 70 6f 77 28 32 2c 20 2d 37 37 29 Math.pow(2, -77) 00024240: 20 3a 20 30 29 5c 6e 20 20 76 61 72 20 69 20 3d : 0)\n var i = 00024250: 20 69 73 4c 45 20 3f 20 30 20 3a 20 28 6e 42 79 isLE ? 0 : (nBy 00024260: 74 65 73 20 2d 20 31 29 5c 6e 20 20 76 61 72 20 tes - 1)\n var 00024270: 64 20 3d 20 69 73 4c 45 20 3f 20 31 20 3a 20 2d d = isLE ? 1 : - 00024280: 31 5c 6e 20 20 76 61 72 20 73 20 3d 20 76 61 6c 1\n var s = val 00024290: 75 65 20 3c 20 30 20 7c 7c 20 28 76 61 6c 75 65 ue < 0 || (value 000242a0: 20 3d 3d 3d 20 30 20 26 26 20 31 20 2f 20 76 61 === 0 && 1 / va 000242b0: 6c 75 65 20 3c 20 30 29 20 3f 20 31 20 3a 20 30 lue < 0) ? 1 : 0 000242c0: 5c 6e 5c 6e 20 20 76 61 6c 75 65 20 3d 20 4d 61 \n\n value = Ma 000242d0: 74 68 2e 61 62 73 28 76 61 6c 75 65 29 5c 6e 5c th.abs(value)\n\ 000242e0: 6e 20 20 69 66 20 28 69 73 4e 61 4e 28 76 61 6c n if (isNaN(val 000242f0: 75 65 29 20 7c 7c 20 76 61 6c 75 65 20 3d 3d 3d ue) || value === 00024300: 20 49 6e 66 69 6e 69 74 79 29 20 7b 5c 6e 20 20 Infinity) {\n 00024310: 20 20 6d 20 3d 20 69 73 4e 61 4e 28 76 61 6c 75 m = isNaN(valu 00024320: 65 29 20 3f 20 31 20 3a 20 30 5c 6e 20 20 20 20 e) ? 1 : 0\n 00024330: 65 20 3d 20 65 4d 61 78 5c 6e 20 20 7d 20 65 6c e = eMax\n } el 00024340: 73 65 20 7b 5c 6e 20 20 20 20 65 20 3d 20 4d 61 se {\n e = Ma 00024350: 74 68 2e 66 6c 6f 6f 72 28 4d 61 74 68 2e 6c 6f th.floor(Math.lo 00024360: 67 28 76 61 6c 75 65 29 20 2f 20 4d 61 74 68 2e g(value) / Math. 00024370: 4c 4e 32 29 5c 6e 20 20 20 20 69 66 20 28 76 61 LN2)\n if (va 00024380: 6c 75 65 20 2a 20 28 63 20 3d 20 4d 61 74 68 2e lue * (c = Math. 00024390: 70 6f 77 28 32 2c 20 2d 65 29 29 20 3c 20 31 29 pow(2, -e)) < 1) 000243a0: 20 7b 5c 6e 20 20 20 20 20 20 65 2d 2d 5c 6e 20 {\n e--\n 000243b0: 20 20 20 20 20 63 20 2a 3d 20 32 5c 6e 20 20 20 c *= 2\n 000243c0: 20 7d 5c 6e 20 20 20 20 69 66 20 28 65 20 2b 20 }\n if (e + 000243d0: 65 42 69 61 73 20 3e 3d 20 31 29 20 7b 5c 6e 20 eBias >= 1) {\n 000243e0: 20 20 20 20 20 76 61 6c 75 65 20 2b 3d 20 72 74 value += rt 000243f0: 20 2f 20 63 5c 6e 20 20 20 20 7d 20 65 6c 73 65 / c\n } else 00024400: 20 7b 5c 6e 20 20 20 20 20 20 76 61 6c 75 65 20 {\n value 00024410: 2b 3d 20 72 74 20 2a 20 4d 61 74 68 2e 70 6f 77 += rt * Math.pow 00024420: 28 32 2c 20 31 20 2d 20 65 42 69 61 73 29 5c 6e (2, 1 - eBias)\n 00024430: 20 20 20 20 7d 5c 6e 20 20 20 20 69 66 20 28 76 }\n if (v 00024440: 61 6c 75 65 20 2a 20 63 20 3e 3d 20 32 29 20 7b alue * c >= 2) { 00024450: 5c 6e 20 20 20 20 20 20 65 2b 2b 5c 6e 20 20 20 \n e++\n 00024460: 20 20 20 63 20 2f 3d 20 32 5c 6e 20 20 20 20 7d c /= 2\n } 00024470: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 65 20 2b 20 \n\n if (e + 00024480: 65 42 69 61 73 20 3e 3d 20 65 4d 61 78 29 20 7b eBias >= eMax) { 00024490: 5c 6e 20 20 20 20 20 20 6d 20 3d 20 30 5c 6e 20 \n m = 0\n 000244a0: 20 20 20 20 20 65 20 3d 20 65 4d 61 78 5c 6e 20 e = eMax\n 000244b0: 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 65 20 } else if (e 000244c0: 2b 20 65 42 69 61 73 20 3e 3d 20 31 29 20 7b 5c + eBias >= 1) {\ 000244d0: 6e 20 20 20 20 20 20 6d 20 3d 20 28 28 76 61 6c n m = ((val 000244e0: 75 65 20 2a 20 63 29 20 2d 20 31 29 20 2a 20 4d ue * c) - 1) * M 000244f0: 61 74 68 2e 70 6f 77 28 32 2c 20 6d 4c 65 6e 29 ath.pow(2, mLen) 00024500: 5c 6e 20 20 20 20 20 20 65 20 3d 20 65 20 2b 20 \n e = e + 00024510: 65 42 69 61 73 5c 6e 20 20 20 20 7d 20 65 6c 73 eBias\n } els 00024520: 65 20 7b 5c 6e 20 20 20 20 20 20 6d 20 3d 20 76 e {\n m = v 00024530: 61 6c 75 65 20 2a 20 4d 61 74 68 2e 70 6f 77 28 alue * Math.pow( 00024540: 32 2c 20 65 42 69 61 73 20 2d 20 31 29 20 2a 20 2, eBias - 1) * 00024550: 4d 61 74 68 2e 70 6f 77 28 32 2c 20 6d 4c 65 6e Math.pow(2, mLen 00024560: 29 5c 6e 20 20 20 20 20 20 65 20 3d 20 30 5c 6e )\n e = 0\n 00024570: 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 }\n }\n\n 00024580: 66 6f 72 20 28 3b 20 6d 4c 65 6e 20 3e 3d 20 38 for (; mLen >= 8 00024590: 3b 20 62 75 66 66 65 72 5b 6f 66 66 73 65 74 20 ; buffer[offset 000245a0: 2b 20 69 5d 20 3d 20 6d 20 26 20 30 78 66 66 2c + i] = m & 0xff, 000245b0: 20 69 20 2b 3d 20 64 2c 20 6d 20 2f 3d 20 32 35 i += d, m /= 25 000245c0: 36 2c 20 6d 4c 65 6e 20 2d 3d 20 38 29 20 7b 7d 6, mLen -= 8) {} 000245d0: 5c 6e 5c 6e 20 20 65 20 3d 20 28 65 20 3c 3c 20 \n\n e = (e << 000245e0: 6d 4c 65 6e 29 20 7c 20 6d 5c 6e 20 20 65 4c 65 mLen) | m\n eLe 000245f0: 6e 20 2b 3d 20 6d 4c 65 6e 5c 6e 20 20 66 6f 72 n += mLen\n for 00024600: 20 28 3b 20 65 4c 65 6e 20 3e 20 30 3b 20 62 75 (; eLen > 0; bu 00024610: 66 66 65 72 5b 6f 66 66 73 65 74 20 2b 20 69 5d ffer[offset + i] 00024620: 20 3d 20 65 20 26 20 30 78 66 66 2c 20 69 20 2b = e & 0xff, i + 00024630: 3d 20 64 2c 20 65 20 2f 3d 20 32 35 36 2c 20 65 = d, e /= 256, e 00024640: 4c 65 6e 20 2d 3d 20 38 29 20 7b 7d 5c 6e 5c 6e Len -= 8) {}\n\n 00024650: 20 20 62 75 66 66 65 72 5b 6f 66 66 73 65 74 20 buffer[offset 00024660: 2b 20 69 20 2d 20 64 5d 20 7c 3d 20 73 20 2a 20 + i - d] |= s * 00024670: 31 32 38 5c 6e 7d 5c 6e 22 2c 22 76 61 72 20 74 128\n}\n","var t 00024680: 6f 53 74 72 69 6e 67 20 3d 20 7b 7d 2e 74 6f 53 oString = {}.toS 00024690: 74 72 69 6e 67 3b 5c 6e 5c 6e 6d 6f 64 75 6c 65 tring;\n\nmodule 000246a0: 2e 65 78 70 6f 72 74 73 20 3d 20 41 72 72 61 79 .exports = Array 000246b0: 2e 69 73 41 72 72 61 79 20 7c 7c 20 66 75 6e 63 .isArray || func 000246c0: 74 69 6f 6e 20 28 61 72 72 29 20 7b 5c 6e 20 20 tion (arr) {\n 000246d0: 72 65 74 75 72 6e 20 74 6f 53 74 72 69 6e 67 2e return toString. 000246e0: 63 61 6c 6c 28 61 72 72 29 20 3d 3d 20 27 5b 6f call(arr) == '[o 000246f0: 62 6a 65 63 74 20 41 72 72 61 79 5d 27 3b 5c 6e bject Array]';\n 00024700: 7d 3b 5c 6e 22 2c 22 5c 22 75 73 65 20 73 74 72 };\n","\"use str 00024710: 69 63 74 5c 22 3b 5c 6e 4f 62 6a 65 63 74 2e 64 ict\";\nObject.d 00024720: 65 66 69 6e 65 50 72 6f 70 65 72 74 79 28 65 78 efineProperty(ex 00024730: 70 6f 72 74 73 2c 20 5c 22 5f 5f 65 73 4d 6f 64 ports, \"__esMod 00024740: 75 6c 65 5c 22 2c 20 7b 20 76 61 6c 75 65 3a 20 ule\", { value: 00024750: 74 72 75 65 20 7d 29 3b 5c 6e 65 78 70 6f 72 74 true });\nexport 00024760: 73 2e 4d 65 72 67 65 4b 65 79 53 74 6f 72 65 20 s.MergeKeyStore 00024770: 3d 20 65 78 70 6f 72 74 73 2e 42 72 6f 77 73 65 = exports.Browse 00024780: 72 4c 6f 63 61 6c 53 74 6f 72 61 67 65 4b 65 79 rLocalStorageKey 00024790: 53 74 6f 72 65 20 3d 20 65 78 70 6f 72 74 73 2e Store = exports. 000247a0: 49 6e 4d 65 6d 6f 72 79 4b 65 79 53 74 6f 72 65 InMemoryKeyStore 000247b0: 20 3d 20 65 78 70 6f 72 74 73 2e 4b 65 79 53 74 = exports.KeySt 000247c0: 6f 72 65 20 3d 20 76 6f 69 64 20 30 3b 5c 6e 2f ore = void 0;\n/ 000247d0: 2a 2a 20 40 68 69 64 64 65 6e 20 40 6d 6f 64 75 ** @hidden @modu 000247e0: 6c 65 20 2a 2f 5c 6e 63 6f 6e 73 74 20 6b 65 79 le */\nconst key 000247f0: 73 74 6f 72 65 5f 31 20 3d 20 72 65 71 75 69 72 store_1 = requir 00024800: 65 28 5c 22 2e 2f 6b 65 79 73 74 6f 72 65 5c 22 e(\"./keystore\" 00024810: 29 3b 5c 6e 4f 62 6a 65 63 74 2e 64 65 66 69 6e );\nObject.defin 00024820: 65 50 72 6f 70 65 72 74 79 28 65 78 70 6f 72 74 eProperty(export 00024830: 73 2c 20 5c 22 4b 65 79 53 74 6f 72 65 5c 22 2c s, \"KeyStore\", 00024840: 20 7b 20 65 6e 75 6d 65 72 61 62 6c 65 3a 20 74 { enumerable: t 00024850: 72 75 65 2c 20 67 65 74 3a 20 66 75 6e 63 74 69 rue, get: functi 00024860: 6f 6e 20 28 29 20 7b 20 72 65 74 75 72 6e 20 6b on () { return k 00024870: 65 79 73 74 6f 72 65 5f 31 2e 4b 65 79 53 74 6f eystore_1.KeySto 00024880: 72 65 3b 20 7d 20 7d 29 3b 5c 6e 63 6f 6e 73 74 re; } });\nconst 00024890: 20 69 6e 5f 6d 65 6d 6f 72 79 5f 6b 65 79 5f 73 in_memory_key_s 000248a0: 74 6f 72 65 5f 31 20 3d 20 72 65 71 75 69 72 65 tore_1 = require 000248b0: 28 5c 22 2e 2f 69 6e 5f 6d 65 6d 6f 72 79 5f 6b (\"./in_memory_k 000248c0: 65 79 5f 73 74 6f 72 65 5c 22 29 3b 5c 6e 4f 62 ey_store\");\nOb 000248d0: 6a 65 63 74 2e 64 65 66 69 6e 65 50 72 6f 70 65 ject.definePrope 000248e0: 72 74 79 28 65 78 70 6f 72 74 73 2c 20 5c 22 49 rty(exports, \"I 000248f0: 6e 4d 65 6d 6f 72 79 4b 65 79 53 74 6f 72 65 5c nMemoryKeyStore\ 00024900: 22 2c 20 7b 20 65 6e 75 6d 65 72 61 62 6c 65 3a ", { enumerable: 00024910: 20 74 72 75 65 2c 20 67 65 74 3a 20 66 75 6e 63 true, get: func 00024920: 74 69 6f 6e 20 28 29 20 7b 20 72 65 74 75 72 6e tion () { return 00024930: 20 69 6e 5f 6d 65 6d 6f 72 79 5f 6b 65 79 5f 73 in_memory_key_s 00024940: 74 6f 72 65 5f 31 2e 49 6e 4d 65 6d 6f 72 79 4b tore_1.InMemoryK 00024950: 65 79 53 74 6f 72 65 3b 20 7d 20 7d 29 3b 5c 6e eyStore; } });\n 00024960: 63 6f 6e 73 74 20 62 72 6f 77 73 65 72 5f 6c 6f const browser_lo 00024970: 63 61 6c 5f 73 74 6f 72 61 67 65 5f 6b 65 79 5f cal_storage_key_ 00024980: 73 74 6f 72 65 5f 31 20 3d 20 72 65 71 75 69 72 store_1 = requir 00024990: 65 28 5c 22 2e 2f 62 72 6f 77 73 65 72 5f 6c 6f e(\"./browser_lo 000249a0: 63 61 6c 5f 73 74 6f 72 61 67 65 5f 6b 65 79 5f cal_storage_key_ 000249b0: 73 74 6f 72 65 5c 22 29 3b 5c 6e 4f 62 6a 65 63 store\");\nObjec 000249c0: 74 2e 64 65 66 69 6e 65 50 72 6f 70 65 72 74 79 t.defineProperty 000249d0: 28 65 78 70 6f 72 74 73 2c 20 5c 22 42 72 6f 77 (exports, \"Brow 000249e0: 73 65 72 4c 6f 63 61 6c 53 74 6f 72 61 67 65 4b serLocalStorageK 000249f0: 65 79 53 74 6f 72 65 5c 22 2c 20 7b 20 65 6e 75 eyStore\", { enu 00024a00: 6d 65 72 61 62 6c 65 3a 20 74 72 75 65 2c 20 67 merable: true, g 00024a10: 65 74 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 20 et: function () 00024a20: 7b 20 72 65 74 75 72 6e 20 62 72 6f 77 73 65 72 { return browser 00024a30: 5f 6c 6f 63 61 6c 5f 73 74 6f 72 61 67 65 5f 6b _local_storage_k 00024a40: 65 79 5f 73 74 6f 72 65 5f 31 2e 42 72 6f 77 73 ey_store_1.Brows 00024a50: 65 72 4c 6f 63 61 6c 53 74 6f 72 61 67 65 4b 65 erLocalStorageKe 00024a60: 79 53 74 6f 72 65 3b 20 7d 20 7d 29 3b 5c 6e 63 yStore; } });\nc 00024a70: 6f 6e 73 74 20 6d 65 72 67 65 5f 6b 65 79 5f 73 onst merge_key_s 00024a80: 74 6f 72 65 5f 31 20 3d 20 72 65 71 75 69 72 65 tore_1 = require 00024a90: 28 5c 22 2e 2f 6d 65 72 67 65 5f 6b 65 79 5f 73 (\"./merge_key_s 00024aa0: 74 6f 72 65 5c 22 29 3b 5c 6e 4f 62 6a 65 63 74 tore\");\nObject 00024ab0: 2e 64 65 66 69 6e 65 50 72 6f 70 65 72 74 79 28 .defineProperty( 00024ac0: 65 78 70 6f 72 74 73 2c 20 5c 22 4d 65 72 67 65 exports, \"Merge 00024ad0: 4b 65 79 53 74 6f 72 65 5c 22 2c 20 7b 20 65 6e KeyStore\", { en 00024ae0: 75 6d 65 72 61 62 6c 65 3a 20 74 72 75 65 2c 20 umerable: true, 00024af0: 67 65 74 3a 20 66 75 6e 63 74 69 6f 6e 20 28 29 get: function () 00024b00: 20 7b 20 72 65 74 75 72 6e 20 6d 65 72 67 65 5f { return merge_ 00024b10: 6b 65 79 5f 73 74 6f 72 65 5f 31 2e 4d 65 72 67 key_store_1.Merg 00024b20: 65 4b 65 79 53 74 6f 72 65 3b 20 7d 20 7d 29 3b eKeyStore; } }); 00024b30: 5c 6e 22 2c 22 28 66 75 6e 63 74 69 6f 6e 28 6e \n","(function(n 00024b40: 61 63 6c 29 20 7b 5c 6e 27 75 73 65 20 73 74 72 acl) {\n'use str 00024b50: 69 63 74 27 3b 5c 6e 5c 6e 2f 2f 20 50 6f 72 74 ict';\n\n// Port 00024b60: 65 64 20 69 6e 20 32 30 31 34 20 62 79 20 44 6d ed in 2014 by Dm 00024b70: 69 74 72 79 20 43 68 65 73 74 6e 79 6b 68 20 61 itry Chestnykh a 00024b80: 6e 64 20 44 65 76 69 20 4d 61 6e 64 69 72 69 2e nd Devi Mandiri. 00024b90: 5c 6e 2f 2f 20 50 75 62 6c 69 63 20 64 6f 6d 61 \n// Public doma 00024ba0: 69 6e 2e 5c 6e 2f 2f 5c 6e 2f 2f 20 49 6d 70 6c in.\n//\n// Impl 00024bb0: 65 6d 65 6e 74 61 74 69 6f 6e 20 64 65 72 69 76 ementation deriv 00024bc0: 65 64 20 66 72 6f 6d 20 54 77 65 65 74 4e 61 43 ed from TweetNaC 00024bd0: 6c 20 76 65 72 73 69 6f 6e 20 32 30 31 34 30 34 l version 201404 00024be0: 32 37 2e 5c 6e 2f 2f 20 53 65 65 20 66 6f 72 20 27.\n// See for 00024bf0: 64 65 74 61 69 6c 73 3a 20 68 74 74 70 3a 2f 2f details: http:// 00024c00: 74 77 65 65 74 6e 61 63 6c 2e 63 72 2e 79 70 2e tweetnacl.cr.yp. 00024c10: 74 6f 2f 5c 6e 5c 6e 76 61 72 20 67 66 20 3d 20 to/\n\nvar gf = 00024c20: 66 75 6e 63 74 69 6f 6e 28 69 6e 69 74 29 20 7b function(init) { 00024c30: 5c 6e 20 20 76 61 72 20 69 2c 20 72 20 3d 20 6e \n var i, r = n 00024c40: 65 77 20 46 6c 6f 61 74 36 34 41 72 72 61 79 28 ew Float64Array( 00024c50: 31 36 29 3b 5c 6e 20 20 69 66 20 28 69 6e 69 74 16);\n if (init 00024c60: 29 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 ) for (i = 0; i 00024c70: 3c 20 69 6e 69 74 2e 6c 65 6e 67 74 68 3b 20 69 < init.length; i 00024c80: 2b 2b 29 20 72 5b 69 5d 20 3d 20 69 6e 69 74 5b ++) r[i] = init[ 00024c90: 69 5d 3b 5c 6e 20 20 72 65 74 75 72 6e 20 72 3b i];\n return r; 00024ca0: 5c 6e 7d 3b 5c 6e 5c 6e 2f 2f 20 20 50 6c 75 67 \n};\n\n// Plug 00024cb0: 67 61 62 6c 65 2c 20 69 6e 69 74 69 61 6c 69 7a gable, initializ 00024cc0: 65 64 20 69 6e 20 68 69 67 68 2d 6c 65 76 65 6c ed in high-level 00024cd0: 20 41 50 49 20 62 65 6c 6f 77 2e 5c 6e 76 61 72 API below.\nvar 00024ce0: 20 72 61 6e 64 6f 6d 62 79 74 65 73 20 3d 20 66 randombytes = f 00024cf0: 75 6e 63 74 69 6f 6e 28 2f 2a 20 78 2c 20 6e 20 unction(/* x, n 00024d00: 2a 2f 29 20 7b 20 74 68 72 6f 77 20 6e 65 77 20 */) { throw new 00024d10: 45 72 72 6f 72 28 27 6e 6f 20 50 52 4e 47 27 29 Error('no PRNG') 00024d20: 3b 20 7d 3b 5c 6e 5c 6e 76 61 72 20 5f 30 20 3d ; };\n\nvar _0 = 00024d30: 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 new Uint8Array( 00024d40: 31 36 29 3b 5c 6e 76 61 72 20 5f 39 20 3d 20 6e 16);\nvar _9 = n 00024d50: 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 33 32 ew Uint8Array(32 00024d60: 29 3b 20 5f 39 5b 30 5d 20 3d 20 39 3b 5c 6e 5c ); _9[0] = 9;\n\ 00024d70: 6e 76 61 72 20 67 66 30 20 3d 20 67 66 28 29 2c nvar gf0 = gf(), 00024d80: 5c 6e 20 20 20 20 67 66 31 20 3d 20 67 66 28 5b \n gf1 = gf([ 00024d90: 31 5d 29 2c 5c 6e 20 20 20 20 5f 31 32 31 36 36 1]),\n _12166 00024da0: 35 20 3d 20 67 66 28 5b 30 78 64 62 34 31 2c 20 5 = gf([0xdb41, 00024db0: 31 5d 29 2c 5c 6e 20 20 20 20 44 20 3d 20 67 66 1]),\n D = gf 00024dc0: 28 5b 30 78 37 38 61 33 2c 20 30 78 31 33 35 39 ([0x78a3, 0x1359 00024dd0: 2c 20 30 78 34 64 63 61 2c 20 30 78 37 35 65 62 , 0x4dca, 0x75eb 00024de0: 2c 20 30 78 64 38 61 62 2c 20 30 78 34 31 34 31 , 0xd8ab, 0x4141 00024df0: 2c 20 30 78 30 61 34 64 2c 20 30 78 30 30 37 30 , 0x0a4d, 0x0070 00024e00: 2c 20 30 78 65 38 39 38 2c 20 30 78 37 37 37 39 , 0xe898, 0x7779 00024e10: 2c 20 30 78 34 30 37 39 2c 20 30 78 38 63 63 37 , 0x4079, 0x8cc7 00024e20: 2c 20 30 78 66 65 37 33 2c 20 30 78 32 62 36 66 , 0xfe73, 0x2b6f 00024e30: 2c 20 30 78 36 63 65 65 2c 20 30 78 35 32 30 33 , 0x6cee, 0x5203 00024e40: 5d 29 2c 5c 6e 20 20 20 20 44 32 20 3d 20 67 66 ]),\n D2 = gf 00024e50: 28 5b 30 78 66 31 35 39 2c 20 30 78 32 36 62 32 ([0xf159, 0x26b2 00024e60: 2c 20 30 78 39 62 39 34 2c 20 30 78 65 62 64 36 , 0x9b94, 0xebd6 00024e70: 2c 20 30 78 62 31 35 36 2c 20 30 78 38 32 38 33 , 0xb156, 0x8283 00024e80: 2c 20 30 78 31 34 39 61 2c 20 30 78 30 30 65 30 , 0x149a, 0x00e0 00024e90: 2c 20 30 78 64 31 33 30 2c 20 30 78 65 65 66 33 , 0xd130, 0xeef3 00024ea0: 2c 20 30 78 38 30 66 32 2c 20 30 78 31 39 38 65 , 0x80f2, 0x198e 00024eb0: 2c 20 30 78 66 63 65 37 2c 20 30 78 35 36 64 66 , 0xfce7, 0x56df 00024ec0: 2c 20 30 78 64 39 64 63 2c 20 30 78 32 34 30 36 , 0xd9dc, 0x2406 00024ed0: 5d 29 2c 5c 6e 20 20 20 20 58 20 3d 20 67 66 28 ]),\n X = gf( 00024ee0: 5b 30 78 64 35 31 61 2c 20 30 78 38 66 32 35 2c [0xd51a, 0x8f25, 00024ef0: 20 30 78 32 64 36 30 2c 20 30 78 63 39 35 36 2c 0x2d60, 0xc956, 00024f00: 20 30 78 61 37 62 32 2c 20 30 78 39 35 32 35 2c 0xa7b2, 0x9525, 00024f10: 20 30 78 63 37 36 30 2c 20 30 78 36 39 32 63 2c 0xc760, 0x692c, 00024f20: 20 30 78 64 63 35 63 2c 20 30 78 66 64 64 36 2c 0xdc5c, 0xfdd6, 00024f30: 20 30 78 65 32 33 31 2c 20 30 78 63 30 61 34 2c 0xe231, 0xc0a4, 00024f40: 20 30 78 35 33 66 65 2c 20 30 78 63 64 36 65 2c 0x53fe, 0xcd6e, 00024f50: 20 30 78 33 36 64 33 2c 20 30 78 32 31 36 39 5d 0x36d3, 0x2169] 00024f60: 29 2c 5c 6e 20 20 20 20 59 20 3d 20 67 66 28 5b ),\n Y = gf([ 00024f70: 30 78 36 36 35 38 2c 20 30 78 36 36 36 36 2c 20 0x6658, 0x6666, 00024f80: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024f90: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024fa0: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024fb0: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024fc0: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024fd0: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 2c 20 0x6666, 0x6666, 00024fe0: 30 78 36 36 36 36 2c 20 30 78 36 36 36 36 5d 29 0x6666, 0x6666]) 00024ff0: 2c 5c 6e 20 20 20 20 49 20 3d 20 67 66 28 5b 30 ,\n I = gf([0 00025000: 78 61 30 62 30 2c 20 30 78 34 61 30 65 2c 20 30 xa0b0, 0x4a0e, 0 00025010: 78 31 62 32 37 2c 20 30 78 63 34 65 65 2c 20 30 x1b27, 0xc4ee, 0 00025020: 78 65 34 37 38 2c 20 30 78 61 64 32 66 2c 20 30 xe478, 0xad2f, 0 00025030: 78 31 38 30 36 2c 20 30 78 32 66 34 33 2c 20 30 x1806, 0x2f43, 0 00025040: 78 64 37 61 37 2c 20 30 78 33 64 66 62 2c 20 30 xd7a7, 0x3dfb, 0 00025050: 78 30 30 39 39 2c 20 30 78 32 62 34 64 2c 20 30 x0099, 0x2b4d, 0 00025060: 78 64 66 30 62 2c 20 30 78 34 66 63 31 2c 20 30 xdf0b, 0x4fc1, 0 00025070: 78 32 34 38 30 2c 20 30 78 32 62 38 33 5d 29 3b x2480, 0x2b83]); 00025080: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 74 73 36 \n\nfunction ts6 00025090: 34 28 78 2c 20 69 2c 20 68 2c 20 6c 29 20 7b 5c 4(x, i, h, l) {\ 000250a0: 6e 20 20 78 5b 69 5d 20 20 20 3d 20 28 68 20 3e n x[i] = (h > 000250b0: 3e 20 32 34 29 20 26 20 30 78 66 66 3b 5c 6e 20 > 24) & 0xff;\n 000250c0: 20 78 5b 69 2b 31 5d 20 3d 20 28 68 20 3e 3e 20 x[i+1] = (h >> 000250d0: 31 36 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 78 16) & 0xff;\n x 000250e0: 5b 69 2b 32 5d 20 3d 20 28 68 20 3e 3e 20 20 38 [i+2] = (h >> 8 000250f0: 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 78 5b 69 ) & 0xff;\n x[i 00025100: 2b 33 5d 20 3d 20 68 20 26 20 30 78 66 66 3b 5c +3] = h & 0xff;\ 00025110: 6e 20 20 78 5b 69 2b 34 5d 20 3d 20 28 6c 20 3e n x[i+4] = (l > 00025120: 3e 20 32 34 29 20 20 26 20 30 78 66 66 3b 5c 6e > 24) & 0xff;\n 00025130: 20 20 78 5b 69 2b 35 5d 20 3d 20 28 6c 20 3e 3e x[i+5] = (l >> 00025140: 20 31 36 29 20 20 26 20 30 78 66 66 3b 5c 6e 20 16) & 0xff;\n 00025150: 20 78 5b 69 2b 36 5d 20 3d 20 28 6c 20 3e 3e 20 x[i+6] = (l >> 00025160: 20 38 29 20 20 26 20 30 78 66 66 3b 5c 6e 20 20 8) & 0xff;\n 00025170: 78 5b 69 2b 37 5d 20 3d 20 6c 20 26 20 30 78 66 x[i+7] = l & 0xf 00025180: 66 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f f;\n}\n\nfunctio 00025190: 6e 20 76 6e 28 78 2c 20 78 69 2c 20 79 2c 20 79 n vn(x, xi, y, y 000251a0: 69 2c 20 6e 29 20 7b 5c 6e 20 20 76 61 72 20 69 i, n) {\n var i 000251b0: 2c 64 20 3d 20 30 3b 5c 6e 20 20 66 6f 72 20 28 ,d = 0;\n for ( 000251c0: 69 20 3d 20 30 3b 20 69 20 3c 20 6e 3b 20 69 2b i = 0; i < n; i+ 000251d0: 2b 29 20 64 20 7c 3d 20 78 5b 78 69 2b 69 5d 5e +) d |= x[xi+i]^ 000251e0: 79 5b 79 69 2b 69 5d 3b 5c 6e 20 20 72 65 74 75 y[yi+i];\n retu 000251f0: 72 6e 20 28 31 20 26 20 28 28 64 20 2d 20 31 29 rn (1 & ((d - 1) 00025200: 20 3e 3e 3e 20 38 29 29 20 2d 20 31 3b 5c 6e 7d >>> 8)) - 1;\n} 00025210: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 \n\nfunction cry 00025220: 70 74 6f 5f 76 65 72 69 66 79 5f 31 36 28 78 2c pto_verify_16(x, 00025230: 20 78 69 2c 20 79 2c 20 79 69 29 20 7b 5c 6e 20 xi, y, yi) {\n 00025240: 20 72 65 74 75 72 6e 20 76 6e 28 78 2c 78 69 2c return vn(x,xi, 00025250: 79 2c 79 69 2c 31 36 29 3b 5c 6e 7d 5c 6e 5c 6e y,yi,16);\n}\n\n 00025260: 66 75 6e 63 74 69 6f 6e 20 63 72 79 70 74 6f 5f function crypto_ 00025270: 76 65 72 69 66 79 5f 33 32 28 78 2c 20 78 69 2c verify_32(x, xi, 00025280: 20 79 2c 20 79 69 29 20 7b 5c 6e 20 20 72 65 74 y, yi) {\n ret 00025290: 75 72 6e 20 76 6e 28 78 2c 78 69 2c 79 2c 79 69 urn vn(x,xi,y,yi 000252a0: 2c 33 32 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 ,32);\n}\n\nfunc 000252b0: 74 69 6f 6e 20 63 6f 72 65 5f 73 61 6c 73 61 32 tion core_salsa2 000252c0: 30 28 6f 2c 20 70 2c 20 6b 2c 20 63 29 20 7b 5c 0(o, p, k, c) {\ 000252d0: 6e 20 20 76 61 72 20 6a 30 20 20 3d 20 63 5b 20 n var j0 = c[ 000252e0: 30 5d 20 26 20 30 78 66 66 20 7c 20 28 63 5b 20 0] & 0xff | (c[ 000252f0: 31 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 1] & 0xff)<<8 | 00025300: 28 63 5b 20 32 5d 20 26 20 30 78 66 66 29 3c 3c (c[ 2] & 0xff)<< 00025310: 31 36 20 7c 20 28 63 5b 20 33 5d 20 26 20 30 78 16 | (c[ 3] & 0x 00025320: 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 ff)<<24,\n 00025330: 6a 31 20 20 3d 20 6b 5b 20 30 5d 20 26 20 30 78 j1 = k[ 0] & 0x 00025340: 66 66 20 7c 20 28 6b 5b 20 31 5d 20 26 20 30 78 ff | (k[ 1] & 0x 00025350: 66 66 29 3c 3c 38 20 7c 20 28 6b 5b 20 32 5d 20 ff)<<8 | (k[ 2] 00025360: 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 6b & 0xff)<<16 | (k 00025370: 5b 20 33 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 [ 3] & 0xff)<<24 00025380: 2c 5c 6e 20 20 20 20 20 20 6a 32 20 20 3d 20 6b ,\n j2 = k 00025390: 5b 20 34 5d 20 26 20 30 78 66 66 20 7c 20 28 6b [ 4] & 0xff | (k 000253a0: 5b 20 35 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 [ 5] & 0xff)<<8 000253b0: 7c 20 28 6b 5b 20 36 5d 20 26 20 30 78 66 66 29 | (k[ 6] & 0xff) 000253c0: 3c 3c 31 36 20 7c 20 28 6b 5b 20 37 5d 20 26 20 <<16 | (k[ 7] & 000253d0: 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 0xff)<<24,\n 000253e0: 20 20 6a 33 20 20 3d 20 6b 5b 20 38 5d 20 26 20 j3 = k[ 8] & 000253f0: 30 78 66 66 20 7c 20 28 6b 5b 20 39 5d 20 26 20 0xff | (k[ 9] & 00025400: 30 78 66 66 29 3c 3c 38 20 7c 20 28 6b 5b 31 30 0xff)<<8 | (k[10 00025410: 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 ] & 0xff)<<16 | 00025420: 28 6b 5b 31 31 5d 20 26 20 30 78 66 66 29 3c 3c (k[11] & 0xff)<< 00025430: 32 34 2c 5c 6e 20 20 20 20 20 20 6a 34 20 20 3d 24,\n j4 = 00025440: 20 6b 5b 31 32 5d 20 26 20 30 78 66 66 20 7c 20 k[12] & 0xff | 00025450: 28 6b 5b 31 33 5d 20 26 20 30 78 66 66 29 3c 3c (k[13] & 0xff)<< 00025460: 38 20 7c 20 28 6b 5b 31 34 5d 20 26 20 30 78 66 8 | (k[14] & 0xf 00025470: 66 29 3c 3c 31 36 20 7c 20 28 6b 5b 31 35 5d 20 f)<<16 | (k[15] 00025480: 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 & 0xff)<<24,\n 00025490: 20 20 20 20 6a 35 20 20 3d 20 63 5b 20 34 5d 20 j5 = c[ 4] 000254a0: 26 20 30 78 66 66 20 7c 20 28 63 5b 20 35 5d 20 & 0xff | (c[ 5] 000254b0: 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 63 5b & 0xff)<<8 | (c[ 000254c0: 20 36 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 6] & 0xff)<<16 000254d0: 7c 20 28 63 5b 20 37 5d 20 26 20 30 78 66 66 29 | (c[ 7] & 0xff) 000254e0: 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 36 20 <<24,\n j6 000254f0: 20 3d 20 70 5b 20 30 5d 20 26 20 30 78 66 66 20 = p[ 0] & 0xff 00025500: 7c 20 28 70 5b 20 31 5d 20 26 20 30 78 66 66 29 | (p[ 1] & 0xff) 00025510: 3c 3c 38 20 7c 20 28 70 5b 20 32 5d 20 26 20 30 <<8 | (p[ 2] & 0 00025520: 78 66 66 29 3c 3c 31 36 20 7c 20 28 70 5b 20 33 xff)<<16 | (p[ 3 00025530: 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e ] & 0xff)<<24,\n 00025540: 20 20 20 20 20 20 6a 37 20 20 3d 20 70 5b 20 34 j7 = p[ 4 00025550: 5d 20 26 20 30 78 66 66 20 7c 20 28 70 5b 20 35 ] & 0xff | (p[ 5 00025560: 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 ] & 0xff)<<8 | ( 00025570: 70 5b 20 36 5d 20 26 20 30 78 66 66 29 3c 3c 31 p[ 6] & 0xff)<<1 00025580: 36 20 7c 20 28 70 5b 20 37 5d 20 26 20 30 78 66 6 | (p[ 7] & 0xf 00025590: 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a f)<<24,\n j 000255a0: 38 20 20 3d 20 70 5b 20 38 5d 20 26 20 30 78 66 8 = p[ 8] & 0xf 000255b0: 66 20 7c 20 28 70 5b 20 39 5d 20 26 20 30 78 66 f | (p[ 9] & 0xf 000255c0: 66 29 3c 3c 38 20 7c 20 28 70 5b 31 30 5d 20 26 f)<<8 | (p[10] & 000255d0: 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 70 5b 0xff)<<16 | (p[ 000255e0: 31 31 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 11] & 0xff)<<24, 000255f0: 5c 6e 20 20 20 20 20 20 6a 39 20 20 3d 20 70 5b \n j9 = p[ 00025600: 31 32 5d 20 26 20 30 78 66 66 20 7c 20 28 70 5b 12] & 0xff | (p[ 00025610: 31 33 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 13] & 0xff)<<8 | 00025620: 20 28 70 5b 31 34 5d 20 26 20 30 78 66 66 29 3c (p[14] & 0xff)< 00025630: 3c 31 36 20 7c 20 28 70 5b 31 35 5d 20 26 20 30 <16 | (p[15] & 0 00025640: 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 xff)<<24,\n 00025650: 20 6a 31 30 20 3d 20 63 5b 20 38 5d 20 26 20 30 j10 = c[ 8] & 0 00025660: 78 66 66 20 7c 20 28 63 5b 20 39 5d 20 26 20 30 xff | (c[ 9] & 0 00025670: 78 66 66 29 3c 3c 38 20 7c 20 28 63 5b 31 30 5d xff)<<8 | (c[10] 00025680: 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 & 0xff)<<16 | ( 00025690: 63 5b 31 31 5d 20 26 20 30 78 66 66 29 3c 3c 32 c[11] & 0xff)<<2 000256a0: 34 2c 5c 6e 20 20 20 20 20 20 6a 31 31 20 3d 20 4,\n j11 = 000256b0: 6b 5b 31 36 5d 20 26 20 30 78 66 66 20 7c 20 28 k[16] & 0xff | ( 000256c0: 6b 5b 31 37 5d 20 26 20 30 78 66 66 29 3c 3c 38 k[17] & 0xff)<<8 000256d0: 20 7c 20 28 6b 5b 31 38 5d 20 26 20 30 78 66 66 | (k[18] & 0xff 000256e0: 29 3c 3c 31 36 20 7c 20 28 6b 5b 31 39 5d 20 26 )<<16 | (k[19] & 000256f0: 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 0xff)<<24,\n 00025700: 20 20 20 6a 31 32 20 3d 20 6b 5b 32 30 5d 20 26 j12 = k[20] & 00025710: 20 30 78 66 66 20 7c 20 28 6b 5b 32 31 5d 20 26 0xff | (k[21] & 00025720: 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 6b 5b 32 0xff)<<8 | (k[2 00025730: 32 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 2] & 0xff)<<16 | 00025740: 20 28 6b 5b 32 33 5d 20 26 20 30 78 66 66 29 3c (k[23] & 0xff)< 00025750: 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 31 33 20 <24,\n j13 00025760: 3d 20 6b 5b 32 34 5d 20 26 20 30 78 66 66 20 7c = k[24] & 0xff | 00025770: 20 28 6b 5b 32 35 5d 20 26 20 30 78 66 66 29 3c (k[25] & 0xff)< 00025780: 3c 38 20 7c 20 28 6b 5b 32 36 5d 20 26 20 30 78 <8 | (k[26] & 0x 00025790: 66 66 29 3c 3c 31 36 20 7c 20 28 6b 5b 32 37 5d ff)<<16 | (k[27] 000257a0: 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 & 0xff)<<24,\n 000257b0: 20 20 20 20 20 6a 31 34 20 3d 20 6b 5b 32 38 5d j14 = k[28] 000257c0: 20 26 20 30 78 66 66 20 7c 20 28 6b 5b 32 39 5d & 0xff | (k[29] 000257d0: 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 6b & 0xff)<<8 | (k 000257e0: 5b 33 30 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 [30] & 0xff)<<16 000257f0: 20 7c 20 28 6b 5b 33 31 5d 20 26 20 30 78 66 66 | (k[31] & 0xff 00025800: 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 31 )<<24,\n j1 00025810: 35 20 3d 20 63 5b 31 32 5d 20 26 20 30 78 66 66 5 = c[12] & 0xff 00025820: 20 7c 20 28 63 5b 31 33 5d 20 26 20 30 78 66 66 | (c[13] & 0xff 00025830: 29 3c 3c 38 20 7c 20 28 63 5b 31 34 5d 20 26 20 )<<8 | (c[14] & 00025840: 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 63 5b 31 0xff)<<16 | (c[1 00025850: 35 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 3b 5c 5] & 0xff)<<24;\ 00025860: 6e 5c 6e 20 20 76 61 72 20 78 30 20 3d 20 6a 30 n\n var x0 = j0 00025870: 2c 20 78 31 20 3d 20 6a 31 2c 20 78 32 20 3d 20 , x1 = j1, x2 = 00025880: 6a 32 2c 20 78 33 20 3d 20 6a 33 2c 20 78 34 20 j2, x3 = j3, x4 00025890: 3d 20 6a 34 2c 20 78 35 20 3d 20 6a 35 2c 20 78 = j4, x5 = j5, x 000258a0: 36 20 3d 20 6a 36 2c 20 78 37 20 3d 20 6a 37 2c 6 = j6, x7 = j7, 000258b0: 5c 6e 20 20 20 20 20 20 78 38 20 3d 20 6a 38 2c \n x8 = j8, 000258c0: 20 78 39 20 3d 20 6a 39 2c 20 78 31 30 20 3d 20 x9 = j9, x10 = 000258d0: 6a 31 30 2c 20 78 31 31 20 3d 20 6a 31 31 2c 20 j10, x11 = j11, 000258e0: 78 31 32 20 3d 20 6a 31 32 2c 20 78 31 33 20 3d x12 = j12, x13 = 000258f0: 20 6a 31 33 2c 20 78 31 34 20 3d 20 6a 31 34 2c j13, x14 = j14, 00025900: 5c 6e 20 20 20 20 20 20 78 31 35 20 3d 20 6a 31 \n x15 = j1 00025910: 35 2c 20 75 3b 5c 6e 5c 6e 20 20 66 6f 72 20 28 5, u;\n\n for ( 00025920: 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 32 var i = 0; i < 2 00025930: 30 3b 20 69 20 2b 3d 20 32 29 20 7b 5c 6e 20 20 0; i += 2) {\n 00025940: 20 20 75 20 3d 20 78 30 20 2b 20 78 31 32 20 7c u = x0 + x12 | 00025950: 20 30 3b 5c 6e 20 20 20 20 78 34 20 5e 3d 20 75 0;\n x4 ^= u 00025960: 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 2d 37 29 <<7 | u>>>(32-7) 00025970: 3b 5c 6e 20 20 20 20 75 20 3d 20 78 34 20 2b 20 ;\n u = x4 + 00025980: 78 30 20 7c 20 30 3b 5c 6e 20 20 20 20 78 38 20 x0 | 0;\n x8 00025990: 5e 3d 20 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 ^= u<<9 | u>>>(3 000259a0: 32 2d 39 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 2-9);\n u = x 000259b0: 38 20 2b 20 78 34 20 7c 20 30 3b 5c 6e 20 20 20 8 + x4 | 0;\n 000259c0: 20 78 31 32 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 x12 ^= u<<13 | 000259d0: 75 3e 3e 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 u>>>(32-13);\n 000259e0: 20 20 75 20 3d 20 78 31 32 20 2b 20 78 38 20 7c u = x12 + x8 | 000259f0: 20 30 3b 5c 6e 20 20 20 20 78 30 20 5e 3d 20 75 0;\n x0 ^= u 00025a00: 3c 3c 31 38 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 <<18 | u>>>(32-1 00025a10: 38 29 3b 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 78 8);\n\n u = x 00025a20: 35 20 2b 20 78 31 20 7c 20 30 3b 5c 6e 20 20 20 5 + x1 | 0;\n 00025a30: 20 78 39 20 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e x9 ^= u<<7 | u> 00025a40: 3e 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 20 20 75 >>(32-7);\n u 00025a50: 20 3d 20 78 39 20 2b 20 78 35 20 7c 20 30 3b 5c = x9 + x5 | 0;\ 00025a60: 6e 20 20 20 20 78 31 33 20 5e 3d 20 75 3c 3c 39 n x13 ^= u<<9 00025a70: 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e | u>>>(32-9);\n 00025a80: 20 20 20 20 75 20 3d 20 78 31 33 20 2b 20 78 39 u = x13 + x9 00025a90: 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 20 5e 3d | 0;\n x1 ^= 00025aa0: 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e 28 33 32 u<<13 | u>>>(32 00025ab0: 2d 31 33 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 -13);\n u = x 00025ac0: 31 20 2b 20 78 31 33 20 7c 20 30 3b 5c 6e 20 20 1 + x13 | 0;\n 00025ad0: 20 20 78 35 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 x5 ^= u<<18 | 00025ae0: 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e u>>>(32-18);\n\n 00025af0: 20 20 20 20 75 20 3d 20 78 31 30 20 2b 20 78 36 u = x10 + x6 00025b00: 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 34 20 5e | 0;\n x14 ^ 00025b10: 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 = u<<7 | u>>>(32 00025b20: 2d 37 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 31 -7);\n u = x1 00025b30: 34 20 2b 20 78 31 30 20 7c 20 30 3b 5c 6e 20 20 4 + x10 | 0;\n 00025b40: 20 20 78 32 20 5e 3d 20 75 3c 3c 39 20 7c 20 75 x2 ^= u<<9 | u 00025b50: 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e 20 20 20 20 >>>(32-9);\n 00025b60: 75 20 3d 20 78 32 20 2b 20 78 31 34 20 7c 20 30 u = x2 + x14 | 0 00025b70: 3b 5c 6e 20 20 20 20 78 36 20 5e 3d 20 75 3c 3c ;\n x6 ^= u<< 00025b80: 31 33 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 33 29 13 | u>>>(32-13) 00025b90: 3b 5c 6e 20 20 20 20 75 20 3d 20 78 36 20 2b 20 ;\n u = x6 + 00025ba0: 78 32 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 30 x2 | 0;\n x10 00025bb0: 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 75 3e 3e 3e ^= u<<18 | u>>> 00025bc0: 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e 20 20 20 20 (32-18);\n\n 00025bd0: 75 20 3d 20 78 31 35 20 2b 20 78 31 31 20 7c 20 u = x15 + x11 | 00025be0: 30 3b 5c 6e 20 20 20 20 78 33 20 5e 3d 20 75 3c 0;\n x3 ^= u< 00025bf0: 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 2d 37 29 3b <7 | u>>>(32-7); 00025c00: 5c 6e 20 20 20 20 75 20 3d 20 78 33 20 2b 20 78 \n u = x3 + x 00025c10: 31 35 20 7c 20 30 3b 5c 6e 20 20 20 20 78 37 20 15 | 0;\n x7 00025c20: 5e 3d 20 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 ^= u<<9 | u>>>(3 00025c30: 32 2d 39 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 2-9);\n u = x 00025c40: 37 20 2b 20 78 33 20 7c 20 30 3b 5c 6e 20 20 20 7 + x3 | 0;\n 00025c50: 20 78 31 31 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 x11 ^= u<<13 | 00025c60: 75 3e 3e 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 u>>>(32-13);\n 00025c70: 20 20 75 20 3d 20 78 31 31 20 2b 20 78 37 20 7c u = x11 + x7 | 00025c80: 20 30 3b 5c 6e 20 20 20 20 78 31 35 20 5e 3d 20 0;\n x15 ^= 00025c90: 75 3c 3c 31 38 20 7c 20 75 3e 3e 3e 28 33 32 2d u<<18 | u>>>(32- 00025ca0: 31 38 29 3b 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 18);\n\n u = 00025cb0: 78 30 20 2b 20 78 33 20 7c 20 30 3b 5c 6e 20 20 x0 + x3 | 0;\n 00025cc0: 20 20 78 31 20 5e 3d 20 75 3c 3c 37 20 7c 20 75 x1 ^= u<<7 | u 00025cd0: 3e 3e 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 20 20 >>>(32-7);\n 00025ce0: 75 20 3d 20 78 31 20 2b 20 78 30 20 7c 20 30 3b u = x1 + x0 | 0; 00025cf0: 5c 6e 20 20 20 20 78 32 20 5e 3d 20 75 3c 3c 39 \n x2 ^= u<<9 00025d00: 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e | u>>>(32-9);\n 00025d10: 20 20 20 20 75 20 3d 20 78 32 20 2b 20 78 31 20 u = x2 + x1 00025d20: 7c 20 30 3b 5c 6e 20 20 20 20 78 33 20 5e 3d 20 | 0;\n x3 ^= 00025d30: 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e 28 33 32 2d u<<13 | u>>>(32- 00025d40: 31 33 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 33 13);\n u = x3 00025d50: 20 2b 20 78 32 20 7c 20 30 3b 5c 6e 20 20 20 20 + x2 | 0;\n 00025d60: 78 30 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 75 3e x0 ^= u<<18 | u> 00025d70: 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e 20 20 >>(32-18);\n\n 00025d80: 20 20 75 20 3d 20 78 35 20 2b 20 78 34 20 7c 20 u = x5 + x4 | 00025d90: 30 3b 5c 6e 20 20 20 20 78 36 20 5e 3d 20 75 3c 0;\n x6 ^= u< 00025da0: 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 2d 37 29 3b <7 | u>>>(32-7); 00025db0: 5c 6e 20 20 20 20 75 20 3d 20 78 36 20 2b 20 78 \n u = x6 + x 00025dc0: 35 20 7c 20 30 3b 5c 6e 20 20 20 20 78 37 20 5e 5 | 0;\n x7 ^ 00025dd0: 3d 20 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 32 = u<<9 | u>>>(32 00025de0: 2d 39 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 37 -9);\n u = x7 00025df0: 20 2b 20 78 36 20 7c 20 30 3b 5c 6e 20 20 20 20 + x6 | 0;\n 00025e00: 78 34 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 75 3e x4 ^= u<<13 | u> 00025e10: 3e 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 20 20 >>(32-13);\n 00025e20: 75 20 3d 20 78 34 20 2b 20 78 37 20 7c 20 30 3b u = x4 + x7 | 0; 00025e30: 5c 6e 20 20 20 20 78 35 20 5e 3d 20 75 3c 3c 31 \n x5 ^= u<<1 00025e40: 38 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 8 | u>>>(32-18); 00025e50: 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 78 31 30 20 \n\n u = x10 00025e60: 2b 20 78 39 20 7c 20 30 3b 5c 6e 20 20 20 20 78 + x9 | 0;\n x 00025e70: 31 31 20 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 11 ^= u<<7 | u>> 00025e80: 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 20 20 75 20 >(32-7);\n u 00025e90: 3d 20 78 31 31 20 2b 20 78 31 30 20 7c 20 30 3b = x11 + x10 | 0; 00025ea0: 5c 6e 20 20 20 20 78 38 20 5e 3d 20 75 3c 3c 39 \n x8 ^= u<<9 00025eb0: 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e | u>>>(32-9);\n 00025ec0: 20 20 20 20 75 20 3d 20 78 38 20 2b 20 78 31 31 u = x8 + x11 00025ed0: 20 7c 20 30 3b 5c 6e 20 20 20 20 78 39 20 5e 3d | 0;\n x9 ^= 00025ee0: 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e 28 33 32 u<<13 | u>>>(32 00025ef0: 2d 31 33 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 -13);\n u = x 00025f00: 39 20 2b 20 78 38 20 7c 20 30 3b 5c 6e 20 20 20 9 + x8 | 0;\n 00025f10: 20 78 31 30 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 x10 ^= u<<18 | 00025f20: 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e u>>>(32-18);\n\n 00025f30: 20 20 20 20 75 20 3d 20 78 31 35 20 2b 20 78 31 u = x15 + x1 00025f40: 34 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 32 20 4 | 0;\n x12 00025f50: 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 ^= u<<7 | u>>>(3 00025f60: 32 2d 37 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 2-7);\n u = x 00025f70: 31 32 20 2b 20 78 31 35 20 7c 20 30 3b 5c 6e 20 12 + x15 | 0;\n 00025f80: 20 20 20 78 31 33 20 5e 3d 20 75 3c 3c 39 20 7c x13 ^= u<<9 | 00025f90: 20 75 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e 20 20 u>>>(32-9);\n 00025fa0: 20 20 75 20 3d 20 78 31 33 20 2b 20 78 31 32 20 u = x13 + x12 00025fb0: 7c 20 30 3b 5c 6e 20 20 20 20 78 31 34 20 5e 3d | 0;\n x14 ^= 00025fc0: 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e 28 33 32 u<<13 | u>>>(32 00025fd0: 2d 31 33 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 -13);\n u = x 00025fe0: 31 34 20 2b 20 78 31 33 20 7c 20 30 3b 5c 6e 20 14 + x13 | 0;\n 00025ff0: 20 20 20 78 31 35 20 5e 3d 20 75 3c 3c 31 38 20 x15 ^= u<<18 00026000: 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e | u>>>(32-18);\n 00026010: 20 20 7d 5c 6e 20 20 20 78 30 20 3d 20 20 78 30 }\n x0 = x0 00026020: 20 2b 20 20 6a 30 20 7c 20 30 3b 5c 6e 20 20 20 + j0 | 0;\n 00026030: 78 31 20 3d 20 20 78 31 20 2b 20 20 6a 31 20 7c x1 = x1 + j1 | 00026040: 20 30 3b 5c 6e 20 20 20 78 32 20 3d 20 20 78 32 0;\n x2 = x2 00026050: 20 2b 20 20 6a 32 20 7c 20 30 3b 5c 6e 20 20 20 + j2 | 0;\n 00026060: 78 33 20 3d 20 20 78 33 20 2b 20 20 6a 33 20 7c x3 = x3 + j3 | 00026070: 20 30 3b 5c 6e 20 20 20 78 34 20 3d 20 20 78 34 0;\n x4 = x4 00026080: 20 2b 20 20 6a 34 20 7c 20 30 3b 5c 6e 20 20 20 + j4 | 0;\n 00026090: 78 35 20 3d 20 20 78 35 20 2b 20 20 6a 35 20 7c x5 = x5 + j5 | 000260a0: 20 30 3b 5c 6e 20 20 20 78 36 20 3d 20 20 78 36 0;\n x6 = x6 000260b0: 20 2b 20 20 6a 36 20 7c 20 30 3b 5c 6e 20 20 20 + j6 | 0;\n 000260c0: 78 37 20 3d 20 20 78 37 20 2b 20 20 6a 37 20 7c x7 = x7 + j7 | 000260d0: 20 30 3b 5c 6e 20 20 20 78 38 20 3d 20 20 78 38 0;\n x8 = x8 000260e0: 20 2b 20 20 6a 38 20 7c 20 30 3b 5c 6e 20 20 20 + j8 | 0;\n 000260f0: 78 39 20 3d 20 20 78 39 20 2b 20 20 6a 39 20 7c x9 = x9 + j9 | 00026100: 20 30 3b 5c 6e 20 20 78 31 30 20 3d 20 78 31 30 0;\n x10 = x10 00026110: 20 2b 20 6a 31 30 20 7c 20 30 3b 5c 6e 20 20 78 + j10 | 0;\n x 00026120: 31 31 20 3d 20 78 31 31 20 2b 20 6a 31 31 20 7c 11 = x11 + j11 | 00026130: 20 30 3b 5c 6e 20 20 78 31 32 20 3d 20 78 31 32 0;\n x12 = x12 00026140: 20 2b 20 6a 31 32 20 7c 20 30 3b 5c 6e 20 20 78 + j12 | 0;\n x 00026150: 31 33 20 3d 20 78 31 33 20 2b 20 6a 31 33 20 7c 13 = x13 + j13 | 00026160: 20 30 3b 5c 6e 20 20 78 31 34 20 3d 20 78 31 34 0;\n x14 = x14 00026170: 20 2b 20 6a 31 34 20 7c 20 30 3b 5c 6e 20 20 78 + j14 | 0;\n x 00026180: 31 35 20 3d 20 78 31 35 20 2b 20 6a 31 35 20 7c 15 = x15 + j15 | 00026190: 20 30 3b 5c 6e 5c 6e 20 20 6f 5b 20 30 5d 20 3d 0;\n\n o[ 0] = 000261a0: 20 78 30 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 x0 >>> 0 & 0xf 000261b0: 66 3b 5c 6e 20 20 6f 5b 20 31 5d 20 3d 20 78 30 f;\n o[ 1] = x0 000261c0: 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c >>> 8 & 0xff;\ 000261d0: 6e 20 20 6f 5b 20 32 5d 20 3d 20 78 30 20 3e 3e n o[ 2] = x0 >> 000261e0: 3e 20 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 16 & 0xff;\n 000261f0: 6f 5b 20 33 5d 20 3d 20 78 30 20 3e 3e 3e 20 32 o[ 3] = x0 >>> 2 00026200: 34 20 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 4 & 0xff;\n\n o 00026210: 5b 20 34 5d 20 3d 20 78 31 20 3e 3e 3e 20 20 30 [ 4] = x1 >>> 0 00026220: 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 20 35 & 0xff;\n o[ 5 00026230: 5d 20 3d 20 78 31 20 3e 3e 3e 20 20 38 20 26 20 ] = x1 >>> 8 & 00026240: 30 78 66 66 3b 5c 6e 20 20 6f 5b 20 36 5d 20 3d 0xff;\n o[ 6] = 00026250: 20 78 31 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 x1 >>> 16 & 0xf 00026260: 66 3b 5c 6e 20 20 6f 5b 20 37 5d 20 3d 20 78 31 f;\n o[ 7] = x1 00026270: 20 3e 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c >>> 24 & 0xff;\ 00026280: 6e 5c 6e 20 20 6f 5b 20 38 5d 20 3d 20 78 32 20 n\n o[ 8] = x2 00026290: 3e 3e 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e >>> 0 & 0xff;\n 000262a0: 20 20 6f 5b 20 39 5d 20 3d 20 78 32 20 3e 3e 3e o[ 9] = x2 >>> 000262b0: 20 20 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 8 & 0xff;\n o 000262c0: 5b 31 30 5d 20 3d 20 78 32 20 3e 3e 3e 20 31 36 [10] = x2 >>> 16 000262d0: 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 31 31 & 0xff;\n o[11 000262e0: 5d 20 3d 20 78 32 20 3e 3e 3e 20 32 34 20 26 20 ] = x2 >>> 24 & 000262f0: 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 31 32 5d 0xff;\n\n o[12] 00026300: 20 3d 20 78 33 20 3e 3e 3e 20 20 30 20 26 20 30 = x3 >>> 0 & 0 00026310: 78 66 66 3b 5c 6e 20 20 6f 5b 31 33 5d 20 3d 20 xff;\n o[13] = 00026320: 78 33 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 x3 >>> 8 & 0xff 00026330: 3b 5c 6e 20 20 6f 5b 31 34 5d 20 3d 20 78 33 20 ;\n o[14] = x3 00026340: 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 5c 6e >>> 16 & 0xff;\n 00026350: 20 20 6f 5b 31 35 5d 20 3d 20 78 33 20 3e 3e 3e o[15] = x3 >>> 00026360: 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 24 & 0xff;\n\n 00026370: 20 6f 5b 31 36 5d 20 3d 20 78 34 20 3e 3e 3e 20 o[16] = x4 >>> 00026380: 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 0 & 0xff;\n o[ 00026390: 31 37 5d 20 3d 20 78 34 20 3e 3e 3e 20 20 38 20 17] = x4 >>> 8 000263a0: 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 31 38 5d & 0xff;\n o[18] 000263b0: 20 3d 20 78 34 20 3e 3e 3e 20 31 36 20 26 20 30 = x4 >>> 16 & 0 000263c0: 78 66 66 3b 5c 6e 20 20 6f 5b 31 39 5d 20 3d 20 xff;\n o[19] = 000263d0: 78 34 20 3e 3e 3e 20 32 34 20 26 20 30 78 66 66 x4 >>> 24 & 0xff 000263e0: 3b 5c 6e 5c 6e 20 20 6f 5b 32 30 5d 20 3d 20 78 ;\n\n o[20] = x 000263f0: 35 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 66 3b 5 >>> 0 & 0xff; 00026400: 5c 6e 20 20 6f 5b 32 31 5d 20 3d 20 78 35 20 3e \n o[21] = x5 > 00026410: 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c 6e 20 >> 8 & 0xff;\n 00026420: 20 6f 5b 32 32 5d 20 3d 20 78 35 20 3e 3e 3e 20 o[22] = x5 >>> 00026430: 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 16 & 0xff;\n o[ 00026440: 32 33 5d 20 3d 20 78 35 20 3e 3e 3e 20 32 34 20 23] = x5 >>> 24 00026450: 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 32 & 0xff;\n\n o[2 00026460: 34 5d 20 3d 20 78 36 20 3e 3e 3e 20 20 30 20 26 4] = x6 >>> 0 & 00026470: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 32 35 5d 20 0xff;\n o[25] 00026480: 3d 20 78 36 20 3e 3e 3e 20 20 38 20 26 20 30 78 = x6 >>> 8 & 0x 00026490: 66 66 3b 5c 6e 20 20 6f 5b 32 36 5d 20 3d 20 78 ff;\n o[26] = x 000264a0: 36 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 6 >>> 16 & 0xff; 000264b0: 5c 6e 20 20 6f 5b 32 37 5d 20 3d 20 78 36 20 3e \n o[27] = x6 > 000264c0: 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c >> 24 & 0xff;\n\ 000264d0: 6e 20 20 6f 5b 32 38 5d 20 3d 20 78 37 20 3e 3e n o[28] = x7 >> 000264e0: 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 0 & 0xff;\n 000264f0: 6f 5b 32 39 5d 20 3d 20 78 37 20 3e 3e 3e 20 20 o[29] = x7 >>> 00026500: 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 33 8 & 0xff;\n o[3 00026510: 30 5d 20 3d 20 78 37 20 3e 3e 3e 20 31 36 20 26 0] = x7 >>> 16 & 00026520: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 33 31 5d 20 0xff;\n o[31] 00026530: 3d 20 78 37 20 3e 3e 3e 20 32 34 20 26 20 30 78 = x7 >>> 24 & 0x 00026540: 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 33 32 5d 20 3d ff;\n\n o[32] = 00026550: 20 78 38 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 x8 >>> 0 & 0xf 00026560: 66 3b 5c 6e 20 20 6f 5b 33 33 5d 20 3d 20 78 38 f;\n o[33] = x8 00026570: 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c >>> 8 & 0xff;\ 00026580: 6e 20 20 6f 5b 33 34 5d 20 3d 20 78 38 20 3e 3e n o[34] = x8 >> 00026590: 3e 20 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 16 & 0xff;\n 000265a0: 6f 5b 33 35 5d 20 3d 20 78 38 20 3e 3e 3e 20 32 o[35] = x8 >>> 2 000265b0: 34 20 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 4 & 0xff;\n\n o 000265c0: 5b 33 36 5d 20 3d 20 78 39 20 3e 3e 3e 20 20 30 [36] = x9 >>> 0 000265d0: 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 33 37 & 0xff;\n o[37 000265e0: 5d 20 3d 20 78 39 20 3e 3e 3e 20 20 38 20 26 20 ] = x9 >>> 8 & 000265f0: 30 78 66 66 3b 5c 6e 20 20 6f 5b 33 38 5d 20 3d 0xff;\n o[38] = 00026600: 20 78 39 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 x9 >>> 16 & 0xf 00026610: 66 3b 5c 6e 20 20 6f 5b 33 39 5d 20 3d 20 78 39 f;\n o[39] = x9 00026620: 20 3e 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c >>> 24 & 0xff;\ 00026630: 6e 5c 6e 20 20 6f 5b 34 30 5d 20 3d 20 78 31 30 n\n o[40] = x10 00026640: 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 66 3b 5c >>> 0 & 0xff;\ 00026650: 6e 20 20 6f 5b 34 31 5d 20 3d 20 78 31 30 20 3e n o[41] = x10 > 00026660: 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c 6e 20 >> 8 & 0xff;\n 00026670: 20 6f 5b 34 32 5d 20 3d 20 78 31 30 20 3e 3e 3e o[42] = x10 >>> 00026680: 20 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 16 & 0xff;\n o 00026690: 5b 34 33 5d 20 3d 20 78 31 30 20 3e 3e 3e 20 32 [43] = x10 >>> 2 000266a0: 34 20 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 4 & 0xff;\n\n o 000266b0: 5b 34 34 5d 20 3d 20 78 31 31 20 3e 3e 3e 20 20 [44] = x11 >>> 000266c0: 30 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 34 0 & 0xff;\n o[4 000266d0: 35 5d 20 3d 20 78 31 31 20 3e 3e 3e 20 20 38 20 5] = x11 >>> 8 000266e0: 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 34 36 5d & 0xff;\n o[46] 000266f0: 20 3d 20 78 31 31 20 3e 3e 3e 20 31 36 20 26 20 = x11 >>> 16 & 00026700: 30 78 66 66 3b 5c 6e 20 20 6f 5b 34 37 5d 20 3d 0xff;\n o[47] = 00026710: 20 78 31 31 20 3e 3e 3e 20 32 34 20 26 20 30 78 x11 >>> 24 & 0x 00026720: 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 34 38 5d 20 3d ff;\n\n o[48] = 00026730: 20 78 31 32 20 3e 3e 3e 20 20 30 20 26 20 30 78 x12 >>> 0 & 0x 00026740: 66 66 3b 5c 6e 20 20 6f 5b 34 39 5d 20 3d 20 78 ff;\n o[49] = x 00026750: 31 32 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 12 >>> 8 & 0xff 00026760: 3b 5c 6e 20 20 6f 5b 35 30 5d 20 3d 20 78 31 32 ;\n o[50] = x12 00026770: 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 5c >>> 16 & 0xff;\ 00026780: 6e 20 20 6f 5b 35 31 5d 20 3d 20 78 31 32 20 3e n o[51] = x12 > 00026790: 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c >> 24 & 0xff;\n\ 000267a0: 6e 20 20 6f 5b 35 32 5d 20 3d 20 78 31 33 20 3e n o[52] = x13 > 000267b0: 3e 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 >> 0 & 0xff;\n 000267c0: 20 6f 5b 35 33 5d 20 3d 20 78 31 33 20 3e 3e 3e o[53] = x13 >>> 000267d0: 20 20 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 8 & 0xff;\n o 000267e0: 5b 35 34 5d 20 3d 20 78 31 33 20 3e 3e 3e 20 31 [54] = x13 >>> 1 000267f0: 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 35 6 & 0xff;\n o[5 00026800: 35 5d 20 3d 20 78 31 33 20 3e 3e 3e 20 32 34 20 5] = x13 >>> 24 00026810: 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 35 & 0xff;\n\n o[5 00026820: 36 5d 20 3d 20 78 31 34 20 3e 3e 3e 20 20 30 20 6] = x14 >>> 0 00026830: 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 35 37 5d & 0xff;\n o[57] 00026840: 20 3d 20 78 31 34 20 3e 3e 3e 20 20 38 20 26 20 = x14 >>> 8 & 00026850: 30 78 66 66 3b 5c 6e 20 20 6f 5b 35 38 5d 20 3d 0xff;\n o[58] = 00026860: 20 78 31 34 20 3e 3e 3e 20 31 36 20 26 20 30 78 x14 >>> 16 & 0x 00026870: 66 66 3b 5c 6e 20 20 6f 5b 35 39 5d 20 3d 20 78 ff;\n o[59] = x 00026880: 31 34 20 3e 3e 3e 20 32 34 20 26 20 30 78 66 66 14 >>> 24 & 0xff 00026890: 3b 5c 6e 5c 6e 20 20 6f 5b 36 30 5d 20 3d 20 78 ;\n\n o[60] = x 000268a0: 31 35 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 66 15 >>> 0 & 0xff 000268b0: 3b 5c 6e 20 20 6f 5b 36 31 5d 20 3d 20 78 31 35 ;\n o[61] = x15 000268c0: 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c >>> 8 & 0xff;\ 000268d0: 6e 20 20 6f 5b 36 32 5d 20 3d 20 78 31 35 20 3e n o[62] = x15 > 000268e0: 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 >> 16 & 0xff;\n 000268f0: 20 6f 5b 36 33 5d 20 3d 20 78 31 35 20 3e 3e 3e o[63] = x15 >>> 00026900: 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 7d 5c 6e 24 & 0xff;\n}\n 00026910: 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 6f 72 65 5f \nfunction core_ 00026920: 68 73 61 6c 73 61 32 30 28 6f 2c 70 2c 6b 2c 63 hsalsa20(o,p,k,c 00026930: 29 20 7b 5c 6e 20 20 76 61 72 20 6a 30 20 20 3d ) {\n var j0 = 00026940: 20 63 5b 20 30 5d 20 26 20 30 78 66 66 20 7c 20 c[ 0] & 0xff | 00026950: 28 63 5b 20 31 5d 20 26 20 30 78 66 66 29 3c 3c (c[ 1] & 0xff)<< 00026960: 38 20 7c 20 28 63 5b 20 32 5d 20 26 20 30 78 66 8 | (c[ 2] & 0xf 00026970: 66 29 3c 3c 31 36 20 7c 20 28 63 5b 20 33 5d 20 f)<<16 | (c[ 3] 00026980: 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 & 0xff)<<24,\n 00026990: 20 20 20 20 6a 31 20 20 3d 20 6b 5b 20 30 5d 20 j1 = k[ 0] 000269a0: 26 20 30 78 66 66 20 7c 20 28 6b 5b 20 31 5d 20 & 0xff | (k[ 1] 000269b0: 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 6b 5b & 0xff)<<8 | (k[ 000269c0: 20 32 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 2] & 0xff)<<16 000269d0: 7c 20 28 6b 5b 20 33 5d 20 26 20 30 78 66 66 29 | (k[ 3] & 0xff) 000269e0: 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 32 20 <<24,\n j2 000269f0: 20 3d 20 6b 5b 20 34 5d 20 26 20 30 78 66 66 20 = k[ 4] & 0xff 00026a00: 7c 20 28 6b 5b 20 35 5d 20 26 20 30 78 66 66 29 | (k[ 5] & 0xff) 00026a10: 3c 3c 38 20 7c 20 28 6b 5b 20 36 5d 20 26 20 30 <<8 | (k[ 6] & 0 00026a20: 78 66 66 29 3c 3c 31 36 20 7c 20 28 6b 5b 20 37 xff)<<16 | (k[ 7 00026a30: 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e ] & 0xff)<<24,\n 00026a40: 20 20 20 20 20 20 6a 33 20 20 3d 20 6b 5b 20 38 j3 = k[ 8 00026a50: 5d 20 26 20 30 78 66 66 20 7c 20 28 6b 5b 20 39 ] & 0xff | (k[ 9 00026a60: 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 ] & 0xff)<<8 | ( 00026a70: 6b 5b 31 30 5d 20 26 20 30 78 66 66 29 3c 3c 31 k[10] & 0xff)<<1 00026a80: 36 20 7c 20 28 6b 5b 31 31 5d 20 26 20 30 78 66 6 | (k[11] & 0xf 00026a90: 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a f)<<24,\n j 00026aa0: 34 20 20 3d 20 6b 5b 31 32 5d 20 26 20 30 78 66 4 = k[12] & 0xf 00026ab0: 66 20 7c 20 28 6b 5b 31 33 5d 20 26 20 30 78 66 f | (k[13] & 0xf 00026ac0: 66 29 3c 3c 38 20 7c 20 28 6b 5b 31 34 5d 20 26 f)<<8 | (k[14] & 00026ad0: 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 6b 5b 0xff)<<16 | (k[ 00026ae0: 31 35 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 15] & 0xff)<<24, 00026af0: 5c 6e 20 20 20 20 20 20 6a 35 20 20 3d 20 63 5b \n j5 = c[ 00026b00: 20 34 5d 20 26 20 30 78 66 66 20 7c 20 28 63 5b 4] & 0xff | (c[ 00026b10: 20 35 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 5] & 0xff)<<8 | 00026b20: 20 28 63 5b 20 36 5d 20 26 20 30 78 66 66 29 3c (c[ 6] & 0xff)< 00026b30: 3c 31 36 20 7c 20 28 63 5b 20 37 5d 20 26 20 30 <16 | (c[ 7] & 0 00026b40: 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 xff)<<24,\n 00026b50: 20 6a 36 20 20 3d 20 70 5b 20 30 5d 20 26 20 30 j6 = p[ 0] & 0 00026b60: 78 66 66 20 7c 20 28 70 5b 20 31 5d 20 26 20 30 xff | (p[ 1] & 0 00026b70: 78 66 66 29 3c 3c 38 20 7c 20 28 70 5b 20 32 5d xff)<<8 | (p[ 2] 00026b80: 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 & 0xff)<<16 | ( 00026b90: 70 5b 20 33 5d 20 26 20 30 78 66 66 29 3c 3c 32 p[ 3] & 0xff)<<2 00026ba0: 34 2c 5c 6e 20 20 20 20 20 20 6a 37 20 20 3d 20 4,\n j7 = 00026bb0: 70 5b 20 34 5d 20 26 20 30 78 66 66 20 7c 20 28 p[ 4] & 0xff | ( 00026bc0: 70 5b 20 35 5d 20 26 20 30 78 66 66 29 3c 3c 38 p[ 5] & 0xff)<<8 00026bd0: 20 7c 20 28 70 5b 20 36 5d 20 26 20 30 78 66 66 | (p[ 6] & 0xff 00026be0: 29 3c 3c 31 36 20 7c 20 28 70 5b 20 37 5d 20 26 )<<16 | (p[ 7] & 00026bf0: 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 0xff)<<24,\n 00026c00: 20 20 20 6a 38 20 20 3d 20 70 5b 20 38 5d 20 26 j8 = p[ 8] & 00026c10: 20 30 78 66 66 20 7c 20 28 70 5b 20 39 5d 20 26 0xff | (p[ 9] & 00026c20: 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 70 5b 31 0xff)<<8 | (p[1 00026c30: 30 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 0] & 0xff)<<16 | 00026c40: 20 28 70 5b 31 31 5d 20 26 20 30 78 66 66 29 3c (p[11] & 0xff)< 00026c50: 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 39 20 20 <24,\n j9 00026c60: 3d 20 70 5b 31 32 5d 20 26 20 30 78 66 66 20 7c = p[12] & 0xff | 00026c70: 20 28 70 5b 31 33 5d 20 26 20 30 78 66 66 29 3c (p[13] & 0xff)< 00026c80: 3c 38 20 7c 20 28 70 5b 31 34 5d 20 26 20 30 78 <8 | (p[14] & 0x 00026c90: 66 66 29 3c 3c 31 36 20 7c 20 28 70 5b 31 35 5d ff)<<16 | (p[15] 00026ca0: 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 & 0xff)<<24,\n 00026cb0: 20 20 20 20 20 6a 31 30 20 3d 20 63 5b 20 38 5d j10 = c[ 8] 00026cc0: 20 26 20 30 78 66 66 20 7c 20 28 63 5b 20 39 5d & 0xff | (c[ 9] 00026cd0: 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 28 63 & 0xff)<<8 | (c 00026ce0: 5b 31 30 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 [10] & 0xff)<<16 00026cf0: 20 7c 20 28 63 5b 31 31 5d 20 26 20 30 78 66 66 | (c[11] & 0xff 00026d00: 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 6a 31 )<<24,\n j1 00026d10: 31 20 3d 20 6b 5b 31 36 5d 20 26 20 30 78 66 66 1 = k[16] & 0xff 00026d20: 20 7c 20 28 6b 5b 31 37 5d 20 26 20 30 78 66 66 | (k[17] & 0xff 00026d30: 29 3c 3c 38 20 7c 20 28 6b 5b 31 38 5d 20 26 20 )<<8 | (k[18] & 00026d40: 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 6b 5b 31 0xff)<<16 | (k[1 00026d50: 39 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 2c 5c 9] & 0xff)<<24,\ 00026d60: 6e 20 20 20 20 20 20 6a 31 32 20 3d 20 6b 5b 32 n j12 = k[2 00026d70: 30 5d 20 26 20 30 78 66 66 20 7c 20 28 6b 5b 32 0] & 0xff | (k[2 00026d80: 31 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 7c 20 1] & 0xff)<<8 | 00026d90: 28 6b 5b 32 32 5d 20 26 20 30 78 66 66 29 3c 3c (k[22] & 0xff)<< 00026da0: 31 36 20 7c 20 28 6b 5b 32 33 5d 20 26 20 30 78 16 | (k[23] & 0x 00026db0: 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 20 20 ff)<<24,\n 00026dc0: 6a 31 33 20 3d 20 6b 5b 32 34 5d 20 26 20 30 78 j13 = k[24] & 0x 00026dd0: 66 66 20 7c 20 28 6b 5b 32 35 5d 20 26 20 30 78 ff | (k[25] & 0x 00026de0: 66 66 29 3c 3c 38 20 7c 20 28 6b 5b 32 36 5d 20 ff)<<8 | (k[26] 00026df0: 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 28 6b & 0xff)<<16 | (k 00026e00: 5b 32 37 5d 20 26 20 30 78 66 66 29 3c 3c 32 34 [27] & 0xff)<<24 00026e10: 2c 5c 6e 20 20 20 20 20 20 6a 31 34 20 3d 20 6b ,\n j14 = k 00026e20: 5b 32 38 5d 20 26 20 30 78 66 66 20 7c 20 28 6b [28] & 0xff | (k 00026e30: 5b 32 39 5d 20 26 20 30 78 66 66 29 3c 3c 38 20 [29] & 0xff)<<8 00026e40: 7c 20 28 6b 5b 33 30 5d 20 26 20 30 78 66 66 29 | (k[30] & 0xff) 00026e50: 3c 3c 31 36 20 7c 20 28 6b 5b 33 31 5d 20 26 20 <<16 | (k[31] & 00026e60: 30 78 66 66 29 3c 3c 32 34 2c 5c 6e 20 20 20 20 0xff)<<24,\n 00026e70: 20 20 6a 31 35 20 3d 20 63 5b 31 32 5d 20 26 20 j15 = c[12] & 00026e80: 30 78 66 66 20 7c 20 28 63 5b 31 33 5d 20 26 20 0xff | (c[13] & 00026e90: 30 78 66 66 29 3c 3c 38 20 7c 20 28 63 5b 31 34 0xff)<<8 | (c[14 00026ea0: 5d 20 26 20 30 78 66 66 29 3c 3c 31 36 20 7c 20 ] & 0xff)<<16 | 00026eb0: 28 63 5b 31 35 5d 20 26 20 30 78 66 66 29 3c 3c (c[15] & 0xff)<< 00026ec0: 32 34 3b 5c 6e 5c 6e 20 20 76 61 72 20 78 30 20 24;\n\n var x0 00026ed0: 3d 20 6a 30 2c 20 78 31 20 3d 20 6a 31 2c 20 78 = j0, x1 = j1, x 00026ee0: 32 20 3d 20 6a 32 2c 20 78 33 20 3d 20 6a 33 2c 2 = j2, x3 = j3, 00026ef0: 20 78 34 20 3d 20 6a 34 2c 20 78 35 20 3d 20 6a x4 = j4, x5 = j 00026f00: 35 2c 20 78 36 20 3d 20 6a 36 2c 20 78 37 20 3d 5, x6 = j6, x7 = 00026f10: 20 6a 37 2c 5c 6e 20 20 20 20 20 20 78 38 20 3d j7,\n x8 = 00026f20: 20 6a 38 2c 20 78 39 20 3d 20 6a 39 2c 20 78 31 j8, x9 = j9, x1 00026f30: 30 20 3d 20 6a 31 30 2c 20 78 31 31 20 3d 20 6a 0 = j10, x11 = j 00026f40: 31 31 2c 20 78 31 32 20 3d 20 6a 31 32 2c 20 78 11, x12 = j12, x 00026f50: 31 33 20 3d 20 6a 31 33 2c 20 78 31 34 20 3d 20 13 = j13, x14 = 00026f60: 6a 31 34 2c 5c 6e 20 20 20 20 20 20 78 31 35 20 j14,\n x15 00026f70: 3d 20 6a 31 35 2c 20 75 3b 5c 6e 5c 6e 20 20 66 = j15, u;\n\n f 00026f80: 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 or (var i = 0; i 00026f90: 20 3c 20 32 30 3b 20 69 20 2b 3d 20 32 29 20 7b < 20; i += 2) { 00026fa0: 5c 6e 20 20 20 20 75 20 3d 20 78 30 20 2b 20 78 \n u = x0 + x 00026fb0: 31 32 20 7c 20 30 3b 5c 6e 20 20 20 20 78 34 20 12 | 0;\n x4 00026fc0: 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 ^= u<<7 | u>>>(3 00026fd0: 32 2d 37 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 2-7);\n u = x 00026fe0: 34 20 2b 20 78 30 20 7c 20 30 3b 5c 6e 20 20 20 4 + x0 | 0;\n 00026ff0: 20 78 38 20 5e 3d 20 75 3c 3c 39 20 7c 20 75 3e x8 ^= u<<9 | u> 00027000: 3e 3e 28 33 32 2d 39 29 3b 5c 6e 20 20 20 20 75 >>(32-9);\n u 00027010: 20 3d 20 78 38 20 2b 20 78 34 20 7c 20 30 3b 5c = x8 + x4 | 0;\ 00027020: 6e 20 20 20 20 78 31 32 20 5e 3d 20 75 3c 3c 31 n x12 ^= u<<1 00027030: 33 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 33 29 3b 3 | u>>>(32-13); 00027040: 5c 6e 20 20 20 20 75 20 3d 20 78 31 32 20 2b 20 \n u = x12 + 00027050: 78 38 20 7c 20 30 3b 5c 6e 20 20 20 20 78 30 20 x8 | 0;\n x0 00027060: 5e 3d 20 75 3c 3c 31 38 20 7c 20 75 3e 3e 3e 28 ^= u<<18 | u>>>( 00027070: 33 32 2d 31 38 29 3b 5c 6e 5c 6e 20 20 20 20 75 32-18);\n\n u 00027080: 20 3d 20 78 35 20 2b 20 78 31 20 7c 20 30 3b 5c = x5 + x1 | 0;\ 00027090: 6e 20 20 20 20 78 39 20 5e 3d 20 75 3c 3c 37 20 n x9 ^= u<<7 000270a0: 7c 20 75 3e 3e 3e 28 33 32 2d 37 29 3b 5c 6e 20 | u>>>(32-7);\n 000270b0: 20 20 20 75 20 3d 20 78 39 20 2b 20 78 35 20 7c u = x9 + x5 | 000270c0: 20 30 3b 5c 6e 20 20 20 20 78 31 33 20 5e 3d 20 0;\n x13 ^= 000270d0: 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 u<<9 | u>>>(32-9 000270e0: 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 31 33 20 );\n u = x13 000270f0: 2b 20 78 39 20 7c 20 30 3b 5c 6e 20 20 20 20 78 + x9 | 0;\n x 00027100: 31 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 1 ^= u<<13 | u>> 00027110: 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 20 20 75 >(32-13);\n u 00027120: 20 3d 20 78 31 20 2b 20 78 31 33 20 7c 20 30 3b = x1 + x13 | 0; 00027130: 5c 6e 20 20 20 20 78 35 20 5e 3d 20 75 3c 3c 31 \n x5 ^= u<<1 00027140: 38 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 8 | u>>>(32-18); 00027150: 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 78 31 30 20 \n\n u = x10 00027160: 2b 20 78 36 20 7c 20 30 3b 5c 6e 20 20 20 20 78 + x6 | 0;\n x 00027170: 31 34 20 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 14 ^= u<<7 | u>> 00027180: 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 20 20 75 20 >(32-7);\n u 00027190: 3d 20 78 31 34 20 2b 20 78 31 30 20 7c 20 30 3b = x14 + x10 | 0; 000271a0: 5c 6e 20 20 20 20 78 32 20 5e 3d 20 75 3c 3c 39 \n x2 ^= u<<9 000271b0: 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 29 3b 5c 6e | u>>>(32-9);\n 000271c0: 20 20 20 20 75 20 3d 20 78 32 20 2b 20 78 31 34 u = x2 + x14 000271d0: 20 7c 20 30 3b 5c 6e 20 20 20 20 78 36 20 5e 3d | 0;\n x6 ^= 000271e0: 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e 28 33 32 u<<13 | u>>>(32 000271f0: 2d 31 33 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 -13);\n u = x 00027200: 36 20 2b 20 78 32 20 7c 20 30 3b 5c 6e 20 20 20 6 + x2 | 0;\n 00027210: 20 78 31 30 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 x10 ^= u<<18 | 00027220: 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e u>>>(32-18);\n\n 00027230: 20 20 20 20 75 20 3d 20 78 31 35 20 2b 20 78 31 u = x15 + x1 00027240: 31 20 7c 20 30 3b 5c 6e 20 20 20 20 78 33 20 5e 1 | 0;\n x3 ^ 00027250: 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 = u<<7 | u>>>(32 00027260: 2d 37 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 33 -7);\n u = x3 00027270: 20 2b 20 78 31 35 20 7c 20 30 3b 5c 6e 20 20 20 + x15 | 0;\n 00027280: 20 78 37 20 5e 3d 20 75 3c 3c 39 20 7c 20 75 3e x7 ^= u<<9 | u> 00027290: 3e 3e 28 33 32 2d 39 29 3b 5c 6e 20 20 20 20 75 >>(32-9);\n u 000272a0: 20 3d 20 78 37 20 2b 20 78 33 20 7c 20 30 3b 5c = x7 + x3 | 0;\ 000272b0: 6e 20 20 20 20 78 31 31 20 5e 3d 20 75 3c 3c 31 n x11 ^= u<<1 000272c0: 33 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 33 29 3b 3 | u>>>(32-13); 000272d0: 5c 6e 20 20 20 20 75 20 3d 20 78 31 31 20 2b 20 \n u = x11 + 000272e0: 78 37 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 35 x7 | 0;\n x15 000272f0: 20 5e 3d 20 75 3c 3c 31 38 20 7c 20 75 3e 3e 3e ^= u<<18 | u>>> 00027300: 28 33 32 2d 31 38 29 3b 5c 6e 5c 6e 20 20 20 20 (32-18);\n\n 00027310: 75 20 3d 20 78 30 20 2b 20 78 33 20 7c 20 30 3b u = x0 + x3 | 0; 00027320: 5c 6e 20 20 20 20 78 31 20 5e 3d 20 75 3c 3c 37 \n x1 ^= u<<7 00027330: 20 7c 20 75 3e 3e 3e 28 33 32 2d 37 29 3b 5c 6e | u>>>(32-7);\n 00027340: 20 20 20 20 75 20 3d 20 78 31 20 2b 20 78 30 20 u = x1 + x0 00027350: 7c 20 30 3b 5c 6e 20 20 20 20 78 32 20 5e 3d 20 | 0;\n x2 ^= 00027360: 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 u<<9 | u>>>(32-9 00027370: 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 32 20 2b );\n u = x2 + 00027380: 20 78 31 20 7c 20 30 3b 5c 6e 20 20 20 20 78 33 x1 | 0;\n x3 00027390: 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 3e ^= u<<13 | u>>> 000273a0: 28 33 32 2d 31 33 29 3b 5c 6e 20 20 20 20 75 20 (32-13);\n u 000273b0: 3d 20 78 33 20 2b 20 78 32 20 7c 20 30 3b 5c 6e = x3 + x2 | 0;\n 000273c0: 20 20 20 20 78 30 20 5e 3d 20 75 3c 3c 31 38 20 x0 ^= u<<18 000273d0: 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 5c 6e | u>>>(32-18);\n 000273e0: 5c 6e 20 20 20 20 75 20 3d 20 78 35 20 2b 20 78 \n u = x5 + x 000273f0: 34 20 7c 20 30 3b 5c 6e 20 20 20 20 78 36 20 5e 4 | 0;\n x6 ^ 00027400: 3d 20 75 3c 3c 37 20 7c 20 75 3e 3e 3e 28 33 32 = u<<7 | u>>>(32 00027410: 2d 37 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 36 -7);\n u = x6 00027420: 20 2b 20 78 35 20 7c 20 30 3b 5c 6e 20 20 20 20 + x5 | 0;\n 00027430: 78 37 20 5e 3d 20 75 3c 3c 39 20 7c 20 75 3e 3e x7 ^= u<<9 | u>> 00027440: 3e 28 33 32 2d 39 29 3b 5c 6e 20 20 20 20 75 20 >(32-9);\n u 00027450: 3d 20 78 37 20 2b 20 78 36 20 7c 20 30 3b 5c 6e = x7 + x6 | 0;\n 00027460: 20 20 20 20 78 34 20 5e 3d 20 75 3c 3c 31 33 20 x4 ^= u<<13 00027470: 7c 20 75 3e 3e 3e 28 33 32 2d 31 33 29 3b 5c 6e | u>>>(32-13);\n 00027480: 20 20 20 20 75 20 3d 20 78 34 20 2b 20 78 37 20 u = x4 + x7 00027490: 7c 20 30 3b 5c 6e 20 20 20 20 78 35 20 5e 3d 20 | 0;\n x5 ^= 000274a0: 75 3c 3c 31 38 20 7c 20 75 3e 3e 3e 28 33 32 2d u<<18 | u>>>(32- 000274b0: 31 38 29 3b 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 18);\n\n u = 000274c0: 78 31 30 20 2b 20 78 39 20 7c 20 30 3b 5c 6e 20 x10 + x9 | 0;\n 000274d0: 20 20 20 78 31 31 20 5e 3d 20 75 3c 3c 37 20 7c x11 ^= u<<7 | 000274e0: 20 75 3e 3e 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 u>>>(32-7);\n 000274f0: 20 20 75 20 3d 20 78 31 31 20 2b 20 78 31 30 20 u = x11 + x10 00027500: 7c 20 30 3b 5c 6e 20 20 20 20 78 38 20 5e 3d 20 | 0;\n x8 ^= 00027510: 75 3c 3c 39 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 u<<9 | u>>>(32-9 00027520: 29 3b 5c 6e 20 20 20 20 75 20 3d 20 78 38 20 2b );\n u = x8 + 00027530: 20 78 31 31 20 7c 20 30 3b 5c 6e 20 20 20 20 78 x11 | 0;\n x 00027540: 39 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 9 ^= u<<13 | u>> 00027550: 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 20 20 75 >(32-13);\n u 00027560: 20 3d 20 78 39 20 2b 20 78 38 20 7c 20 30 3b 5c = x9 + x8 | 0;\ 00027570: 6e 20 20 20 20 78 31 30 20 5e 3d 20 75 3c 3c 31 n x10 ^= u<<1 00027580: 38 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 29 3b 8 | u>>>(32-18); 00027590: 5c 6e 5c 6e 20 20 20 20 75 20 3d 20 78 31 35 20 \n\n u = x15 000275a0: 2b 20 78 31 34 20 7c 20 30 3b 5c 6e 20 20 20 20 + x14 | 0;\n 000275b0: 78 31 32 20 5e 3d 20 75 3c 3c 37 20 7c 20 75 3e x12 ^= u<<7 | u> 000275c0: 3e 3e 28 33 32 2d 37 29 3b 5c 6e 20 20 20 20 75 >>(32-7);\n u 000275d0: 20 3d 20 78 31 32 20 2b 20 78 31 35 20 7c 20 30 = x12 + x15 | 0 000275e0: 3b 5c 6e 20 20 20 20 78 31 33 20 5e 3d 20 75 3c ;\n x13 ^= u< 000275f0: 3c 39 20 7c 20 75 3e 3e 3e 28 33 32 2d 39 29 3b <9 | u>>>(32-9); 00027600: 5c 6e 20 20 20 20 75 20 3d 20 78 31 33 20 2b 20 \n u = x13 + 00027610: 78 31 32 20 7c 20 30 3b 5c 6e 20 20 20 20 78 31 x12 | 0;\n x1 00027620: 34 20 5e 3d 20 75 3c 3c 31 33 20 7c 20 75 3e 3e 4 ^= u<<13 | u>> 00027630: 3e 28 33 32 2d 31 33 29 3b 5c 6e 20 20 20 20 75 >(32-13);\n u 00027640: 20 3d 20 78 31 34 20 2b 20 78 31 33 20 7c 20 30 = x14 + x13 | 0 00027650: 3b 5c 6e 20 20 20 20 78 31 35 20 5e 3d 20 75 3c ;\n x15 ^= u< 00027660: 3c 31 38 20 7c 20 75 3e 3e 3e 28 33 32 2d 31 38 <18 | u>>>(32-18 00027670: 29 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 6f 5b 20 );\n }\n\n o[ 00027680: 30 5d 20 3d 20 78 30 20 3e 3e 3e 20 20 30 20 26 0] = x0 >>> 0 & 00027690: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 20 31 5d 20 0xff;\n o[ 1] 000276a0: 3d 20 78 30 20 3e 3e 3e 20 20 38 20 26 20 30 78 = x0 >>> 8 & 0x 000276b0: 66 66 3b 5c 6e 20 20 6f 5b 20 32 5d 20 3d 20 78 ff;\n o[ 2] = x 000276c0: 30 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 0 >>> 16 & 0xff; 000276d0: 5c 6e 20 20 6f 5b 20 33 5d 20 3d 20 78 30 20 3e \n o[ 3] = x0 > 000276e0: 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c >> 24 & 0xff;\n\ 000276f0: 6e 20 20 6f 5b 20 34 5d 20 3d 20 78 35 20 3e 3e n o[ 4] = x5 >> 00027700: 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 0 & 0xff;\n 00027710: 6f 5b 20 35 5d 20 3d 20 78 35 20 3e 3e 3e 20 20 o[ 5] = x5 >>> 00027720: 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 20 8 & 0xff;\n o[ 00027730: 36 5d 20 3d 20 78 35 20 3e 3e 3e 20 31 36 20 26 6] = x5 >>> 16 & 00027740: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 20 37 5d 20 0xff;\n o[ 7] 00027750: 3d 20 78 35 20 3e 3e 3e 20 32 34 20 26 20 30 78 = x5 >>> 24 & 0x 00027760: 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 20 38 5d 20 3d ff;\n\n o[ 8] = 00027770: 20 78 31 30 20 3e 3e 3e 20 20 30 20 26 20 30 78 x10 >>> 0 & 0x 00027780: 66 66 3b 5c 6e 20 20 6f 5b 20 39 5d 20 3d 20 78 ff;\n o[ 9] = x 00027790: 31 30 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 10 >>> 8 & 0xff 000277a0: 3b 5c 6e 20 20 6f 5b 31 30 5d 20 3d 20 78 31 30 ;\n o[10] = x10 000277b0: 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 5c >>> 16 & 0xff;\ 000277c0: 6e 20 20 6f 5b 31 31 5d 20 3d 20 78 31 30 20 3e n o[11] = x10 > 000277d0: 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c >> 24 & 0xff;\n\ 000277e0: 6e 20 20 6f 5b 31 32 5d 20 3d 20 78 31 35 20 3e n o[12] = x15 > 000277f0: 3e 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 >> 0 & 0xff;\n 00027800: 20 6f 5b 31 33 5d 20 3d 20 78 31 35 20 3e 3e 3e o[13] = x15 >>> 00027810: 20 20 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 8 & 0xff;\n o 00027820: 5b 31 34 5d 20 3d 20 78 31 35 20 3e 3e 3e 20 31 [14] = x15 >>> 1 00027830: 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 31 6 & 0xff;\n o[1 00027840: 35 5d 20 3d 20 78 31 35 20 3e 3e 3e 20 32 34 20 5] = x15 >>> 24 00027850: 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 31 & 0xff;\n\n o[1 00027860: 36 5d 20 3d 20 78 36 20 3e 3e 3e 20 20 30 20 26 6] = x6 >>> 0 & 00027870: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 31 37 5d 20 0xff;\n o[17] 00027880: 3d 20 78 36 20 3e 3e 3e 20 20 38 20 26 20 30 78 = x6 >>> 8 & 0x 00027890: 66 66 3b 5c 6e 20 20 6f 5b 31 38 5d 20 3d 20 78 ff;\n o[18] = x 000278a0: 36 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 66 3b 6 >>> 16 & 0xff; 000278b0: 5c 6e 20 20 6f 5b 31 39 5d 20 3d 20 78 36 20 3e \n o[19] = x6 > 000278c0: 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c 6e 5c >> 24 & 0xff;\n\ 000278d0: 6e 20 20 6f 5b 32 30 5d 20 3d 20 78 37 20 3e 3e n o[20] = x7 >> 000278e0: 3e 20 20 30 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 0 & 0xff;\n 000278f0: 6f 5b 32 31 5d 20 3d 20 78 37 20 3e 3e 3e 20 20 o[21] = x7 >>> 00027900: 38 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 32 8 & 0xff;\n o[2 00027910: 32 5d 20 3d 20 78 37 20 3e 3e 3e 20 31 36 20 26 2] = x7 >>> 16 & 00027920: 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 32 33 5d 20 0xff;\n o[23] 00027930: 3d 20 78 37 20 3e 3e 3e 20 32 34 20 26 20 30 78 = x7 >>> 24 & 0x 00027940: 66 66 3b 5c 6e 5c 6e 20 20 6f 5b 32 34 5d 20 3d ff;\n\n o[24] = 00027950: 20 78 38 20 3e 3e 3e 20 20 30 20 26 20 30 78 66 x8 >>> 0 & 0xf 00027960: 66 3b 5c 6e 20 20 6f 5b 32 35 5d 20 3d 20 78 38 f;\n o[25] = x8 00027970: 20 3e 3e 3e 20 20 38 20 26 20 30 78 66 66 3b 5c >>> 8 & 0xff;\ 00027980: 6e 20 20 6f 5b 32 36 5d 20 3d 20 78 38 20 3e 3e n o[26] = x8 >> 00027990: 3e 20 31 36 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 16 & 0xff;\n 000279a0: 6f 5b 32 37 5d 20 3d 20 78 38 20 3e 3e 3e 20 32 o[27] = x8 >>> 2 000279b0: 34 20 26 20 30 78 66 66 3b 5c 6e 5c 6e 20 20 6f 4 & 0xff;\n\n o 000279c0: 5b 32 38 5d 20 3d 20 78 39 20 3e 3e 3e 20 20 30 [28] = x9 >>> 0 000279d0: 20 26 20 30 78 66 66 3b 5c 6e 20 20 6f 5b 32 39 & 0xff;\n o[29 000279e0: 5d 20 3d 20 78 39 20 3e 3e 3e 20 20 38 20 26 20 ] = x9 >>> 8 & 000279f0: 30 78 66 66 3b 5c 6e 20 20 6f 5b 33 30 5d 20 3d 0xff;\n o[30] = 00027a00: 20 78 39 20 3e 3e 3e 20 31 36 20 26 20 30 78 66 x9 >>> 16 & 0xf 00027a10: 66 3b 5c 6e 20 20 6f 5b 33 31 5d 20 3d 20 78 39 f;\n o[31] = x9 00027a20: 20 3e 3e 3e 20 32 34 20 26 20 30 78 66 66 3b 5c >>> 24 & 0xff;\ 00027a30: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 n}\n\nfunction c 00027a40: 72 79 70 74 6f 5f 63 6f 72 65 5f 73 61 6c 73 61 rypto_core_salsa 00027a50: 32 30 28 6f 75 74 2c 69 6e 70 2c 6b 2c 63 29 20 20(out,inp,k,c) 00027a60: 7b 5c 6e 20 20 63 6f 72 65 5f 73 61 6c 73 61 32 {\n core_salsa2 00027a70: 30 28 6f 75 74 2c 69 6e 70 2c 6b 2c 63 29 3b 5c 0(out,inp,k,c);\ 00027a80: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 n}\n\nfunction c 00027a90: 72 79 70 74 6f 5f 63 6f 72 65 5f 68 73 61 6c 73 rypto_core_hsals 00027aa0: 61 32 30 28 6f 75 74 2c 69 6e 70 2c 6b 2c 63 29 a20(out,inp,k,c) 00027ab0: 20 7b 5c 6e 20 20 63 6f 72 65 5f 68 73 61 6c 73 {\n core_hsals 00027ac0: 61 32 30 28 6f 75 74 2c 69 6e 70 2c 6b 2c 63 29 a20(out,inp,k,c) 00027ad0: 3b 5c 6e 7d 5c 6e 5c 6e 76 61 72 20 73 69 67 6d ;\n}\n\nvar sigm 00027ae0: 61 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 a = new Uint8Arr 00027af0: 61 79 28 5b 31 30 31 2c 20 31 32 30 2c 20 31 31 ay([101, 120, 11 00027b00: 32 2c 20 39 37 2c 20 31 31 30 2c 20 31 30 30 2c 2, 97, 110, 100, 00027b10: 20 33 32 2c 20 35 31 2c 20 35 30 2c 20 34 35 2c 32, 51, 50, 45, 00027b20: 20 39 38 2c 20 31 32 31 2c 20 31 31 36 2c 20 31 98, 121, 116, 1 00027b30: 30 31 2c 20 33 32 2c 20 31 30 37 5d 29 3b 5c 6e 01, 32, 107]);\n 00027b40: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 5c // \ 00027b50: 22 65 78 70 61 6e 64 20 33 32 2d 62 79 74 65 20 "expand 32-byte 00027b60: 6b 5c 22 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 k\"\n\nfunction 00027b70: 63 72 79 70 74 6f 5f 73 74 72 65 61 6d 5f 73 61 crypto_stream_sa 00027b80: 6c 73 61 32 30 5f 78 6f 72 28 63 2c 63 70 6f 73 lsa20_xor(c,cpos 00027b90: 2c 6d 2c 6d 70 6f 73 2c 62 2c 6e 2c 6b 29 20 7b ,m,mpos,b,n,k) { 00027ba0: 5c 6e 20 20 76 61 72 20 7a 20 3d 20 6e 65 77 20 \n var z = new 00027bb0: 55 69 6e 74 38 41 72 72 61 79 28 31 36 29 2c 20 Uint8Array(16), 00027bc0: 78 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 x = new Uint8Arr 00027bd0: 61 79 28 36 34 29 3b 5c 6e 20 20 76 61 72 20 75 ay(64);\n var u 00027be0: 2c 20 69 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d , i;\n for (i = 00027bf0: 20 30 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 0; i < 16; i++) 00027c00: 20 7a 5b 69 5d 20 3d 20 30 3b 5c 6e 20 20 66 6f z[i] = 0;\n fo 00027c10: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 38 3b r (i = 0; i < 8; 00027c20: 20 69 2b 2b 29 20 7a 5b 69 5d 20 3d 20 6e 5b 69 i++) z[i] = n[i 00027c30: 5d 3b 5c 6e 20 20 77 68 69 6c 65 20 28 62 20 3e ];\n while (b > 00027c40: 3d 20 36 34 29 20 7b 5c 6e 20 20 20 20 63 72 79 = 64) {\n cry 00027c50: 70 74 6f 5f 63 6f 72 65 5f 73 61 6c 73 61 32 30 pto_core_salsa20 00027c60: 28 78 2c 7a 2c 6b 2c 73 69 67 6d 61 29 3b 5c 6e (x,z,k,sigma);\n 00027c70: 20 20 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 for (i = 0; 00027c80: 69 20 3c 20 36 34 3b 20 69 2b 2b 29 20 63 5b 63 i < 64; i++) c[c 00027c90: 70 6f 73 2b 69 5d 20 3d 20 6d 5b 6d 70 6f 73 2b pos+i] = m[mpos+ 00027ca0: 69 5d 20 5e 20 78 5b 69 5d 3b 5c 6e 20 20 20 20 i] ^ x[i];\n 00027cb0: 75 20 3d 20 31 3b 5c 6e 20 20 20 20 66 6f 72 20 u = 1;\n for 00027cc0: 28 69 20 3d 20 38 3b 20 69 20 3c 20 31 36 3b 20 (i = 8; i < 16; 00027cd0: 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 75 20 i++) {\n u 00027ce0: 3d 20 75 20 2b 20 28 7a 5b 69 5d 20 26 20 30 78 = u + (z[i] & 0x 00027cf0: 66 66 29 20 7c 20 30 3b 5c 6e 20 20 20 20 20 20 ff) | 0;\n 00027d00: 7a 5b 69 5d 20 3d 20 75 20 26 20 30 78 66 66 3b z[i] = u & 0xff; 00027d10: 5c 6e 20 20 20 20 20 20 75 20 3e 3e 3e 3d 20 38 \n u >>>= 8 00027d20: 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 62 20 ;\n }\n b 00027d30: 2d 3d 20 36 34 3b 5c 6e 20 20 20 20 63 70 6f 73 -= 64;\n cpos 00027d40: 20 2b 3d 20 36 34 3b 5c 6e 20 20 20 20 6d 70 6f += 64;\n mpo 00027d50: 73 20 2b 3d 20 36 34 3b 5c 6e 20 20 7d 5c 6e 20 s += 64;\n }\n 00027d60: 20 69 66 20 28 62 20 3e 20 30 29 20 7b 5c 6e 20 if (b > 0) {\n 00027d70: 20 20 20 63 72 79 70 74 6f 5f 63 6f 72 65 5f 73 crypto_core_s 00027d80: 61 6c 73 61 32 30 28 78 2c 7a 2c 6b 2c 73 69 67 alsa20(x,z,k,sig 00027d90: 6d 61 29 3b 5c 6e 20 20 20 20 66 6f 72 20 28 69 ma);\n for (i 00027da0: 20 3d 20 30 3b 20 69 20 3c 20 62 3b 20 69 2b 2b = 0; i < b; i++ 00027db0: 29 20 63 5b 63 70 6f 73 2b 69 5d 20 3d 20 6d 5b ) c[cpos+i] = m[ 00027dc0: 6d 70 6f 73 2b 69 5d 20 5e 20 78 5b 69 5d 3b 5c mpos+i] ^ x[i];\ 00027dd0: 6e 20 20 7d 5c 6e 20 20 72 65 74 75 72 6e 20 30 n }\n return 0 00027de0: 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e ;\n}\n\nfunction 00027df0: 20 63 72 79 70 74 6f 5f 73 74 72 65 61 6d 5f 73 crypto_stream_s 00027e00: 61 6c 73 61 32 30 28 63 2c 63 70 6f 73 2c 62 2c alsa20(c,cpos,b, 00027e10: 6e 2c 6b 29 20 7b 5c 6e 20 20 76 61 72 20 7a 20 n,k) {\n var z 00027e20: 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 = new Uint8Array 00027e30: 28 31 36 29 2c 20 78 20 3d 20 6e 65 77 20 55 69 (16), x = new Ui 00027e40: 6e 74 38 41 72 72 61 79 28 36 34 29 3b 5c 6e 20 nt8Array(64);\n 00027e50: 20 76 61 72 20 75 2c 20 69 3b 5c 6e 20 20 66 6f var u, i;\n fo 00027e60: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 31 36 r (i = 0; i < 16 00027e70: 3b 20 69 2b 2b 29 20 7a 5b 69 5d 20 3d 20 30 3b ; i++) z[i] = 0; 00027e80: 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 \n for (i = 0; 00027e90: 69 20 3c 20 38 3b 20 69 2b 2b 29 20 7a 5b 69 5d i < 8; i++) z[i] 00027ea0: 20 3d 20 6e 5b 69 5d 3b 5c 6e 20 20 77 68 69 6c = n[i];\n whil 00027eb0: 65 20 28 62 20 3e 3d 20 36 34 29 20 7b 5c 6e 20 e (b >= 64) {\n 00027ec0: 20 20 20 63 72 79 70 74 6f 5f 63 6f 72 65 5f 73 crypto_core_s 00027ed0: 61 6c 73 61 32 30 28 78 2c 7a 2c 6b 2c 73 69 67 alsa20(x,z,k,sig 00027ee0: 6d 61 29 3b 5c 6e 20 20 20 20 66 6f 72 20 28 69 ma);\n for (i 00027ef0: 20 3d 20 30 3b 20 69 20 3c 20 36 34 3b 20 69 2b = 0; i < 64; i+ 00027f00: 2b 29 20 63 5b 63 70 6f 73 2b 69 5d 20 3d 20 78 +) c[cpos+i] = x 00027f10: 5b 69 5d 3b 5c 6e 20 20 20 20 75 20 3d 20 31 3b [i];\n u = 1; 00027f20: 5c 6e 20 20 20 20 66 6f 72 20 28 69 20 3d 20 38 \n for (i = 8 00027f30: 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 7b ; i < 16; i++) { 00027f40: 5c 6e 20 20 20 20 20 20 75 20 3d 20 75 20 2b 20 \n u = u + 00027f50: 28 7a 5b 69 5d 20 26 20 30 78 66 66 29 20 7c 20 (z[i] & 0xff) | 00027f60: 30 3b 5c 6e 20 20 20 20 20 20 7a 5b 69 5d 20 3d 0;\n z[i] = 00027f70: 20 75 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 u & 0xff;\n 00027f80: 20 20 75 20 3e 3e 3e 3d 20 38 3b 5c 6e 20 20 20 u >>>= 8;\n 00027f90: 20 7d 5c 6e 20 20 20 20 62 20 2d 3d 20 36 34 3b }\n b -= 64; 00027fa0: 5c 6e 20 20 20 20 63 70 6f 73 20 2b 3d 20 36 34 \n cpos += 64 00027fb0: 3b 5c 6e 20 20 7d 5c 6e 20 20 69 66 20 28 62 20 ;\n }\n if (b 00027fc0: 3e 20 30 29 20 7b 5c 6e 20 20 20 20 63 72 79 70 > 0) {\n cryp 00027fd0: 74 6f 5f 63 6f 72 65 5f 73 61 6c 73 61 32 30 28 to_core_salsa20( 00027fe0: 78 2c 7a 2c 6b 2c 73 69 67 6d 61 29 3b 5c 6e 20 x,z,k,sigma);\n 00027ff0: 20 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 for (i = 0; i 00028000: 20 3c 20 62 3b 20 69 2b 2b 29 20 63 5b 63 70 6f < b; i++) c[cpo 00028010: 73 2b 69 5d 20 3d 20 78 5b 69 5d 3b 5c 6e 20 20 s+i] = x[i];\n 00028020: 7d 5c 6e 20 20 72 65 74 75 72 6e 20 30 3b 5c 6e }\n return 0;\n 00028030: 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 }\n\nfunction cr 00028040: 79 70 74 6f 5f 73 74 72 65 61 6d 28 63 2c 63 70 ypto_stream(c,cp 00028050: 6f 73 2c 64 2c 6e 2c 6b 29 20 7b 5c 6e 20 20 76 os,d,n,k) {\n v 00028060: 61 72 20 73 20 3d 20 6e 65 77 20 55 69 6e 74 38 ar s = new Uint8 00028070: 41 72 72 61 79 28 33 32 29 3b 5c 6e 20 20 63 72 Array(32);\n cr 00028080: 79 70 74 6f 5f 63 6f 72 65 5f 68 73 61 6c 73 61 ypto_core_hsalsa 00028090: 32 30 28 73 2c 6e 2c 6b 2c 73 69 67 6d 61 29 3b 20(s,n,k,sigma); 000280a0: 5c 6e 20 20 76 61 72 20 73 6e 20 3d 20 6e 65 77 \n var sn = new 000280b0: 20 55 69 6e 74 38 41 72 72 61 79 28 38 29 3b 5c Uint8Array(8);\ 000280c0: 6e 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 n for (var i = 000280d0: 30 3b 20 69 20 3c 20 38 3b 20 69 2b 2b 29 20 73 0; i < 8; i++) s 000280e0: 6e 5b 69 5d 20 3d 20 6e 5b 69 2b 31 36 5d 3b 5c n[i] = n[i+16];\ 000280f0: 6e 20 20 72 65 74 75 72 6e 20 63 72 79 70 74 6f n return crypto 00028100: 5f 73 74 72 65 61 6d 5f 73 61 6c 73 61 32 30 28 _stream_salsa20( 00028110: 63 2c 63 70 6f 73 2c 64 2c 73 6e 2c 73 29 3b 5c c,cpos,d,sn,s);\ 00028120: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 n}\n\nfunction c 00028130: 72 79 70 74 6f 5f 73 74 72 65 61 6d 5f 78 6f 72 rypto_stream_xor 00028140: 28 63 2c 63 70 6f 73 2c 6d 2c 6d 70 6f 73 2c 64 (c,cpos,m,mpos,d 00028150: 2c 6e 2c 6b 29 20 7b 5c 6e 20 20 76 61 72 20 73 ,n,k) {\n var s 00028160: 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 = new Uint8Arra 00028170: 79 28 33 32 29 3b 5c 6e 20 20 63 72 79 70 74 6f y(32);\n crypto 00028180: 5f 63 6f 72 65 5f 68 73 61 6c 73 61 32 30 28 73 _core_hsalsa20(s 00028190: 2c 6e 2c 6b 2c 73 69 67 6d 61 29 3b 5c 6e 20 20 ,n,k,sigma);\n 000281a0: 76 61 72 20 73 6e 20 3d 20 6e 65 77 20 55 69 6e var sn = new Uin 000281b0: 74 38 41 72 72 61 79 28 38 29 3b 5c 6e 20 20 66 t8Array(8);\n f 000281c0: 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 or (var i = 0; i 000281d0: 20 3c 20 38 3b 20 69 2b 2b 29 20 73 6e 5b 69 5d < 8; i++) sn[i] 000281e0: 20 3d 20 6e 5b 69 2b 31 36 5d 3b 5c 6e 20 20 72 = n[i+16];\n r 000281f0: 65 74 75 72 6e 20 63 72 79 70 74 6f 5f 73 74 72 eturn crypto_str 00028200: 65 61 6d 5f 73 61 6c 73 61 32 30 5f 78 6f 72 28 eam_salsa20_xor( 00028210: 63 2c 63 70 6f 73 2c 6d 2c 6d 70 6f 73 2c 64 2c c,cpos,m,mpos,d, 00028220: 73 6e 2c 73 29 3b 5c 6e 7d 5c 6e 5c 6e 2f 2a 5c sn,s);\n}\n\n/*\ 00028230: 6e 2a 20 50 6f 72 74 20 6f 66 20 41 6e 64 72 65 n* Port of Andre 00028240: 77 20 4d 6f 6f 6e 27 73 20 50 6f 6c 79 31 33 30 w Moon's Poly130 00028250: 35 2d 64 6f 6e 6e 61 2d 31 36 2e 20 50 75 62 6c 5-donna-16. Publ 00028260: 69 63 20 64 6f 6d 61 69 6e 2e 5c 6e 2a 20 68 74 ic domain.\n* ht 00028270: 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d tps://github.com 00028280: 2f 66 6c 6f 6f 64 79 62 65 72 72 79 2f 70 6f 6c /floodyberry/pol 00028290: 79 31 33 30 35 2d 64 6f 6e 6e 61 5c 6e 2a 2f 5c y1305-donna\n*/\ 000282a0: 6e 5c 6e 76 61 72 20 70 6f 6c 79 31 33 30 35 20 n\nvar poly1305 000282b0: 3d 20 66 75 6e 63 74 69 6f 6e 28 6b 65 79 29 20 = function(key) 000282c0: 7b 5c 6e 20 20 74 68 69 73 2e 62 75 66 66 65 72 {\n this.buffer 000282d0: 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 = new Uint8Arra 000282e0: 79 28 31 36 29 3b 5c 6e 20 20 74 68 69 73 2e 72 y(16);\n this.r 000282f0: 20 3d 20 6e 65 77 20 55 69 6e 74 31 36 41 72 72 = new Uint16Arr 00028300: 61 79 28 31 30 29 3b 5c 6e 20 20 74 68 69 73 2e ay(10);\n this. 00028310: 68 20 3d 20 6e 65 77 20 55 69 6e 74 31 36 41 72 h = new Uint16Ar 00028320: 72 61 79 28 31 30 29 3b 5c 6e 20 20 74 68 69 73 ray(10);\n this 00028330: 2e 70 61 64 20 3d 20 6e 65 77 20 55 69 6e 74 31 .pad = new Uint1 00028340: 36 41 72 72 61 79 28 38 29 3b 5c 6e 20 20 74 68 6Array(8);\n th 00028350: 69 73 2e 6c 65 66 74 6f 76 65 72 20 3d 20 30 3b is.leftover = 0; 00028360: 5c 6e 20 20 74 68 69 73 2e 66 69 6e 20 3d 20 30 \n this.fin = 0 00028370: 3b 5c 6e 5c 6e 20 20 76 61 72 20 74 30 2c 20 74 ;\n\n var t0, t 00028380: 31 2c 20 74 32 2c 20 74 33 2c 20 74 34 2c 20 74 1, t2, t3, t4, t 00028390: 35 2c 20 74 36 2c 20 74 37 3b 5c 6e 5c 6e 20 20 5, t6, t7;\n\n 000283a0: 74 30 20 3d 20 6b 65 79 5b 20 30 5d 20 26 20 30 t0 = key[ 0] & 0 000283b0: 78 66 66 20 7c 20 28 6b 65 79 5b 20 31 5d 20 26 xff | (key[ 1] & 000283c0: 20 30 78 66 66 29 20 3c 3c 20 38 3b 20 74 68 69 0xff) << 8; thi 000283d0: 73 2e 72 5b 30 5d 20 3d 20 28 20 74 30 20 20 20 s.r[0] = ( t0 000283e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 000283f0: 20 20 29 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 ) & 0x1fff;\n 00028400: 20 74 31 20 3d 20 6b 65 79 5b 20 32 5d 20 26 20 t1 = key[ 2] & 00028410: 30 78 66 66 20 7c 20 28 6b 65 79 5b 20 33 5d 20 0xff | (key[ 3] 00028420: 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 20 74 68 & 0xff) << 8; th 00028430: 69 73 2e 72 5b 31 5d 20 3d 20 28 28 74 30 20 3e is.r[1] = ((t0 > 00028440: 3e 3e 20 31 33 29 20 7c 20 28 74 31 20 3c 3c 20 >> 13) | (t1 << 00028450: 20 33 29 29 20 26 20 30 78 31 66 66 66 3b 5c 6e 3)) & 0x1fff;\n 00028460: 20 20 74 32 20 3d 20 6b 65 79 5b 20 34 5d 20 26 t2 = key[ 4] & 00028470: 20 30 78 66 66 20 7c 20 28 6b 65 79 5b 20 35 5d 0xff | (key[ 5] 00028480: 20 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 20 74 & 0xff) << 8; t 00028490: 68 69 73 2e 72 5b 32 5d 20 3d 20 28 28 74 31 20 his.r[2] = ((t1 000284a0: 3e 3e 3e 20 31 30 29 20 7c 20 28 74 32 20 3c 3c >>> 10) | (t2 << 000284b0: 20 20 36 29 29 20 26 20 30 78 31 66 30 33 3b 5c 6)) & 0x1f03;\ 000284c0: 6e 20 20 74 33 20 3d 20 6b 65 79 5b 20 36 5d 20 n t3 = key[ 6] 000284d0: 26 20 30 78 66 66 20 7c 20 28 6b 65 79 5b 20 37 & 0xff | (key[ 7 000284e0: 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 20 ] & 0xff) << 8; 000284f0: 74 68 69 73 2e 72 5b 33 5d 20 3d 20 28 28 74 32 this.r[3] = ((t2 00028500: 20 3e 3e 3e 20 20 37 29 20 7c 20 28 74 33 20 3c >>> 7) | (t3 < 00028510: 3c 20 20 39 29 29 20 26 20 30 78 31 66 66 66 3b < 9)) & 0x1fff; 00028520: 5c 6e 20 20 74 34 20 3d 20 6b 65 79 5b 20 38 5d \n t4 = key[ 8] 00028530: 20 26 20 30 78 66 66 20 7c 20 28 6b 65 79 5b 20 & 0xff | (key[ 00028540: 39 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 9] & 0xff) << 8; 00028550: 20 74 68 69 73 2e 72 5b 34 5d 20 3d 20 28 28 74 this.r[4] = ((t 00028560: 33 20 3e 3e 3e 20 20 34 29 20 7c 20 28 74 34 20 3 >>> 4) | (t4 00028570: 3c 3c 20 31 32 29 29 20 26 20 30 78 30 30 66 66 << 12)) & 0x00ff 00028580: 3b 5c 6e 20 20 74 68 69 73 2e 72 5b 35 5d 20 3d ;\n this.r[5] = 00028590: 20 28 28 74 34 20 3e 3e 3e 20 20 31 29 29 20 26 ((t4 >>> 1)) & 000285a0: 20 30 78 31 66 66 65 3b 5c 6e 20 20 74 35 20 3d 0x1ffe;\n t5 = 000285b0: 20 6b 65 79 5b 31 30 5d 20 26 20 30 78 66 66 20 key[10] & 0xff 000285c0: 7c 20 28 6b 65 79 5b 31 31 5d 20 26 20 30 78 66 | (key[11] & 0xf 000285d0: 66 29 20 3c 3c 20 38 3b 20 74 68 69 73 2e 72 5b f) << 8; this.r[ 000285e0: 36 5d 20 3d 20 28 28 74 34 20 3e 3e 3e 20 31 34 6] = ((t4 >>> 14 000285f0: 29 20 7c 20 28 74 35 20 3c 3c 20 20 32 29 29 20 ) | (t5 << 2)) 00028600: 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 74 36 20 & 0x1fff;\n t6 00028610: 3d 20 6b 65 79 5b 31 32 5d 20 26 20 30 78 66 66 = key[12] & 0xff 00028620: 20 7c 20 28 6b 65 79 5b 31 33 5d 20 26 20 30 78 | (key[13] & 0x 00028630: 66 66 29 20 3c 3c 20 38 3b 20 74 68 69 73 2e 72 ff) << 8; this.r 00028640: 5b 37 5d 20 3d 20 28 28 74 35 20 3e 3e 3e 20 31 [7] = ((t5 >>> 1 00028650: 31 29 20 7c 20 28 74 36 20 3c 3c 20 20 35 29 29 1) | (t6 << 5)) 00028660: 20 26 20 30 78 31 66 38 31 3b 5c 6e 20 20 74 37 & 0x1f81;\n t7 00028670: 20 3d 20 6b 65 79 5b 31 34 5d 20 26 20 30 78 66 = key[14] & 0xf 00028680: 66 20 7c 20 28 6b 65 79 5b 31 35 5d 20 26 20 30 f | (key[15] & 0 00028690: 78 66 66 29 20 3c 3c 20 38 3b 20 74 68 69 73 2e xff) << 8; this. 000286a0: 72 5b 38 5d 20 3d 20 28 28 74 36 20 3e 3e 3e 20 r[8] = ((t6 >>> 000286b0: 20 38 29 20 7c 20 28 74 37 20 3c 3c 20 20 38 29 8) | (t7 << 8) 000286c0: 29 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 74 ) & 0x1fff;\n t 000286d0: 68 69 73 2e 72 5b 39 5d 20 3d 20 28 28 74 37 20 his.r[9] = ((t7 000286e0: 3e 3e 3e 20 20 35 29 29 20 26 20 30 78 30 30 37 >>> 5)) & 0x007 000286f0: 66 3b 5c 6e 5c 6e 20 20 74 68 69 73 2e 70 61 64 f;\n\n this.pad 00028700: 5b 30 5d 20 3d 20 6b 65 79 5b 31 36 5d 20 26 20 [0] = key[16] & 00028710: 30 78 66 66 20 7c 20 28 6b 65 79 5b 31 37 5d 20 0xff | (key[17] 00028720: 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 5c 6e 20 & 0xff) << 8;\n 00028730: 20 74 68 69 73 2e 70 61 64 5b 31 5d 20 3d 20 6b this.pad[1] = k 00028740: 65 79 5b 31 38 5d 20 26 20 30 78 66 66 20 7c 20 ey[18] & 0xff | 00028750: 28 6b 65 79 5b 31 39 5d 20 26 20 30 78 66 66 29 (key[19] & 0xff) 00028760: 20 3c 3c 20 38 3b 5c 6e 20 20 74 68 69 73 2e 70 << 8;\n this.p 00028770: 61 64 5b 32 5d 20 3d 20 6b 65 79 5b 32 30 5d 20 ad[2] = key[20] 00028780: 26 20 30 78 66 66 20 7c 20 28 6b 65 79 5b 32 31 & 0xff | (key[21 00028790: 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 5c ] & 0xff) << 8;\ 000287a0: 6e 20 20 74 68 69 73 2e 70 61 64 5b 33 5d 20 3d n this.pad[3] = 000287b0: 20 6b 65 79 5b 32 32 5d 20 26 20 30 78 66 66 20 key[22] & 0xff 000287c0: 7c 20 28 6b 65 79 5b 32 33 5d 20 26 20 30 78 66 | (key[23] & 0xf 000287d0: 66 29 20 3c 3c 20 38 3b 5c 6e 20 20 74 68 69 73 f) << 8;\n this 000287e0: 2e 70 61 64 5b 34 5d 20 3d 20 6b 65 79 5b 32 34 .pad[4] = key[24 000287f0: 5d 20 26 20 30 78 66 66 20 7c 20 28 6b 65 79 5b ] & 0xff | (key[ 00028800: 32 35 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 25] & 0xff) << 8 00028810: 3b 5c 6e 20 20 74 68 69 73 2e 70 61 64 5b 35 5d ;\n this.pad[5] 00028820: 20 3d 20 6b 65 79 5b 32 36 5d 20 26 20 30 78 66 = key[26] & 0xf 00028830: 66 20 7c 20 28 6b 65 79 5b 32 37 5d 20 26 20 30 f | (key[27] & 0 00028840: 78 66 66 29 20 3c 3c 20 38 3b 5c 6e 20 20 74 68 xff) << 8;\n th 00028850: 69 73 2e 70 61 64 5b 36 5d 20 3d 20 6b 65 79 5b is.pad[6] = key[ 00028860: 32 38 5d 20 26 20 30 78 66 66 20 7c 20 28 6b 65 28] & 0xff | (ke 00028870: 79 5b 32 39 5d 20 26 20 30 78 66 66 29 20 3c 3c y[29] & 0xff) << 00028880: 20 38 3b 5c 6e 20 20 74 68 69 73 2e 70 61 64 5b 8;\n this.pad[ 00028890: 37 5d 20 3d 20 6b 65 79 5b 33 30 5d 20 26 20 30 7] = key[30] & 0 000288a0: 78 66 66 20 7c 20 28 6b 65 79 5b 33 31 5d 20 26 xff | (key[31] & 000288b0: 20 30 78 66 66 29 20 3c 3c 20 38 3b 5c 6e 7d 3b 0xff) << 8;\n}; 000288c0: 5c 6e 5c 6e 70 6f 6c 79 31 33 30 35 2e 70 72 6f \n\npoly1305.pro 000288d0: 74 6f 74 79 70 65 2e 62 6c 6f 63 6b 73 20 3d 20 totype.blocks = 000288e0: 66 75 6e 63 74 69 6f 6e 28 6d 2c 20 6d 70 6f 73 function(m, mpos 000288f0: 2c 20 62 79 74 65 73 29 20 7b 5c 6e 20 20 76 61 , bytes) {\n va 00028900: 72 20 68 69 62 69 74 20 3d 20 74 68 69 73 2e 66 r hibit = this.f 00028910: 69 6e 20 3f 20 30 20 3a 20 28 31 20 3c 3c 20 31 in ? 0 : (1 << 1 00028920: 31 29 3b 5c 6e 20 20 76 61 72 20 74 30 2c 20 74 1);\n var t0, t 00028930: 31 2c 20 74 32 2c 20 74 33 2c 20 74 34 2c 20 74 1, t2, t3, t4, t 00028940: 35 2c 20 74 36 2c 20 74 37 2c 20 63 3b 5c 6e 20 5, t6, t7, c;\n 00028950: 20 76 61 72 20 64 30 2c 20 64 31 2c 20 64 32 2c var d0, d1, d2, 00028960: 20 64 33 2c 20 64 34 2c 20 64 35 2c 20 64 36 2c d3, d4, d5, d6, 00028970: 20 64 37 2c 20 64 38 2c 20 64 39 3b 5c 6e 5c 6e d7, d8, d9;\n\n 00028980: 20 20 76 61 72 20 68 30 20 3d 20 74 68 69 73 2e var h0 = this. 00028990: 68 5b 30 5d 2c 5c 6e 20 20 20 20 20 20 68 31 20 h[0],\n h1 000289a0: 3d 20 74 68 69 73 2e 68 5b 31 5d 2c 5c 6e 20 20 = this.h[1],\n 000289b0: 20 20 20 20 68 32 20 3d 20 74 68 69 73 2e 68 5b h2 = this.h[ 000289c0: 32 5d 2c 5c 6e 20 20 20 20 20 20 68 33 20 3d 20 2],\n h3 = 000289d0: 74 68 69 73 2e 68 5b 33 5d 2c 5c 6e 20 20 20 20 this.h[3],\n 000289e0: 20 20 68 34 20 3d 20 74 68 69 73 2e 68 5b 34 5d h4 = this.h[4] 000289f0: 2c 5c 6e 20 20 20 20 20 20 68 35 20 3d 20 74 68 ,\n h5 = th 00028a00: 69 73 2e 68 5b 35 5d 2c 5c 6e 20 20 20 20 20 20 is.h[5],\n 00028a10: 68 36 20 3d 20 74 68 69 73 2e 68 5b 36 5d 2c 5c h6 = this.h[6],\ 00028a20: 6e 20 20 20 20 20 20 68 37 20 3d 20 74 68 69 73 n h7 = this 00028a30: 2e 68 5b 37 5d 2c 5c 6e 20 20 20 20 20 20 68 38 .h[7],\n h8 00028a40: 20 3d 20 74 68 69 73 2e 68 5b 38 5d 2c 5c 6e 20 = this.h[8],\n 00028a50: 20 20 20 20 20 68 39 20 3d 20 74 68 69 73 2e 68 h9 = this.h 00028a60: 5b 39 5d 3b 5c 6e 5c 6e 20 20 76 61 72 20 72 30 [9];\n\n var r0 00028a70: 20 3d 20 74 68 69 73 2e 72 5b 30 5d 2c 5c 6e 20 = this.r[0],\n 00028a80: 20 20 20 20 20 72 31 20 3d 20 74 68 69 73 2e 72 r1 = this.r 00028a90: 5b 31 5d 2c 5c 6e 20 20 20 20 20 20 72 32 20 3d [1],\n r2 = 00028aa0: 20 74 68 69 73 2e 72 5b 32 5d 2c 5c 6e 20 20 20 this.r[2],\n 00028ab0: 20 20 20 72 33 20 3d 20 74 68 69 73 2e 72 5b 33 r3 = this.r[3 00028ac0: 5d 2c 5c 6e 20 20 20 20 20 20 72 34 20 3d 20 74 ],\n r4 = t 00028ad0: 68 69 73 2e 72 5b 34 5d 2c 5c 6e 20 20 20 20 20 his.r[4],\n 00028ae0: 20 72 35 20 3d 20 74 68 69 73 2e 72 5b 35 5d 2c r5 = this.r[5], 00028af0: 5c 6e 20 20 20 20 20 20 72 36 20 3d 20 74 68 69 \n r6 = thi 00028b00: 73 2e 72 5b 36 5d 2c 5c 6e 20 20 20 20 20 20 72 s.r[6],\n r 00028b10: 37 20 3d 20 74 68 69 73 2e 72 5b 37 5d 2c 5c 6e 7 = this.r[7],\n 00028b20: 20 20 20 20 20 20 72 38 20 3d 20 74 68 69 73 2e r8 = this. 00028b30: 72 5b 38 5d 2c 5c 6e 20 20 20 20 20 20 72 39 20 r[8],\n r9 00028b40: 3d 20 74 68 69 73 2e 72 5b 39 5d 3b 5c 6e 5c 6e = this.r[9];\n\n 00028b50: 20 20 77 68 69 6c 65 20 28 62 79 74 65 73 20 3e while (bytes > 00028b60: 3d 20 31 36 29 20 7b 5c 6e 20 20 20 20 74 30 20 = 16) {\n t0 00028b70: 3d 20 6d 5b 6d 70 6f 73 2b 20 30 5d 20 26 20 30 = m[mpos+ 0] & 0 00028b80: 78 66 66 20 7c 20 28 6d 5b 6d 70 6f 73 2b 20 31 xff | (m[mpos+ 1 00028b90: 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 3b 20 ] & 0xff) << 8; 00028ba0: 68 30 20 2b 3d 20 28 20 74 30 20 20 20 20 20 20 h0 += ( t0 00028bb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 29 ) 00028bc0: 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 & 0x1fff;\n 00028bd0: 74 31 20 3d 20 6d 5b 6d 70 6f 73 2b 20 32 5d 20 t1 = m[mpos+ 2] 00028be0: 26 20 30 78 66 66 20 7c 20 28 6d 5b 6d 70 6f 73 & 0xff | (m[mpos 00028bf0: 2b 20 33 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 + 3] & 0xff) << 00028c00: 38 3b 20 68 31 20 2b 3d 20 28 28 74 30 20 3e 3e 8; h1 += ((t0 >> 00028c10: 3e 20 31 33 29 20 7c 20 28 74 31 20 3c 3c 20 20 > 13) | (t1 << 00028c20: 33 29 29 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 3)) & 0x1fff;\n 00028c30: 20 20 20 74 32 20 3d 20 6d 5b 6d 70 6f 73 2b 20 t2 = m[mpos+ 00028c40: 34 5d 20 26 20 30 78 66 66 20 7c 20 28 6d 5b 6d 4] & 0xff | (m[m 00028c50: 70 6f 73 2b 20 35 5d 20 26 20 30 78 66 66 29 20 pos+ 5] & 0xff) 00028c60: 3c 3c 20 38 3b 20 68 32 20 2b 3d 20 28 28 74 31 << 8; h2 += ((t1 00028c70: 20 3e 3e 3e 20 31 30 29 20 7c 20 28 74 32 20 3c >>> 10) | (t2 < 00028c80: 3c 20 20 36 29 29 20 26 20 30 78 31 66 66 66 3b < 6)) & 0x1fff; 00028c90: 5c 6e 20 20 20 20 74 33 20 3d 20 6d 5b 6d 70 6f \n t3 = m[mpo 00028ca0: 73 2b 20 36 5d 20 26 20 30 78 66 66 20 7c 20 28 s+ 6] & 0xff | ( 00028cb0: 6d 5b 6d 70 6f 73 2b 20 37 5d 20 26 20 30 78 66 m[mpos+ 7] & 0xf 00028cc0: 66 29 20 3c 3c 20 38 3b 20 68 33 20 2b 3d 20 28 f) << 8; h3 += ( 00028cd0: 28 74 32 20 3e 3e 3e 20 20 37 29 20 7c 20 28 74 (t2 >>> 7) | (t 00028ce0: 33 20 3c 3c 20 20 39 29 29 20 26 20 30 78 31 66 3 << 9)) & 0x1f 00028cf0: 66 66 3b 5c 6e 20 20 20 20 74 34 20 3d 20 6d 5b ff;\n t4 = m[ 00028d00: 6d 70 6f 73 2b 20 38 5d 20 26 20 30 78 66 66 20 mpos+ 8] & 0xff 00028d10: 7c 20 28 6d 5b 6d 70 6f 73 2b 20 39 5d 20 26 20 | (m[mpos+ 9] & 00028d20: 30 78 66 66 29 20 3c 3c 20 38 3b 20 68 34 20 2b 0xff) << 8; h4 + 00028d30: 3d 20 28 28 74 33 20 3e 3e 3e 20 20 34 29 20 7c = ((t3 >>> 4) | 00028d40: 20 28 74 34 20 3c 3c 20 31 32 29 29 20 26 20 30 (t4 << 12)) & 0 00028d50: 78 31 66 66 66 3b 5c 6e 20 20 20 20 68 35 20 2b x1fff;\n h5 + 00028d60: 3d 20 28 28 74 34 20 3e 3e 3e 20 20 31 29 29 20 = ((t4 >>> 1)) 00028d70: 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 74 & 0x1fff;\n t 00028d80: 35 20 3d 20 6d 5b 6d 70 6f 73 2b 31 30 5d 20 26 5 = m[mpos+10] & 00028d90: 20 30 78 66 66 20 7c 20 28 6d 5b 6d 70 6f 73 2b 0xff | (m[mpos+ 00028da0: 31 31 5d 20 26 20 30 78 66 66 29 20 3c 3c 20 38 11] & 0xff) << 8 00028db0: 3b 20 68 36 20 2b 3d 20 28 28 74 34 20 3e 3e 3e ; h6 += ((t4 >>> 00028dc0: 20 31 34 29 20 7c 20 28 74 35 20 3c 3c 20 20 32 14) | (t5 << 2 00028dd0: 29 29 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 )) & 0x1fff;\n 00028de0: 20 20 74 36 20 3d 20 6d 5b 6d 70 6f 73 2b 31 32 t6 = m[mpos+12 00028df0: 5d 20 26 20 30 78 66 66 20 7c 20 28 6d 5b 6d 70 ] & 0xff | (m[mp 00028e00: 6f 73 2b 31 33 5d 20 26 20 30 78 66 66 29 20 3c os+13] & 0xff) < 00028e10: 3c 20 38 3b 20 68 37 20 2b 3d 20 28 28 74 35 20 < 8; h7 += ((t5 00028e20: 3e 3e 3e 20 31 31 29 20 7c 20 28 74 36 20 3c 3c >>> 11) | (t6 << 00028e30: 20 20 35 29 29 20 26 20 30 78 31 66 66 66 3b 5c 5)) & 0x1fff;\ 00028e40: 6e 20 20 20 20 74 37 20 3d 20 6d 5b 6d 70 6f 73 n t7 = m[mpos 00028e50: 2b 31 34 5d 20 26 20 30 78 66 66 20 7c 20 28 6d +14] & 0xff | (m 00028e60: 5b 6d 70 6f 73 2b 31 35 5d 20 26 20 30 78 66 66 [mpos+15] & 0xff 00028e70: 29 20 3c 3c 20 38 3b 20 68 38 20 2b 3d 20 28 28 ) << 8; h8 += (( 00028e80: 74 36 20 3e 3e 3e 20 20 38 29 20 7c 20 28 74 37 t6 >>> 8) | (t7 00028e90: 20 3c 3c 20 20 38 29 29 20 26 20 30 78 31 66 66 << 8)) & 0x1ff 00028ea0: 66 3b 5c 6e 20 20 20 20 68 39 20 2b 3d 20 28 28 f;\n h9 += (( 00028eb0: 74 37 20 3e 3e 3e 20 35 29 29 20 7c 20 68 69 62 t7 >>> 5)) | hib 00028ec0: 69 74 3b 5c 6e 5c 6e 20 20 20 20 63 20 3d 20 30 it;\n\n c = 0 00028ed0: 3b 5c 6e 5c 6e 20 20 20 20 64 30 20 3d 20 63 3b ;\n\n d0 = c; 00028ee0: 5c 6e 20 20 20 20 64 30 20 2b 3d 20 68 30 20 2a \n d0 += h0 * 00028ef0: 20 72 30 3b 5c 6e 20 20 20 20 64 30 20 2b 3d 20 r0;\n d0 += 00028f00: 68 31 20 2a 20 28 35 20 2a 20 72 39 29 3b 5c 6e h1 * (5 * r9);\n 00028f10: 20 20 20 20 64 30 20 2b 3d 20 68 32 20 2a 20 28 d0 += h2 * ( 00028f20: 35 20 2a 20 72 38 29 3b 5c 6e 20 20 20 20 64 30 5 * r8);\n d0 00028f30: 20 2b 3d 20 68 33 20 2a 20 28 35 20 2a 20 72 37 += h3 * (5 * r7 00028f40: 29 3b 5c 6e 20 20 20 20 64 30 20 2b 3d 20 68 34 );\n d0 += h4 00028f50: 20 2a 20 28 35 20 2a 20 72 36 29 3b 5c 6e 20 20 * (5 * r6);\n 00028f60: 20 20 63 20 3d 20 28 64 30 20 3e 3e 3e 20 31 33 c = (d0 >>> 13 00028f70: 29 3b 20 64 30 20 26 3d 20 30 78 31 66 66 66 3b ); d0 &= 0x1fff; 00028f80: 5c 6e 20 20 20 20 64 30 20 2b 3d 20 68 35 20 2a \n d0 += h5 * 00028f90: 20 28 35 20 2a 20 72 35 29 3b 5c 6e 20 20 20 20 (5 * r5);\n 00028fa0: 64 30 20 2b 3d 20 68 36 20 2a 20 28 35 20 2a 20 d0 += h6 * (5 * 00028fb0: 72 34 29 3b 5c 6e 20 20 20 20 64 30 20 2b 3d 20 r4);\n d0 += 00028fc0: 68 37 20 2a 20 28 35 20 2a 20 72 33 29 3b 5c 6e h7 * (5 * r3);\n 00028fd0: 20 20 20 20 64 30 20 2b 3d 20 68 38 20 2a 20 28 d0 += h8 * ( 00028fe0: 35 20 2a 20 72 32 29 3b 5c 6e 20 20 20 20 64 30 5 * r2);\n d0 00028ff0: 20 2b 3d 20 68 39 20 2a 20 28 35 20 2a 20 72 31 += h9 * (5 * r1 00029000: 29 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 28 64 30 );\n c += (d0 00029010: 20 3e 3e 3e 20 31 33 29 3b 20 64 30 20 26 3d 20 >>> 13); d0 &= 00029020: 30 78 31 66 66 66 3b 5c 6e 5c 6e 20 20 20 20 64 0x1fff;\n\n d 00029030: 31 20 3d 20 63 3b 5c 6e 20 20 20 20 64 31 20 2b 1 = c;\n d1 + 00029040: 3d 20 68 30 20 2a 20 72 31 3b 5c 6e 20 20 20 20 = h0 * r1;\n 00029050: 64 31 20 2b 3d 20 68 31 20 2a 20 72 30 3b 5c 6e d1 += h1 * r0;\n 00029060: 20 20 20 20 64 31 20 2b 3d 20 68 32 20 2a 20 28 d1 += h2 * ( 00029070: 35 20 2a 20 72 39 29 3b 5c 6e 20 20 20 20 64 31 5 * r9);\n d1 00029080: 20 2b 3d 20 68 33 20 2a 20 28 35 20 2a 20 72 38 += h3 * (5 * r8 00029090: 29 3b 5c 6e 20 20 20 20 64 31 20 2b 3d 20 68 34 );\n d1 += h4 000290a0: 20 2a 20 28 35 20 2a 20 72 37 29 3b 5c 6e 20 20 * (5 * r7);\n 000290b0: 20 20 63 20 3d 20 28 64 31 20 3e 3e 3e 20 31 33 c = (d1 >>> 13 000290c0: 29 3b 20 64 31 20 26 3d 20 30 78 31 66 66 66 3b ); d1 &= 0x1fff; 000290d0: 5c 6e 20 20 20 20 64 31 20 2b 3d 20 68 35 20 2a \n d1 += h5 * 000290e0: 20 28 35 20 2a 20 72 36 29 3b 5c 6e 20 20 20 20 (5 * r6);\n 000290f0: 64 31 20 2b 3d 20 68 36 20 2a 20 28 35 20 2a 20 d1 += h6 * (5 * 00029100: 72 35 29 3b 5c 6e 20 20 20 20 64 31 20 2b 3d 20 r5);\n d1 += 00029110: 68 37 20 2a 20 28 35 20 2a 20 72 34 29 3b 5c 6e h7 * (5 * r4);\n 00029120: 20 20 20 20 64 31 20 2b 3d 20 68 38 20 2a 20 28 d1 += h8 * ( 00029130: 35 20 2a 20 72 33 29 3b 5c 6e 20 20 20 20 64 31 5 * r3);\n d1 00029140: 20 2b 3d 20 68 39 20 2a 20 28 35 20 2a 20 72 32 += h9 * (5 * r2 00029150: 29 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 28 64 31 );\n c += (d1 00029160: 20 3e 3e 3e 20 31 33 29 3b 20 64 31 20 26 3d 20 >>> 13); d1 &= 00029170: 30 78 31 66 66 66 3b 5c 6e 5c 6e 20 20 20 20 64 0x1fff;\n\n d 00029180: 32 20 3d 20 63 3b 5c 6e 20 20 20 20 64 32 20 2b 2 = c;\n d2 + 00029190: 3d 20 68 30 20 2a 20 72 32 3b 5c 6e 20 20 20 20 = h0 * r2;\n 000291a0: 64 32 20 2b 3d 20 68 31 20 2a 20 72 31 3b 5c 6e d2 += h1 * r1;\n 000291b0: 20 20 20 20 64 32 20 2b 3d 20 68 32 20 2a 20 72 d2 += h2 * r 000291c0: 30 3b 5c 6e 20 20 20 20 64 32 20 2b 3d 20 68 33 0;\n d2 += h3 000291d0: 20 2a 20 28 35 20 2a 20 72 39 29 3b 5c 6e 20 20 * (5 * r9);\n 000291e0: 20 20 64 32 20 2b 3d 20 68 34 20 2a 20 28 35 20 d2 += h4 * (5 000291f0: 2a 20 72 38 29 3b 5c 6e 20 20 20 20 63 20 3d 20 * r8);\n c = 00029200: 28 64 32 20 3e 3e 3e 20 31 33 29 3b 20 64 32 20 (d2 >>> 13); d2 00029210: 26 3d 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 &= 0x1fff;\n 00029220: 64 32 20 2b 3d 20 68 35 20 2a 20 28 35 20 2a 20 d2 += h5 * (5 * 00029230: 72 37 29 3b 5c 6e 20 20 20 20 64 32 20 2b 3d 20 r7);\n d2 += 00029240: 68 36 20 2a 20 28 35 20 2a 20 72 36 29 3b 5c 6e h6 * (5 * r6);\n 00029250: 20 20 20 20 64 32 20 2b 3d 20 68 37 20 2a 20 28 d2 += h7 * ( 00029260: 35 20 2a 20 72 35 29 3b 5c 6e 20 20 20 20 64 32 5 * r5);\n d2 00029270: 20 2b 3d 20 68 38 20 2a 20 28 35 20 2a 20 72 34 += h8 * (5 * r4 00029280: 29 3b 5c 6e 20 20 20 20 64 32 20 2b 3d 20 68 39 );\n d2 += h9 00029290: 20 2a 20 28 35 20 2a 20 72 33 29 3b 5c 6e 20 20 * (5 * r3);\n 000292a0: 20 20 63 20 2b 3d 20 28 64 32 20 3e 3e 3e 20 31 c += (d2 >>> 1 000292b0: 33 29 3b 20 64 32 20 26 3d 20 30 78 31 66 66 66 3); d2 &= 0x1fff 000292c0: 3b 5c 6e 5c 6e 20 20 20 20 64 33 20 3d 20 63 3b ;\n\n d3 = c; 000292d0: 5c 6e 20 20 20 20 64 33 20 2b 3d 20 68 30 20 2a \n d3 += h0 * 000292e0: 20 72 33 3b 5c 6e 20 20 20 20 64 33 20 2b 3d 20 r3;\n d3 += 000292f0: 68 31 20 2a 20 72 32 3b 5c 6e 20 20 20 20 64 33 h1 * r2;\n d3 00029300: 20 2b 3d 20 68 32 20 2a 20 72 31 3b 5c 6e 20 20 += h2 * r1;\n 00029310: 20 20 64 33 20 2b 3d 20 68 33 20 2a 20 72 30 3b d3 += h3 * r0; 00029320: 5c 6e 20 20 20 20 64 33 20 2b 3d 20 68 34 20 2a \n d3 += h4 * 00029330: 20 28 35 20 2a 20 72 39 29 3b 5c 6e 20 20 20 20 (5 * r9);\n 00029340: 63 20 3d 20 28 64 33 20 3e 3e 3e 20 31 33 29 3b c = (d3 >>> 13); 00029350: 20 64 33 20 26 3d 20 30 78 31 66 66 66 3b 5c 6e d3 &= 0x1fff;\n 00029360: 20 20 20 20 64 33 20 2b 3d 20 68 35 20 2a 20 28 d3 += h5 * ( 00029370: 35 20 2a 20 72 38 29 3b 5c 6e 20 20 20 20 64 33 5 * r8);\n d3 00029380: 20 2b 3d 20 68 36 20 2a 20 28 35 20 2a 20 72 37 += h6 * (5 * r7 00029390: 29 3b 5c 6e 20 20 20 20 64 33 20 2b 3d 20 68 37 );\n d3 += h7 000293a0: 20 2a 20 28 35 20 2a 20 72 36 29 3b 5c 6e 20 20 * (5 * r6);\n 000293b0: 20 20 64 33 20 2b 3d 20 68 38 20 2a 20 28 35 20 d3 += h8 * (5 000293c0: 2a 20 72 35 29 3b 5c 6e 20 20 20 20 64 33 20 2b * r5);\n d3 + 000293d0: 3d 20 68 39 20 2a 20 28 35 20 2a 20 72 34 29 3b = h9 * (5 * r4); 000293e0: 5c 6e 20 20 20 20 63 20 2b 3d 20 28 64 33 20 3e \n c += (d3 > 000293f0: 3e 3e 20 31 33 29 3b 20 64 33 20 26 3d 20 30 78 >> 13); d3 &= 0x 00029400: 31 66 66 66 3b 5c 6e 5c 6e 20 20 20 20 64 34 20 1fff;\n\n d4 00029410: 3d 20 63 3b 5c 6e 20 20 20 20 64 34 20 2b 3d 20 = c;\n d4 += 00029420: 68 30 20 2a 20 72 34 3b 5c 6e 20 20 20 20 64 34 h0 * r4;\n d4 00029430: 20 2b 3d 20 68 31 20 2a 20 72 33 3b 5c 6e 20 20 += h1 * r3;\n 00029440: 20 20 64 34 20 2b 3d 20 68 32 20 2a 20 72 32 3b d4 += h2 * r2; 00029450: 5c 6e 20 20 20 20 64 34 20 2b 3d 20 68 33 20 2a \n d4 += h3 * 00029460: 20 72 31 3b 5c 6e 20 20 20 20 64 34 20 2b 3d 20 r1;\n d4 += 00029470: 68 34 20 2a 20 72 30 3b 5c 6e 20 20 20 20 63 20 h4 * r0;\n c 00029480: 3d 20 28 64 34 20 3e 3e 3e 20 31 33 29 3b 20 64 = (d4 >>> 13); d 00029490: 34 20 26 3d 20 30 78 31 66 66 66 3b 5c 6e 20 20 4 &= 0x1fff;\n 000294a0: 20 20 64 34 20 2b 3d 20 68 35 20 2a 20 28 35 20 d4 += h5 * (5 000294b0: 2a 20 72 39 29 3b 5c 6e 20 20 20 20 64 34 20 2b * r9);\n d4 + 000294c0: 3d 20 68 36 20 2a 20 28 35 20 2a 20 72 38 29 3b = h6 * (5 * r8); 000294d0: 5c 6e 20 20 20 20 64 34 20 2b 3d 20 68 37 20 2a \n d4 += h7 * 000294e0: 20 28 35 20 2a 20 72 37 29 3b 5c 6e 20 20 20 20 (5 * r7);\n 000294f0: 64 34 20 2b 3d 20 68 38 20 2a 20 28 35 20 2a 20 d4 += h8 * (5 * 00029500: 72 36 29 3b 5c 6e 20 20 20 20 64 34 20 2b 3d 20 r6);\n d4 += 00029510: 68 39 20 2a 20 28 35 20 2a 20 72 35 29 3b 5c 6e h9 * (5 * r5);\n 00029520: 20 20 20 20 63 20 2b 3d 20 28 64 34 20 3e 3e 3e c += (d4 >>> 00029530: 20 31 33 29 3b 20 64 34 20 26 3d 20 30 78 31 66 13); d4 &= 0x1f 00029540: 66 66 3b 5c 6e 5c 6e 20 20 20 20 64 35 20 3d 20 ff;\n\n d5 = 00029550: 63 3b 5c 6e 20 20 20 20 64 35 20 2b 3d 20 68 30 c;\n d5 += h0 00029560: 20 2a 20 72 35 3b 5c 6e 20 20 20 20 64 35 20 2b * r5;\n d5 + 00029570: 3d 20 68 31 20 2a 20 72 34 3b 5c 6e 20 20 20 20 = h1 * r4;\n 00029580: 64 35 20 2b 3d 20 68 32 20 2a 20 72 33 3b 5c 6e d5 += h2 * r3;\n 00029590: 20 20 20 20 64 35 20 2b 3d 20 68 33 20 2a 20 72 d5 += h3 * r 000295a0: 32 3b 5c 6e 20 20 20 20 64 35 20 2b 3d 20 68 34 2;\n d5 += h4 000295b0: 20 2a 20 72 31 3b 5c 6e 20 20 20 20 63 20 3d 20 * r1;\n c = 000295c0: 28 64 35 20 3e 3e 3e 20 31 33 29 3b 20 64 35 20 (d5 >>> 13); d5 000295d0: 26 3d 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 &= 0x1fff;\n 000295e0: 64 35 20 2b 3d 20 68 35 20 2a 20 72 30 3b 5c 6e d5 += h5 * r0;\n 000295f0: 20 20 20 20 64 35 20 2b 3d 20 68 36 20 2a 20 28 d5 += h6 * ( 00029600: 35 20 2a 20 72 39 29 3b 5c 6e 20 20 20 20 64 35 5 * r9);\n d5 00029610: 20 2b 3d 20 68 37 20 2a 20 28 35 20 2a 20 72 38 += h7 * (5 * r8 00029620: 29 3b 5c 6e 20 20 20 20 64 35 20 2b 3d 20 68 38 );\n d5 += h8 00029630: 20 2a 20 28 35 20 2a 20 72 37 29 3b 5c 6e 20 20 * (5 * r7);\n 00029640: 20 20 64 35 20 2b 3d 20 68 39 20 2a 20 28 35 20 d5 += h9 * (5 00029650: 2a 20 72 36 29 3b 5c 6e 20 20 20 20 63 20 2b 3d * r6);\n c += 00029660: 20 28 64 35 20 3e 3e 3e 20 31 33 29 3b 20 64 35 (d5 >>> 13); d5 00029670: 20 26 3d 20 30 78 31 66 66 66 3b 5c 6e 5c 6e 20 &= 0x1fff;\n\n 00029680: 20 20 20 64 36 20 3d 20 63 3b 5c 6e 20 20 20 20 d6 = c;\n 00029690: 64 36 20 2b 3d 20 68 30 20 2a 20 72 36 3b 5c 6e d6 += h0 * r6;\n 000296a0: 20 20 20 20 64 36 20 2b 3d 20 68 31 20 2a 20 72 d6 += h1 * r 000296b0: 35 3b 5c 6e 20 20 20 20 64 36 20 2b 3d 20 68 32 5;\n d6 += h2 000296c0: 20 2a 20 72 34 3b 5c 6e 20 20 20 20 64 36 20 2b * r4;\n d6 + 000296d0: 3d 20 68 33 20 2a 20 72 33 3b 5c 6e 20 20 20 20 = h3 * r3;\n 000296e0: 64 36 20 2b 3d 20 68 34 20 2a 20 72 32 3b 5c 6e d6 += h4 * r2;\n 000296f0: 20 20 20 20 63 20 3d 20 28 64 36 20 3e 3e 3e 20 c = (d6 >>> 00029700: 31 33 29 3b 20 64 36 20 26 3d 20 30 78 31 66 66 13); d6 &= 0x1ff 00029710: 66 3b 5c 6e 20 20 20 20 64 36 20 2b 3d 20 68 35 f;\n d6 += h5 00029720: 20 2a 20 72 31 3b 5c 6e 20 20 20 20 64 36 20 2b * r1;\n d6 + 00029730: 3d 20 68 36 20 2a 20 72 30 3b 5c 6e 20 20 20 20 = h6 * r0;\n 00029740: 64 36 20 2b 3d 20 68 37 20 2a 20 28 35 20 2a 20 d6 += h7 * (5 * 00029750: 72 39 29 3b 5c 6e 20 20 20 20 64 36 20 2b 3d 20 r9);\n d6 += 00029760: 68 38 20 2a 20 28 35 20 2a 20 72 38 29 3b 5c 6e h8 * (5 * r8);\n 00029770: 20 20 20 20 64 36 20 2b 3d 20 68 39 20 2a 20 28 d6 += h9 * ( 00029780: 35 20 2a 20 72 37 29 3b 5c 6e 20 20 20 20 63 20 5 * r7);\n c 00029790: 2b 3d 20 28 64 36 20 3e 3e 3e 20 31 33 29 3b 20 += (d6 >>> 13); 000297a0: 64 36 20 26 3d 20 30 78 31 66 66 66 3b 5c 6e 5c d6 &= 0x1fff;\n\ 000297b0: 6e 20 20 20 20 64 37 20 3d 20 63 3b 5c 6e 20 20 n d7 = c;\n 000297c0: 20 20 64 37 20 2b 3d 20 68 30 20 2a 20 72 37 3b d7 += h0 * r7; 000297d0: 5c 6e 20 20 20 20 64 37 20 2b 3d 20 68 31 20 2a \n d7 += h1 * 000297e0: 20 72 36 3b 5c 6e 20 20 20 20 64 37 20 2b 3d 20 r6;\n d7 += 000297f0: 68 32 20 2a 20 72 35 3b 5c 6e 20 20 20 20 64 37 h2 * r5;\n d7 00029800: 20 2b 3d 20 68 33 20 2a 20 72 34 3b 5c 6e 20 20 += h3 * r4;\n 00029810: 20 20 64 37 20 2b 3d 20 68 34 20 2a 20 72 33 3b d7 += h4 * r3; 00029820: 5c 6e 20 20 20 20 63 20 3d 20 28 64 37 20 3e 3e \n c = (d7 >> 00029830: 3e 20 31 33 29 3b 20 64 37 20 26 3d 20 30 78 31 > 13); d7 &= 0x1 00029840: 66 66 66 3b 5c 6e 20 20 20 20 64 37 20 2b 3d 20 fff;\n d7 += 00029850: 68 35 20 2a 20 72 32 3b 5c 6e 20 20 20 20 64 37 h5 * r2;\n d7 00029860: 20 2b 3d 20 68 36 20 2a 20 72 31 3b 5c 6e 20 20 += h6 * r1;\n 00029870: 20 20 64 37 20 2b 3d 20 68 37 20 2a 20 72 30 3b d7 += h7 * r0; 00029880: 5c 6e 20 20 20 20 64 37 20 2b 3d 20 68 38 20 2a \n d7 += h8 * 00029890: 20 28 35 20 2a 20 72 39 29 3b 5c 6e 20 20 20 20 (5 * r9);\n 000298a0: 64 37 20 2b 3d 20 68 39 20 2a 20 28 35 20 2a 20 d7 += h9 * (5 * 000298b0: 72 38 29 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 28 r8);\n c += ( 000298c0: 64 37 20 3e 3e 3e 20 31 33 29 3b 20 64 37 20 26 d7 >>> 13); d7 & 000298d0: 3d 20 30 78 31 66 66 66 3b 5c 6e 5c 6e 20 20 20 = 0x1fff;\n\n 000298e0: 20 64 38 20 3d 20 63 3b 5c 6e 20 20 20 20 64 38 d8 = c;\n d8 000298f0: 20 2b 3d 20 68 30 20 2a 20 72 38 3b 5c 6e 20 20 += h0 * r8;\n 00029900: 20 20 64 38 20 2b 3d 20 68 31 20 2a 20 72 37 3b d8 += h1 * r7; 00029910: 5c 6e 20 20 20 20 64 38 20 2b 3d 20 68 32 20 2a \n d8 += h2 * 00029920: 20 72 36 3b 5c 6e 20 20 20 20 64 38 20 2b 3d 20 r6;\n d8 += 00029930: 68 33 20 2a 20 72 35 3b 5c 6e 20 20 20 20 64 38 h3 * r5;\n d8 00029940: 20 2b 3d 20 68 34 20 2a 20 72 34 3b 5c 6e 20 20 += h4 * r4;\n 00029950: 20 20 63 20 3d 20 28 64 38 20 3e 3e 3e 20 31 33 c = (d8 >>> 13 00029960: 29 3b 20 64 38 20 26 3d 20 30 78 31 66 66 66 3b ); d8 &= 0x1fff; 00029970: 5c 6e 20 20 20 20 64 38 20 2b 3d 20 68 35 20 2a \n d8 += h5 * 00029980: 20 72 33 3b 5c 6e 20 20 20 20 64 38 20 2b 3d 20 r3;\n d8 += 00029990: 68 36 20 2a 20 72 32 3b 5c 6e 20 20 20 20 64 38 h6 * r2;\n d8 000299a0: 20 2b 3d 20 68 37 20 2a 20 72 31 3b 5c 6e 20 20 += h7 * r1;\n 000299b0: 20 20 64 38 20 2b 3d 20 68 38 20 2a 20 72 30 3b d8 += h8 * r0; 000299c0: 5c 6e 20 20 20 20 64 38 20 2b 3d 20 68 39 20 2a \n d8 += h9 * 000299d0: 20 28 35 20 2a 20 72 39 29 3b 5c 6e 20 20 20 20 (5 * r9);\n 000299e0: 63 20 2b 3d 20 28 64 38 20 3e 3e 3e 20 31 33 29 c += (d8 >>> 13) 000299f0: 3b 20 64 38 20 26 3d 20 30 78 31 66 66 66 3b 5c ; d8 &= 0x1fff;\ 00029a00: 6e 5c 6e 20 20 20 20 64 39 20 3d 20 63 3b 5c 6e n\n d9 = c;\n 00029a10: 20 20 20 20 64 39 20 2b 3d 20 68 30 20 2a 20 72 d9 += h0 * r 00029a20: 39 3b 5c 6e 20 20 20 20 64 39 20 2b 3d 20 68 31 9;\n d9 += h1 00029a30: 20 2a 20 72 38 3b 5c 6e 20 20 20 20 64 39 20 2b * r8;\n d9 + 00029a40: 3d 20 68 32 20 2a 20 72 37 3b 5c 6e 20 20 20 20 = h2 * r7;\n 00029a50: 64 39 20 2b 3d 20 68 33 20 2a 20 72 36 3b 5c 6e d9 += h3 * r6;\n 00029a60: 20 20 20 20 64 39 20 2b 3d 20 68 34 20 2a 20 72 d9 += h4 * r 00029a70: 35 3b 5c 6e 20 20 20 20 63 20 3d 20 28 64 39 20 5;\n c = (d9 00029a80: 3e 3e 3e 20 31 33 29 3b 20 64 39 20 26 3d 20 30 >>> 13); d9 &= 0 00029a90: 78 31 66 66 66 3b 5c 6e 20 20 20 20 64 39 20 2b x1fff;\n d9 + 00029aa0: 3d 20 68 35 20 2a 20 72 34 3b 5c 6e 20 20 20 20 = h5 * r4;\n 00029ab0: 64 39 20 2b 3d 20 68 36 20 2a 20 72 33 3b 5c 6e d9 += h6 * r3;\n 00029ac0: 20 20 20 20 64 39 20 2b 3d 20 68 37 20 2a 20 72 d9 += h7 * r 00029ad0: 32 3b 5c 6e 20 20 20 20 64 39 20 2b 3d 20 68 38 2;\n d9 += h8 00029ae0: 20 2a 20 72 31 3b 5c 6e 20 20 20 20 64 39 20 2b * r1;\n d9 + 00029af0: 3d 20 68 39 20 2a 20 72 30 3b 5c 6e 20 20 20 20 = h9 * r0;\n 00029b00: 63 20 2b 3d 20 28 64 39 20 3e 3e 3e 20 31 33 29 c += (d9 >>> 13) 00029b10: 3b 20 64 39 20 26 3d 20 30 78 31 66 66 66 3b 5c ; d9 &= 0x1fff;\ 00029b20: 6e 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 63 20 n\n c = (((c 00029b30: 3c 3c 20 32 29 20 2b 20 63 29 29 20 7c 20 30 3b << 2) + c)) | 0; 00029b40: 5c 6e 20 20 20 20 63 20 3d 20 28 63 20 2b 20 64 \n c = (c + d 00029b50: 30 29 20 7c 20 30 3b 5c 6e 20 20 20 20 64 30 20 0) | 0;\n d0 00029b60: 3d 20 63 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 = c & 0x1fff;\n 00029b70: 20 20 20 63 20 3d 20 28 63 20 3e 3e 3e 20 31 33 c = (c >>> 13 00029b80: 29 3b 5c 6e 20 20 20 20 64 31 20 2b 3d 20 63 3b );\n d1 += c; 00029b90: 5c 6e 5c 6e 20 20 20 20 68 30 20 3d 20 64 30 3b \n\n h0 = d0; 00029ba0: 5c 6e 20 20 20 20 68 31 20 3d 20 64 31 3b 5c 6e \n h1 = d1;\n 00029bb0: 20 20 20 20 68 32 20 3d 20 64 32 3b 5c 6e 20 20 h2 = d2;\n 00029bc0: 20 20 68 33 20 3d 20 64 33 3b 5c 6e 20 20 20 20 h3 = d3;\n 00029bd0: 68 34 20 3d 20 64 34 3b 5c 6e 20 20 20 20 68 35 h4 = d4;\n h5 00029be0: 20 3d 20 64 35 3b 5c 6e 20 20 20 20 68 36 20 3d = d5;\n h6 = 00029bf0: 20 64 36 3b 5c 6e 20 20 20 20 68 37 20 3d 20 64 d6;\n h7 = d 00029c00: 37 3b 5c 6e 20 20 20 20 68 38 20 3d 20 64 38 3b 7;\n h8 = d8; 00029c10: 5c 6e 20 20 20 20 68 39 20 3d 20 64 39 3b 5c 6e \n h9 = d9;\n 00029c20: 5c 6e 20 20 20 20 6d 70 6f 73 20 2b 3d 20 31 36 \n mpos += 16 00029c30: 3b 5c 6e 20 20 20 20 62 79 74 65 73 20 2d 3d 20 ;\n bytes -= 00029c40: 31 36 3b 5c 6e 20 20 7d 5c 6e 20 20 74 68 69 73 16;\n }\n this 00029c50: 2e 68 5b 30 5d 20 3d 20 68 30 3b 5c 6e 20 20 74 .h[0] = h0;\n t 00029c60: 68 69 73 2e 68 5b 31 5d 20 3d 20 68 31 3b 5c 6e his.h[1] = h1;\n 00029c70: 20 20 74 68 69 73 2e 68 5b 32 5d 20 3d 20 68 32 this.h[2] = h2 00029c80: 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 33 5d 20 3d ;\n this.h[3] = 00029c90: 20 68 33 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 34 h3;\n this.h[4 00029ca0: 5d 20 3d 20 68 34 3b 5c 6e 20 20 74 68 69 73 2e ] = h4;\n this. 00029cb0: 68 5b 35 5d 20 3d 20 68 35 3b 5c 6e 20 20 74 68 h[5] = h5;\n th 00029cc0: 69 73 2e 68 5b 36 5d 20 3d 20 68 36 3b 5c 6e 20 is.h[6] = h6;\n 00029cd0: 20 74 68 69 73 2e 68 5b 37 5d 20 3d 20 68 37 3b this.h[7] = h7; 00029ce0: 5c 6e 20 20 74 68 69 73 2e 68 5b 38 5d 20 3d 20 \n this.h[8] = 00029cf0: 68 38 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 39 5d h8;\n this.h[9] 00029d00: 20 3d 20 68 39 3b 5c 6e 7d 3b 5c 6e 5c 6e 70 6f = h9;\n};\n\npo 00029d10: 6c 79 31 33 30 35 2e 70 72 6f 74 6f 74 79 70 65 ly1305.prototype 00029d20: 2e 66 69 6e 69 73 68 20 3d 20 66 75 6e 63 74 69 .finish = functi 00029d30: 6f 6e 28 6d 61 63 2c 20 6d 61 63 70 6f 73 29 20 on(mac, macpos) 00029d40: 7b 5c 6e 20 20 76 61 72 20 67 20 3d 20 6e 65 77 {\n var g = new 00029d50: 20 55 69 6e 74 31 36 41 72 72 61 79 28 31 30 29 Uint16Array(10) 00029d60: 3b 5c 6e 20 20 76 61 72 20 63 2c 20 6d 61 73 6b ;\n var c, mask 00029d70: 2c 20 66 2c 20 69 3b 5c 6e 5c 6e 20 20 69 66 20 , f, i;\n\n if 00029d80: 28 74 68 69 73 2e 6c 65 66 74 6f 76 65 72 29 20 (this.leftover) 00029d90: 7b 5c 6e 20 20 20 20 69 20 3d 20 74 68 69 73 2e {\n i = this. 00029da0: 6c 65 66 74 6f 76 65 72 3b 5c 6e 20 20 20 20 74 leftover;\n t 00029db0: 68 69 73 2e 62 75 66 66 65 72 5b 69 2b 2b 5d 20 his.buffer[i++] 00029dc0: 3d 20 31 3b 5c 6e 20 20 20 20 66 6f 72 20 28 3b = 1;\n for (; 00029dd0: 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 74 68 i < 16; i++) th 00029de0: 69 73 2e 62 75 66 66 65 72 5b 69 5d 20 3d 20 30 is.buffer[i] = 0 00029df0: 3b 5c 6e 20 20 20 20 74 68 69 73 2e 66 69 6e 20 ;\n this.fin 00029e00: 3d 20 31 3b 5c 6e 20 20 20 20 74 68 69 73 2e 62 = 1;\n this.b 00029e10: 6c 6f 63 6b 73 28 74 68 69 73 2e 62 75 66 66 65 locks(this.buffe 00029e20: 72 2c 20 30 2c 20 31 36 29 3b 5c 6e 20 20 7d 5c r, 0, 16);\n }\ 00029e30: 6e 5c 6e 20 20 63 20 3d 20 74 68 69 73 2e 68 5b n\n c = this.h[ 00029e40: 31 5d 20 3e 3e 3e 20 31 33 3b 5c 6e 20 20 74 68 1] >>> 13;\n th 00029e50: 69 73 2e 68 5b 31 5d 20 26 3d 20 30 78 31 66 66 is.h[1] &= 0x1ff 00029e60: 66 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 32 f;\n for (i = 2 00029e70: 3b 20 69 20 3c 20 31 30 3b 20 69 2b 2b 29 20 7b ; i < 10; i++) { 00029e80: 5c 6e 20 20 20 20 74 68 69 73 2e 68 5b 69 5d 20 \n this.h[i] 00029e90: 2b 3d 20 63 3b 5c 6e 20 20 20 20 63 20 3d 20 74 += c;\n c = t 00029ea0: 68 69 73 2e 68 5b 69 5d 20 3e 3e 3e 20 31 33 3b his.h[i] >>> 13; 00029eb0: 5c 6e 20 20 20 20 74 68 69 73 2e 68 5b 69 5d 20 \n this.h[i] 00029ec0: 26 3d 20 30 78 31 66 66 66 3b 5c 6e 20 20 7d 5c &= 0x1fff;\n }\ 00029ed0: 6e 20 20 74 68 69 73 2e 68 5b 30 5d 20 2b 3d 20 n this.h[0] += 00029ee0: 28 63 20 2a 20 35 29 3b 5c 6e 20 20 63 20 3d 20 (c * 5);\n c = 00029ef0: 74 68 69 73 2e 68 5b 30 5d 20 3e 3e 3e 20 31 33 this.h[0] >>> 13 00029f00: 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 30 5d 20 26 ;\n this.h[0] & 00029f10: 3d 20 30 78 31 66 66 66 3b 5c 6e 20 20 74 68 69 = 0x1fff;\n thi 00029f20: 73 2e 68 5b 31 5d 20 2b 3d 20 63 3b 5c 6e 20 20 s.h[1] += c;\n 00029f30: 63 20 3d 20 74 68 69 73 2e 68 5b 31 5d 20 3e 3e c = this.h[1] >> 00029f40: 3e 20 31 33 3b 5c 6e 20 20 74 68 69 73 2e 68 5b > 13;\n this.h[ 00029f50: 31 5d 20 26 3d 20 30 78 31 66 66 66 3b 5c 6e 20 1] &= 0x1fff;\n 00029f60: 20 74 68 69 73 2e 68 5b 32 5d 20 2b 3d 20 63 3b this.h[2] += c; 00029f70: 5c 6e 5c 6e 20 20 67 5b 30 5d 20 3d 20 74 68 69 \n\n g[0] = thi 00029f80: 73 2e 68 5b 30 5d 20 2b 20 35 3b 5c 6e 20 20 63 s.h[0] + 5;\n c 00029f90: 20 3d 20 67 5b 30 5d 20 3e 3e 3e 20 31 33 3b 5c = g[0] >>> 13;\ 00029fa0: 6e 20 20 67 5b 30 5d 20 26 3d 20 30 78 31 66 66 n g[0] &= 0x1ff 00029fb0: 66 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 31 f;\n for (i = 1 00029fc0: 3b 20 69 20 3c 20 31 30 3b 20 69 2b 2b 29 20 7b ; i < 10; i++) { 00029fd0: 5c 6e 20 20 20 20 67 5b 69 5d 20 3d 20 74 68 69 \n g[i] = thi 00029fe0: 73 2e 68 5b 69 5d 20 2b 20 63 3b 5c 6e 20 20 20 s.h[i] + c;\n 00029ff0: 20 63 20 3d 20 67 5b 69 5d 20 3e 3e 3e 20 31 33 c = g[i] >>> 13 0002a000: 3b 5c 6e 20 20 20 20 67 5b 69 5d 20 26 3d 20 30 ;\n g[i] &= 0 0002a010: 78 31 66 66 66 3b 5c 6e 20 20 7d 5c 6e 20 20 67 x1fff;\n }\n g 0002a020: 5b 39 5d 20 2d 3d 20 28 31 20 3c 3c 20 31 33 29 [9] -= (1 << 13) 0002a030: 3b 5c 6e 5c 6e 20 20 6d 61 73 6b 20 3d 20 28 63 ;\n\n mask = (c 0002a040: 20 5e 20 31 29 20 2d 20 31 3b 5c 6e 20 20 66 6f ^ 1) - 1;\n fo 0002a050: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 31 30 r (i = 0; i < 10 0002a060: 3b 20 69 2b 2b 29 20 67 5b 69 5d 20 26 3d 20 6d ; i++) g[i] &= m 0002a070: 61 73 6b 3b 5c 6e 20 20 6d 61 73 6b 20 3d 20 7e ask;\n mask = ~ 0002a080: 6d 61 73 6b 3b 5c 6e 20 20 66 6f 72 20 28 69 20 mask;\n for (i 0002a090: 3d 20 30 3b 20 69 20 3c 20 31 30 3b 20 69 2b 2b = 0; i < 10; i++ 0002a0a0: 29 20 74 68 69 73 2e 68 5b 69 5d 20 3d 20 28 74 ) this.h[i] = (t 0002a0b0: 68 69 73 2e 68 5b 69 5d 20 26 20 6d 61 73 6b 29 his.h[i] & mask) 0002a0c0: 20 7c 20 67 5b 69 5d 3b 5c 6e 5c 6e 20 20 74 68 | g[i];\n\n th 0002a0d0: 69 73 2e 68 5b 30 5d 20 3d 20 28 28 74 68 69 73 is.h[0] = ((this 0002a0e0: 2e 68 5b 30 5d 20 20 20 20 20 20 20 29 20 7c 20 .h[0] ) | 0002a0f0: 28 74 68 69 73 2e 68 5b 31 5d 20 3c 3c 20 31 33 (this.h[1] << 13 0002a100: 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ) 0002a110: 20 20 20 20 20 29 20 26 20 30 78 66 66 66 66 3b ) & 0xffff; 0002a120: 5c 6e 20 20 74 68 69 73 2e 68 5b 31 5d 20 3d 20 \n this.h[1] = 0002a130: 28 28 74 68 69 73 2e 68 5b 31 5d 20 3e 3e 3e 20 ((this.h[1] >>> 0002a140: 20 33 29 20 7c 20 28 74 68 69 73 2e 68 5b 32 5d 3) | (this.h[2] 0002a150: 20 3c 3c 20 31 30 29 20 20 20 20 20 20 20 20 20 << 10) 0002a160: 20 20 20 20 20 20 20 20 20 20 20 29 20 26 20 30 ) & 0 0002a170: 78 66 66 66 66 3b 5c 6e 20 20 74 68 69 73 2e 68 xffff;\n this.h 0002a180: 5b 32 5d 20 3d 20 28 28 74 68 69 73 2e 68 5b 32 [2] = ((this.h[2 0002a190: 5d 20 3e 3e 3e 20 20 36 29 20 7c 20 28 74 68 69 ] >>> 6) | (thi 0002a1a0: 73 2e 68 5b 33 5d 20 3c 3c 20 20 37 29 20 20 20 s.h[3] << 7) 0002a1b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0002a1c0: 20 29 20 26 20 30 78 66 66 66 66 3b 5c 6e 20 20 ) & 0xffff;\n 0002a1d0: 74 68 69 73 2e 68 5b 33 5d 20 3d 20 28 28 74 68 this.h[3] = ((th 0002a1e0: 69 73 2e 68 5b 33 5d 20 3e 3e 3e 20 20 39 29 20 is.h[3] >>> 9) 0002a1f0: 7c 20 28 74 68 69 73 2e 68 5b 34 5d 20 3c 3c 20 | (this.h[4] << 0002a200: 20 34 29 20 20 20 20 20 20 20 20 20 20 20 20 20 4) 0002a210: 20 20 20 20 20 20 20 29 20 26 20 30 78 66 66 66 ) & 0xfff 0002a220: 66 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 34 5d 20 f;\n this.h[4] 0002a230: 3d 20 28 28 74 68 69 73 2e 68 5b 34 5d 20 3e 3e = ((this.h[4] >> 0002a240: 3e 20 31 32 29 20 7c 20 28 74 68 69 73 2e 68 5b > 12) | (this.h[ 0002a250: 35 5d 20 3c 3c 20 20 31 29 20 7c 20 28 74 68 69 5] << 1) | (thi 0002a260: 73 2e 68 5b 36 5d 20 3c 3c 20 31 34 29 29 20 26 s.h[6] << 14)) & 0002a270: 20 30 78 66 66 66 66 3b 5c 6e 20 20 74 68 69 73 0xffff;\n this 0002a280: 2e 68 5b 35 5d 20 3d 20 28 28 74 68 69 73 2e 68 .h[5] = ((this.h 0002a290: 5b 36 5d 20 3e 3e 3e 20 20 32 29 20 7c 20 28 74 [6] >>> 2) | (t 0002a2a0: 68 69 73 2e 68 5b 37 5d 20 3c 3c 20 31 31 29 20 his.h[7] << 11) 0002a2b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0002a2c0: 20 20 20 29 20 26 20 30 78 66 66 66 66 3b 5c 6e ) & 0xffff;\n 0002a2d0: 20 20 74 68 69 73 2e 68 5b 36 5d 20 3d 20 28 28 this.h[6] = (( 0002a2e0: 74 68 69 73 2e 68 5b 37 5d 20 3e 3e 3e 20 20 35 this.h[7] >>> 5 0002a2f0: 29 20 7c 20 28 74 68 69 73 2e 68 5b 38 5d 20 3c ) | (this.h[8] < 0002a300: 3c 20 20 38 29 20 20 20 20 20 20 20 20 20 20 20 < 8) 0002a310: 20 20 20 20 20 20 20 20 20 29 20 26 20 30 78 66 ) & 0xf 0002a320: 66 66 66 3b 5c 6e 20 20 74 68 69 73 2e 68 5b 37 fff;\n this.h[7 0002a330: 5d 20 3d 20 28 28 74 68 69 73 2e 68 5b 38 5d 20 ] = ((this.h[8] 0002a340: 3e 3e 3e 20 20 38 29 20 7c 20 28 74 68 69 73 2e >>> 8) | (this. 0002a350: 68 5b 39 5d 20 3c 3c 20 20 35 29 20 20 20 20 20 h[9] << 5) 0002a360: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 29 ) 0002a370: 20 26 20 30 78 66 66 66 66 3b 5c 6e 5c 6e 20 20 & 0xffff;\n\n 0002a380: 66 20 3d 20 74 68 69 73 2e 68 5b 30 5d 20 2b 20 f = this.h[0] + 0002a390: 74 68 69 73 2e 70 61 64 5b 30 5d 3b 5c 6e 20 20 this.pad[0];\n 0002a3a0: 74 68 69 73 2e 68 5b 30 5d 20 3d 20 66 20 26 20 this.h[0] = f & 0002a3b0: 30 78 66 66 66 66 3b 5c 6e 20 20 66 6f 72 20 28 0xffff;\n for ( 0002a3c0: 69 20 3d 20 31 3b 20 69 20 3c 20 38 3b 20 69 2b i = 1; i < 8; i+ 0002a3d0: 2b 29 20 7b 5c 6e 20 20 20 20 66 20 3d 20 28 28 +) {\n f = (( 0002a3e0: 28 74 68 69 73 2e 68 5b 69 5d 20 2b 20 74 68 69 (this.h[i] + thi 0002a3f0: 73 2e 70 61 64 5b 69 5d 29 20 7c 20 30 29 20 2b s.pad[i]) | 0) + 0002a400: 20 28 66 20 3e 3e 3e 20 31 36 29 29 20 7c 20 30 (f >>> 16)) | 0 0002a410: 3b 5c 6e 20 20 20 20 74 68 69 73 2e 68 5b 69 5d ;\n this.h[i] 0002a420: 20 3d 20 66 20 26 20 30 78 66 66 66 66 3b 5c 6e = f & 0xffff;\n 0002a430: 20 20 7d 5c 6e 5c 6e 20 20 6d 61 63 5b 6d 61 63 }\n\n mac[mac 0002a440: 70 6f 73 2b 20 30 5d 20 3d 20 28 74 68 69 73 2e pos+ 0] = (this. 0002a450: 68 5b 30 5d 20 3e 3e 3e 20 30 29 20 26 20 30 78 h[0] >>> 0) & 0x 0002a460: 66 66 3b 5c 6e 20 20 6d 61 63 5b 6d 61 63 70 6f ff;\n mac[macpo 0002a470: 73 2b 20 31 5d 20 3d 20 28 74 68 69 73 2e 68 5b s+ 1] = (this.h[ 0002a480: 30 5d 20 3e 3e 3e 20 38 29 20 26 20 30 78 66 66 0] >>> 8) & 0xff 0002a490: 3b 5c 6e 20 20 6d 61 63 5b 6d 61 63 70 6f 73 2b ;\n mac[macpos+ 0002a4a0: 20 32 5d 20 3d 20 28 74 68 69 73 2e 68 5b 31 5d 2] = (this.h[1] 0002a4b0: 20 3e 3e 3e 20 30 29 20 26 20 30 78 66 66 3b 5c >>> 0) & 0xff;\ 0002a4c0: 6e 20 20 6d 61 63 5b 6d 61 63 70 6f 73 2b 20 33 n mac[macpos+ 3 0002a4d0: 5d 20 3d 20 28 74 68 69 73 2e 68 5b 31 5d 20 3e ] = (this.h[1] > 0002a4e0: 3e 3e 20 38 29 20 26 20 30 78 66 66 3b 5c 6e 20 >> 8) & 0xff;\n 0002a4f0: 20 6d 61 63 5b 6d 61 63 70 6f 73 2b 20 34 5d 20 mac[macpos+ 4] 0002a500: 3d 20 28 74 68 69 73 2e 68 5b 32 5d 20 3e 3e 3e = (this.h[2] >>> 0002a510: 20 30 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 6d 0) & 0xff;\n m 0002a520: 61 63 5b 6d 61 63 70 6f 73 2b 20 35 5d 20 3d 20 ac[macpos+ 5] = 0002a530: 28 74 68 69 73 2e 68 5b 32 5d 20 3e 3e 3e 20 38 (this.h[2] >>> 8 0002a540: 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 6d 61 63 ) & 0xff;\n mac 0002a550: 5b 6d 61 63 70 6f 73 2b 20 36 5d 20 3d 20 28 74 [macpos+ 6] = (t 0002a560: 68 69 73 2e 68 5b 33 5d 20 3e 3e 3e 20 30 29 20 his.h[3] >>> 0) 0002a570: 26 20 30 78 66 66 3b 5c 6e 20 20 6d 61 63 5b 6d & 0xff;\n mac[m 0002a580: 61 63 70 6f 73 2b 20 37 5d 20 3d 20 28 74 68 69 acpos+ 7] = (thi 0002a590: 73 2e 68 5b 33 5d 20 3e 3e 3e 20 38 29 20 26 20 s.h[3] >>> 8) & 0002a5a0: 30 78 66 66 3b 5c 6e 20 20 6d 61 63 5b 6d 61 63 0xff;\n mac[mac 0002a5b0: 70 6f 73 2b 20 38 5d 20 3d 20 28 74 68 69 73 2e pos+ 8] = (this. 0002a5c0: 68 5b 34 5d 20 3e 3e 3e 20 30 29 20 26 20 30 78 h[4] >>> 0) & 0x 0002a5d0: 66 66 3b 5c 6e 20 20 6d 61 63 5b 6d 61 63 70 6f ff;\n mac[macpo 0002a5e0: 73 2b 20 39 5d 20 3d 20 28 74 68 69 73 2e 68 5b s+ 9] = (this.h[ 0002a5f0: 34 5d 20 3e 3e 3e 20 38 29 20 26 20 30 78 66 66 4] >>> 8) & 0xff 0002a600: 3b 5c 6e 20 20 6d 61 63 5b 6d 61 63 70 6f 73 2b ;\n mac[macpos+ 0002a610: 31 30 5d 20 3d 20 28 74 68 69 73 2e 68 5b 35 5d 10] = (this.h[5] 0002a620: 20 3e 3e 3e 20 30 29 20 26 20 30 78 66 66 3b 5c >>> 0) & 0xff;\ 0002a630: 6e 20 20 6d 61 63 5b 6d 61 63 70 6f 73 2b 31 31 n mac[macpos+11 0002a640: 5d 20 3d 20 28 74 68 69 73 2e 68 5b 35 5d 20 3e ] = (this.h[5] > 0002a650: 3e 3e 20 38 29 20 26 20 30 78 66 66 3b 5c 6e 20 >> 8) & 0xff;\n 0002a660: 20 6d 61 63 5b 6d 61 63 70 6f 73 2b 31 32 5d 20 mac[macpos+12] 0002a670: 3d 20 28 74 68 69 73 2e 68 5b 36 5d 20 3e 3e 3e = (this.h[6] >>> 0002a680: 20 30 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 6d 0) & 0xff;\n m 0002a690: 61 63 5b 6d 61 63 70 6f 73 2b 31 33 5d 20 3d 20 ac[macpos+13] = 0002a6a0: 28 74 68 69 73 2e 68 5b 36 5d 20 3e 3e 3e 20 38 (this.h[6] >>> 8 0002a6b0: 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 6d 61 63 ) & 0xff;\n mac 0002a6c0: 5b 6d 61 63 70 6f 73 2b 31 34 5d 20 3d 20 28 74 [macpos+14] = (t 0002a6d0: 68 69 73 2e 68 5b 37 5d 20 3e 3e 3e 20 30 29 20 his.h[7] >>> 0) 0002a6e0: 26 20 30 78 66 66 3b 5c 6e 20 20 6d 61 63 5b 6d & 0xff;\n mac[m 0002a6f0: 61 63 70 6f 73 2b 31 35 5d 20 3d 20 28 74 68 69 acpos+15] = (thi 0002a700: 73 2e 68 5b 37 5d 20 3e 3e 3e 20 38 29 20 26 20 s.h[7] >>> 8) & 0002a710: 30 78 66 66 3b 5c 6e 7d 3b 5c 6e 5c 6e 70 6f 6c 0xff;\n};\n\npol 0002a720: 79 31 33 30 35 2e 70 72 6f 74 6f 74 79 70 65 2e y1305.prototype. 0002a730: 75 70 64 61 74 65 20 3d 20 66 75 6e 63 74 69 6f update = functio 0002a740: 6e 28 6d 2c 20 6d 70 6f 73 2c 20 62 79 74 65 73 n(m, mpos, bytes 0002a750: 29 20 7b 5c 6e 20 20 76 61 72 20 69 2c 20 77 61 ) {\n var i, wa 0002a760: 6e 74 3b 5c 6e 5c 6e 20 20 69 66 20 28 74 68 69 nt;\n\n if (thi 0002a770: 73 2e 6c 65 66 74 6f 76 65 72 29 20 7b 5c 6e 20 s.leftover) {\n 0002a780: 20 20 20 77 61 6e 74 20 3d 20 28 31 36 20 2d 20 want = (16 - 0002a790: 74 68 69 73 2e 6c 65 66 74 6f 76 65 72 29 3b 5c this.leftover);\ 0002a7a0: 6e 20 20 20 20 69 66 20 28 77 61 6e 74 20 3e 20 n if (want > 0002a7b0: 62 79 74 65 73 29 5c 6e 20 20 20 20 20 20 77 61 bytes)\n wa 0002a7c0: 6e 74 20 3d 20 62 79 74 65 73 3b 5c 6e 20 20 20 nt = bytes;\n 0002a7d0: 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c for (i = 0; i < 0002a7e0: 20 77 61 6e 74 3b 20 69 2b 2b 29 5c 6e 20 20 20 want; i++)\n 0002a7f0: 20 20 20 74 68 69 73 2e 62 75 66 66 65 72 5b 74 this.buffer[t 0002a800: 68 69 73 2e 6c 65 66 74 6f 76 65 72 20 2b 20 69 his.leftover + i 0002a810: 5d 20 3d 20 6d 5b 6d 70 6f 73 2b 69 5d 3b 5c 6e ] = m[mpos+i];\n 0002a820: 20 20 20 20 62 79 74 65 73 20 2d 3d 20 77 61 6e bytes -= wan 0002a830: 74 3b 5c 6e 20 20 20 20 6d 70 6f 73 20 2b 3d 20 t;\n mpos += 0002a840: 77 61 6e 74 3b 5c 6e 20 20 20 20 74 68 69 73 2e want;\n this. 0002a850: 6c 65 66 74 6f 76 65 72 20 2b 3d 20 77 61 6e 74 leftover += want 0002a860: 3b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e ;\n if (this. 0002a870: 6c 65 66 74 6f 76 65 72 20 3c 20 31 36 29 5c 6e leftover < 16)\n 0002a880: 20 20 20 20 20 20 72 65 74 75 72 6e 3b 5c 6e 20 return;\n 0002a890: 20 20 20 74 68 69 73 2e 62 6c 6f 63 6b 73 28 74 this.blocks(t 0002a8a0: 68 69 73 2e 62 75 66 66 65 72 2c 20 30 2c 20 31 his.buffer, 0, 1 0002a8b0: 36 29 3b 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 6);\n this.le 0002a8c0: 66 74 6f 76 65 72 20 3d 20 30 3b 5c 6e 20 20 7d ftover = 0;\n } 0002a8d0: 5c 6e 5c 6e 20 20 69 66 20 28 62 79 74 65 73 20 \n\n if (bytes 0002a8e0: 3e 3d 20 31 36 29 20 7b 5c 6e 20 20 20 20 77 61 >= 16) {\n wa 0002a8f0: 6e 74 20 3d 20 62 79 74 65 73 20 2d 20 28 62 79 nt = bytes - (by 0002a900: 74 65 73 20 25 20 31 36 29 3b 5c 6e 20 20 20 20 tes % 16);\n 0002a910: 74 68 69 73 2e 62 6c 6f 63 6b 73 28 6d 2c 20 6d this.blocks(m, m 0002a920: 70 6f 73 2c 20 77 61 6e 74 29 3b 5c 6e 20 20 20 pos, want);\n 0002a930: 20 6d 70 6f 73 20 2b 3d 20 77 61 6e 74 3b 5c 6e mpos += want;\n 0002a940: 20 20 20 20 62 79 74 65 73 20 2d 3d 20 77 61 6e bytes -= wan 0002a950: 74 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 69 66 20 t;\n }\n\n if 0002a960: 28 62 79 74 65 73 29 20 7b 5c 6e 20 20 20 20 66 (bytes) {\n f 0002a970: 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 62 or (i = 0; i < b 0002a980: 79 74 65 73 3b 20 69 2b 2b 29 5c 6e 20 20 20 20 ytes; i++)\n 0002a990: 20 20 74 68 69 73 2e 62 75 66 66 65 72 5b 74 68 this.buffer[th 0002a9a0: 69 73 2e 6c 65 66 74 6f 76 65 72 20 2b 20 69 5d is.leftover + i] 0002a9b0: 20 3d 20 6d 5b 6d 70 6f 73 2b 69 5d 3b 5c 6e 20 = m[mpos+i];\n 0002a9c0: 20 20 20 74 68 69 73 2e 6c 65 66 74 6f 76 65 72 this.leftover 0002a9d0: 20 2b 3d 20 62 79 74 65 73 3b 5c 6e 20 20 7d 5c += bytes;\n }\ 0002a9e0: 6e 7d 3b 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 n};\n\nfunction 0002a9f0: 63 72 79 70 74 6f 5f 6f 6e 65 74 69 6d 65 61 75 crypto_onetimeau 0002aa00: 74 68 28 6f 75 74 2c 20 6f 75 74 70 6f 73 2c 20 th(out, outpos, 0002aa10: 6d 2c 20 6d 70 6f 73 2c 20 6e 2c 20 6b 29 20 7b m, mpos, n, k) { 0002aa20: 5c 6e 20 20 76 61 72 20 73 20 3d 20 6e 65 77 20 \n var s = new 0002aa30: 70 6f 6c 79 31 33 30 35 28 6b 29 3b 5c 6e 20 20 poly1305(k);\n 0002aa40: 73 2e 75 70 64 61 74 65 28 6d 2c 20 6d 70 6f 73 s.update(m, mpos 0002aa50: 2c 20 6e 29 3b 5c 6e 20 20 73 2e 66 69 6e 69 73 , n);\n s.finis 0002aa60: 68 28 6f 75 74 2c 20 6f 75 74 70 6f 73 29 3b 5c h(out, outpos);\ 0002aa70: 6e 20 20 72 65 74 75 72 6e 20 30 3b 5c 6e 7d 5c n return 0;\n}\ 0002aa80: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 70 n\nfunction cryp 0002aa90: 74 6f 5f 6f 6e 65 74 69 6d 65 61 75 74 68 5f 76 to_onetimeauth_v 0002aaa0: 65 72 69 66 79 28 68 2c 20 68 70 6f 73 2c 20 6d erify(h, hpos, m 0002aab0: 2c 20 6d 70 6f 73 2c 20 6e 2c 20 6b 29 20 7b 5c , mpos, n, k) {\ 0002aac0: 6e 20 20 76 61 72 20 78 20 3d 20 6e 65 77 20 55 n var x = new U 0002aad0: 69 6e 74 38 41 72 72 61 79 28 31 36 29 3b 5c 6e int8Array(16);\n 0002aae0: 20 20 63 72 79 70 74 6f 5f 6f 6e 65 74 69 6d 65 crypto_onetime 0002aaf0: 61 75 74 68 28 78 2c 30 2c 6d 2c 6d 70 6f 73 2c auth(x,0,m,mpos, 0002ab00: 6e 2c 6b 29 3b 5c 6e 20 20 72 65 74 75 72 6e 20 n,k);\n return 0002ab10: 63 72 79 70 74 6f 5f 76 65 72 69 66 79 5f 31 36 crypto_verify_16 0002ab20: 28 68 2c 68 70 6f 73 2c 78 2c 30 29 3b 5c 6e 7d (h,hpos,x,0);\n} 0002ab30: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 \n\nfunction cry 0002ab40: 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 28 63 2c pto_secretbox(c, 0002ab50: 6d 2c 64 2c 6e 2c 6b 29 20 7b 5c 6e 20 20 76 61 m,d,n,k) {\n va 0002ab60: 72 20 69 3b 5c 6e 20 20 69 66 20 28 64 20 3c 20 r i;\n if (d < 0002ab70: 33 32 29 20 72 65 74 75 72 6e 20 2d 31 3b 5c 6e 32) return -1;\n 0002ab80: 20 20 63 72 79 70 74 6f 5f 73 74 72 65 61 6d 5f crypto_stream_ 0002ab90: 78 6f 72 28 63 2c 30 2c 6d 2c 30 2c 64 2c 6e 2c xor(c,0,m,0,d,n, 0002aba0: 6b 29 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 6f 6e k);\n crypto_on 0002abb0: 65 74 69 6d 65 61 75 74 68 28 63 2c 20 31 36 2c etimeauth(c, 16, 0002abc0: 20 63 2c 20 33 32 2c 20 64 20 2d 20 33 32 2c 20 c, 32, d - 32, 0002abd0: 63 29 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 c);\n for (i = 0002abe0: 30 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 0; i < 16; i++) 0002abf0: 63 5b 69 5d 20 3d 20 30 3b 5c 6e 20 20 72 65 74 c[i] = 0;\n ret 0002ac00: 75 72 6e 20 30 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e urn 0;\n}\n\nfun 0002ac10: 63 74 69 6f 6e 20 63 72 79 70 74 6f 5f 73 65 63 ction crypto_sec 0002ac20: 72 65 74 62 6f 78 5f 6f 70 65 6e 28 6d 2c 63 2c retbox_open(m,c, 0002ac30: 64 2c 6e 2c 6b 29 20 7b 5c 6e 20 20 76 61 72 20 d,n,k) {\n var 0002ac40: 69 3b 5c 6e 20 20 76 61 72 20 78 20 3d 20 6e 65 i;\n var x = ne 0002ac50: 77 20 55 69 6e 74 38 41 72 72 61 79 28 33 32 29 w Uint8Array(32) 0002ac60: 3b 5c 6e 20 20 69 66 20 28 64 20 3c 20 33 32 29 ;\n if (d < 32) 0002ac70: 20 72 65 74 75 72 6e 20 2d 31 3b 5c 6e 20 20 63 return -1;\n c 0002ac80: 72 79 70 74 6f 5f 73 74 72 65 61 6d 28 78 2c 30 rypto_stream(x,0 0002ac90: 2c 33 32 2c 6e 2c 6b 29 3b 5c 6e 20 20 69 66 20 ,32,n,k);\n if 0002aca0: 28 63 72 79 70 74 6f 5f 6f 6e 65 74 69 6d 65 61 (crypto_onetimea 0002acb0: 75 74 68 5f 76 65 72 69 66 79 28 63 2c 20 31 36 uth_verify(c, 16 0002acc0: 2c 63 2c 20 33 32 2c 64 20 2d 20 33 32 2c 78 29 ,c, 32,d - 32,x) 0002acd0: 20 21 3d 3d 20 30 29 20 72 65 74 75 72 6e 20 2d !== 0) return - 0002ace0: 31 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 73 74 72 1;\n crypto_str 0002acf0: 65 61 6d 5f 78 6f 72 28 6d 2c 30 2c 63 2c 30 2c eam_xor(m,0,c,0, 0002ad00: 64 2c 6e 2c 6b 29 3b 5c 6e 20 20 66 6f 72 20 28 d,n,k);\n for ( 0002ad10: 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 3b 20 69 i = 0; i < 32; i 0002ad20: 2b 2b 29 20 6d 5b 69 5d 20 3d 20 30 3b 5c 6e 20 ++) m[i] = 0;\n 0002ad30: 20 72 65 74 75 72 6e 20 30 3b 5c 6e 7d 5c 6e 5c return 0;\n}\n\ 0002ad40: 6e 66 75 6e 63 74 69 6f 6e 20 73 65 74 32 35 35 nfunction set255 0002ad50: 31 39 28 72 2c 20 61 29 20 7b 5c 6e 20 20 76 61 19(r, a) {\n va 0002ad60: 72 20 69 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d r i;\n for (i = 0002ad70: 20 30 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 0; i < 16; i++) 0002ad80: 20 72 5b 69 5d 20 3d 20 61 5b 69 5d 7c 30 3b 5c r[i] = a[i]|0;\ 0002ad90: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 n}\n\nfunction c 0002ada0: 61 72 32 35 35 31 39 28 6f 29 20 7b 5c 6e 20 20 ar25519(o) {\n 0002adb0: 76 61 72 20 69 2c 20 76 2c 20 63 20 3d 20 31 3b var i, v, c = 1; 0002adc0: 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 \n for (i = 0; 0002add0: 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 7b 5c 6e i < 16; i++) {\n 0002ade0: 20 20 20 20 76 20 3d 20 6f 5b 69 5d 20 2b 20 63 v = o[i] + c 0002adf0: 20 2b 20 36 35 35 33 35 3b 5c 6e 20 20 20 20 63 + 65535;\n c 0002ae00: 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 28 76 20 = Math.floor(v 0002ae10: 2f 20 36 35 35 33 36 29 3b 5c 6e 20 20 20 20 6f / 65536);\n o 0002ae20: 5b 69 5d 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 [i] = v - c * 65 0002ae30: 35 33 36 3b 5c 6e 20 20 7d 5c 6e 20 20 6f 5b 30 536;\n }\n o[0 0002ae40: 5d 20 2b 3d 20 63 2d 31 20 2b 20 33 37 20 2a 20 ] += c-1 + 37 * 0002ae50: 28 63 2d 31 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e (c-1);\n}\n\nfun 0002ae60: 63 74 69 6f 6e 20 73 65 6c 32 35 35 31 39 28 70 ction sel25519(p 0002ae70: 2c 20 71 2c 20 62 29 20 7b 5c 6e 20 20 76 61 72 , q, b) {\n var 0002ae80: 20 74 2c 20 63 20 3d 20 7e 28 62 2d 31 29 3b 5c t, c = ~(b-1);\ 0002ae90: 6e 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 n for (var i = 0002aea0: 30 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 0; i < 16; i++) 0002aeb0: 7b 5c 6e 20 20 20 20 74 20 3d 20 63 20 26 20 28 {\n t = c & ( 0002aec0: 70 5b 69 5d 20 5e 20 71 5b 69 5d 29 3b 5c 6e 20 p[i] ^ q[i]);\n 0002aed0: 20 20 20 70 5b 69 5d 20 5e 3d 20 74 3b 5c 6e 20 p[i] ^= t;\n 0002aee0: 20 20 20 71 5b 69 5d 20 5e 3d 20 74 3b 5c 6e 20 q[i] ^= t;\n 0002aef0: 20 7d 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f }\n}\n\nfunctio 0002af00: 6e 20 70 61 63 6b 32 35 35 31 39 28 6f 2c 20 6e n pack25519(o, n 0002af10: 29 20 7b 5c 6e 20 20 76 61 72 20 69 2c 20 6a 2c ) {\n var i, j, 0002af20: 20 62 3b 5c 6e 20 20 76 61 72 20 6d 20 3d 20 67 b;\n var m = g 0002af30: 66 28 29 2c 20 74 20 3d 20 67 66 28 29 3b 5c 6e f(), t = gf();\n 0002af40: 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 for (i = 0; i 0002af50: 3c 20 31 36 3b 20 69 2b 2b 29 20 74 5b 69 5d 20 < 16; i++) t[i] 0002af60: 3d 20 6e 5b 69 5d 3b 5c 6e 20 20 63 61 72 32 35 = n[i];\n car25 0002af70: 35 31 39 28 74 29 3b 5c 6e 20 20 63 61 72 32 35 519(t);\n car25 0002af80: 35 31 39 28 74 29 3b 5c 6e 20 20 63 61 72 32 35 519(t);\n car25 0002af90: 35 31 39 28 74 29 3b 5c 6e 20 20 66 6f 72 20 28 519(t);\n for ( 0002afa0: 6a 20 3d 20 30 3b 20 6a 20 3c 20 32 3b 20 6a 2b j = 0; j < 2; j+ 0002afb0: 2b 29 20 7b 5c 6e 20 20 20 20 6d 5b 30 5d 20 3d +) {\n m[0] = 0002afc0: 20 74 5b 30 5d 20 2d 20 30 78 66 66 65 64 3b 5c t[0] - 0xffed;\ 0002afd0: 6e 20 20 20 20 66 6f 72 20 28 69 20 3d 20 31 3b n for (i = 1; 0002afe0: 20 69 20 3c 20 31 35 3b 20 69 2b 2b 29 20 7b 5c i < 15; i++) {\ 0002aff0: 6e 20 20 20 20 20 20 6d 5b 69 5d 20 3d 20 74 5b n m[i] = t[ 0002b000: 69 5d 20 2d 20 30 78 66 66 66 66 20 2d 20 28 28 i] - 0xffff - (( 0002b010: 6d 5b 69 2d 31 5d 3e 3e 31 36 29 20 26 20 31 29 m[i-1]>>16) & 1) 0002b020: 3b 5c 6e 20 20 20 20 20 20 6d 5b 69 2d 31 5d 20 ;\n m[i-1] 0002b030: 26 3d 20 30 78 66 66 66 66 3b 5c 6e 20 20 20 20 &= 0xffff;\n 0002b040: 7d 5c 6e 20 20 20 20 6d 5b 31 35 5d 20 3d 20 74 }\n m[15] = t 0002b050: 5b 31 35 5d 20 2d 20 30 78 37 66 66 66 20 2d 20 [15] - 0x7fff - 0002b060: 28 28 6d 5b 31 34 5d 3e 3e 31 36 29 20 26 20 31 ((m[14]>>16) & 1 0002b070: 29 3b 5c 6e 20 20 20 20 62 20 3d 20 28 6d 5b 31 );\n b = (m[1 0002b080: 35 5d 3e 3e 31 36 29 20 26 20 31 3b 5c 6e 20 20 5]>>16) & 1;\n 0002b090: 20 20 6d 5b 31 34 5d 20 26 3d 20 30 78 66 66 66 m[14] &= 0xfff 0002b0a0: 66 3b 5c 6e 20 20 20 20 73 65 6c 32 35 35 31 39 f;\n sel25519 0002b0b0: 28 74 2c 20 6d 2c 20 31 2d 62 29 3b 5c 6e 20 20 (t, m, 1-b);\n 0002b0c0: 7d 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b }\n for (i = 0; 0002b0d0: 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 7b 5c i < 16; i++) {\ 0002b0e0: 6e 20 20 20 20 6f 5b 32 2a 69 5d 20 3d 20 74 5b n o[2*i] = t[ 0002b0f0: 69 5d 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 i] & 0xff;\n 0002b100: 6f 5b 32 2a 69 2b 31 5d 20 3d 20 74 5b 69 5d 3e o[2*i+1] = t[i]> 0002b110: 3e 38 3b 5c 6e 20 20 7d 5c 6e 7d 5c 6e 5c 6e 66 >8;\n }\n}\n\nf 0002b120: 75 6e 63 74 69 6f 6e 20 6e 65 71 32 35 35 31 39 unction neq25519 0002b130: 28 61 2c 20 62 29 20 7b 5c 6e 20 20 76 61 72 20 (a, b) {\n var 0002b140: 63 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 c = new Uint8Arr 0002b150: 61 79 28 33 32 29 2c 20 64 20 3d 20 6e 65 77 20 ay(32), d = new 0002b160: 55 69 6e 74 38 41 72 72 61 79 28 33 32 29 3b 5c Uint8Array(32);\ 0002b170: 6e 20 20 70 61 63 6b 32 35 35 31 39 28 63 2c 20 n pack25519(c, 0002b180: 61 29 3b 5c 6e 20 20 70 61 63 6b 32 35 35 31 39 a);\n pack25519 0002b190: 28 64 2c 20 62 29 3b 5c 6e 20 20 72 65 74 75 72 (d, b);\n retur 0002b1a0: 6e 20 63 72 79 70 74 6f 5f 76 65 72 69 66 79 5f n crypto_verify_ 0002b1b0: 33 32 28 63 2c 20 30 2c 20 64 2c 20 30 29 3b 5c 32(c, 0, d, 0);\ 0002b1c0: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 70 n}\n\nfunction p 0002b1d0: 61 72 32 35 35 31 39 28 61 29 20 7b 5c 6e 20 20 ar25519(a) {\n 0002b1e0: 76 61 72 20 64 20 3d 20 6e 65 77 20 55 69 6e 74 var d = new Uint 0002b1f0: 38 41 72 72 61 79 28 33 32 29 3b 5c 6e 20 20 70 8Array(32);\n p 0002b200: 61 63 6b 32 35 35 31 39 28 64 2c 20 61 29 3b 5c ack25519(d, a);\ 0002b210: 6e 20 20 72 65 74 75 72 6e 20 64 5b 30 5d 20 26 n return d[0] & 0002b220: 20 31 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 1;\n}\n\nfuncti 0002b230: 6f 6e 20 75 6e 70 61 63 6b 32 35 35 31 39 28 6f on unpack25519(o 0002b240: 2c 20 6e 29 20 7b 5c 6e 20 20 76 61 72 20 69 3b , n) {\n var i; 0002b250: 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 \n for (i = 0; 0002b260: 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 6f 5b 69 i < 16; i++) o[i 0002b270: 5d 20 3d 20 6e 5b 32 2a 69 5d 20 2b 20 28 6e 5b ] = n[2*i] + (n[ 0002b280: 32 2a 69 2b 31 5d 20 3c 3c 20 38 29 3b 5c 6e 20 2*i+1] << 8);\n 0002b290: 20 6f 5b 31 35 5d 20 26 3d 20 30 78 37 66 66 66 o[15] &= 0x7fff 0002b2a0: 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e ;\n}\n\nfunction 0002b2b0: 20 41 28 6f 2c 20 61 2c 20 62 29 20 7b 5c 6e 20 A(o, a, b) {\n 0002b2c0: 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b for (var i = 0; 0002b2d0: 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 6f 5b i < 16; i++) o[ 0002b2e0: 69 5d 20 3d 20 61 5b 69 5d 20 2b 20 62 5b 69 5d i] = a[i] + b[i] 0002b2f0: 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e ;\n}\n\nfunction 0002b300: 20 5a 28 6f 2c 20 61 2c 20 62 29 20 7b 5c 6e 20 Z(o, a, b) {\n 0002b310: 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b for (var i = 0; 0002b320: 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 20 6f 5b i < 16; i++) o[ 0002b330: 69 5d 20 3d 20 61 5b 69 5d 20 2d 20 62 5b 69 5d i] = a[i] - b[i] 0002b340: 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e ;\n}\n\nfunction 0002b350: 20 4d 28 6f 2c 20 61 2c 20 62 29 20 7b 5c 6e 20 M(o, a, b) {\n 0002b360: 20 76 61 72 20 76 2c 20 63 2c 5c 6e 20 20 20 20 var v, c,\n 0002b370: 20 74 30 20 3d 20 30 2c 20 20 74 31 20 3d 20 30 t0 = 0, t1 = 0 0002b380: 2c 20 20 74 32 20 3d 20 30 2c 20 20 74 33 20 3d , t2 = 0, t3 = 0002b390: 20 30 2c 20 20 74 34 20 3d 20 30 2c 20 20 74 35 0, t4 = 0, t5 0002b3a0: 20 3d 20 30 2c 20 20 74 36 20 3d 20 30 2c 20 20 = 0, t6 = 0, 0002b3b0: 74 37 20 3d 20 30 2c 5c 6e 20 20 20 20 20 74 38 t7 = 0,\n t8 0002b3c0: 20 3d 20 30 2c 20 20 74 39 20 3d 20 30 2c 20 74 = 0, t9 = 0, t 0002b3d0: 31 30 20 3d 20 30 2c 20 74 31 31 20 3d 20 30 2c 10 = 0, t11 = 0, 0002b3e0: 20 74 31 32 20 3d 20 30 2c 20 74 31 33 20 3d 20 t12 = 0, t13 = 0002b3f0: 30 2c 20 74 31 34 20 3d 20 30 2c 20 74 31 35 20 0, t14 = 0, t15 0002b400: 3d 20 30 2c 5c 6e 20 20 20 20 74 31 36 20 3d 20 = 0,\n t16 = 0002b410: 30 2c 20 74 31 37 20 3d 20 30 2c 20 74 31 38 20 0, t17 = 0, t18 0002b420: 3d 20 30 2c 20 74 31 39 20 3d 20 30 2c 20 74 32 = 0, t19 = 0, t2 0002b430: 30 20 3d 20 30 2c 20 74 32 31 20 3d 20 30 2c 20 0 = 0, t21 = 0, 0002b440: 74 32 32 20 3d 20 30 2c 20 74 32 33 20 3d 20 30 t22 = 0, t23 = 0 0002b450: 2c 5c 6e 20 20 20 20 74 32 34 20 3d 20 30 2c 20 ,\n t24 = 0, 0002b460: 74 32 35 20 3d 20 30 2c 20 74 32 36 20 3d 20 30 t25 = 0, t26 = 0 0002b470: 2c 20 74 32 37 20 3d 20 30 2c 20 74 32 38 20 3d , t27 = 0, t28 = 0002b480: 20 30 2c 20 74 32 39 20 3d 20 30 2c 20 74 33 30 0, t29 = 0, t30 0002b490: 20 3d 20 30 2c 5c 6e 20 20 20 20 62 30 20 3d 20 = 0,\n b0 = 0002b4a0: 62 5b 30 5d 2c 5c 6e 20 20 20 20 62 31 20 3d 20 b[0],\n b1 = 0002b4b0: 62 5b 31 5d 2c 5c 6e 20 20 20 20 62 32 20 3d 20 b[1],\n b2 = 0002b4c0: 62 5b 32 5d 2c 5c 6e 20 20 20 20 62 33 20 3d 20 b[2],\n b3 = 0002b4d0: 62 5b 33 5d 2c 5c 6e 20 20 20 20 62 34 20 3d 20 b[3],\n b4 = 0002b4e0: 62 5b 34 5d 2c 5c 6e 20 20 20 20 62 35 20 3d 20 b[4],\n b5 = 0002b4f0: 62 5b 35 5d 2c 5c 6e 20 20 20 20 62 36 20 3d 20 b[5],\n b6 = 0002b500: 62 5b 36 5d 2c 5c 6e 20 20 20 20 62 37 20 3d 20 b[6],\n b7 = 0002b510: 62 5b 37 5d 2c 5c 6e 20 20 20 20 62 38 20 3d 20 b[7],\n b8 = 0002b520: 62 5b 38 5d 2c 5c 6e 20 20 20 20 62 39 20 3d 20 b[8],\n b9 = 0002b530: 62 5b 39 5d 2c 5c 6e 20 20 20 20 62 31 30 20 3d b[9],\n b10 = 0002b540: 20 62 5b 31 30 5d 2c 5c 6e 20 20 20 20 62 31 31 b[10],\n b11 0002b550: 20 3d 20 62 5b 31 31 5d 2c 5c 6e 20 20 20 20 62 = b[11],\n b 0002b560: 31 32 20 3d 20 62 5b 31 32 5d 2c 5c 6e 20 20 20 12 = b[12],\n 0002b570: 20 62 31 33 20 3d 20 62 5b 31 33 5d 2c 5c 6e 20 b13 = b[13],\n 0002b580: 20 20 20 62 31 34 20 3d 20 62 5b 31 34 5d 2c 5c b14 = b[14],\ 0002b590: 6e 20 20 20 20 62 31 35 20 3d 20 62 5b 31 35 5d n b15 = b[15] 0002b5a0: 3b 5c 6e 5c 6e 20 20 76 20 3d 20 61 5b 30 5d 3b ;\n\n v = a[0]; 0002b5b0: 5c 6e 20 20 74 30 20 2b 3d 20 76 20 2a 20 62 30 \n t0 += v * b0 0002b5c0: 3b 5c 6e 20 20 74 31 20 2b 3d 20 76 20 2a 20 62 ;\n t1 += v * b 0002b5d0: 31 3b 5c 6e 20 20 74 32 20 2b 3d 20 76 20 2a 20 1;\n t2 += v * 0002b5e0: 62 32 3b 5c 6e 20 20 74 33 20 2b 3d 20 76 20 2a b2;\n t3 += v * 0002b5f0: 20 62 33 3b 5c 6e 20 20 74 34 20 2b 3d 20 76 20 b3;\n t4 += v 0002b600: 2a 20 62 34 3b 5c 6e 20 20 74 35 20 2b 3d 20 76 * b4;\n t5 += v 0002b610: 20 2a 20 62 35 3b 5c 6e 20 20 74 36 20 2b 3d 20 * b5;\n t6 += 0002b620: 76 20 2a 20 62 36 3b 5c 6e 20 20 74 37 20 2b 3d v * b6;\n t7 += 0002b630: 20 76 20 2a 20 62 37 3b 5c 6e 20 20 74 38 20 2b v * b7;\n t8 + 0002b640: 3d 20 76 20 2a 20 62 38 3b 5c 6e 20 20 74 39 20 = v * b8;\n t9 0002b650: 2b 3d 20 76 20 2a 20 62 39 3b 5c 6e 20 20 74 31 += v * b9;\n t1 0002b660: 30 20 2b 3d 20 76 20 2a 20 62 31 30 3b 5c 6e 20 0 += v * b10;\n 0002b670: 20 74 31 31 20 2b 3d 20 76 20 2a 20 62 31 31 3b t11 += v * b11; 0002b680: 5c 6e 20 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 \n t12 += v * b 0002b690: 31 32 3b 5c 6e 20 20 74 31 33 20 2b 3d 20 76 20 12;\n t13 += v 0002b6a0: 2a 20 62 31 33 3b 5c 6e 20 20 74 31 34 20 2b 3d * b13;\n t14 += 0002b6b0: 20 76 20 2a 20 62 31 34 3b 5c 6e 20 20 74 31 35 v * b14;\n t15 0002b6c0: 20 2b 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 20 20 += v * b15;\n 0002b6d0: 76 20 3d 20 61 5b 31 5d 3b 5c 6e 20 20 74 31 20 v = a[1];\n t1 0002b6e0: 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e 20 20 74 32 += v * b0;\n t2 0002b6f0: 20 2b 3d 20 76 20 2a 20 62 31 3b 5c 6e 20 20 74 += v * b1;\n t 0002b700: 33 20 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e 20 20 3 += v * b2;\n 0002b710: 74 34 20 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 t4 += v * b3;\n 0002b720: 20 74 35 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e t5 += v * b4;\n 0002b730: 20 20 74 36 20 2b 3d 20 76 20 2a 20 62 35 3b 5c t6 += v * b5;\ 0002b740: 6e 20 20 74 37 20 2b 3d 20 76 20 2a 20 62 36 3b n t7 += v * b6; 0002b750: 5c 6e 20 20 74 38 20 2b 3d 20 76 20 2a 20 62 37 \n t8 += v * b7 0002b760: 3b 5c 6e 20 20 74 39 20 2b 3d 20 76 20 2a 20 62 ;\n t9 += v * b 0002b770: 38 3b 5c 6e 20 20 74 31 30 20 2b 3d 20 76 20 2a 8;\n t10 += v * 0002b780: 20 62 39 3b 5c 6e 20 20 74 31 31 20 2b 3d 20 76 b9;\n t11 += v 0002b790: 20 2a 20 62 31 30 3b 5c 6e 20 20 74 31 32 20 2b * b10;\n t12 + 0002b7a0: 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 74 31 = v * b11;\n t1 0002b7b0: 33 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c 6e 20 3 += v * b12;\n 0002b7c0: 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 31 33 3b t14 += v * b13; 0002b7d0: 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 20 62 \n t15 += v * b 0002b7e0: 31 34 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 20 14;\n t16 += v 0002b7f0: 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 61 5b * b15;\n v = a[ 0002b800: 32 5d 3b 5c 6e 20 20 74 32 20 2b 3d 20 76 20 2a 2];\n t2 += v * 0002b810: 20 62 30 3b 5c 6e 20 20 74 33 20 2b 3d 20 76 20 b0;\n t3 += v 0002b820: 2a 20 62 31 3b 5c 6e 20 20 74 34 20 2b 3d 20 76 * b1;\n t4 += v 0002b830: 20 2a 20 62 32 3b 5c 6e 20 20 74 35 20 2b 3d 20 * b2;\n t5 += 0002b840: 76 20 2a 20 62 33 3b 5c 6e 20 20 74 36 20 2b 3d v * b3;\n t6 += 0002b850: 20 76 20 2a 20 62 34 3b 5c 6e 20 20 74 37 20 2b v * b4;\n t7 + 0002b860: 3d 20 76 20 2a 20 62 35 3b 5c 6e 20 20 74 38 20 = v * b5;\n t8 0002b870: 2b 3d 20 76 20 2a 20 62 36 3b 5c 6e 20 20 74 39 += v * b6;\n t9 0002b880: 20 2b 3d 20 76 20 2a 20 62 37 3b 5c 6e 20 20 74 += v * b7;\n t 0002b890: 31 30 20 2b 3d 20 76 20 2a 20 62 38 3b 5c 6e 20 10 += v * b8;\n 0002b8a0: 20 74 31 31 20 2b 3d 20 76 20 2a 20 62 39 3b 5c t11 += v * b9;\ 0002b8b0: 6e 20 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 31 n t12 += v * b1 0002b8c0: 30 3b 5c 6e 20 20 74 31 33 20 2b 3d 20 76 20 2a 0;\n t13 += v * 0002b8d0: 20 62 31 31 3b 5c 6e 20 20 74 31 34 20 2b 3d 20 b11;\n t14 += 0002b8e0: 76 20 2a 20 62 31 32 3b 5c 6e 20 20 74 31 35 20 v * b12;\n t15 0002b8f0: 2b 3d 20 76 20 2a 20 62 31 33 3b 5c 6e 20 20 74 += v * b13;\n t 0002b900: 31 36 20 2b 3d 20 76 20 2a 20 62 31 34 3b 5c 6e 16 += v * b14;\n 0002b910: 20 20 74 31 37 20 2b 3d 20 76 20 2a 20 62 31 35 t17 += v * b15 0002b920: 3b 5c 6e 20 20 76 20 3d 20 61 5b 33 5d 3b 5c 6e ;\n v = a[3];\n 0002b930: 20 20 74 33 20 2b 3d 20 76 20 2a 20 62 30 3b 5c t3 += v * b0;\ 0002b940: 6e 20 20 74 34 20 2b 3d 20 76 20 2a 20 62 31 3b n t4 += v * b1; 0002b950: 5c 6e 20 20 74 35 20 2b 3d 20 76 20 2a 20 62 32 \n t5 += v * b2 0002b960: 3b 5c 6e 20 20 74 36 20 2b 3d 20 76 20 2a 20 62 ;\n t6 += v * b 0002b970: 33 3b 5c 6e 20 20 74 37 20 2b 3d 20 76 20 2a 20 3;\n t7 += v * 0002b980: 62 34 3b 5c 6e 20 20 74 38 20 2b 3d 20 76 20 2a b4;\n t8 += v * 0002b990: 20 62 35 3b 5c 6e 20 20 74 39 20 2b 3d 20 76 20 b5;\n t9 += v 0002b9a0: 2a 20 62 36 3b 5c 6e 20 20 74 31 30 20 2b 3d 20 * b6;\n t10 += 0002b9b0: 76 20 2a 20 62 37 3b 5c 6e 20 20 74 31 31 20 2b v * b7;\n t11 + 0002b9c0: 3d 20 76 20 2a 20 62 38 3b 5c 6e 20 20 74 31 32 = v * b8;\n t12 0002b9d0: 20 2b 3d 20 76 20 2a 20 62 39 3b 5c 6e 20 20 74 += v * b9;\n t 0002b9e0: 31 33 20 2b 3d 20 76 20 2a 20 62 31 30 3b 5c 6e 13 += v * b10;\n 0002b9f0: 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 31 31 t14 += v * b11 0002ba00: 3b 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 20 ;\n t15 += v * 0002ba10: 62 31 32 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 b12;\n t16 += v 0002ba20: 20 2a 20 62 31 33 3b 5c 6e 20 20 74 31 37 20 2b * b13;\n t17 + 0002ba30: 3d 20 76 20 2a 20 62 31 34 3b 5c 6e 20 20 74 31 = v * b14;\n t1 0002ba40: 38 20 2b 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 20 8 += v * b15;\n 0002ba50: 20 76 20 3d 20 61 5b 34 5d 3b 5c 6e 20 20 74 34 v = a[4];\n t4 0002ba60: 20 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e 20 20 74 += v * b0;\n t 0002ba70: 35 20 2b 3d 20 76 20 2a 20 62 31 3b 5c 6e 20 20 5 += v * b1;\n 0002ba80: 74 36 20 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e 20 t6 += v * b2;\n 0002ba90: 20 74 37 20 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e t7 += v * b3;\n 0002baa0: 20 20 74 38 20 2b 3d 20 76 20 2a 20 62 34 3b 5c t8 += v * b4;\ 0002bab0: 6e 20 20 74 39 20 2b 3d 20 76 20 2a 20 62 35 3b n t9 += v * b5; 0002bac0: 5c 6e 20 20 74 31 30 20 2b 3d 20 76 20 2a 20 62 \n t10 += v * b 0002bad0: 36 3b 5c 6e 20 20 74 31 31 20 2b 3d 20 76 20 2a 6;\n t11 += v * 0002bae0: 20 62 37 3b 5c 6e 20 20 74 31 32 20 2b 3d 20 76 b7;\n t12 += v 0002baf0: 20 2a 20 62 38 3b 5c 6e 20 20 74 31 33 20 2b 3d * b8;\n t13 += 0002bb00: 20 76 20 2a 20 62 39 3b 5c 6e 20 20 74 31 34 20 v * b9;\n t14 0002bb10: 2b 3d 20 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 += v * b10;\n t 0002bb20: 31 35 20 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 15 += v * b11;\n 0002bb30: 20 20 74 31 36 20 2b 3d 20 76 20 2a 20 62 31 32 t16 += v * b12 0002bb40: 3b 5c 6e 20 20 74 31 37 20 2b 3d 20 76 20 2a 20 ;\n t17 += v * 0002bb50: 62 31 33 3b 5c 6e 20 20 74 31 38 20 2b 3d 20 76 b13;\n t18 += v 0002bb60: 20 2a 20 62 31 34 3b 5c 6e 20 20 74 31 39 20 2b * b14;\n t19 + 0002bb70: 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 = v * b15;\n v 0002bb80: 3d 20 61 5b 35 5d 3b 5c 6e 20 20 74 35 20 2b 3d = a[5];\n t5 += 0002bb90: 20 76 20 2a 20 62 30 3b 5c 6e 20 20 74 36 20 2b v * b0;\n t6 + 0002bba0: 3d 20 76 20 2a 20 62 31 3b 5c 6e 20 20 74 37 20 = v * b1;\n t7 0002bbb0: 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e 20 20 74 38 += v * b2;\n t8 0002bbc0: 20 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 74 += v * b3;\n t 0002bbd0: 39 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e 20 20 9 += v * b4;\n 0002bbe0: 74 31 30 20 2b 3d 20 76 20 2a 20 62 35 3b 5c 6e t10 += v * b5;\n 0002bbf0: 20 20 74 31 31 20 2b 3d 20 76 20 2a 20 62 36 3b t11 += v * b6; 0002bc00: 5c 6e 20 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 \n t12 += v * b 0002bc10: 37 3b 5c 6e 20 20 74 31 33 20 2b 3d 20 76 20 2a 7;\n t13 += v * 0002bc20: 20 62 38 3b 5c 6e 20 20 74 31 34 20 2b 3d 20 76 b8;\n t14 += v 0002bc30: 20 2a 20 62 39 3b 5c 6e 20 20 74 31 35 20 2b 3d * b9;\n t15 += 0002bc40: 20 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 31 36 v * b10;\n t16 0002bc50: 20 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 += v * b11;\n 0002bc60: 74 31 37 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c t17 += v * b12;\ 0002bc70: 6e 20 20 74 31 38 20 2b 3d 20 76 20 2a 20 62 31 n t18 += v * b1 0002bc80: 33 3b 5c 6e 20 20 74 31 39 20 2b 3d 20 76 20 2a 3;\n t19 += v * 0002bc90: 20 62 31 34 3b 5c 6e 20 20 74 32 30 20 2b 3d 20 b14;\n t20 += 0002bca0: 76 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 v * b15;\n v = 0002bcb0: 61 5b 36 5d 3b 5c 6e 20 20 74 36 20 2b 3d 20 76 a[6];\n t6 += v 0002bcc0: 20 2a 20 62 30 3b 5c 6e 20 20 74 37 20 2b 3d 20 * b0;\n t7 += 0002bcd0: 76 20 2a 20 62 31 3b 5c 6e 20 20 74 38 20 2b 3d v * b1;\n t8 += 0002bce0: 20 76 20 2a 20 62 32 3b 5c 6e 20 20 74 39 20 2b v * b2;\n t9 + 0002bcf0: 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 74 31 30 = v * b3;\n t10 0002bd00: 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e 20 20 74 += v * b4;\n t 0002bd10: 31 31 20 2b 3d 20 76 20 2a 20 62 35 3b 5c 6e 20 11 += v * b5;\n 0002bd20: 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 36 3b 5c t12 += v * b6;\ 0002bd30: 6e 20 20 74 31 33 20 2b 3d 20 76 20 2a 20 62 37 n t13 += v * b7 0002bd40: 3b 5c 6e 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 ;\n t14 += v * 0002bd50: 62 38 3b 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 b8;\n t15 += v 0002bd60: 2a 20 62 39 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 * b9;\n t16 += 0002bd70: 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 31 37 20 v * b10;\n t17 0002bd80: 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 74 += v * b11;\n t 0002bd90: 31 38 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c 6e 18 += v * b12;\n 0002bda0: 20 20 74 31 39 20 2b 3d 20 76 20 2a 20 62 31 33 t19 += v * b13 0002bdb0: 3b 5c 6e 20 20 74 32 30 20 2b 3d 20 76 20 2a 20 ;\n t20 += v * 0002bdc0: 62 31 34 3b 5c 6e 20 20 74 32 31 20 2b 3d 20 76 b14;\n t21 += v 0002bdd0: 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 61 * b15;\n v = a 0002bde0: 5b 37 5d 3b 5c 6e 20 20 74 37 20 2b 3d 20 76 20 [7];\n t7 += v 0002bdf0: 2a 20 62 30 3b 5c 6e 20 20 74 38 20 2b 3d 20 76 * b0;\n t8 += v 0002be00: 20 2a 20 62 31 3b 5c 6e 20 20 74 39 20 2b 3d 20 * b1;\n t9 += 0002be10: 76 20 2a 20 62 32 3b 5c 6e 20 20 74 31 30 20 2b v * b2;\n t10 + 0002be20: 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 74 31 31 = v * b3;\n t11 0002be30: 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e 20 20 74 += v * b4;\n t 0002be40: 31 32 20 2b 3d 20 76 20 2a 20 62 35 3b 5c 6e 20 12 += v * b5;\n 0002be50: 20 74 31 33 20 2b 3d 20 76 20 2a 20 62 36 3b 5c t13 += v * b6;\ 0002be60: 6e 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 37 n t14 += v * b7 0002be70: 3b 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 20 ;\n t15 += v * 0002be80: 62 38 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 20 b8;\n t16 += v 0002be90: 2a 20 62 39 3b 5c 6e 20 20 74 31 37 20 2b 3d 20 * b9;\n t17 += 0002bea0: 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 31 38 20 v * b10;\n t18 0002beb0: 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 74 += v * b11;\n t 0002bec0: 31 39 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c 6e 19 += v * b12;\n 0002bed0: 20 20 74 32 30 20 2b 3d 20 76 20 2a 20 62 31 33 t20 += v * b13 0002bee0: 3b 5c 6e 20 20 74 32 31 20 2b 3d 20 76 20 2a 20 ;\n t21 += v * 0002bef0: 62 31 34 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 b14;\n t22 += v 0002bf00: 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 61 * b15;\n v = a 0002bf10: 5b 38 5d 3b 5c 6e 20 20 74 38 20 2b 3d 20 76 20 [8];\n t8 += v 0002bf20: 2a 20 62 30 3b 5c 6e 20 20 74 39 20 2b 3d 20 76 * b0;\n t9 += v 0002bf30: 20 2a 20 62 31 3b 5c 6e 20 20 74 31 30 20 2b 3d * b1;\n t10 += 0002bf40: 20 76 20 2a 20 62 32 3b 5c 6e 20 20 74 31 31 20 v * b2;\n t11 0002bf50: 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 74 31 += v * b3;\n t1 0002bf60: 32 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e 20 20 2 += v * b4;\n 0002bf70: 74 31 33 20 2b 3d 20 76 20 2a 20 62 35 3b 5c 6e t13 += v * b5;\n 0002bf80: 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 36 3b t14 += v * b6; 0002bf90: 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 20 62 \n t15 += v * b 0002bfa0: 37 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 20 2a 7;\n t16 += v * 0002bfb0: 20 62 38 3b 5c 6e 20 20 74 31 37 20 2b 3d 20 76 b8;\n t17 += v 0002bfc0: 20 2a 20 62 39 3b 5c 6e 20 20 74 31 38 20 2b 3d * b9;\n t18 += 0002bfd0: 20 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 31 39 v * b10;\n t19 0002bfe0: 20 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 += v * b11;\n 0002bff0: 74 32 30 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c t20 += v * b12;\ 0002c000: 6e 20 20 74 32 31 20 2b 3d 20 76 20 2a 20 62 31 n t21 += v * b1 0002c010: 33 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 20 2a 3;\n t22 += v * 0002c020: 20 62 31 34 3b 5c 6e 20 20 74 32 33 20 2b 3d 20 b14;\n t23 += 0002c030: 76 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 v * b15;\n v = 0002c040: 61 5b 39 5d 3b 5c 6e 20 20 74 39 20 2b 3d 20 76 a[9];\n t9 += v 0002c050: 20 2a 20 62 30 3b 5c 6e 20 20 74 31 30 20 2b 3d * b0;\n t10 += 0002c060: 20 76 20 2a 20 62 31 3b 5c 6e 20 20 74 31 31 20 v * b1;\n t11 0002c070: 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e 20 20 74 31 += v * b2;\n t1 0002c080: 32 20 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 2 += v * b3;\n 0002c090: 74 31 33 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e t13 += v * b4;\n 0002c0a0: 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 35 3b t14 += v * b5; 0002c0b0: 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 20 62 \n t15 += v * b 0002c0c0: 36 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 20 2a 6;\n t16 += v * 0002c0d0: 20 62 37 3b 5c 6e 20 20 74 31 37 20 2b 3d 20 76 b7;\n t17 += v 0002c0e0: 20 2a 20 62 38 3b 5c 6e 20 20 74 31 38 20 2b 3d * b8;\n t18 += 0002c0f0: 20 76 20 2a 20 62 39 3b 5c 6e 20 20 74 31 39 20 v * b9;\n t19 0002c100: 2b 3d 20 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 += v * b10;\n t 0002c110: 32 30 20 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 += v * b11;\n 0002c120: 20 20 74 32 31 20 2b 3d 20 76 20 2a 20 62 31 32 t21 += v * b12 0002c130: 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 20 2a 20 ;\n t22 += v * 0002c140: 62 31 33 3b 5c 6e 20 20 74 32 33 20 2b 3d 20 76 b13;\n t23 += v 0002c150: 20 2a 20 62 31 34 3b 5c 6e 20 20 74 32 34 20 2b * b14;\n t24 + 0002c160: 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 = v * b15;\n v 0002c170: 3d 20 61 5b 31 30 5d 3b 5c 6e 20 20 74 31 30 20 = a[10];\n t10 0002c180: 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e 20 20 74 31 += v * b0;\n t1 0002c190: 31 20 2b 3d 20 76 20 2a 20 62 31 3b 5c 6e 20 20 1 += v * b1;\n 0002c1a0: 74 31 32 20 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e t12 += v * b2;\n 0002c1b0: 20 20 74 31 33 20 2b 3d 20 76 20 2a 20 62 33 3b t13 += v * b3; 0002c1c0: 5c 6e 20 20 74 31 34 20 2b 3d 20 76 20 2a 20 62 \n t14 += v * b 0002c1d0: 34 3b 5c 6e 20 20 74 31 35 20 2b 3d 20 76 20 2a 4;\n t15 += v * 0002c1e0: 20 62 35 3b 5c 6e 20 20 74 31 36 20 2b 3d 20 76 b5;\n t16 += v 0002c1f0: 20 2a 20 62 36 3b 5c 6e 20 20 74 31 37 20 2b 3d * b6;\n t17 += 0002c200: 20 76 20 2a 20 62 37 3b 5c 6e 20 20 74 31 38 20 v * b7;\n t18 0002c210: 2b 3d 20 76 20 2a 20 62 38 3b 5c 6e 20 20 74 31 += v * b8;\n t1 0002c220: 39 20 2b 3d 20 76 20 2a 20 62 39 3b 5c 6e 20 20 9 += v * b9;\n 0002c230: 74 32 30 20 2b 3d 20 76 20 2a 20 62 31 30 3b 5c t20 += v * b10;\ 0002c240: 6e 20 20 74 32 31 20 2b 3d 20 76 20 2a 20 62 31 n t21 += v * b1 0002c250: 31 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 20 2a 1;\n t22 += v * 0002c260: 20 62 31 32 3b 5c 6e 20 20 74 32 33 20 2b 3d 20 b12;\n t23 += 0002c270: 76 20 2a 20 62 31 33 3b 5c 6e 20 20 74 32 34 20 v * b13;\n t24 0002c280: 2b 3d 20 76 20 2a 20 62 31 34 3b 5c 6e 20 20 74 += v * b14;\n t 0002c290: 32 35 20 2b 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 25 += v * b15;\n 0002c2a0: 20 20 76 20 3d 20 61 5b 31 31 5d 3b 5c 6e 20 20 v = a[11];\n 0002c2b0: 74 31 31 20 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e t11 += v * b0;\n 0002c2c0: 20 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 31 3b t12 += v * b1; 0002c2d0: 5c 6e 20 20 74 31 33 20 2b 3d 20 76 20 2a 20 62 \n t13 += v * b 0002c2e0: 32 3b 5c 6e 20 20 74 31 34 20 2b 3d 20 76 20 2a 2;\n t14 += v * 0002c2f0: 20 62 33 3b 5c 6e 20 20 74 31 35 20 2b 3d 20 76 b3;\n t15 += v 0002c300: 20 2a 20 62 34 3b 5c 6e 20 20 74 31 36 20 2b 3d * b4;\n t16 += 0002c310: 20 76 20 2a 20 62 35 3b 5c 6e 20 20 74 31 37 20 v * b5;\n t17 0002c320: 2b 3d 20 76 20 2a 20 62 36 3b 5c 6e 20 20 74 31 += v * b6;\n t1 0002c330: 38 20 2b 3d 20 76 20 2a 20 62 37 3b 5c 6e 20 20 8 += v * b7;\n 0002c340: 74 31 39 20 2b 3d 20 76 20 2a 20 62 38 3b 5c 6e t19 += v * b8;\n 0002c350: 20 20 74 32 30 20 2b 3d 20 76 20 2a 20 62 39 3b t20 += v * b9; 0002c360: 5c 6e 20 20 74 32 31 20 2b 3d 20 76 20 2a 20 62 \n t21 += v * b 0002c370: 31 30 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 20 10;\n t22 += v 0002c380: 2a 20 62 31 31 3b 5c 6e 20 20 74 32 33 20 2b 3d * b11;\n t23 += 0002c390: 20 76 20 2a 20 62 31 32 3b 5c 6e 20 20 74 32 34 v * b12;\n t24 0002c3a0: 20 2b 3d 20 76 20 2a 20 62 31 33 3b 5c 6e 20 20 += v * b13;\n 0002c3b0: 74 32 35 20 2b 3d 20 76 20 2a 20 62 31 34 3b 5c t25 += v * b14;\ 0002c3c0: 6e 20 20 74 32 36 20 2b 3d 20 76 20 2a 20 62 31 n t26 += v * b1 0002c3d0: 35 3b 5c 6e 20 20 76 20 3d 20 61 5b 31 32 5d 3b 5;\n v = a[12]; 0002c3e0: 5c 6e 20 20 74 31 32 20 2b 3d 20 76 20 2a 20 62 \n t12 += v * b 0002c3f0: 30 3b 5c 6e 20 20 74 31 33 20 2b 3d 20 76 20 2a 0;\n t13 += v * 0002c400: 20 62 31 3b 5c 6e 20 20 74 31 34 20 2b 3d 20 76 b1;\n t14 += v 0002c410: 20 2a 20 62 32 3b 5c 6e 20 20 74 31 35 20 2b 3d * b2;\n t15 += 0002c420: 20 76 20 2a 20 62 33 3b 5c 6e 20 20 74 31 36 20 v * b3;\n t16 0002c430: 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e 20 20 74 31 += v * b4;\n t1 0002c440: 37 20 2b 3d 20 76 20 2a 20 62 35 3b 5c 6e 20 20 7 += v * b5;\n 0002c450: 74 31 38 20 2b 3d 20 76 20 2a 20 62 36 3b 5c 6e t18 += v * b6;\n 0002c460: 20 20 74 31 39 20 2b 3d 20 76 20 2a 20 62 37 3b t19 += v * b7; 0002c470: 5c 6e 20 20 74 32 30 20 2b 3d 20 76 20 2a 20 62 \n t20 += v * b 0002c480: 38 3b 5c 6e 20 20 74 32 31 20 2b 3d 20 76 20 2a 8;\n t21 += v * 0002c490: 20 62 39 3b 5c 6e 20 20 74 32 32 20 2b 3d 20 76 b9;\n t22 += v 0002c4a0: 20 2a 20 62 31 30 3b 5c 6e 20 20 74 32 33 20 2b * b10;\n t23 + 0002c4b0: 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 20 20 74 32 = v * b11;\n t2 0002c4c0: 34 20 2b 3d 20 76 20 2a 20 62 31 32 3b 5c 6e 20 4 += v * b12;\n 0002c4d0: 20 74 32 35 20 2b 3d 20 76 20 2a 20 62 31 33 3b t25 += v * b13; 0002c4e0: 5c 6e 20 20 74 32 36 20 2b 3d 20 76 20 2a 20 62 \n t26 += v * b 0002c4f0: 31 34 3b 5c 6e 20 20 74 32 37 20 2b 3d 20 76 20 14;\n t27 += v 0002c500: 2a 20 62 31 35 3b 5c 6e 20 20 76 20 3d 20 61 5b * b15;\n v = a[ 0002c510: 31 33 5d 3b 5c 6e 20 20 74 31 33 20 2b 3d 20 76 13];\n t13 += v 0002c520: 20 2a 20 62 30 3b 5c 6e 20 20 74 31 34 20 2b 3d * b0;\n t14 += 0002c530: 20 76 20 2a 20 62 31 3b 5c 6e 20 20 74 31 35 20 v * b1;\n t15 0002c540: 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e 20 20 74 31 += v * b2;\n t1 0002c550: 36 20 2b 3d 20 76 20 2a 20 62 33 3b 5c 6e 20 20 6 += v * b3;\n 0002c560: 74 31 37 20 2b 3d 20 76 20 2a 20 62 34 3b 5c 6e t17 += v * b4;\n 0002c570: 20 20 74 31 38 20 2b 3d 20 76 20 2a 20 62 35 3b t18 += v * b5; 0002c580: 5c 6e 20 20 74 31 39 20 2b 3d 20 76 20 2a 20 62 \n t19 += v * b 0002c590: 36 3b 5c 6e 20 20 74 32 30 20 2b 3d 20 76 20 2a 6;\n t20 += v * 0002c5a0: 20 62 37 3b 5c 6e 20 20 74 32 31 20 2b 3d 20 76 b7;\n t21 += v 0002c5b0: 20 2a 20 62 38 3b 5c 6e 20 20 74 32 32 20 2b 3d * b8;\n t22 += 0002c5c0: 20 76 20 2a 20 62 39 3b 5c 6e 20 20 74 32 33 20 v * b9;\n t23 0002c5d0: 2b 3d 20 76 20 2a 20 62 31 30 3b 5c 6e 20 20 74 += v * b10;\n t 0002c5e0: 32 34 20 2b 3d 20 76 20 2a 20 62 31 31 3b 5c 6e 24 += v * b11;\n 0002c5f0: 20 20 74 32 35 20 2b 3d 20 76 20 2a 20 62 31 32 t25 += v * b12 0002c600: 3b 5c 6e 20 20 74 32 36 20 2b 3d 20 76 20 2a 20 ;\n t26 += v * 0002c610: 62 31 33 3b 5c 6e 20 20 74 32 37 20 2b 3d 20 76 b13;\n t27 += v 0002c620: 20 2a 20 62 31 34 3b 5c 6e 20 20 74 32 38 20 2b * b14;\n t28 + 0002c630: 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 20 20 76 20 = v * b15;\n v 0002c640: 3d 20 61 5b 31 34 5d 3b 5c 6e 20 20 74 31 34 20 = a[14];\n t14 0002c650: 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e 20 20 74 31 += v * b0;\n t1 0002c660: 35 20 2b 3d 20 76 20 2a 20 62 31 3b 5c 6e 20 20 5 += v * b1;\n 0002c670: 74 31 36 20 2b 3d 20 76 20 2a 20 62 32 3b 5c 6e t16 += v * b2;\n 0002c680: 20 20 74 31 37 20 2b 3d 20 76 20 2a 20 62 33 3b t17 += v * b3; 0002c690: 5c 6e 20 20 74 31 38 20 2b 3d 20 76 20 2a 20 62 \n t18 += v * b 0002c6a0: 34 3b 5c 6e 20 20 74 31 39 20 2b 3d 20 76 20 2a 4;\n t19 += v * 0002c6b0: 20 62 35 3b 5c 6e 20 20 74 32 30 20 2b 3d 20 76 b5;\n t20 += v 0002c6c0: 20 2a 20 62 36 3b 5c 6e 20 20 74 32 31 20 2b 3d * b6;\n t21 += 0002c6d0: 20 76 20 2a 20 62 37 3b 5c 6e 20 20 74 32 32 20 v * b7;\n t22 0002c6e0: 2b 3d 20 76 20 2a 20 62 38 3b 5c 6e 20 20 74 32 += v * b8;\n t2 0002c6f0: 33 20 2b 3d 20 76 20 2a 20 62 39 3b 5c 6e 20 20 3 += v * b9;\n 0002c700: 74 32 34 20 2b 3d 20 76 20 2a 20 62 31 30 3b 5c t24 += v * b10;\ 0002c710: 6e 20 20 74 32 35 20 2b 3d 20 76 20 2a 20 62 31 n t25 += v * b1 0002c720: 31 3b 5c 6e 20 20 74 32 36 20 2b 3d 20 76 20 2a 1;\n t26 += v * 0002c730: 20 62 31 32 3b 5c 6e 20 20 74 32 37 20 2b 3d 20 b12;\n t27 += 0002c740: 76 20 2a 20 62 31 33 3b 5c 6e 20 20 74 32 38 20 v * b13;\n t28 0002c750: 2b 3d 20 76 20 2a 20 62 31 34 3b 5c 6e 20 20 74 += v * b14;\n t 0002c760: 32 39 20 2b 3d 20 76 20 2a 20 62 31 35 3b 5c 6e 29 += v * b15;\n 0002c770: 20 20 76 20 3d 20 61 5b 31 35 5d 3b 5c 6e 20 20 v = a[15];\n 0002c780: 74 31 35 20 2b 3d 20 76 20 2a 20 62 30 3b 5c 6e t15 += v * b0;\n 0002c790: 20 20 74 31 36 20 2b 3d 20 76 20 2a 20 62 31 3b t16 += v * b1; 0002c7a0: 5c 6e 20 20 74 31 37 20 2b 3d 20 76 20 2a 20 62 \n t17 += v * b 0002c7b0: 32 3b 5c 6e 20 20 74 31 38 20 2b 3d 20 76 20 2a 2;\n t18 += v * 0002c7c0: 20 62 33 3b 5c 6e 20 20 74 31 39 20 2b 3d 20 76 b3;\n t19 += v 0002c7d0: 20 2a 20 62 34 3b 5c 6e 20 20 74 32 30 20 2b 3d * b4;\n t20 += 0002c7e0: 20 76 20 2a 20 62 35 3b 5c 6e 20 20 74 32 31 20 v * b5;\n t21 0002c7f0: 2b 3d 20 76 20 2a 20 62 36 3b 5c 6e 20 20 74 32 += v * b6;\n t2 0002c800: 32 20 2b 3d 20 76 20 2a 20 62 37 3b 5c 6e 20 20 2 += v * b7;\n 0002c810: 74 32 33 20 2b 3d 20 76 20 2a 20 62 38 3b 5c 6e t23 += v * b8;\n 0002c820: 20 20 74 32 34 20 2b 3d 20 76 20 2a 20 62 39 3b t24 += v * b9; 0002c830: 5c 6e 20 20 74 32 35 20 2b 3d 20 76 20 2a 20 62 \n t25 += v * b 0002c840: 31 30 3b 5c 6e 20 20 74 32 36 20 2b 3d 20 76 20 10;\n t26 += v 0002c850: 2a 20 62 31 31 3b 5c 6e 20 20 74 32 37 20 2b 3d * b11;\n t27 += 0002c860: 20 76 20 2a 20 62 31 32 3b 5c 6e 20 20 74 32 38 v * b12;\n t28 0002c870: 20 2b 3d 20 76 20 2a 20 62 31 33 3b 5c 6e 20 20 += v * b13;\n 0002c880: 74 32 39 20 2b 3d 20 76 20 2a 20 62 31 34 3b 5c t29 += v * b14;\ 0002c890: 6e 20 20 74 33 30 20 2b 3d 20 76 20 2a 20 62 31 n t30 += v * b1 0002c8a0: 35 3b 5c 6e 5c 6e 20 20 74 30 20 20 2b 3d 20 33 5;\n\n t0 += 3 0002c8b0: 38 20 2a 20 74 31 36 3b 5c 6e 20 20 74 31 20 20 8 * t16;\n t1 0002c8c0: 2b 3d 20 33 38 20 2a 20 74 31 37 3b 5c 6e 20 20 += 38 * t17;\n 0002c8d0: 74 32 20 20 2b 3d 20 33 38 20 2a 20 74 31 38 3b t2 += 38 * t18; 0002c8e0: 5c 6e 20 20 74 33 20 20 2b 3d 20 33 38 20 2a 20 \n t3 += 38 * 0002c8f0: 74 31 39 3b 5c 6e 20 20 74 34 20 20 2b 3d 20 33 t19;\n t4 += 3 0002c900: 38 20 2a 20 74 32 30 3b 5c 6e 20 20 74 35 20 20 8 * t20;\n t5 0002c910: 2b 3d 20 33 38 20 2a 20 74 32 31 3b 5c 6e 20 20 += 38 * t21;\n 0002c920: 74 36 20 20 2b 3d 20 33 38 20 2a 20 74 32 32 3b t6 += 38 * t22; 0002c930: 5c 6e 20 20 74 37 20 20 2b 3d 20 33 38 20 2a 20 \n t7 += 38 * 0002c940: 74 32 33 3b 5c 6e 20 20 74 38 20 20 2b 3d 20 33 t23;\n t8 += 3 0002c950: 38 20 2a 20 74 32 34 3b 5c 6e 20 20 74 39 20 20 8 * t24;\n t9 0002c960: 2b 3d 20 33 38 20 2a 20 74 32 35 3b 5c 6e 20 20 += 38 * t25;\n 0002c970: 74 31 30 20 2b 3d 20 33 38 20 2a 20 74 32 36 3b t10 += 38 * t26; 0002c980: 5c 6e 20 20 74 31 31 20 2b 3d 20 33 38 20 2a 20 \n t11 += 38 * 0002c990: 74 32 37 3b 5c 6e 20 20 74 31 32 20 2b 3d 20 33 t27;\n t12 += 3 0002c9a0: 38 20 2a 20 74 32 38 3b 5c 6e 20 20 74 31 33 20 8 * t28;\n t13 0002c9b0: 2b 3d 20 33 38 20 2a 20 74 32 39 3b 5c 6e 20 20 += 38 * t29;\n 0002c9c0: 74 31 34 20 2b 3d 20 33 38 20 2a 20 74 33 30 3b t14 += 38 * t30; 0002c9d0: 5c 6e 20 20 2f 2f 20 74 31 35 20 6c 65 66 74 20 \n // t15 left 0002c9e0: 61 73 20 69 73 5c 6e 5c 6e 20 20 2f 2f 20 66 69 as is\n\n // fi 0002c9f0: 72 73 74 20 63 61 72 5c 6e 20 20 63 20 3d 20 31 rst car\n c = 1 0002ca00: 3b 5c 6e 20 20 76 20 3d 20 20 74 30 20 2b 20 63 ;\n v = t0 + c 0002ca10: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002ca20: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002ca30: 33 36 29 3b 20 20 74 30 20 3d 20 76 20 2d 20 63 36); t0 = v - c 0002ca40: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002ca50: 20 20 74 31 20 2b 20 63 20 2b 20 36 35 35 33 35 t1 + c + 65535 0002ca60: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002ca70: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 31 (v / 65536); t1 0002ca80: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002ca90: 3b 5c 6e 20 20 76 20 3d 20 20 74 32 20 2b 20 63 ;\n v = t2 + c 0002caa0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cab0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cac0: 33 36 29 3b 20 20 74 32 20 3d 20 76 20 2d 20 63 36); t2 = v - c 0002cad0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cae0: 20 20 74 33 20 2b 20 63 20 2b 20 36 35 35 33 35 t3 + c + 65535 0002caf0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cb00: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 33 (v / 65536); t3 0002cb10: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cb20: 3b 5c 6e 20 20 76 20 3d 20 20 74 34 20 2b 20 63 ;\n v = t4 + c 0002cb30: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cb40: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cb50: 33 36 29 3b 20 20 74 34 20 3d 20 76 20 2d 20 63 36); t4 = v - c 0002cb60: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cb70: 20 20 74 35 20 2b 20 63 20 2b 20 36 35 35 33 35 t5 + c + 65535 0002cb80: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cb90: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 35 (v / 65536); t5 0002cba0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cbb0: 3b 5c 6e 20 20 76 20 3d 20 20 74 36 20 2b 20 63 ;\n v = t6 + c 0002cbc0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cbd0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cbe0: 33 36 29 3b 20 20 74 36 20 3d 20 76 20 2d 20 63 36); t6 = v - c 0002cbf0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cc00: 20 20 74 37 20 2b 20 63 20 2b 20 36 35 35 33 35 t7 + c + 65535 0002cc10: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cc20: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 37 (v / 65536); t7 0002cc30: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cc40: 3b 5c 6e 20 20 76 20 3d 20 20 74 38 20 2b 20 63 ;\n v = t8 + c 0002cc50: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cc60: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cc70: 33 36 29 3b 20 20 74 38 20 3d 20 76 20 2d 20 63 36); t8 = v - c 0002cc80: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cc90: 20 20 74 39 20 2b 20 63 20 2b 20 36 35 35 33 35 t9 + c + 65535 0002cca0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002ccb0: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 39 (v / 65536); t9 0002ccc0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002ccd0: 3b 5c 6e 20 20 76 20 3d 20 74 31 30 20 2b 20 63 ;\n v = t10 + c 0002cce0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002ccf0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cd00: 33 36 29 3b 20 74 31 30 20 3d 20 76 20 2d 20 63 36); t10 = v - c 0002cd10: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cd20: 20 74 31 31 20 2b 20 63 20 2b 20 36 35 35 33 35 t11 + c + 65535 0002cd30: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cd40: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 31 (v / 65536); t11 0002cd50: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cd60: 3b 5c 6e 20 20 76 20 3d 20 74 31 32 20 2b 20 63 ;\n v = t12 + c 0002cd70: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cd80: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cd90: 33 36 29 3b 20 74 31 32 20 3d 20 76 20 2d 20 63 36); t12 = v - c 0002cda0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cdb0: 20 74 31 33 20 2b 20 63 20 2b 20 36 35 35 33 35 t13 + c + 65535 0002cdc0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cdd0: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 33 (v / 65536); t13 0002cde0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cdf0: 3b 5c 6e 20 20 76 20 3d 20 74 31 34 20 2b 20 63 ;\n v = t14 + c 0002ce00: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002ce10: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002ce20: 33 36 29 3b 20 74 31 34 20 3d 20 76 20 2d 20 63 36); t14 = v - c 0002ce30: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002ce40: 20 74 31 35 20 2b 20 63 20 2b 20 36 35 35 33 35 t15 + c + 65535 0002ce50: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002ce60: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 35 (v / 65536); t15 0002ce70: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002ce80: 3b 5c 6e 20 20 74 30 20 2b 3d 20 63 2d 31 20 2b ;\n t0 += c-1 + 0002ce90: 20 33 37 20 2a 20 28 63 2d 31 29 3b 5c 6e 5c 6e 37 * (c-1);\n\n 0002cea0: 20 20 2f 2f 20 73 65 63 6f 6e 64 20 63 61 72 5c // second car\ 0002ceb0: 6e 20 20 63 20 3d 20 31 3b 5c 6e 20 20 76 20 3d n c = 1;\n v = 0002cec0: 20 20 74 30 20 2b 20 63 20 2b 20 36 35 35 33 35 t0 + c + 65535 0002ced0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cee0: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 30 (v / 65536); t0 0002cef0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cf00: 3b 5c 6e 20 20 76 20 3d 20 20 74 31 20 2b 20 63 ;\n v = t1 + c 0002cf10: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cf20: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cf30: 33 36 29 3b 20 20 74 31 20 3d 20 76 20 2d 20 63 36); t1 = v - c 0002cf40: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cf50: 20 20 74 32 20 2b 20 63 20 2b 20 36 35 35 33 35 t2 + c + 65535 0002cf60: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002cf70: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 32 (v / 65536); t2 0002cf80: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002cf90: 3b 5c 6e 20 20 76 20 3d 20 20 74 33 20 2b 20 63 ;\n v = t3 + c 0002cfa0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002cfb0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002cfc0: 33 36 29 3b 20 20 74 33 20 3d 20 76 20 2d 20 63 36); t3 = v - c 0002cfd0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002cfe0: 20 20 74 34 20 2b 20 63 20 2b 20 36 35 35 33 35 t4 + c + 65535 0002cff0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d000: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 34 (v / 65536); t4 0002d010: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d020: 3b 5c 6e 20 20 76 20 3d 20 20 74 35 20 2b 20 63 ;\n v = t5 + c 0002d030: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d040: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d050: 33 36 29 3b 20 20 74 35 20 3d 20 76 20 2d 20 63 36); t5 = v - c 0002d060: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002d070: 20 20 74 36 20 2b 20 63 20 2b 20 36 35 35 33 35 t6 + c + 65535 0002d080: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d090: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 36 (v / 65536); t6 0002d0a0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d0b0: 3b 5c 6e 20 20 76 20 3d 20 20 74 37 20 2b 20 63 ;\n v = t7 + c 0002d0c0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d0d0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d0e0: 33 36 29 3b 20 20 74 37 20 3d 20 76 20 2d 20 63 36); t7 = v - c 0002d0f0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002d100: 20 20 74 38 20 2b 20 63 20 2b 20 36 35 35 33 35 t8 + c + 65535 0002d110: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d120: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 20 74 38 (v / 65536); t8 0002d130: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d140: 3b 5c 6e 20 20 76 20 3d 20 20 74 39 20 2b 20 63 ;\n v = t9 + c 0002d150: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d160: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d170: 33 36 29 3b 20 20 74 39 20 3d 20 76 20 2d 20 63 36); t9 = v - c 0002d180: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002d190: 20 74 31 30 20 2b 20 63 20 2b 20 36 35 35 33 35 t10 + c + 65535 0002d1a0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d1b0: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 30 (v / 65536); t10 0002d1c0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d1d0: 3b 5c 6e 20 20 76 20 3d 20 74 31 31 20 2b 20 63 ;\n v = t11 + c 0002d1e0: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d1f0: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d200: 33 36 29 3b 20 74 31 31 20 3d 20 76 20 2d 20 63 36); t11 = v - c 0002d210: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002d220: 20 74 31 32 20 2b 20 63 20 2b 20 36 35 35 33 35 t12 + c + 65535 0002d230: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d240: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 32 (v / 65536); t12 0002d250: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d260: 3b 5c 6e 20 20 76 20 3d 20 74 31 33 20 2b 20 63 ;\n v = t13 + c 0002d270: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d280: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d290: 33 36 29 3b 20 74 31 33 20 3d 20 76 20 2d 20 63 36); t13 = v - c 0002d2a0: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 76 20 3d * 65536;\n v = 0002d2b0: 20 74 31 34 20 2b 20 63 20 2b 20 36 35 35 33 35 t14 + c + 65535 0002d2c0: 3b 20 63 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 ; c = Math.floor 0002d2d0: 28 76 20 2f 20 36 35 35 33 36 29 3b 20 74 31 34 (v / 65536); t14 0002d2e0: 20 3d 20 76 20 2d 20 63 20 2a 20 36 35 35 33 36 = v - c * 65536 0002d2f0: 3b 5c 6e 20 20 76 20 3d 20 74 31 35 20 2b 20 63 ;\n v = t15 + c 0002d300: 20 2b 20 36 35 35 33 35 3b 20 63 20 3d 20 4d 61 + 65535; c = Ma 0002d310: 74 68 2e 66 6c 6f 6f 72 28 76 20 2f 20 36 35 35 th.floor(v / 655 0002d320: 33 36 29 3b 20 74 31 35 20 3d 20 76 20 2d 20 63 36); t15 = v - c 0002d330: 20 2a 20 36 35 35 33 36 3b 5c 6e 20 20 74 30 20 * 65536;\n t0 0002d340: 2b 3d 20 63 2d 31 20 2b 20 33 37 20 2a 20 28 63 += c-1 + 37 * (c 0002d350: 2d 31 29 3b 5c 6e 5c 6e 20 20 6f 5b 20 30 5d 20 -1);\n\n o[ 0] 0002d360: 3d 20 74 30 3b 5c 6e 20 20 6f 5b 20 31 5d 20 3d = t0;\n o[ 1] = 0002d370: 20 74 31 3b 5c 6e 20 20 6f 5b 20 32 5d 20 3d 20 t1;\n o[ 2] = 0002d380: 74 32 3b 5c 6e 20 20 6f 5b 20 33 5d 20 3d 20 74 t2;\n o[ 3] = t 0002d390: 33 3b 5c 6e 20 20 6f 5b 20 34 5d 20 3d 20 74 34 3;\n o[ 4] = t4 0002d3a0: 3b 5c 6e 20 20 6f 5b 20 35 5d 20 3d 20 74 35 3b ;\n o[ 5] = t5; 0002d3b0: 5c 6e 20 20 6f 5b 20 36 5d 20 3d 20 74 36 3b 5c \n o[ 6] = t6;\ 0002d3c0: 6e 20 20 6f 5b 20 37 5d 20 3d 20 74 37 3b 5c 6e n o[ 7] = t7;\n 0002d3d0: 20 20 6f 5b 20 38 5d 20 3d 20 74 38 3b 5c 6e 20 o[ 8] = t8;\n 0002d3e0: 20 6f 5b 20 39 5d 20 3d 20 74 39 3b 5c 6e 20 20 o[ 9] = t9;\n 0002d3f0: 6f 5b 31 30 5d 20 3d 20 74 31 30 3b 5c 6e 20 20 o[10] = t10;\n 0002d400: 6f 5b 31 31 5d 20 3d 20 74 31 31 3b 5c 6e 20 20 o[11] = t11;\n 0002d410: 6f 5b 31 32 5d 20 3d 20 74 31 32 3b 5c 6e 20 20 o[12] = t12;\n 0002d420: 6f 5b 31 33 5d 20 3d 20 74 31 33 3b 5c 6e 20 20 o[13] = t13;\n 0002d430: 6f 5b 31 34 5d 20 3d 20 74 31 34 3b 5c 6e 20 20 o[14] = t14;\n 0002d440: 6f 5b 31 35 5d 20 3d 20 74 31 35 3b 5c 6e 7d 5c o[15] = t15;\n}\ 0002d450: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 53 28 6f 2c n\nfunction S(o, 0002d460: 20 61 29 20 7b 5c 6e 20 20 4d 28 6f 2c 20 61 2c a) {\n M(o, a, 0002d470: 20 61 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 a);\n}\n\nfunct 0002d480: 69 6f 6e 20 69 6e 76 32 35 35 31 39 28 6f 2c 20 ion inv25519(o, 0002d490: 69 29 20 7b 5c 6e 20 20 76 61 72 20 63 20 3d 20 i) {\n var c = 0002d4a0: 67 66 28 29 3b 5c 6e 20 20 76 61 72 20 61 3b 5c gf();\n var a;\ 0002d4b0: 6e 20 20 66 6f 72 20 28 61 20 3d 20 30 3b 20 61 n for (a = 0; a 0002d4c0: 20 3c 20 31 36 3b 20 61 2b 2b 29 20 63 5b 61 5d < 16; a++) c[a] 0002d4d0: 20 3d 20 69 5b 61 5d 3b 5c 6e 20 20 66 6f 72 20 = i[a];\n for 0002d4e0: 28 61 20 3d 20 32 35 33 3b 20 61 20 3e 3d 20 30 (a = 253; a >= 0 0002d4f0: 3b 20 61 2d 2d 29 20 7b 5c 6e 20 20 20 20 53 28 ; a--) {\n S( 0002d500: 63 2c 20 63 29 3b 5c 6e 20 20 20 20 69 66 28 61 c, c);\n if(a 0002d510: 20 21 3d 3d 20 32 20 26 26 20 61 20 21 3d 3d 20 !== 2 && a !== 0002d520: 34 29 20 4d 28 63 2c 20 63 2c 20 69 29 3b 5c 6e 4) M(c, c, i);\n 0002d530: 20 20 7d 5c 6e 20 20 66 6f 72 20 28 61 20 3d 20 }\n for (a = 0002d540: 30 3b 20 61 20 3c 20 31 36 3b 20 61 2b 2b 29 20 0; a < 16; a++) 0002d550: 6f 5b 61 5d 20 3d 20 63 5b 61 5d 3b 5c 6e 7d 5c o[a] = c[a];\n}\ 0002d560: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 70 6f 77 32 n\nfunction pow2 0002d570: 35 32 33 28 6f 2c 20 69 29 20 7b 5c 6e 20 20 76 523(o, i) {\n v 0002d580: 61 72 20 63 20 3d 20 67 66 28 29 3b 5c 6e 20 20 ar c = gf();\n 0002d590: 76 61 72 20 61 3b 5c 6e 20 20 66 6f 72 20 28 61 var a;\n for (a 0002d5a0: 20 3d 20 30 3b 20 61 20 3c 20 31 36 3b 20 61 2b = 0; a < 16; a+ 0002d5b0: 2b 29 20 63 5b 61 5d 20 3d 20 69 5b 61 5d 3b 5c +) c[a] = i[a];\ 0002d5c0: 6e 20 20 66 6f 72 20 28 61 20 3d 20 32 35 30 3b n for (a = 250; 0002d5d0: 20 61 20 3e 3d 20 30 3b 20 61 2d 2d 29 20 7b 5c a >= 0; a--) {\ 0002d5e0: 6e 20 20 20 20 20 20 53 28 63 2c 20 63 29 3b 5c n S(c, c);\ 0002d5f0: 6e 20 20 20 20 20 20 69 66 28 61 20 21 3d 3d 20 n if(a !== 0002d600: 31 29 20 4d 28 63 2c 20 63 2c 20 69 29 3b 5c 6e 1) M(c, c, i);\n 0002d610: 20 20 7d 5c 6e 20 20 66 6f 72 20 28 61 20 3d 20 }\n for (a = 0002d620: 30 3b 20 61 20 3c 20 31 36 3b 20 61 2b 2b 29 20 0; a < 16; a++) 0002d630: 6f 5b 61 5d 20 3d 20 63 5b 61 5d 3b 5c 6e 7d 5c o[a] = c[a];\n}\ 0002d640: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 70 n\nfunction cryp 0002d650: 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 28 71 2c to_scalarmult(q, 0002d660: 20 6e 2c 20 70 29 20 7b 5c 6e 20 20 76 61 72 20 n, p) {\n var 0002d670: 7a 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 z = new Uint8Arr 0002d680: 61 79 28 33 32 29 3b 5c 6e 20 20 76 61 72 20 78 ay(32);\n var x 0002d690: 20 3d 20 6e 65 77 20 46 6c 6f 61 74 36 34 41 72 = new Float64Ar 0002d6a0: 72 61 79 28 38 30 29 2c 20 72 2c 20 69 3b 5c 6e ray(80), r, i;\n 0002d6b0: 20 20 76 61 72 20 61 20 3d 20 67 66 28 29 2c 20 var a = gf(), 0002d6c0: 62 20 3d 20 67 66 28 29 2c 20 63 20 3d 20 67 66 b = gf(), c = gf 0002d6d0: 28 29 2c 5c 6e 20 20 20 20 20 20 64 20 3d 20 67 (),\n d = g 0002d6e0: 66 28 29 2c 20 65 20 3d 20 67 66 28 29 2c 20 66 f(), e = gf(), f 0002d6f0: 20 3d 20 67 66 28 29 3b 5c 6e 20 20 66 6f 72 20 = gf();\n for 0002d700: 28 69 20 3d 20 30 3b 20 69 20 3c 20 33 31 3b 20 (i = 0; i < 31; 0002d710: 69 2b 2b 29 20 7a 5b 69 5d 20 3d 20 6e 5b 69 5d i++) z[i] = n[i] 0002d720: 3b 5c 6e 20 20 7a 5b 33 31 5d 3d 28 6e 5b 33 31 ;\n z[31]=(n[31 0002d730: 5d 26 31 32 37 29 7c 36 34 3b 5c 6e 20 20 7a 5b ]&127)|64;\n z[ 0002d740: 30 5d 26 3d 32 34 38 3b 5c 6e 20 20 75 6e 70 61 0]&=248;\n unpa 0002d750: 63 6b 32 35 35 31 39 28 78 2c 70 29 3b 5c 6e 20 ck25519(x,p);\n 0002d760: 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c for (i = 0; i < 0002d770: 20 31 36 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 16; i++) {\n 0002d780: 20 62 5b 69 5d 3d 78 5b 69 5d 3b 5c 6e 20 20 20 b[i]=x[i];\n 0002d790: 20 64 5b 69 5d 3d 61 5b 69 5d 3d 63 5b 69 5d 3d d[i]=a[i]=c[i]= 0002d7a0: 30 3b 5c 6e 20 20 7d 5c 6e 20 20 61 5b 30 5d 3d 0;\n }\n a[0]= 0002d7b0: 64 5b 30 5d 3d 31 3b 5c 6e 20 20 66 6f 72 20 28 d[0]=1;\n for ( 0002d7c0: 69 3d 32 35 34 3b 20 69 3e 3d 30 3b 20 2d 2d 69 i=254; i>=0; --i 0002d7d0: 29 20 7b 5c 6e 20 20 20 20 72 3d 28 7a 5b 69 3e ) {\n r=(z[i> 0002d7e0: 3e 3e 33 5d 3e 3e 3e 28 69 26 37 29 29 26 31 3b >>3]>>>(i&7))&1; 0002d7f0: 5c 6e 20 20 20 20 73 65 6c 32 35 35 31 39 28 61 \n sel25519(a 0002d800: 2c 62 2c 72 29 3b 5c 6e 20 20 20 20 73 65 6c 32 ,b,r);\n sel2 0002d810: 35 35 31 39 28 63 2c 64 2c 72 29 3b 5c 6e 20 20 5519(c,d,r);\n 0002d820: 20 20 41 28 65 2c 61 2c 63 29 3b 5c 6e 20 20 20 A(e,a,c);\n 0002d830: 20 5a 28 61 2c 61 2c 63 29 3b 5c 6e 20 20 20 20 Z(a,a,c);\n 0002d840: 41 28 63 2c 62 2c 64 29 3b 5c 6e 20 20 20 20 5a A(c,b,d);\n Z 0002d850: 28 62 2c 62 2c 64 29 3b 5c 6e 20 20 20 20 53 28 (b,b,d);\n S( 0002d860: 64 2c 65 29 3b 5c 6e 20 20 20 20 53 28 66 2c 61 d,e);\n S(f,a 0002d870: 29 3b 5c 6e 20 20 20 20 4d 28 61 2c 63 2c 61 29 );\n M(a,c,a) 0002d880: 3b 5c 6e 20 20 20 20 4d 28 63 2c 62 2c 65 29 3b ;\n M(c,b,e); 0002d890: 5c 6e 20 20 20 20 41 28 65 2c 61 2c 63 29 3b 5c \n A(e,a,c);\ 0002d8a0: 6e 20 20 20 20 5a 28 61 2c 61 2c 63 29 3b 5c 6e n Z(a,a,c);\n 0002d8b0: 20 20 20 20 53 28 62 2c 61 29 3b 5c 6e 20 20 20 S(b,a);\n 0002d8c0: 20 5a 28 63 2c 64 2c 66 29 3b 5c 6e 20 20 20 20 Z(c,d,f);\n 0002d8d0: 4d 28 61 2c 63 2c 5f 31 32 31 36 36 35 29 3b 5c M(a,c,_121665);\ 0002d8e0: 6e 20 20 20 20 41 28 61 2c 61 2c 64 29 3b 5c 6e n A(a,a,d);\n 0002d8f0: 20 20 20 20 4d 28 63 2c 63 2c 61 29 3b 5c 6e 20 M(c,c,a);\n 0002d900: 20 20 20 4d 28 61 2c 64 2c 66 29 3b 5c 6e 20 20 M(a,d,f);\n 0002d910: 20 20 4d 28 64 2c 62 2c 78 29 3b 5c 6e 20 20 20 M(d,b,x);\n 0002d920: 20 53 28 62 2c 65 29 3b 5c 6e 20 20 20 20 73 65 S(b,e);\n se 0002d930: 6c 32 35 35 31 39 28 61 2c 62 2c 72 29 3b 5c 6e l25519(a,b,r);\n 0002d940: 20 20 20 20 73 65 6c 32 35 35 31 39 28 63 2c 64 sel25519(c,d 0002d950: 2c 72 29 3b 5c 6e 20 20 7d 5c 6e 20 20 66 6f 72 ,r);\n }\n for 0002d960: 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 31 36 3b (i = 0; i < 16; 0002d970: 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 78 5b 69 i++) {\n x[i 0002d980: 2b 31 36 5d 3d 61 5b 69 5d 3b 5c 6e 20 20 20 20 +16]=a[i];\n 0002d990: 78 5b 69 2b 33 32 5d 3d 63 5b 69 5d 3b 5c 6e 20 x[i+32]=c[i];\n 0002d9a0: 20 20 20 78 5b 69 2b 34 38 5d 3d 62 5b 69 5d 3b x[i+48]=b[i]; 0002d9b0: 5c 6e 20 20 20 20 78 5b 69 2b 36 34 5d 3d 64 5b \n x[i+64]=d[ 0002d9c0: 69 5d 3b 5c 6e 20 20 7d 5c 6e 20 20 76 61 72 20 i];\n }\n var 0002d9d0: 78 33 32 20 3d 20 78 2e 73 75 62 61 72 72 61 79 x32 = x.subarray 0002d9e0: 28 33 32 29 3b 5c 6e 20 20 76 61 72 20 78 31 36 (32);\n var x16 0002d9f0: 20 3d 20 78 2e 73 75 62 61 72 72 61 79 28 31 36 = x.subarray(16 0002da00: 29 3b 5c 6e 20 20 69 6e 76 32 35 35 31 39 28 78 );\n inv25519(x 0002da10: 33 32 2c 78 33 32 29 3b 5c 6e 20 20 4d 28 78 31 32,x32);\n M(x1 0002da20: 36 2c 78 31 36 2c 78 33 32 29 3b 5c 6e 20 20 70 6,x16,x32);\n p 0002da30: 61 63 6b 32 35 35 31 39 28 71 2c 78 31 36 29 3b ack25519(q,x16); 0002da40: 5c 6e 20 20 72 65 74 75 72 6e 20 30 3b 5c 6e 7d \n return 0;\n} 0002da50: 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 \n\nfunction cry 0002da60: 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f 62 pto_scalarmult_b 0002da70: 61 73 65 28 71 2c 20 6e 29 20 7b 5c 6e 20 20 72 ase(q, n) {\n r 0002da80: 65 74 75 72 6e 20 63 72 79 70 74 6f 5f 73 63 61 eturn crypto_sca 0002da90: 6c 61 72 6d 75 6c 74 28 71 2c 20 6e 2c 20 5f 39 larmult(q, n, _9 0002daa0: 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f );\n}\n\nfunctio 0002dab0: 6e 20 63 72 79 70 74 6f 5f 62 6f 78 5f 6b 65 79 n crypto_box_key 0002dac0: 70 61 69 72 28 79 2c 20 78 29 20 7b 5c 6e 20 20 pair(y, x) {\n 0002dad0: 72 61 6e 64 6f 6d 62 79 74 65 73 28 78 2c 20 33 randombytes(x, 3 0002dae0: 32 29 3b 5c 6e 20 20 72 65 74 75 72 6e 20 63 72 2);\n return cr 0002daf0: 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f ypto_scalarmult_ 0002db00: 62 61 73 65 28 79 2c 20 78 29 3b 5c 6e 7d 5c 6e base(y, x);\n}\n 0002db10: 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 70 74 \nfunction crypt 0002db20: 6f 5f 62 6f 78 5f 62 65 66 6f 72 65 6e 6d 28 6b o_box_beforenm(k 0002db30: 2c 20 79 2c 20 78 29 20 7b 5c 6e 20 20 76 61 72 , y, x) {\n var 0002db40: 20 73 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 s = new Uint8Ar 0002db50: 72 61 79 28 33 32 29 3b 5c 6e 20 20 63 72 79 70 ray(32);\n cryp 0002db60: 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 28 73 2c to_scalarmult(s, 0002db70: 20 78 2c 20 79 29 3b 5c 6e 20 20 72 65 74 75 72 x, y);\n retur 0002db80: 6e 20 63 72 79 70 74 6f 5f 63 6f 72 65 5f 68 73 n crypto_core_hs 0002db90: 61 6c 73 61 32 30 28 6b 2c 20 5f 30 2c 20 73 2c alsa20(k, _0, s, 0002dba0: 20 73 69 67 6d 61 29 3b 5c 6e 7d 5c 6e 5c 6e 76 sigma);\n}\n\nv 0002dbb0: 61 72 20 63 72 79 70 74 6f 5f 62 6f 78 5f 61 66 ar crypto_box_af 0002dbc0: 74 65 72 6e 6d 20 3d 20 63 72 79 70 74 6f 5f 73 ternm = crypto_s 0002dbd0: 65 63 72 65 74 62 6f 78 3b 5c 6e 76 61 72 20 63 ecretbox;\nvar c 0002dbe0: 72 79 70 74 6f 5f 62 6f 78 5f 6f 70 65 6e 5f 61 rypto_box_open_a 0002dbf0: 66 74 65 72 6e 6d 20 3d 20 63 72 79 70 74 6f 5f fternm = crypto_ 0002dc00: 73 65 63 72 65 74 62 6f 78 5f 6f 70 65 6e 3b 5c secretbox_open;\ 0002dc10: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 72 79 70 n\nfunction cryp 0002dc20: 74 6f 5f 62 6f 78 28 63 2c 20 6d 2c 20 64 2c 20 to_box(c, m, d, 0002dc30: 6e 2c 20 79 2c 20 78 29 20 7b 5c 6e 20 20 76 61 n, y, x) {\n va 0002dc40: 72 20 6b 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 r k = new Uint8A 0002dc50: 72 72 61 79 28 33 32 29 3b 5c 6e 20 20 63 72 79 rray(32);\n cry 0002dc60: 70 74 6f 5f 62 6f 78 5f 62 65 66 6f 72 65 6e 6d pto_box_beforenm 0002dc70: 28 6b 2c 20 79 2c 20 78 29 3b 5c 6e 20 20 72 65 (k, y, x);\n re 0002dc80: 74 75 72 6e 20 63 72 79 70 74 6f 5f 62 6f 78 5f turn crypto_box_ 0002dc90: 61 66 74 65 72 6e 6d 28 63 2c 20 6d 2c 20 64 2c afternm(c, m, d, 0002dca0: 20 6e 2c 20 6b 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 n, k);\n}\n\nfu 0002dcb0: 6e 63 74 69 6f 6e 20 63 72 79 70 74 6f 5f 62 6f nction crypto_bo 0002dcc0: 78 5f 6f 70 65 6e 28 6d 2c 20 63 2c 20 64 2c 20 x_open(m, c, d, 0002dcd0: 6e 2c 20 79 2c 20 78 29 20 7b 5c 6e 20 20 76 61 n, y, x) {\n va 0002dce0: 72 20 6b 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 r k = new Uint8A 0002dcf0: 72 72 61 79 28 33 32 29 3b 5c 6e 20 20 63 72 79 rray(32);\n cry 0002dd00: 70 74 6f 5f 62 6f 78 5f 62 65 66 6f 72 65 6e 6d pto_box_beforenm 0002dd10: 28 6b 2c 20 79 2c 20 78 29 3b 5c 6e 20 20 72 65 (k, y, x);\n re 0002dd20: 74 75 72 6e 20 63 72 79 70 74 6f 5f 62 6f 78 5f turn crypto_box_ 0002dd30: 6f 70 65 6e 5f 61 66 74 65 72 6e 6d 28 6d 2c 20 open_afternm(m, 0002dd40: 63 2c 20 64 2c 20 6e 2c 20 6b 29 3b 5c 6e 7d 5c c, d, n, k);\n}\ 0002dd50: 6e 5c 6e 76 61 72 20 4b 20 3d 20 5b 5c 6e 20 20 n\nvar K = [\n 0002dd60: 30 78 34 32 38 61 32 66 39 38 2c 20 30 78 64 37 0x428a2f98, 0xd7 0002dd70: 32 38 61 65 32 32 2c 20 30 78 37 31 33 37 34 34 28ae22, 0x713744 0002dd80: 39 31 2c 20 30 78 32 33 65 66 36 35 63 64 2c 5c 91, 0x23ef65cd,\ 0002dd90: 6e 20 20 30 78 62 35 63 30 66 62 63 66 2c 20 30 n 0xb5c0fbcf, 0 0002dda0: 78 65 63 34 64 33 62 32 66 2c 20 30 78 65 39 62 xec4d3b2f, 0xe9b 0002ddb0: 35 64 62 61 35 2c 20 30 78 38 31 38 39 64 62 62 5dba5, 0x8189dbb 0002ddc0: 63 2c 5c 6e 20 20 30 78 33 39 35 36 63 32 35 62 c,\n 0x3956c25b 0002ddd0: 2c 20 30 78 66 33 34 38 62 35 33 38 2c 20 30 78 , 0xf348b538, 0x 0002dde0: 35 39 66 31 31 31 66 31 2c 20 30 78 62 36 30 35 59f111f1, 0xb605 0002ddf0: 64 30 31 39 2c 5c 6e 20 20 30 78 39 32 33 66 38 d019,\n 0x923f8 0002de00: 32 61 34 2c 20 30 78 61 66 31 39 34 66 39 62 2c 2a4, 0xaf194f9b, 0002de10: 20 30 78 61 62 31 63 35 65 64 35 2c 20 30 78 64 0xab1c5ed5, 0xd 0002de20: 61 36 64 38 31 31 38 2c 5c 6e 20 20 30 78 64 38 a6d8118,\n 0xd8 0002de30: 30 37 61 61 39 38 2c 20 30 78 61 33 30 33 30 32 07aa98, 0xa30302 0002de40: 34 32 2c 20 30 78 31 32 38 33 35 62 30 31 2c 20 42, 0x12835b01, 0002de50: 30 78 34 35 37 30 36 66 62 65 2c 5c 6e 20 20 30 0x45706fbe,\n 0 0002de60: 78 32 34 33 31 38 35 62 65 2c 20 30 78 34 65 65 x243185be, 0x4ee 0002de70: 34 62 32 38 63 2c 20 30 78 35 35 30 63 37 64 63 4b28c, 0x550c7dc 0002de80: 33 2c 20 30 78 64 35 66 66 62 34 65 32 2c 5c 6e 3, 0xd5ffb4e2,\n 0002de90: 20 20 30 78 37 32 62 65 35 64 37 34 2c 20 30 78 0x72be5d74, 0x 0002dea0: 66 32 37 62 38 39 36 66 2c 20 30 78 38 30 64 65 f27b896f, 0x80de 0002deb0: 62 31 66 65 2c 20 30 78 33 62 31 36 39 36 62 31 b1fe, 0x3b1696b1 0002dec0: 2c 5c 6e 20 20 30 78 39 62 64 63 30 36 61 37 2c ,\n 0x9bdc06a7, 0002ded0: 20 30 78 32 35 63 37 31 32 33 35 2c 20 30 78 63 0x25c71235, 0xc 0002dee0: 31 39 62 66 31 37 34 2c 20 30 78 63 66 36 39 32 19bf174, 0xcf692 0002def0: 36 39 34 2c 5c 6e 20 20 30 78 65 34 39 62 36 39 694,\n 0xe49b69 0002df00: 63 31 2c 20 30 78 39 65 66 31 34 61 64 32 2c 20 c1, 0x9ef14ad2, 0002df10: 30 78 65 66 62 65 34 37 38 36 2c 20 30 78 33 38 0xefbe4786, 0x38 0002df20: 34 66 32 35 65 33 2c 5c 6e 20 20 30 78 30 66 63 4f25e3,\n 0x0fc 0002df30: 31 39 64 63 36 2c 20 30 78 38 62 38 63 64 35 62 19dc6, 0x8b8cd5b 0002df40: 35 2c 20 30 78 32 34 30 63 61 31 63 63 2c 20 30 5, 0x240ca1cc, 0 0002df50: 78 37 37 61 63 39 63 36 35 2c 5c 6e 20 20 30 78 x77ac9c65,\n 0x 0002df60: 32 64 65 39 32 63 36 66 2c 20 30 78 35 39 32 62 2de92c6f, 0x592b 0002df70: 30 32 37 35 2c 20 30 78 34 61 37 34 38 34 61 61 0275, 0x4a7484aa 0002df80: 2c 20 30 78 36 65 61 36 65 34 38 33 2c 5c 6e 20 , 0x6ea6e483,\n 0002df90: 20 30 78 35 63 62 30 61 39 64 63 2c 20 30 78 62 0x5cb0a9dc, 0xb 0002dfa0: 64 34 31 66 62 64 34 2c 20 30 78 37 36 66 39 38 d41fbd4, 0x76f98 0002dfb0: 38 64 61 2c 20 30 78 38 33 31 31 35 33 62 35 2c 8da, 0x831153b5, 0002dfc0: 5c 6e 20 20 30 78 39 38 33 65 35 31 35 32 2c 20 \n 0x983e5152, 0002dfd0: 30 78 65 65 36 36 64 66 61 62 2c 20 30 78 61 38 0xee66dfab, 0xa8 0002dfe0: 33 31 63 36 36 64 2c 20 30 78 32 64 62 34 33 32 31c66d, 0x2db432 0002dff0: 31 30 2c 5c 6e 20 20 30 78 62 30 30 33 32 37 63 10,\n 0xb00327c 0002e000: 38 2c 20 30 78 39 38 66 62 32 31 33 66 2c 20 30 8, 0x98fb213f, 0 0002e010: 78 62 66 35 39 37 66 63 37 2c 20 30 78 62 65 65 xbf597fc7, 0xbee 0002e020: 66 30 65 65 34 2c 5c 6e 20 20 30 78 63 36 65 30 f0ee4,\n 0xc6e0 0002e030: 30 62 66 33 2c 20 30 78 33 64 61 38 38 66 63 32 0bf3, 0x3da88fc2 0002e040: 2c 20 30 78 64 35 61 37 39 31 34 37 2c 20 30 78 , 0xd5a79147, 0x 0002e050: 39 33 30 61 61 37 32 35 2c 5c 6e 20 20 30 78 30 930aa725,\n 0x0 0002e060: 36 63 61 36 33 35 31 2c 20 30 78 65 30 30 33 38 6ca6351, 0xe0038 0002e070: 32 36 66 2c 20 30 78 31 34 32 39 32 39 36 37 2c 26f, 0x14292967, 0002e080: 20 30 78 30 61 30 65 36 65 37 30 2c 5c 6e 20 20 0x0a0e6e70,\n 0002e090: 30 78 32 37 62 37 30 61 38 35 2c 20 30 78 34 36 0x27b70a85, 0x46 0002e0a0: 64 32 32 66 66 63 2c 20 30 78 32 65 31 62 32 31 d22ffc, 0x2e1b21 0002e0b0: 33 38 2c 20 30 78 35 63 32 36 63 39 32 36 2c 5c 38, 0x5c26c926,\ 0002e0c0: 6e 20 20 30 78 34 64 32 63 36 64 66 63 2c 20 30 n 0x4d2c6dfc, 0 0002e0d0: 78 35 61 63 34 32 61 65 64 2c 20 30 78 35 33 33 x5ac42aed, 0x533 0002e0e0: 38 30 64 31 33 2c 20 30 78 39 64 39 35 62 33 64 80d13, 0x9d95b3d 0002e0f0: 66 2c 5c 6e 20 20 30 78 36 35 30 61 37 33 35 34 f,\n 0x650a7354 0002e100: 2c 20 30 78 38 62 61 66 36 33 64 65 2c 20 30 78 , 0x8baf63de, 0x 0002e110: 37 36 36 61 30 61 62 62 2c 20 30 78 33 63 37 37 766a0abb, 0x3c77 0002e120: 62 32 61 38 2c 5c 6e 20 20 30 78 38 31 63 32 63 b2a8,\n 0x81c2c 0002e130: 39 32 65 2c 20 30 78 34 37 65 64 61 65 65 36 2c 92e, 0x47edaee6, 0002e140: 20 30 78 39 32 37 32 32 63 38 35 2c 20 30 78 31 0x92722c85, 0x1 0002e150: 34 38 32 33 35 33 62 2c 5c 6e 20 20 30 78 61 32 482353b,\n 0xa2 0002e160: 62 66 65 38 61 31 2c 20 30 78 34 63 66 31 30 33 bfe8a1, 0x4cf103 0002e170: 36 34 2c 20 30 78 61 38 31 61 36 36 34 62 2c 20 64, 0xa81a664b, 0002e180: 30 78 62 63 34 32 33 30 30 31 2c 5c 6e 20 20 30 0xbc423001,\n 0 0002e190: 78 63 32 34 62 38 62 37 30 2c 20 30 78 64 30 66 xc24b8b70, 0xd0f 0002e1a0: 38 39 37 39 31 2c 20 30 78 63 37 36 63 35 31 61 89791, 0xc76c51a 0002e1b0: 33 2c 20 30 78 30 36 35 34 62 65 33 30 2c 5c 6e 3, 0x0654be30,\n 0002e1c0: 20 20 30 78 64 31 39 32 65 38 31 39 2c 20 30 78 0xd192e819, 0x 0002e1d0: 64 36 65 66 35 32 31 38 2c 20 30 78 64 36 39 39 d6ef5218, 0xd699 0002e1e0: 30 36 32 34 2c 20 30 78 35 35 36 35 61 39 31 30 0624, 0x5565a910 0002e1f0: 2c 5c 6e 20 20 30 78 66 34 30 65 33 35 38 35 2c ,\n 0xf40e3585, 0002e200: 20 30 78 35 37 37 31 32 30 32 61 2c 20 30 78 31 0x5771202a, 0x1 0002e210: 30 36 61 61 30 37 30 2c 20 30 78 33 32 62 62 64 06aa070, 0x32bbd 0002e220: 31 62 38 2c 5c 6e 20 20 30 78 31 39 61 34 63 31 1b8,\n 0x19a4c1 0002e230: 31 36 2c 20 30 78 62 38 64 32 64 30 63 38 2c 20 16, 0xb8d2d0c8, 0002e240: 30 78 31 65 33 37 36 63 30 38 2c 20 30 78 35 31 0x1e376c08, 0x51 0002e250: 34 31 61 62 35 33 2c 5c 6e 20 20 30 78 32 37 34 41ab53,\n 0x274 0002e260: 38 37 37 34 63 2c 20 30 78 64 66 38 65 65 62 39 8774c, 0xdf8eeb9 0002e270: 39 2c 20 30 78 33 34 62 30 62 63 62 35 2c 20 30 9, 0x34b0bcb5, 0 0002e280: 78 65 31 39 62 34 38 61 38 2c 5c 6e 20 20 30 78 xe19b48a8,\n 0x 0002e290: 33 39 31 63 30 63 62 33 2c 20 30 78 63 35 63 39 391c0cb3, 0xc5c9 0002e2a0: 35 61 36 33 2c 20 30 78 34 65 64 38 61 61 34 61 5a63, 0x4ed8aa4a 0002e2b0: 2c 20 30 78 65 33 34 31 38 61 63 62 2c 5c 6e 20 , 0xe3418acb,\n 0002e2c0: 20 30 78 35 62 39 63 63 61 34 66 2c 20 30 78 37 0x5b9cca4f, 0x7 0002e2d0: 37 36 33 65 33 37 33 2c 20 30 78 36 38 32 65 36 763e373, 0x682e6 0002e2e0: 66 66 33 2c 20 30 78 64 36 62 32 62 38 61 33 2c ff3, 0xd6b2b8a3, 0002e2f0: 5c 6e 20 20 30 78 37 34 38 66 38 32 65 65 2c 20 \n 0x748f82ee, 0002e300: 30 78 35 64 65 66 62 32 66 63 2c 20 30 78 37 38 0x5defb2fc, 0x78 0002e310: 61 35 36 33 36 66 2c 20 30 78 34 33 31 37 32 66 a5636f, 0x43172f 0002e320: 36 30 2c 5c 6e 20 20 30 78 38 34 63 38 37 38 31 60,\n 0x84c8781 0002e330: 34 2c 20 30 78 61 31 66 30 61 62 37 32 2c 20 30 4, 0xa1f0ab72, 0 0002e340: 78 38 63 63 37 30 32 30 38 2c 20 30 78 31 61 36 x8cc70208, 0x1a6 0002e350: 34 33 39 65 63 2c 5c 6e 20 20 30 78 39 30 62 65 439ec,\n 0x90be 0002e360: 66 66 66 61 2c 20 30 78 32 33 36 33 31 65 32 38 fffa, 0x23631e28 0002e370: 2c 20 30 78 61 34 35 30 36 63 65 62 2c 20 30 78 , 0xa4506ceb, 0x 0002e380: 64 65 38 32 62 64 65 39 2c 5c 6e 20 20 30 78 62 de82bde9,\n 0xb 0002e390: 65 66 39 61 33 66 37 2c 20 30 78 62 32 63 36 37 ef9a3f7, 0xb2c67 0002e3a0: 39 31 35 2c 20 30 78 63 36 37 31 37 38 66 32 2c 915, 0xc67178f2, 0002e3b0: 20 30 78 65 33 37 32 35 33 32 62 2c 5c 6e 20 20 0xe372532b,\n 0002e3c0: 30 78 63 61 32 37 33 65 63 65 2c 20 30 78 65 61 0xca273ece, 0xea 0002e3d0: 32 36 36 31 39 63 2c 20 30 78 64 31 38 36 62 38 26619c, 0xd186b8 0002e3e0: 63 37 2c 20 30 78 32 31 63 30 63 32 30 37 2c 5c c7, 0x21c0c207,\ 0002e3f0: 6e 20 20 30 78 65 61 64 61 37 64 64 36 2c 20 30 n 0xeada7dd6, 0 0002e400: 78 63 64 65 30 65 62 31 65 2c 20 30 78 66 35 37 xcde0eb1e, 0xf57 0002e410: 64 34 66 37 66 2c 20 30 78 65 65 36 65 64 31 37 d4f7f, 0xee6ed17 0002e420: 38 2c 5c 6e 20 20 30 78 30 36 66 30 36 37 61 61 8,\n 0x06f067aa 0002e430: 2c 20 30 78 37 32 31 37 36 66 62 61 2c 20 30 78 , 0x72176fba, 0x 0002e440: 30 61 36 33 37 64 63 35 2c 20 30 78 61 32 63 38 0a637dc5, 0xa2c8 0002e450: 39 38 61 36 2c 5c 6e 20 20 30 78 31 31 33 66 39 98a6,\n 0x113f9 0002e460: 38 30 34 2c 20 30 78 62 65 66 39 30 64 61 65 2c 804, 0xbef90dae, 0002e470: 20 30 78 31 62 37 31 30 62 33 35 2c 20 30 78 31 0x1b710b35, 0x1 0002e480: 33 31 63 34 37 31 62 2c 5c 6e 20 20 30 78 32 38 31c471b,\n 0x28 0002e490: 64 62 37 37 66 35 2c 20 30 78 32 33 30 34 37 64 db77f5, 0x23047d 0002e4a0: 38 34 2c 20 30 78 33 32 63 61 61 62 37 62 2c 20 84, 0x32caab7b, 0002e4b0: 30 78 34 30 63 37 32 34 39 33 2c 5c 6e 20 20 30 0x40c72493,\n 0 0002e4c0: 78 33 63 39 65 62 65 30 61 2c 20 30 78 31 35 63 x3c9ebe0a, 0x15c 0002e4d0: 39 62 65 62 63 2c 20 30 78 34 33 31 64 36 37 63 9bebc, 0x431d67c 0002e4e0: 34 2c 20 30 78 39 63 31 30 30 64 34 63 2c 5c 6e 4, 0x9c100d4c,\n 0002e4f0: 20 20 30 78 34 63 63 35 64 34 62 65 2c 20 30 78 0x4cc5d4be, 0x 0002e500: 63 62 33 65 34 32 62 36 2c 20 30 78 35 39 37 66 cb3e42b6, 0x597f 0002e510: 32 39 39 63 2c 20 30 78 66 63 36 35 37 65 32 61 299c, 0xfc657e2a 0002e520: 2c 5c 6e 20 20 30 78 35 66 63 62 36 66 61 62 2c ,\n 0x5fcb6fab, 0002e530: 20 30 78 33 61 64 36 66 61 65 63 2c 20 30 78 36 0x3ad6faec, 0x6 0002e540: 63 34 34 31 39 38 63 2c 20 30 78 34 61 34 37 35 c44198c, 0x4a475 0002e550: 38 31 37 5c 6e 5d 3b 5c 6e 5c 6e 66 75 6e 63 74 817\n];\n\nfunct 0002e560: 69 6f 6e 20 63 72 79 70 74 6f 5f 68 61 73 68 62 ion crypto_hashb 0002e570: 6c 6f 63 6b 73 5f 68 6c 28 68 68 2c 20 68 6c 2c locks_hl(hh, hl, 0002e580: 20 6d 2c 20 6e 29 20 7b 5c 6e 20 20 76 61 72 20 m, n) {\n var 0002e590: 77 68 20 3d 20 6e 65 77 20 49 6e 74 33 32 41 72 wh = new Int32Ar 0002e5a0: 72 61 79 28 31 36 29 2c 20 77 6c 20 3d 20 6e 65 ray(16), wl = ne 0002e5b0: 77 20 49 6e 74 33 32 41 72 72 61 79 28 31 36 29 w Int32Array(16) 0002e5c0: 2c 5c 6e 20 20 20 20 20 20 62 68 30 2c 20 62 68 ,\n bh0, bh 0002e5d0: 31 2c 20 62 68 32 2c 20 62 68 33 2c 20 62 68 34 1, bh2, bh3, bh4 0002e5e0: 2c 20 62 68 35 2c 20 62 68 36 2c 20 62 68 37 2c , bh5, bh6, bh7, 0002e5f0: 5c 6e 20 20 20 20 20 20 62 6c 30 2c 20 62 6c 31 \n bl0, bl1 0002e600: 2c 20 62 6c 32 2c 20 62 6c 33 2c 20 62 6c 34 2c , bl2, bl3, bl4, 0002e610: 20 62 6c 35 2c 20 62 6c 36 2c 20 62 6c 37 2c 5c bl5, bl6, bl7,\ 0002e620: 6e 20 20 20 20 20 20 74 68 2c 20 74 6c 2c 20 69 n th, tl, i 0002e630: 2c 20 6a 2c 20 68 2c 20 6c 2c 20 61 2c 20 62 2c , j, h, l, a, b, 0002e640: 20 63 2c 20 64 3b 5c 6e 5c 6e 20 20 76 61 72 20 c, d;\n\n var 0002e650: 61 68 30 20 3d 20 68 68 5b 30 5d 2c 5c 6e 20 20 ah0 = hh[0],\n 0002e660: 20 20 20 20 61 68 31 20 3d 20 68 68 5b 31 5d 2c ah1 = hh[1], 0002e670: 5c 6e 20 20 20 20 20 20 61 68 32 20 3d 20 68 68 \n ah2 = hh 0002e680: 5b 32 5d 2c 5c 6e 20 20 20 20 20 20 61 68 33 20 [2],\n ah3 0002e690: 3d 20 68 68 5b 33 5d 2c 5c 6e 20 20 20 20 20 20 = hh[3],\n 0002e6a0: 61 68 34 20 3d 20 68 68 5b 34 5d 2c 5c 6e 20 20 ah4 = hh[4],\n 0002e6b0: 20 20 20 20 61 68 35 20 3d 20 68 68 5b 35 5d 2c ah5 = hh[5], 0002e6c0: 5c 6e 20 20 20 20 20 20 61 68 36 20 3d 20 68 68 \n ah6 = hh 0002e6d0: 5b 36 5d 2c 5c 6e 20 20 20 20 20 20 61 68 37 20 [6],\n ah7 0002e6e0: 3d 20 68 68 5b 37 5d 2c 5c 6e 5c 6e 20 20 20 20 = hh[7],\n\n 0002e6f0: 20 20 61 6c 30 20 3d 20 68 6c 5b 30 5d 2c 5c 6e al0 = hl[0],\n 0002e700: 20 20 20 20 20 20 61 6c 31 20 3d 20 68 6c 5b 31 al1 = hl[1 0002e710: 5d 2c 5c 6e 20 20 20 20 20 20 61 6c 32 20 3d 20 ],\n al2 = 0002e720: 68 6c 5b 32 5d 2c 5c 6e 20 20 20 20 20 20 61 6c hl[2],\n al 0002e730: 33 20 3d 20 68 6c 5b 33 5d 2c 5c 6e 20 20 20 20 3 = hl[3],\n 0002e740: 20 20 61 6c 34 20 3d 20 68 6c 5b 34 5d 2c 5c 6e al4 = hl[4],\n 0002e750: 20 20 20 20 20 20 61 6c 35 20 3d 20 68 6c 5b 35 al5 = hl[5 0002e760: 5d 2c 5c 6e 20 20 20 20 20 20 61 6c 36 20 3d 20 ],\n al6 = 0002e770: 68 6c 5b 36 5d 2c 5c 6e 20 20 20 20 20 20 61 6c hl[6],\n al 0002e780: 37 20 3d 20 68 6c 5b 37 5d 3b 5c 6e 5c 6e 20 20 7 = hl[7];\n\n 0002e790: 76 61 72 20 70 6f 73 20 3d 20 30 3b 5c 6e 20 20 var pos = 0;\n 0002e7a0: 77 68 69 6c 65 20 28 6e 20 3e 3d 20 31 32 38 29 while (n >= 128) 0002e7b0: 20 7b 5c 6e 20 20 20 20 66 6f 72 20 28 69 20 3d {\n for (i = 0002e7c0: 20 30 3b 20 69 20 3c 20 31 36 3b 20 69 2b 2b 29 0; i < 16; i++) 0002e7d0: 20 7b 5c 6e 20 20 20 20 20 20 6a 20 3d 20 38 20 {\n j = 8 0002e7e0: 2a 20 69 20 2b 20 70 6f 73 3b 5c 6e 20 20 20 20 * i + pos;\n 0002e7f0: 20 20 77 68 5b 69 5d 20 3d 20 28 6d 5b 6a 2b 30 wh[i] = (m[j+0 0002e800: 5d 20 3c 3c 20 32 34 29 20 7c 20 28 6d 5b 6a 2b ] << 24) | (m[j+ 0002e810: 31 5d 20 3c 3c 20 31 36 29 20 7c 20 28 6d 5b 6a 1] << 16) | (m[j 0002e820: 2b 32 5d 20 3c 3c 20 38 29 20 7c 20 6d 5b 6a 2b +2] << 8) | m[j+ 0002e830: 33 5d 3b 5c 6e 20 20 20 20 20 20 77 6c 5b 69 5d 3];\n wl[i] 0002e840: 20 3d 20 28 6d 5b 6a 2b 34 5d 20 3c 3c 20 32 34 = (m[j+4] << 24 0002e850: 29 20 7c 20 28 6d 5b 6a 2b 35 5d 20 3c 3c 20 31 ) | (m[j+5] << 1 0002e860: 36 29 20 7c 20 28 6d 5b 6a 2b 36 5d 20 3c 3c 20 6) | (m[j+6] << 0002e870: 38 29 20 7c 20 6d 5b 6a 2b 37 5d 3b 5c 6e 20 20 8) | m[j+7];\n 0002e880: 20 20 7d 5c 6e 20 20 20 20 66 6f 72 20 28 69 20 }\n for (i 0002e890: 3d 20 30 3b 20 69 20 3c 20 38 30 3b 20 69 2b 2b = 0; i < 80; i++ 0002e8a0: 29 20 7b 5c 6e 20 20 20 20 20 20 62 68 30 20 3d ) {\n bh0 = 0002e8b0: 20 61 68 30 3b 5c 6e 20 20 20 20 20 20 62 68 31 ah0;\n bh1 0002e8c0: 20 3d 20 61 68 31 3b 5c 6e 20 20 20 20 20 20 62 = ah1;\n b 0002e8d0: 68 32 20 3d 20 61 68 32 3b 5c 6e 20 20 20 20 20 h2 = ah2;\n 0002e8e0: 20 62 68 33 20 3d 20 61 68 33 3b 5c 6e 20 20 20 bh3 = ah3;\n 0002e8f0: 20 20 20 62 68 34 20 3d 20 61 68 34 3b 5c 6e 20 bh4 = ah4;\n 0002e900: 20 20 20 20 20 62 68 35 20 3d 20 61 68 35 3b 5c bh5 = ah5;\ 0002e910: 6e 20 20 20 20 20 20 62 68 36 20 3d 20 61 68 36 n bh6 = ah6 0002e920: 3b 5c 6e 20 20 20 20 20 20 62 68 37 20 3d 20 61 ;\n bh7 = a 0002e930: 68 37 3b 5c 6e 5c 6e 20 20 20 20 20 20 62 6c 30 h7;\n\n bl0 0002e940: 20 3d 20 61 6c 30 3b 5c 6e 20 20 20 20 20 20 62 = al0;\n b 0002e950: 6c 31 20 3d 20 61 6c 31 3b 5c 6e 20 20 20 20 20 l1 = al1;\n 0002e960: 20 62 6c 32 20 3d 20 61 6c 32 3b 5c 6e 20 20 20 bl2 = al2;\n 0002e970: 20 20 20 62 6c 33 20 3d 20 61 6c 33 3b 5c 6e 20 bl3 = al3;\n 0002e980: 20 20 20 20 20 62 6c 34 20 3d 20 61 6c 34 3b 5c bl4 = al4;\ 0002e990: 6e 20 20 20 20 20 20 62 6c 35 20 3d 20 61 6c 35 n bl5 = al5 0002e9a0: 3b 5c 6e 20 20 20 20 20 20 62 6c 36 20 3d 20 61 ;\n bl6 = a 0002e9b0: 6c 36 3b 5c 6e 20 20 20 20 20 20 62 6c 37 20 3d l6;\n bl7 = 0002e9c0: 20 61 6c 37 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f al7;\n\n / 0002e9d0: 2f 20 61 64 64 5c 6e 20 20 20 20 20 20 68 20 3d / add\n h = 0002e9e0: 20 61 68 37 3b 5c 6e 20 20 20 20 20 20 6c 20 3d ah7;\n l = 0002e9f0: 20 61 6c 37 3b 5c 6e 5c 6e 20 20 20 20 20 20 61 al7;\n\n a 0002ea00: 20 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 = l & 0xffff; b 0002ea10: 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 = l >>> 16;\n 0002ea20: 20 20 20 20 63 20 3d 20 68 20 26 20 30 78 66 66 c = h & 0xff 0002ea30: 66 66 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 31 36 ff; d = h >>> 16 0002ea40: 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f 2f 20 53 69 ;\n\n // Si 0002ea50: 67 6d 61 31 5c 6e 20 20 20 20 20 20 68 20 3d 20 gma1\n h = 0002ea60: 28 28 61 68 34 20 3e 3e 3e 20 31 34 29 20 7c 20 ((ah4 >>> 14) | 0002ea70: 28 61 6c 34 20 3c 3c 20 28 33 32 2d 31 34 29 29 (al4 << (32-14)) 0002ea80: 29 20 5e 20 28 28 61 68 34 20 3e 3e 3e 20 31 38 ) ^ ((ah4 >>> 18 0002ea90: 29 20 7c 20 28 61 6c 34 20 3c 3c 20 28 33 32 2d ) | (al4 << (32- 0002eaa0: 31 38 29 29 29 20 5e 20 28 28 61 6c 34 20 3e 3e 18))) ^ ((al4 >> 0002eab0: 3e 20 28 34 31 2d 33 32 29 29 20 7c 20 28 61 68 > (41-32)) | (ah 0002eac0: 34 20 3c 3c 20 28 33 32 2d 28 34 31 2d 33 32 29 4 << (32-(41-32) 0002ead0: 29 29 29 3b 5c 6e 20 20 20 20 20 20 6c 20 3d 20 )));\n l = 0002eae0: 28 28 61 6c 34 20 3e 3e 3e 20 31 34 29 20 7c 20 ((al4 >>> 14) | 0002eaf0: 28 61 68 34 20 3c 3c 20 28 33 32 2d 31 34 29 29 (ah4 << (32-14)) 0002eb00: 29 20 5e 20 28 28 61 6c 34 20 3e 3e 3e 20 31 38 ) ^ ((al4 >>> 18 0002eb10: 29 20 7c 20 28 61 68 34 20 3c 3c 20 28 33 32 2d ) | (ah4 << (32- 0002eb20: 31 38 29 29 29 20 5e 20 28 28 61 68 34 20 3e 3e 18))) ^ ((ah4 >> 0002eb30: 3e 20 28 34 31 2d 33 32 29 29 20 7c 20 28 61 6c > (41-32)) | (al 0002eb40: 34 20 3c 3c 20 28 33 32 2d 28 34 31 2d 33 32 29 4 << (32-(41-32) 0002eb50: 29 29 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 61 20 )));\n\n a 0002eb60: 2b 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 += l & 0xffff; b 0002eb70: 20 2b 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 += l >>> 16;\n 0002eb80: 20 20 20 20 20 63 20 2b 3d 20 68 20 26 20 30 78 c += h & 0x 0002eb90: 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e ffff; d += h >>> 0002eba0: 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f 2f 16;\n\n // 0002ebb0: 20 43 68 5c 6e 20 20 20 20 20 20 68 20 3d 20 28 Ch\n h = ( 0002ebc0: 61 68 34 20 26 20 61 68 35 29 20 5e 20 28 7e 61 ah4 & ah5) ^ (~a 0002ebd0: 68 34 20 26 20 61 68 36 29 3b 5c 6e 20 20 20 20 h4 & ah6);\n 0002ebe0: 20 20 6c 20 3d 20 28 61 6c 34 20 26 20 61 6c 35 l = (al4 & al5 0002ebf0: 29 20 5e 20 28 7e 61 6c 34 20 26 20 61 6c 36 29 ) ^ (~al4 & al6) 0002ec00: 3b 5c 6e 5c 6e 20 20 20 20 20 20 61 20 2b 3d 20 ;\n\n a += 0002ec10: 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b 3d l & 0xffff; b += 0002ec20: 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 l >>> 16;\n 0002ec30: 20 20 63 20 2b 3d 20 68 20 26 20 30 78 66 66 66 c += h & 0xfff 0002ec40: 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 f; d += h >>> 16 0002ec50: 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f 2f 20 4b 5c ;\n\n // K\ 0002ec60: 6e 20 20 20 20 20 20 68 20 3d 20 4b 5b 69 2a 32 n h = K[i*2 0002ec70: 5d 3b 5c 6e 20 20 20 20 20 20 6c 20 3d 20 4b 5b ];\n l = K[ 0002ec80: 69 2a 32 2b 31 5d 3b 5c 6e 5c 6e 20 20 20 20 20 i*2+1];\n\n 0002ec90: 20 61 20 2b 3d 20 6c 20 26 20 30 78 66 66 66 66 a += l & 0xffff 0002eca0: 3b 20 62 20 2b 3d 20 6c 20 3e 3e 3e 20 31 36 3b ; b += l >>> 16; 0002ecb0: 5c 6e 20 20 20 20 20 20 63 20 2b 3d 20 68 20 26 \n c += h & 0002ecc0: 20 30 78 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 0xffff; d += h 0002ecd0: 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 >>> 16;\n\n 0002ece0: 20 2f 2f 20 77 5c 6e 20 20 20 20 20 20 68 20 3d // w\n h = 0002ecf0: 20 77 68 5b 69 25 31 36 5d 3b 5c 6e 20 20 20 20 wh[i%16];\n 0002ed00: 20 20 6c 20 3d 20 77 6c 5b 69 25 31 36 5d 3b 5c l = wl[i%16];\ 0002ed10: 6e 5c 6e 20 20 20 20 20 20 61 20 2b 3d 20 6c 20 n\n a += l 0002ed20: 26 20 30 78 66 66 66 66 3b 20 62 20 2b 3d 20 6c & 0xffff; b += l 0002ed30: 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 20 20 >>> 16;\n 0002ed40: 63 20 2b 3d 20 68 20 26 20 30 78 66 66 66 66 3b c += h & 0xffff; 0002ed50: 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c d += h >>> 16;\ 0002ed60: 6e 5c 6e 20 20 20 20 20 20 62 20 2b 3d 20 61 20 n\n b += a 0002ed70: 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 20 20 63 >>> 16;\n c 0002ed80: 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b 5c 6e 20 += b >>> 16;\n 0002ed90: 20 20 20 20 20 64 20 2b 3d 20 63 20 3e 3e 3e 20 d += c >>> 0002eda0: 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 74 68 20 16;\n\n th 0002edb0: 3d 20 63 20 26 20 30 78 66 66 66 66 20 7c 20 64 = c & 0xffff | d 0002edc0: 20 3c 3c 20 31 36 3b 5c 6e 20 20 20 20 20 20 74 << 16;\n t 0002edd0: 6c 20 3d 20 61 20 26 20 30 78 66 66 66 66 20 7c l = a & 0xffff | 0002ede0: 20 62 20 3c 3c 20 31 36 3b 5c 6e 5c 6e 20 20 20 b << 16;\n\n 0002edf0: 20 20 20 2f 2f 20 61 64 64 5c 6e 20 20 20 20 20 // add\n 0002ee00: 20 68 20 3d 20 74 68 3b 5c 6e 20 20 20 20 20 20 h = th;\n 0002ee10: 6c 20 3d 20 74 6c 3b 5c 6e 5c 6e 20 20 20 20 20 l = tl;\n\n 0002ee20: 20 61 20 3d 20 6c 20 26 20 30 78 66 66 66 66 3b a = l & 0xffff; 0002ee30: 20 62 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e b = l >>> 16;\n 0002ee40: 20 20 20 20 20 20 63 20 3d 20 68 20 26 20 30 78 c = h & 0x 0002ee50: 66 66 66 66 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 ffff; d = h >>> 0002ee60: 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f 2f 20 16;\n\n // 0002ee70: 53 69 67 6d 61 30 5c 6e 20 20 20 20 20 20 68 20 Sigma0\n h 0002ee80: 3d 20 28 28 61 68 30 20 3e 3e 3e 20 32 38 29 20 = ((ah0 >>> 28) 0002ee90: 7c 20 28 61 6c 30 20 3c 3c 20 28 33 32 2d 32 38 | (al0 << (32-28 0002eea0: 29 29 29 20 5e 20 28 28 61 6c 30 20 3e 3e 3e 20 ))) ^ ((al0 >>> 0002eeb0: 28 33 34 2d 33 32 29 29 20 7c 20 28 61 68 30 20 (34-32)) | (ah0 0002eec0: 3c 3c 20 28 33 32 2d 28 33 34 2d 33 32 29 29 29 << (32-(34-32))) 0002eed0: 29 20 5e 20 28 28 61 6c 30 20 3e 3e 3e 20 28 33 ) ^ ((al0 >>> (3 0002eee0: 39 2d 33 32 29 29 20 7c 20 28 61 68 30 20 3c 3c 9-32)) | (ah0 << 0002eef0: 20 28 33 32 2d 28 33 39 2d 33 32 29 29 29 29 3b (32-(39-32)))); 0002ef00: 5c 6e 20 20 20 20 20 20 6c 20 3d 20 28 28 61 6c \n l = ((al 0002ef10: 30 20 3e 3e 3e 20 32 38 29 20 7c 20 28 61 68 30 0 >>> 28) | (ah0 0002ef20: 20 3c 3c 20 28 33 32 2d 32 38 29 29 29 20 5e 20 << (32-28))) ^ 0002ef30: 28 28 61 68 30 20 3e 3e 3e 20 28 33 34 2d 33 32 ((ah0 >>> (34-32 0002ef40: 29 29 20 7c 20 28 61 6c 30 20 3c 3c 20 28 33 32 )) | (al0 << (32 0002ef50: 2d 28 33 34 2d 33 32 29 29 29 29 20 5e 20 28 28 -(34-32)))) ^ (( 0002ef60: 61 68 30 20 3e 3e 3e 20 28 33 39 2d 33 32 29 29 ah0 >>> (39-32)) 0002ef70: 20 7c 20 28 61 6c 30 20 3c 3c 20 28 33 32 2d 28 | (al0 << (32-( 0002ef80: 33 39 2d 33 32 29 29 29 29 3b 5c 6e 5c 6e 20 20 39-32))));\n\n 0002ef90: 20 20 20 20 61 20 2b 3d 20 6c 20 26 20 30 78 66 a += l & 0xf 0002efa0: 66 66 66 3b 20 62 20 2b 3d 20 6c 20 3e 3e 3e 20 fff; b += l >>> 0002efb0: 31 36 3b 5c 6e 20 20 20 20 20 20 63 20 2b 3d 20 16;\n c += 0002efc0: 68 20 26 20 30 78 66 66 66 66 3b 20 64 20 2b 3d h & 0xffff; d += 0002efd0: 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 h >>> 16;\n\n 0002efe0: 20 20 20 20 2f 2f 20 4d 61 6a 5c 6e 20 20 20 20 // Maj\n 0002eff0: 20 20 68 20 3d 20 28 61 68 30 20 26 20 61 68 31 h = (ah0 & ah1 0002f000: 29 20 5e 20 28 61 68 30 20 26 20 61 68 32 29 20 ) ^ (ah0 & ah2) 0002f010: 5e 20 28 61 68 31 20 26 20 61 68 32 29 3b 5c 6e ^ (ah1 & ah2);\n 0002f020: 20 20 20 20 20 20 6c 20 3d 20 28 61 6c 30 20 26 l = (al0 & 0002f030: 20 61 6c 31 29 20 5e 20 28 61 6c 30 20 26 20 61 al1) ^ (al0 & a 0002f040: 6c 32 29 20 5e 20 28 61 6c 31 20 26 20 61 6c 32 l2) ^ (al1 & al2 0002f050: 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 61 20 2b 3d );\n\n a += 0002f060: 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b l & 0xffff; b + 0002f070: 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 = l >>> 16;\n 0002f080: 20 20 20 63 20 2b 3d 20 68 20 26 20 30 78 66 66 c += h & 0xff 0002f090: 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 ff; d += h >>> 1 0002f0a0: 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 62 20 2b 3d 6;\n\n b += 0002f0b0: 20 61 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 a >>> 16;\n 0002f0c0: 20 20 63 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b c += b >>> 16; 0002f0d0: 5c 6e 20 20 20 20 20 20 64 20 2b 3d 20 63 20 3e \n d += c > 0002f0e0: 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 >> 16;\n\n 0002f0f0: 62 68 37 20 3d 20 28 63 20 26 20 30 78 66 66 66 bh7 = (c & 0xfff 0002f100: 66 29 20 7c 20 28 64 20 3c 3c 20 31 36 29 3b 5c f) | (d << 16);\ 0002f110: 6e 20 20 20 20 20 20 62 6c 37 20 3d 20 28 61 20 n bl7 = (a 0002f120: 26 20 30 78 66 66 66 66 29 20 7c 20 28 62 20 3c & 0xffff) | (b < 0002f130: 3c 20 31 36 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 < 16);\n\n 0002f140: 2f 2f 20 61 64 64 5c 6e 20 20 20 20 20 20 68 20 // add\n h 0002f150: 3d 20 62 68 33 3b 5c 6e 20 20 20 20 20 20 6c 20 = bh3;\n l 0002f160: 3d 20 62 6c 33 3b 5c 6e 5c 6e 20 20 20 20 20 20 = bl3;\n\n 0002f170: 61 20 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 a = l & 0xffff; 0002f180: 62 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 b = l >>> 16;\n 0002f190: 20 20 20 20 20 63 20 3d 20 68 20 26 20 30 78 66 c = h & 0xf 0002f1a0: 66 66 66 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 31 fff; d = h >>> 1 0002f1b0: 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 68 20 3d 20 6;\n\n h = 0002f1c0: 74 68 3b 5c 6e 20 20 20 20 20 20 6c 20 3d 20 74 th;\n l = t 0002f1d0: 6c 3b 5c 6e 5c 6e 20 20 20 20 20 20 61 20 2b 3d l;\n\n a += 0002f1e0: 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b l & 0xffff; b + 0002f1f0: 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 = l >>> 16;\n 0002f200: 20 20 20 63 20 2b 3d 20 68 20 26 20 30 78 66 66 c += h & 0xff 0002f210: 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 ff; d += h >>> 1 0002f220: 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 62 20 2b 3d 6;\n\n b += 0002f230: 20 61 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 a >>> 16;\n 0002f240: 20 20 63 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b c += b >>> 16; 0002f250: 5c 6e 20 20 20 20 20 20 64 20 2b 3d 20 63 20 3e \n d += c > 0002f260: 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 >> 16;\n\n 0002f270: 62 68 33 20 3d 20 28 63 20 26 20 30 78 66 66 66 bh3 = (c & 0xfff 0002f280: 66 29 20 7c 20 28 64 20 3c 3c 20 31 36 29 3b 5c f) | (d << 16);\ 0002f290: 6e 20 20 20 20 20 20 62 6c 33 20 3d 20 28 61 20 n bl3 = (a 0002f2a0: 26 20 30 78 66 66 66 66 29 20 7c 20 28 62 20 3c & 0xffff) | (b < 0002f2b0: 3c 20 31 36 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 < 16);\n\n 0002f2c0: 61 68 31 20 3d 20 62 68 30 3b 5c 6e 20 20 20 20 ah1 = bh0;\n 0002f2d0: 20 20 61 68 32 20 3d 20 62 68 31 3b 5c 6e 20 20 ah2 = bh1;\n 0002f2e0: 20 20 20 20 61 68 33 20 3d 20 62 68 32 3b 5c 6e ah3 = bh2;\n 0002f2f0: 20 20 20 20 20 20 61 68 34 20 3d 20 62 68 33 3b ah4 = bh3; 0002f300: 5c 6e 20 20 20 20 20 20 61 68 35 20 3d 20 62 68 \n ah5 = bh 0002f310: 34 3b 5c 6e 20 20 20 20 20 20 61 68 36 20 3d 20 4;\n ah6 = 0002f320: 62 68 35 3b 5c 6e 20 20 20 20 20 20 61 68 37 20 bh5;\n ah7 0002f330: 3d 20 62 68 36 3b 5c 6e 20 20 20 20 20 20 61 68 = bh6;\n ah 0002f340: 30 20 3d 20 62 68 37 3b 5c 6e 5c 6e 20 20 20 20 0 = bh7;\n\n 0002f350: 20 20 61 6c 31 20 3d 20 62 6c 30 3b 5c 6e 20 20 al1 = bl0;\n 0002f360: 20 20 20 20 61 6c 32 20 3d 20 62 6c 31 3b 5c 6e al2 = bl1;\n 0002f370: 20 20 20 20 20 20 61 6c 33 20 3d 20 62 6c 32 3b al3 = bl2; 0002f380: 5c 6e 20 20 20 20 20 20 61 6c 34 20 3d 20 62 6c \n al4 = bl 0002f390: 33 3b 5c 6e 20 20 20 20 20 20 61 6c 35 20 3d 20 3;\n al5 = 0002f3a0: 62 6c 34 3b 5c 6e 20 20 20 20 20 20 61 6c 36 20 bl4;\n al6 0002f3b0: 3d 20 62 6c 35 3b 5c 6e 20 20 20 20 20 20 61 6c = bl5;\n al 0002f3c0: 37 20 3d 20 62 6c 36 3b 5c 6e 20 20 20 20 20 20 7 = bl6;\n 0002f3d0: 61 6c 30 20 3d 20 62 6c 37 3b 5c 6e 5c 6e 20 20 al0 = bl7;\n\n 0002f3e0: 20 20 20 20 69 66 20 28 69 25 31 36 20 3d 3d 3d if (i%16 === 0002f3f0: 20 31 35 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 15) {\n 0002f400: 66 6f 72 20 28 6a 20 3d 20 30 3b 20 6a 20 3c 20 for (j = 0; j < 0002f410: 31 36 3b 20 6a 2b 2b 29 20 7b 5c 6e 20 20 20 20 16; j++) {\n 0002f420: 20 20 20 20 20 20 2f 2f 20 61 64 64 5c 6e 20 20 // add\n 0002f430: 20 20 20 20 20 20 20 20 68 20 3d 20 77 68 5b 6a h = wh[j 0002f440: 5d 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 6c 20 ];\n l 0002f450: 3d 20 77 6c 5b 6a 5d 3b 5c 6e 5c 6e 20 20 20 20 = wl[j];\n\n 0002f460: 20 20 20 20 20 20 61 20 3d 20 6c 20 26 20 30 78 a = l & 0x 0002f470: 66 66 66 66 3b 20 62 20 3d 20 6c 20 3e 3e 3e 20 ffff; b = l >>> 0002f480: 31 36 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 63 16;\n c 0002f490: 20 3d 20 68 20 26 20 30 78 66 66 66 66 3b 20 64 = h & 0xffff; d 0002f4a0: 20 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e = h >>> 16;\n\n 0002f4b0: 20 20 20 20 20 20 20 20 20 20 68 20 3d 20 77 68 h = wh 0002f4c0: 5b 28 6a 2b 39 29 25 31 36 5d 3b 5c 6e 20 20 20 [(j+9)%16];\n 0002f4d0: 20 20 20 20 20 20 20 6c 20 3d 20 77 6c 5b 28 6a l = wl[(j 0002f4e0: 2b 39 29 25 31 36 5d 3b 5c 6e 5c 6e 20 20 20 20 +9)%16];\n\n 0002f4f0: 20 20 20 20 20 20 61 20 2b 3d 20 6c 20 26 20 30 a += l & 0 0002f500: 78 66 66 66 66 3b 20 62 20 2b 3d 20 6c 20 3e 3e xffff; b += l >> 0002f510: 3e 20 31 36 3b 5c 6e 20 20 20 20 20 20 20 20 20 > 16;\n 0002f520: 20 63 20 2b 3d 20 68 20 26 20 30 78 66 66 66 66 c += h & 0xffff 0002f530: 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 3b ; d += h >>> 16; 0002f540: 5c 6e 5c 6e 20 20 20 20 20 20 20 20 20 20 2f 2f \n\n // 0002f550: 20 73 69 67 6d 61 30 5c 6e 20 20 20 20 20 20 20 sigma0\n 0002f560: 20 20 20 74 68 20 3d 20 77 68 5b 28 6a 2b 31 29 th = wh[(j+1) 0002f570: 25 31 36 5d 3b 5c 6e 20 20 20 20 20 20 20 20 20 %16];\n 0002f580: 20 74 6c 20 3d 20 77 6c 5b 28 6a 2b 31 29 25 31 tl = wl[(j+1)%1 0002f590: 36 5d 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 68 6];\n h 0002f5a0: 20 3d 20 28 28 74 68 20 3e 3e 3e 20 31 29 20 7c = ((th >>> 1) | 0002f5b0: 20 28 74 6c 20 3c 3c 20 28 33 32 2d 31 29 29 29 (tl << (32-1))) 0002f5c0: 20 5e 20 28 28 74 68 20 3e 3e 3e 20 38 29 20 7c ^ ((th >>> 8) | 0002f5d0: 20 28 74 6c 20 3c 3c 20 28 33 32 2d 38 29 29 29 (tl << (32-8))) 0002f5e0: 20 5e 20 28 74 68 20 3e 3e 3e 20 37 29 3b 5c 6e ^ (th >>> 7);\n 0002f5f0: 20 20 20 20 20 20 20 20 20 20 6c 20 3d 20 28 28 l = (( 0002f600: 74 6c 20 3e 3e 3e 20 31 29 20 7c 20 28 74 68 20 tl >>> 1) | (th 0002f610: 3c 3c 20 28 33 32 2d 31 29 29 29 20 5e 20 28 28 << (32-1))) ^ (( 0002f620: 74 6c 20 3e 3e 3e 20 38 29 20 7c 20 28 74 68 20 tl >>> 8) | (th 0002f630: 3c 3c 20 28 33 32 2d 38 29 29 29 20 5e 20 28 28 << (32-8))) ^ (( 0002f640: 74 6c 20 3e 3e 3e 20 37 29 20 7c 20 28 74 68 20 tl >>> 7) | (th 0002f650: 3c 3c 20 28 33 32 2d 37 29 29 29 3b 5c 6e 5c 6e << (32-7)));\n\n 0002f660: 20 20 20 20 20 20 20 20 20 20 61 20 2b 3d 20 6c a += l 0002f670: 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b 3d 20 & 0xffff; b += 0002f680: 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 20 l >>> 16;\n 0002f690: 20 20 20 20 20 63 20 2b 3d 20 68 20 26 20 30 78 c += h & 0x 0002f6a0: 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e ffff; d += h >>> 0002f6b0: 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 20 20 16;\n\n 0002f6c0: 20 20 2f 2f 20 73 69 67 6d 61 31 5c 6e 20 20 20 // sigma1\n 0002f6d0: 20 20 20 20 20 20 20 74 68 20 3d 20 77 68 5b 28 th = wh[( 0002f6e0: 6a 2b 31 34 29 25 31 36 5d 3b 5c 6e 20 20 20 20 j+14)%16];\n 0002f6f0: 20 20 20 20 20 20 74 6c 20 3d 20 77 6c 5b 28 6a tl = wl[(j 0002f700: 2b 31 34 29 25 31 36 5d 3b 5c 6e 20 20 20 20 20 +14)%16];\n 0002f710: 20 20 20 20 20 68 20 3d 20 28 28 74 68 20 3e 3e h = ((th >> 0002f720: 3e 20 31 39 29 20 7c 20 28 74 6c 20 3c 3c 20 28 > 19) | (tl << ( 0002f730: 33 32 2d 31 39 29 29 29 20 5e 20 28 28 74 6c 20 32-19))) ^ ((tl 0002f740: 3e 3e 3e 20 28 36 31 2d 33 32 29 29 20 7c 20 28 >>> (61-32)) | ( 0002f750: 74 68 20 3c 3c 20 28 33 32 2d 28 36 31 2d 33 32 th << (32-(61-32 0002f760: 29 29 29 29 20 5e 20 28 74 68 20 3e 3e 3e 20 36 )))) ^ (th >>> 6 0002f770: 29 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 6c 20 );\n l 0002f780: 3d 20 28 28 74 6c 20 3e 3e 3e 20 31 39 29 20 7c = ((tl >>> 19) | 0002f790: 20 28 74 68 20 3c 3c 20 28 33 32 2d 31 39 29 29 (th << (32-19)) 0002f7a0: 29 20 5e 20 28 28 74 68 20 3e 3e 3e 20 28 36 31 ) ^ ((th >>> (61 0002f7b0: 2d 33 32 29 29 20 7c 20 28 74 6c 20 3c 3c 20 28 -32)) | (tl << ( 0002f7c0: 33 32 2d 28 36 31 2d 33 32 29 29 29 29 20 5e 20 32-(61-32)))) ^ 0002f7d0: 28 28 74 6c 20 3e 3e 3e 20 36 29 20 7c 20 28 74 ((tl >>> 6) | (t 0002f7e0: 68 20 3c 3c 20 28 33 32 2d 36 29 29 29 3b 5c 6e h << (32-6)));\n 0002f7f0: 5c 6e 20 20 20 20 20 20 20 20 20 20 61 20 2b 3d \n a += 0002f800: 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b l & 0xffff; b + 0002f810: 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 = l >>> 16;\n 0002f820: 20 20 20 20 20 20 20 63 20 2b 3d 20 68 20 26 20 c += h & 0002f830: 30 78 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 3e 0xffff; d += h > 0002f840: 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 >> 16;\n\n 0002f850: 20 20 20 20 62 20 2b 3d 20 61 20 3e 3e 3e 20 31 b += a >>> 1 0002f860: 36 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 63 20 6;\n c 0002f870: 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 += b >>> 16;\n 0002f880: 20 20 20 20 20 20 20 20 64 20 2b 3d 20 63 20 3e d += c > 0002f890: 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 >> 16;\n\n 0002f8a0: 20 20 20 20 77 68 5b 6a 5d 20 3d 20 28 63 20 26 wh[j] = (c & 0002f8b0: 20 30 78 66 66 66 66 29 20 7c 20 28 64 20 3c 3c 0xffff) | (d << 0002f8c0: 20 31 36 29 3b 5c 6e 20 20 20 20 20 20 20 20 20 16);\n 0002f8d0: 20 77 6c 5b 6a 5d 20 3d 20 28 61 20 26 20 30 78 wl[j] = (a & 0x 0002f8e0: 66 66 66 66 29 20 7c 20 28 62 20 3c 3c 20 31 36 ffff) | (b << 16 0002f8f0: 29 3b 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 );\n }\n 0002f900: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c }\n }\n\ 0002f910: 6e 20 20 20 20 2f 2f 20 61 64 64 5c 6e 20 20 20 n // add\n 0002f920: 20 68 20 3d 20 61 68 30 3b 5c 6e 20 20 20 20 6c h = ah0;\n l 0002f930: 20 3d 20 61 6c 30 3b 5c 6e 5c 6e 20 20 20 20 61 = al0;\n\n a 0002f940: 20 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 = l & 0xffff; b 0002f950: 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 = l >>> 16;\n 0002f960: 20 20 63 20 3d 20 68 20 26 20 30 78 66 66 66 66 c = h & 0xffff 0002f970: 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c ; d = h >>> 16;\ 0002f980: 6e 5c 6e 20 20 20 20 68 20 3d 20 68 68 5b 30 5d n\n h = hh[0] 0002f990: 3b 5c 6e 20 20 20 20 6c 20 3d 20 68 6c 5b 30 5d ;\n l = hl[0] 0002f9a0: 3b 5c 6e 5c 6e 20 20 20 20 61 20 2b 3d 20 6c 20 ;\n\n a += l 0002f9b0: 26 20 30 78 66 66 66 66 3b 20 62 20 2b 3d 20 6c & 0xffff; b += l 0002f9c0: 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 >>> 16;\n c 0002f9d0: 2b 3d 20 68 20 26 20 30 78 66 66 66 66 3b 20 64 += h & 0xffff; d 0002f9e0: 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c += h >>> 16;\n\ 0002f9f0: 6e 20 20 20 20 62 20 2b 3d 20 61 20 3e 3e 3e 20 n b += a >>> 0002fa00: 31 36 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 62 20 16;\n c += b 0002fa10: 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 64 20 2b >>> 16;\n d + 0002fa20: 3d 20 63 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 = c >>> 16;\n\n 0002fa30: 20 20 20 68 68 5b 30 5d 20 3d 20 61 68 30 20 3d hh[0] = ah0 = 0002fa40: 20 28 63 20 26 20 30 78 66 66 66 66 29 20 7c 20 (c & 0xffff) | 0002fa50: 28 64 20 3c 3c 20 31 36 29 3b 5c 6e 20 20 20 20 (d << 16);\n 0002fa60: 68 6c 5b 30 5d 20 3d 20 61 6c 30 20 3d 20 28 61 hl[0] = al0 = (a 0002fa70: 20 26 20 30 78 66 66 66 66 29 20 7c 20 28 62 20 & 0xffff) | (b 0002fa80: 3c 3c 20 31 36 29 3b 5c 6e 5c 6e 20 20 20 20 68 << 16);\n\n h 0002fa90: 20 3d 20 61 68 31 3b 5c 6e 20 20 20 20 6c 20 3d = ah1;\n l = 0002faa0: 20 61 6c 31 3b 5c 6e 5c 6e 20 20 20 20 61 20 3d al1;\n\n a = 0002fab0: 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 3d l & 0xffff; b = 0002fac0: 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 l >>> 16;\n 0002fad0: 63 20 3d 20 68 20 26 20 30 78 66 66 66 66 3b 20 c = h & 0xffff; 0002fae0: 64 20 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c d = h >>> 16;\n\ 0002faf0: 6e 20 20 20 20 68 20 3d 20 68 68 5b 31 5d 3b 5c n h = hh[1];\ 0002fb00: 6e 20 20 20 20 6c 20 3d 20 68 6c 5b 31 5d 3b 5c n l = hl[1];\ 0002fb10: 6e 5c 6e 20 20 20 20 61 20 2b 3d 20 6c 20 26 20 n\n a += l & 0002fb20: 30 78 66 66 66 66 3b 20 62 20 2b 3d 20 6c 20 3e 0xffff; b += l > 0002fb30: 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 2b 3d >> 16;\n c += 0002fb40: 20 68 20 26 20 30 78 66 66 66 66 3b 20 64 20 2b h & 0xffff; d + 0002fb50: 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 = h >>> 16;\n\n 0002fb60: 20 20 20 62 20 2b 3d 20 61 20 3e 3e 3e 20 31 36 b += a >>> 16 0002fb70: 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 62 20 3e 3e ;\n c += b >> 0002fb80: 3e 20 31 36 3b 5c 6e 20 20 20 20 64 20 2b 3d 20 > 16;\n d += 0002fb90: 63 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 c >>> 16;\n\n 0002fba0: 20 68 68 5b 31 5d 20 3d 20 61 68 31 20 3d 20 28 hh[1] = ah1 = ( 0002fbb0: 63 20 26 20 30 78 66 66 66 66 29 20 7c 20 28 64 c & 0xffff) | (d 0002fbc0: 20 3c 3c 20 31 36 29 3b 5c 6e 20 20 20 20 68 6c << 16);\n hl 0002fbd0: 5b 31 5d 20 3d 20 61 6c 31 20 3d 20 28 61 20 26 [1] = al1 = (a & 0002fbe0: 20 30 78 66 66 66 66 29 20 7c 20 28 62 20 3c 3c 0xffff) | (b << 0002fbf0: 20 31 36 29 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d 16);\n\n h = 0002fc00: 20 61 68 32 3b 5c 6e 20 20 20 20 6c 20 3d 20 61 ah2;\n l = a 0002fc10: 6c 32 3b 5c 6e 5c 6e 20 20 20 20 61 20 3d 20 6c l2;\n\n a = l 0002fc20: 20 26 20 30 78 66 66 66 66 3b 20 62 20 3d 20 6c & 0xffff; b = l 0002fc30: 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 >>> 16;\n c 0002fc40: 3d 20 68 20 26 20 30 78 66 66 66 66 3b 20 64 20 = h & 0xffff; d 0002fc50: 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 = h >>> 16;\n\n 0002fc60: 20 20 20 68 20 3d 20 68 68 5b 32 5d 3b 5c 6e 20 h = hh[2];\n 0002fc70: 20 20 20 6c 20 3d 20 68 6c 5b 32 5d 3b 5c 6e 5c l = hl[2];\n\ 0002fc80: 6e 20 20 20 20 61 20 2b 3d 20 6c 20 26 20 30 78 n a += l & 0x 0002fc90: 66 66 66 66 3b 20 62 20 2b 3d 20 6c 20 3e 3e 3e ffff; b += l >>> 0002fca0: 20 31 36 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 68 16;\n c += h 0002fcb0: 20 26 20 30 78 66 66 66 66 3b 20 64 20 2b 3d 20 & 0xffff; d += 0002fcc0: 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 h >>> 16;\n\n 0002fcd0: 20 62 20 2b 3d 20 61 20 3e 3e 3e 20 31 36 3b 5c b += a >>> 16;\ 0002fce0: 6e 20 20 20 20 63 20 2b 3d 20 62 20 3e 3e 3e 20 n c += b >>> 0002fcf0: 31 36 3b 5c 6e 20 20 20 20 64 20 2b 3d 20 63 20 16;\n d += c 0002fd00: 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 >>> 16;\n\n h 0002fd10: 68 5b 32 5d 20 3d 20 61 68 32 20 3d 20 28 63 20 h[2] = ah2 = (c 0002fd20: 26 20 30 78 66 66 66 66 29 20 7c 20 28 64 20 3c & 0xffff) | (d < 0002fd30: 3c 20 31 36 29 3b 5c 6e 20 20 20 20 68 6c 5b 32 < 16);\n hl[2 0002fd40: 5d 20 3d 20 61 6c 32 20 3d 20 28 61 20 26 20 30 ] = al2 = (a & 0 0002fd50: 78 66 66 66 66 29 20 7c 20 28 62 20 3c 3c 20 31 xffff) | (b << 1 0002fd60: 36 29 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d 20 61 6);\n\n h = a 0002fd70: 68 33 3b 5c 6e 20 20 20 20 6c 20 3d 20 61 6c 33 h3;\n l = al3 0002fd80: 3b 5c 6e 5c 6e 20 20 20 20 61 20 3d 20 6c 20 26 ;\n\n a = l & 0002fd90: 20 30 78 66 66 66 66 3b 20 62 20 3d 20 6c 20 3e 0xffff; b = l > 0002fda0: 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 3d 20 >> 16;\n c = 0002fdb0: 68 20 26 20 30 78 66 66 66 66 3b 20 64 20 3d 20 h & 0xffff; d = 0002fdc0: 68 20 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 h >>> 16;\n\n 0002fdd0: 20 68 20 3d 20 68 68 5b 33 5d 3b 5c 6e 20 20 20 h = hh[3];\n 0002fde0: 20 6c 20 3d 20 68 6c 5b 33 5d 3b 5c 6e 5c 6e 20 l = hl[3];\n\n 0002fdf0: 20 20 20 61 20 2b 3d 20 6c 20 26 20 30 78 66 66 a += l & 0xff 0002fe00: 66 66 3b 20 62 20 2b 3d 20 6c 20 3e 3e 3e 20 31 ff; b += l >>> 1 0002fe10: 36 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 68 20 26 6;\n c += h & 0002fe20: 20 30 78 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 0xffff; d += h 0002fe30: 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 62 >>> 16;\n\n b 0002fe40: 20 2b 3d 20 61 20 3e 3e 3e 20 31 36 3b 5c 6e 20 += a >>> 16;\n 0002fe50: 20 20 20 63 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 c += b >>> 16 0002fe60: 3b 5c 6e 20 20 20 20 64 20 2b 3d 20 63 20 3e 3e ;\n d += c >> 0002fe70: 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 68 5b > 16;\n\n hh[ 0002fe80: 33 5d 20 3d 20 61 68 33 20 3d 20 28 63 20 26 20 3] = ah3 = (c & 0002fe90: 30 78 66 66 66 66 29 20 7c 20 28 64 20 3c 3c 20 0xffff) | (d << 0002fea0: 31 36 29 3b 5c 6e 20 20 20 20 68 6c 5b 33 5d 20 16);\n hl[3] 0002feb0: 3d 20 61 6c 33 20 3d 20 28 61 20 26 20 30 78 66 = al3 = (a & 0xf 0002fec0: 66 66 66 29 20 7c 20 28 62 20 3c 3c 20 31 36 29 fff) | (b << 16) 0002fed0: 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d 20 61 68 34 ;\n\n h = ah4 0002fee0: 3b 5c 6e 20 20 20 20 6c 20 3d 20 61 6c 34 3b 5c ;\n l = al4;\ 0002fef0: 6e 5c 6e 20 20 20 20 61 20 3d 20 6c 20 26 20 30 n\n a = l & 0 0002ff00: 78 66 66 66 66 3b 20 62 20 3d 20 6c 20 3e 3e 3e xffff; b = l >>> 0002ff10: 20 31 36 3b 5c 6e 20 20 20 20 63 20 3d 20 68 20 16;\n c = h 0002ff20: 26 20 30 78 66 66 66 66 3b 20 64 20 3d 20 68 20 & 0xffff; d = h 0002ff30: 3e 3e 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 >>> 16;\n\n h 0002ff40: 20 3d 20 68 68 5b 34 5d 3b 5c 6e 20 20 20 20 6c = hh[4];\n l 0002ff50: 20 3d 20 68 6c 5b 34 5d 3b 5c 6e 5c 6e 20 20 20 = hl[4];\n\n 0002ff60: 20 61 20 2b 3d 20 6c 20 26 20 30 78 66 66 66 66 a += l & 0xffff 0002ff70: 3b 20 62 20 2b 3d 20 6c 20 3e 3e 3e 20 31 36 3b ; b += l >>> 16; 0002ff80: 5c 6e 20 20 20 20 63 20 2b 3d 20 68 20 26 20 30 \n c += h & 0 0002ff90: 78 66 66 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e xffff; d += h >> 0002ffa0: 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 62 20 2b > 16;\n\n b + 0002ffb0: 3d 20 61 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 = a >>> 16;\n 0002ffc0: 20 63 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b 5c c += b >>> 16;\ 0002ffd0: 6e 20 20 20 20 64 20 2b 3d 20 63 20 3e 3e 3e 20 n d += c >>> 0002ffe0: 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 68 5b 34 5d 16;\n\n hh[4] 0002fff0: 20 3d 20 61 68 34 20 3d 20 28 63 20 26 20 30 78 = ah4 = (c & 0x 00030000: 66 66 66 66 29 20 7c 20 28 64 20 3c 3c 20 31 36 ffff) | (d << 16 00030010: 29 3b 5c 6e 20 20 20 20 68 6c 5b 34 5d 20 3d 20 );\n hl[4] = 00030020: 61 6c 34 20 3d 20 28 61 20 26 20 30 78 66 66 66 al4 = (a & 0xfff 00030030: 66 29 20 7c 20 28 62 20 3c 3c 20 31 36 29 3b 5c f) | (b << 16);\ 00030040: 6e 5c 6e 20 20 20 20 68 20 3d 20 61 68 35 3b 5c n\n h = ah5;\ 00030050: 6e 20 20 20 20 6c 20 3d 20 61 6c 35 3b 5c 6e 5c n l = al5;\n\ 00030060: 6e 20 20 20 20 61 20 3d 20 6c 20 26 20 30 78 66 n a = l & 0xf 00030070: 66 66 66 3b 20 62 20 3d 20 6c 20 3e 3e 3e 20 31 fff; b = l >>> 1 00030080: 36 3b 5c 6e 20 20 20 20 63 20 3d 20 68 20 26 20 6;\n c = h & 00030090: 30 78 66 66 66 66 3b 20 64 20 3d 20 68 20 3e 3e 0xffff; d = h >> 000300a0: 3e 20 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d > 16;\n\n h = 000300b0: 20 68 68 5b 35 5d 3b 5c 6e 20 20 20 20 6c 20 3d hh[5];\n l = 000300c0: 20 68 6c 5b 35 5d 3b 5c 6e 5c 6e 20 20 20 20 61 hl[5];\n\n a 000300d0: 20 2b 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 += l & 0xffff; 000300e0: 62 20 2b 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e b += l >>> 16;\n 000300f0: 20 20 20 20 63 20 2b 3d 20 68 20 26 20 30 78 66 c += h & 0xf 00030100: 66 66 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 fff; d += h >>> 00030110: 31 36 3b 5c 6e 5c 6e 20 20 20 20 62 20 2b 3d 20 16;\n\n b += 00030120: 61 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 a >>> 16;\n c 00030130: 20 2b 3d 20 62 20 3e 3e 3e 20 31 36 3b 5c 6e 20 += b >>> 16;\n 00030140: 20 20 20 64 20 2b 3d 20 63 20 3e 3e 3e 20 31 36 d += c >>> 16 00030150: 3b 5c 6e 5c 6e 20 20 20 20 68 68 5b 35 5d 20 3d ;\n\n hh[5] = 00030160: 20 61 68 35 20 3d 20 28 63 20 26 20 30 78 66 66 ah5 = (c & 0xff 00030170: 66 66 29 20 7c 20 28 64 20 3c 3c 20 31 36 29 3b ff) | (d << 16); 00030180: 5c 6e 20 20 20 20 68 6c 5b 35 5d 20 3d 20 61 6c \n hl[5] = al 00030190: 35 20 3d 20 28 61 20 26 20 30 78 66 66 66 66 29 5 = (a & 0xffff) 000301a0: 20 7c 20 28 62 20 3c 3c 20 31 36 29 3b 5c 6e 5c | (b << 16);\n\ 000301b0: 6e 20 20 20 20 68 20 3d 20 61 68 36 3b 5c 6e 20 n h = ah6;\n 000301c0: 20 20 20 6c 20 3d 20 61 6c 36 3b 5c 6e 5c 6e 20 l = al6;\n\n 000301d0: 20 20 20 61 20 3d 20 6c 20 26 20 30 78 66 66 66 a = l & 0xfff 000301e0: 66 3b 20 62 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b f; b = l >>> 16; 000301f0: 5c 6e 20 20 20 20 63 20 3d 20 68 20 26 20 30 78 \n c = h & 0x 00030200: 66 66 66 66 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 ffff; d = h >>> 00030210: 31 36 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d 20 68 16;\n\n h = h 00030220: 68 5b 36 5d 3b 5c 6e 20 20 20 20 6c 20 3d 20 68 h[6];\n l = h 00030230: 6c 5b 36 5d 3b 5c 6e 5c 6e 20 20 20 20 61 20 2b l[6];\n\n a + 00030240: 3d 20 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 = l & 0xffff; b 00030250: 2b 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 += l >>> 16;\n 00030260: 20 20 63 20 2b 3d 20 68 20 26 20 30 78 66 66 66 c += h & 0xfff 00030270: 66 3b 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 f; d += h >>> 16 00030280: 3b 5c 6e 5c 6e 20 20 20 20 62 20 2b 3d 20 61 20 ;\n\n b += a 00030290: 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 2b >>> 16;\n c + 000302a0: 3d 20 62 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 = b >>> 16;\n 000302b0: 20 64 20 2b 3d 20 63 20 3e 3e 3e 20 31 36 3b 5c d += c >>> 16;\ 000302c0: 6e 5c 6e 20 20 20 20 68 68 5b 36 5d 20 3d 20 61 n\n hh[6] = a 000302d0: 68 36 20 3d 20 28 63 20 26 20 30 78 66 66 66 66 h6 = (c & 0xffff 000302e0: 29 20 7c 20 28 64 20 3c 3c 20 31 36 29 3b 5c 6e ) | (d << 16);\n 000302f0: 20 20 20 20 68 6c 5b 36 5d 20 3d 20 61 6c 36 20 hl[6] = al6 00030300: 3d 20 28 61 20 26 20 30 78 66 66 66 66 29 20 7c = (a & 0xffff) | 00030310: 20 28 62 20 3c 3c 20 31 36 29 3b 5c 6e 5c 6e 20 (b << 16);\n\n 00030320: 20 20 20 68 20 3d 20 61 68 37 3b 5c 6e 20 20 20 h = ah7;\n 00030330: 20 6c 20 3d 20 61 6c 37 3b 5c 6e 5c 6e 20 20 20 l = al7;\n\n 00030340: 20 61 20 3d 20 6c 20 26 20 30 78 66 66 66 66 3b a = l & 0xffff; 00030350: 20 62 20 3d 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e b = l >>> 16;\n 00030360: 20 20 20 20 63 20 3d 20 68 20 26 20 30 78 66 66 c = h & 0xff 00030370: 66 66 3b 20 64 20 3d 20 68 20 3e 3e 3e 20 31 36 ff; d = h >>> 16 00030380: 3b 5c 6e 5c 6e 20 20 20 20 68 20 3d 20 68 68 5b ;\n\n h = hh[ 00030390: 37 5d 3b 5c 6e 20 20 20 20 6c 20 3d 20 68 6c 5b 7];\n l = hl[ 000303a0: 37 5d 3b 5c 6e 5c 6e 20 20 20 20 61 20 2b 3d 20 7];\n\n a += 000303b0: 6c 20 26 20 30 78 66 66 66 66 3b 20 62 20 2b 3d l & 0xffff; b += 000303c0: 20 6c 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 l >>> 16;\n 000303d0: 63 20 2b 3d 20 68 20 26 20 30 78 66 66 66 66 3b c += h & 0xffff; 000303e0: 20 64 20 2b 3d 20 68 20 3e 3e 3e 20 31 36 3b 5c d += h >>> 16;\ 000303f0: 6e 5c 6e 20 20 20 20 62 20 2b 3d 20 61 20 3e 3e n\n b += a >> 00030400: 3e 20 31 36 3b 5c 6e 20 20 20 20 63 20 2b 3d 20 > 16;\n c += 00030410: 62 20 3e 3e 3e 20 31 36 3b 5c 6e 20 20 20 20 64 b >>> 16;\n d 00030420: 20 2b 3d 20 63 20 3e 3e 3e 20 31 36 3b 5c 6e 5c += c >>> 16;\n\ 00030430: 6e 20 20 20 20 68 68 5b 37 5d 20 3d 20 61 68 37 n hh[7] = ah7 00030440: 20 3d 20 28 63 20 26 20 30 78 66 66 66 66 29 20 = (c & 0xffff) 00030450: 7c 20 28 64 20 3c 3c 20 31 36 29 3b 5c 6e 20 20 | (d << 16);\n 00030460: 20 20 68 6c 5b 37 5d 20 3d 20 61 6c 37 20 3d 20 hl[7] = al7 = 00030470: 28 61 20 26 20 30 78 66 66 66 66 29 20 7c 20 28 (a & 0xffff) | ( 00030480: 62 20 3c 3c 20 31 36 29 3b 5c 6e 5c 6e 20 20 20 b << 16);\n\n 00030490: 20 70 6f 73 20 2b 3d 20 31 32 38 3b 5c 6e 20 20 pos += 128;\n 000304a0: 20 20 6e 20 2d 3d 20 31 32 38 3b 5c 6e 20 20 7d n -= 128;\n } 000304b0: 5c 6e 5c 6e 20 20 72 65 74 75 72 6e 20 6e 3b 5c \n\n return n;\ 000304c0: 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 n}\n\nfunction c 000304d0: 72 79 70 74 6f 5f 68 61 73 68 28 6f 75 74 2c 20 rypto_hash(out, 000304e0: 6d 2c 20 6e 29 20 7b 5c 6e 20 20 76 61 72 20 68 m, n) {\n var h 000304f0: 68 20 3d 20 6e 65 77 20 49 6e 74 33 32 41 72 72 h = new Int32Arr 00030500: 61 79 28 38 29 2c 5c 6e 20 20 20 20 20 20 68 6c ay(8),\n hl 00030510: 20 3d 20 6e 65 77 20 49 6e 74 33 32 41 72 72 61 = new Int32Arra 00030520: 79 28 38 29 2c 5c 6e 20 20 20 20 20 20 78 20 3d y(8),\n x = 00030530: 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 new Uint8Array( 00030540: 32 35 36 29 2c 5c 6e 20 20 20 20 20 20 69 2c 20 256),\n i, 00030550: 62 20 3d 20 6e 3b 5c 6e 5c 6e 20 20 68 68 5b 30 b = n;\n\n hh[0 00030560: 5d 20 3d 20 30 78 36 61 30 39 65 36 36 37 3b 5c ] = 0x6a09e667;\ 00030570: 6e 20 20 68 68 5b 31 5d 20 3d 20 30 78 62 62 36 n hh[1] = 0xbb6 00030580: 37 61 65 38 35 3b 5c 6e 20 20 68 68 5b 32 5d 20 7ae85;\n hh[2] 00030590: 3d 20 30 78 33 63 36 65 66 33 37 32 3b 5c 6e 20 = 0x3c6ef372;\n 000305a0: 20 68 68 5b 33 5d 20 3d 20 30 78 61 35 34 66 66 hh[3] = 0xa54ff 000305b0: 35 33 61 3b 5c 6e 20 20 68 68 5b 34 5d 20 3d 20 53a;\n hh[4] = 000305c0: 30 78 35 31 30 65 35 32 37 66 3b 5c 6e 20 20 68 0x510e527f;\n h 000305d0: 68 5b 35 5d 20 3d 20 30 78 39 62 30 35 36 38 38 h[5] = 0x9b05688 000305e0: 63 3b 5c 6e 20 20 68 68 5b 36 5d 20 3d 20 30 78 c;\n hh[6] = 0x 000305f0: 31 66 38 33 64 39 61 62 3b 5c 6e 20 20 68 68 5b 1f83d9ab;\n hh[ 00030600: 37 5d 20 3d 20 30 78 35 62 65 30 63 64 31 39 3b 7] = 0x5be0cd19; 00030610: 5c 6e 5c 6e 20 20 68 6c 5b 30 5d 20 3d 20 30 78 \n\n hl[0] = 0x 00030620: 66 33 62 63 63 39 30 38 3b 5c 6e 20 20 68 6c 5b f3bcc908;\n hl[ 00030630: 31 5d 20 3d 20 30 78 38 34 63 61 61 37 33 62 3b 1] = 0x84caa73b; 00030640: 5c 6e 20 20 68 6c 5b 32 5d 20 3d 20 30 78 66 65 \n hl[2] = 0xfe 00030650: 39 34 66 38 32 62 3b 5c 6e 20 20 68 6c 5b 33 5d 94f82b;\n hl[3] 00030660: 20 3d 20 30 78 35 66 31 64 33 36 66 31 3b 5c 6e = 0x5f1d36f1;\n 00030670: 20 20 68 6c 5b 34 5d 20 3d 20 30 78 61 64 65 36 hl[4] = 0xade6 00030680: 38 32 64 31 3b 5c 6e 20 20 68 6c 5b 35 5d 20 3d 82d1;\n hl[5] = 00030690: 20 30 78 32 62 33 65 36 63 31 66 3b 5c 6e 20 20 0x2b3e6c1f;\n 000306a0: 68 6c 5b 36 5d 20 3d 20 30 78 66 62 34 31 62 64 hl[6] = 0xfb41bd 000306b0: 36 62 3b 5c 6e 20 20 68 6c 5b 37 5d 20 3d 20 30 6b;\n hl[7] = 0 000306c0: 78 31 33 37 65 32 31 37 39 3b 5c 6e 5c 6e 20 20 x137e2179;\n\n 000306d0: 63 72 79 70 74 6f 5f 68 61 73 68 62 6c 6f 63 6b crypto_hashblock 000306e0: 73 5f 68 6c 28 68 68 2c 20 68 6c 2c 20 6d 2c 20 s_hl(hh, hl, m, 000306f0: 6e 29 3b 5c 6e 20 20 6e 20 25 3d 20 31 32 38 3b n);\n n %= 128; 00030700: 5c 6e 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 \n\n for (i = 0 00030710: 3b 20 69 20 3c 20 6e 3b 20 69 2b 2b 29 20 78 5b ; i < n; i++) x[ 00030720: 69 5d 20 3d 20 6d 5b 62 2d 6e 2b 69 5d 3b 5c 6e i] = m[b-n+i];\n 00030730: 20 20 78 5b 6e 5d 20 3d 20 31 32 38 3b 5c 6e 5c x[n] = 128;\n\ 00030740: 6e 20 20 6e 20 3d 20 32 35 36 2d 31 32 38 2a 28 n n = 256-128*( 00030750: 6e 3c 31 31 32 3f 31 3a 30 29 3b 5c 6e 20 20 78 n<112?1:0);\n x 00030760: 5b 6e 2d 39 5d 20 3d 20 30 3b 5c 6e 20 20 74 73 [n-9] = 0;\n ts 00030770: 36 34 28 78 2c 20 6e 2d 38 2c 20 20 28 62 20 2f 64(x, n-8, (b / 00030780: 20 30 78 32 30 30 30 30 30 30 30 29 20 7c 20 30 0x20000000) | 0 00030790: 2c 20 62 20 3c 3c 20 33 29 3b 5c 6e 20 20 63 72 , b << 3);\n cr 000307a0: 79 70 74 6f 5f 68 61 73 68 62 6c 6f 63 6b 73 5f ypto_hashblocks_ 000307b0: 68 6c 28 68 68 2c 20 68 6c 2c 20 78 2c 20 6e 29 hl(hh, hl, x, n) 000307c0: 3b 5c 6e 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 ;\n\n for (i = 000307d0: 30 3b 20 69 20 3c 20 38 3b 20 69 2b 2b 29 20 74 0; i < 8; i++) t 000307e0: 73 36 34 28 6f 75 74 2c 20 38 2a 69 2c 20 68 68 s64(out, 8*i, hh 000307f0: 5b 69 5d 2c 20 68 6c 5b 69 5d 29 3b 5c 6e 5c 6e [i], hl[i]);\n\n 00030800: 20 20 72 65 74 75 72 6e 20 30 3b 5c 6e 7d 5c 6e return 0;\n}\n 00030810: 5c 6e 66 75 6e 63 74 69 6f 6e 20 61 64 64 28 70 \nfunction add(p 00030820: 2c 20 71 29 20 7b 5c 6e 20 20 76 61 72 20 61 20 , q) {\n var a 00030830: 3d 20 67 66 28 29 2c 20 62 20 3d 20 67 66 28 29 = gf(), b = gf() 00030840: 2c 20 63 20 3d 20 67 66 28 29 2c 5c 6e 20 20 20 , c = gf(),\n 00030850: 20 20 20 64 20 3d 20 67 66 28 29 2c 20 65 20 3d d = gf(), e = 00030860: 20 67 66 28 29 2c 20 66 20 3d 20 67 66 28 29 2c gf(), f = gf(), 00030870: 5c 6e 20 20 20 20 20 20 67 20 3d 20 67 66 28 29 \n g = gf() 00030880: 2c 20 68 20 3d 20 67 66 28 29 2c 20 74 20 3d 20 , h = gf(), t = 00030890: 67 66 28 29 3b 5c 6e 5c 6e 20 20 5a 28 61 2c 20 gf();\n\n Z(a, 000308a0: 70 5b 31 5d 2c 20 70 5b 30 5d 29 3b 5c 6e 20 20 p[1], p[0]);\n 000308b0: 5a 28 74 2c 20 71 5b 31 5d 2c 20 71 5b 30 5d 29 Z(t, q[1], q[0]) 000308c0: 3b 5c 6e 20 20 4d 28 61 2c 20 61 2c 20 74 29 3b ;\n M(a, a, t); 000308d0: 5c 6e 20 20 41 28 62 2c 20 70 5b 30 5d 2c 20 70 \n A(b, p[0], p 000308e0: 5b 31 5d 29 3b 5c 6e 20 20 41 28 74 2c 20 71 5b [1]);\n A(t, q[ 000308f0: 30 5d 2c 20 71 5b 31 5d 29 3b 5c 6e 20 20 4d 28 0], q[1]);\n M( 00030900: 62 2c 20 62 2c 20 74 29 3b 5c 6e 20 20 4d 28 63 b, b, t);\n M(c 00030910: 2c 20 70 5b 33 5d 2c 20 71 5b 33 5d 29 3b 5c 6e , p[3], q[3]);\n 00030920: 20 20 4d 28 63 2c 20 63 2c 20 44 32 29 3b 5c 6e M(c, c, D2);\n 00030930: 20 20 4d 28 64 2c 20 70 5b 32 5d 2c 20 71 5b 32 M(d, p[2], q[2 00030940: 5d 29 3b 5c 6e 20 20 41 28 64 2c 20 64 2c 20 64 ]);\n A(d, d, d 00030950: 29 3b 5c 6e 20 20 5a 28 65 2c 20 62 2c 20 61 29 );\n Z(e, b, a) 00030960: 3b 5c 6e 20 20 5a 28 66 2c 20 64 2c 20 63 29 3b ;\n Z(f, d, c); 00030970: 5c 6e 20 20 41 28 67 2c 20 64 2c 20 63 29 3b 5c \n A(g, d, c);\ 00030980: 6e 20 20 41 28 68 2c 20 62 2c 20 61 29 3b 5c 6e n A(h, b, a);\n 00030990: 5c 6e 20 20 4d 28 70 5b 30 5d 2c 20 65 2c 20 66 \n M(p[0], e, f 000309a0: 29 3b 5c 6e 20 20 4d 28 70 5b 31 5d 2c 20 68 2c );\n M(p[1], h, 000309b0: 20 67 29 3b 5c 6e 20 20 4d 28 70 5b 32 5d 2c 20 g);\n M(p[2], 000309c0: 67 2c 20 66 29 3b 5c 6e 20 20 4d 28 70 5b 33 5d g, f);\n M(p[3] 000309d0: 2c 20 65 2c 20 68 29 3b 5c 6e 7d 5c 6e 5c 6e 66 , e, h);\n}\n\nf 000309e0: 75 6e 63 74 69 6f 6e 20 63 73 77 61 70 28 70 2c unction cswap(p, 000309f0: 20 71 2c 20 62 29 20 7b 5c 6e 20 20 76 61 72 20 q, b) {\n var 00030a00: 69 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 i;\n for (i = 0 00030a10: 3b 20 69 20 3c 20 34 3b 20 69 2b 2b 29 20 7b 5c ; i < 4; i++) {\ 00030a20: 6e 20 20 20 20 73 65 6c 32 35 35 31 39 28 70 5b n sel25519(p[ 00030a30: 69 5d 2c 20 71 5b 69 5d 2c 20 62 29 3b 5c 6e 20 i], q[i], b);\n 00030a40: 20 7d 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f }\n}\n\nfunctio 00030a50: 6e 20 70 61 63 6b 28 72 2c 20 70 29 20 7b 5c 6e n pack(r, p) {\n 00030a60: 20 20 76 61 72 20 74 78 20 3d 20 67 66 28 29 2c var tx = gf(), 00030a70: 20 74 79 20 3d 20 67 66 28 29 2c 20 7a 69 20 3d ty = gf(), zi = 00030a80: 20 67 66 28 29 3b 5c 6e 20 20 69 6e 76 32 35 35 gf();\n inv255 00030a90: 31 39 28 7a 69 2c 20 70 5b 32 5d 29 3b 5c 6e 20 19(zi, p[2]);\n 00030aa0: 20 4d 28 74 78 2c 20 70 5b 30 5d 2c 20 7a 69 29 M(tx, p[0], zi) 00030ab0: 3b 5c 6e 20 20 4d 28 74 79 2c 20 70 5b 31 5d 2c ;\n M(ty, p[1], 00030ac0: 20 7a 69 29 3b 5c 6e 20 20 70 61 63 6b 32 35 35 zi);\n pack255 00030ad0: 31 39 28 72 2c 20 74 79 29 3b 5c 6e 20 20 72 5b 19(r, ty);\n r[ 00030ae0: 33 31 5d 20 5e 3d 20 70 61 72 32 35 35 31 39 28 31] ^= par25519( 00030af0: 74 78 29 20 3c 3c 20 37 3b 5c 6e 7d 5c 6e 5c 6e tx) << 7;\n}\n\n 00030b00: 66 75 6e 63 74 69 6f 6e 20 73 63 61 6c 61 72 6d function scalarm 00030b10: 75 6c 74 28 70 2c 20 71 2c 20 73 29 20 7b 5c 6e ult(p, q, s) {\n 00030b20: 20 20 76 61 72 20 62 2c 20 69 3b 5c 6e 20 20 73 var b, i;\n s 00030b30: 65 74 32 35 35 31 39 28 70 5b 30 5d 2c 20 67 66 et25519(p[0], gf 00030b40: 30 29 3b 5c 6e 20 20 73 65 74 32 35 35 31 39 28 0);\n set25519( 00030b50: 70 5b 31 5d 2c 20 67 66 31 29 3b 5c 6e 20 20 73 p[1], gf1);\n s 00030b60: 65 74 32 35 35 31 39 28 70 5b 32 5d 2c 20 67 66 et25519(p[2], gf 00030b70: 31 29 3b 5c 6e 20 20 73 65 74 32 35 35 31 39 28 1);\n set25519( 00030b80: 70 5b 33 5d 2c 20 67 66 30 29 3b 5c 6e 20 20 66 p[3], gf0);\n f 00030b90: 6f 72 20 28 69 20 3d 20 32 35 35 3b 20 69 20 3e or (i = 255; i > 00030ba0: 3d 20 30 3b 20 2d 2d 69 29 20 7b 5c 6e 20 20 20 = 0; --i) {\n 00030bb0: 20 62 20 3d 20 28 73 5b 28 69 2f 38 29 7c 30 5d b = (s[(i/8)|0] 00030bc0: 20 3e 3e 20 28 69 26 37 29 29 20 26 20 31 3b 5c >> (i&7)) & 1;\ 00030bd0: 6e 20 20 20 20 63 73 77 61 70 28 70 2c 20 71 2c n cswap(p, q, 00030be0: 20 62 29 3b 5c 6e 20 20 20 20 61 64 64 28 71 2c b);\n add(q, 00030bf0: 20 70 29 3b 5c 6e 20 20 20 20 61 64 64 28 70 2c p);\n add(p, 00030c00: 20 70 29 3b 5c 6e 20 20 20 20 63 73 77 61 70 28 p);\n cswap( 00030c10: 70 2c 20 71 2c 20 62 29 3b 5c 6e 20 20 7d 5c 6e p, q, b);\n }\n 00030c20: 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 73 63 }\n\nfunction sc 00030c30: 61 6c 61 72 62 61 73 65 28 70 2c 20 73 29 20 7b alarbase(p, s) { 00030c40: 5c 6e 20 20 76 61 72 20 71 20 3d 20 5b 67 66 28 \n var q = [gf( 00030c50: 29 2c 20 67 66 28 29 2c 20 67 66 28 29 2c 20 67 ), gf(), gf(), g 00030c60: 66 28 29 5d 3b 5c 6e 20 20 73 65 74 32 35 35 31 f()];\n set2551 00030c70: 39 28 71 5b 30 5d 2c 20 58 29 3b 5c 6e 20 20 73 9(q[0], X);\n s 00030c80: 65 74 32 35 35 31 39 28 71 5b 31 5d 2c 20 59 29 et25519(q[1], Y) 00030c90: 3b 5c 6e 20 20 73 65 74 32 35 35 31 39 28 71 5b ;\n set25519(q[ 00030ca0: 32 5d 2c 20 67 66 31 29 3b 5c 6e 20 20 4d 28 71 2], gf1);\n M(q 00030cb0: 5b 33 5d 2c 20 58 2c 20 59 29 3b 5c 6e 20 20 73 [3], X, Y);\n s 00030cc0: 63 61 6c 61 72 6d 75 6c 74 28 70 2c 20 71 2c 20 calarmult(p, q, 00030cd0: 73 29 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 s);\n}\n\nfuncti 00030ce0: 6f 6e 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 6b on crypto_sign_k 00030cf0: 65 79 70 61 69 72 28 70 6b 2c 20 73 6b 2c 20 73 eypair(pk, sk, s 00030d00: 65 65 64 65 64 29 20 7b 5c 6e 20 20 76 61 72 20 eeded) {\n var 00030d10: 64 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 d = new Uint8Arr 00030d20: 61 79 28 36 34 29 3b 5c 6e 20 20 76 61 72 20 70 ay(64);\n var p 00030d30: 20 3d 20 5b 67 66 28 29 2c 20 67 66 28 29 2c 20 = [gf(), gf(), 00030d40: 67 66 28 29 2c 20 67 66 28 29 5d 3b 5c 6e 20 20 gf(), gf()];\n 00030d50: 76 61 72 20 69 3b 5c 6e 5c 6e 20 20 69 66 20 28 var i;\n\n if ( 00030d60: 21 73 65 65 64 65 64 29 20 72 61 6e 64 6f 6d 62 !seeded) randomb 00030d70: 79 74 65 73 28 73 6b 2c 20 33 32 29 3b 5c 6e 20 ytes(sk, 32);\n 00030d80: 20 63 72 79 70 74 6f 5f 68 61 73 68 28 64 2c 20 crypto_hash(d, 00030d90: 73 6b 2c 20 33 32 29 3b 5c 6e 20 20 64 5b 30 5d sk, 32);\n d[0] 00030da0: 20 26 3d 20 32 34 38 3b 5c 6e 20 20 64 5b 33 31 &= 248;\n d[31 00030db0: 5d 20 26 3d 20 31 32 37 3b 5c 6e 20 20 64 5b 33 ] &= 127;\n d[3 00030dc0: 31 5d 20 7c 3d 20 36 34 3b 5c 6e 5c 6e 20 20 73 1] |= 64;\n\n s 00030dd0: 63 61 6c 61 72 62 61 73 65 28 70 2c 20 64 29 3b calarbase(p, d); 00030de0: 5c 6e 20 20 70 61 63 6b 28 70 6b 2c 20 70 29 3b \n pack(pk, p); 00030df0: 5c 6e 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 \n\n for (i = 0 00030e00: 3b 20 69 20 3c 20 33 32 3b 20 69 2b 2b 29 20 73 ; i < 32; i++) s 00030e10: 6b 5b 69 2b 33 32 5d 20 3d 20 70 6b 5b 69 5d 3b k[i+32] = pk[i]; 00030e20: 5c 6e 20 20 72 65 74 75 72 6e 20 30 3b 5c 6e 7d \n return 0;\n} 00030e30: 5c 6e 5c 6e 76 61 72 20 4c 20 3d 20 6e 65 77 20 \n\nvar L = new 00030e40: 46 6c 6f 61 74 36 34 41 72 72 61 79 28 5b 30 78 Float64Array([0x 00030e50: 65 64 2c 20 30 78 64 33 2c 20 30 78 66 35 2c 20 ed, 0xd3, 0xf5, 00030e60: 30 78 35 63 2c 20 30 78 31 61 2c 20 30 78 36 33 0x5c, 0x1a, 0x63 00030e70: 2c 20 30 78 31 32 2c 20 30 78 35 38 2c 20 30 78 , 0x12, 0x58, 0x 00030e80: 64 36 2c 20 30 78 39 63 2c 20 30 78 66 37 2c 20 d6, 0x9c, 0xf7, 00030e90: 30 78 61 32 2c 20 30 78 64 65 2c 20 30 78 66 39 0xa2, 0xde, 0xf9 00030ea0: 2c 20 30 78 64 65 2c 20 30 78 31 34 2c 20 30 2c , 0xde, 0x14, 0, 00030eb0: 20 30 2c 20 30 2c 20 30 2c 20 30 2c 20 30 2c 20 0, 0, 0, 0, 0, 00030ec0: 30 2c 20 30 2c 20 30 2c 20 30 2c 20 30 2c 20 30 0, 0, 0, 0, 0, 0 00030ed0: 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78 31 30 5d , 0, 0, 0, 0x10] 00030ee0: 29 3b 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 6d );\n\nfunction m 00030ef0: 6f 64 4c 28 72 2c 20 78 29 20 7b 5c 6e 20 20 76 odL(r, x) {\n v 00030f00: 61 72 20 63 61 72 72 79 2c 20 69 2c 20 6a 2c 20 ar carry, i, j, 00030f10: 6b 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 36 k;\n for (i = 6 00030f20: 33 3b 20 69 20 3e 3d 20 33 32 3b 20 2d 2d 69 29 3; i >= 32; --i) 00030f30: 20 7b 5c 6e 20 20 20 20 63 61 72 72 79 20 3d 20 {\n carry = 00030f40: 30 3b 5c 6e 20 20 20 20 66 6f 72 20 28 6a 20 3d 0;\n for (j = 00030f50: 20 69 20 2d 20 33 32 2c 20 6b 20 3d 20 69 20 2d i - 32, k = i - 00030f60: 20 31 32 3b 20 6a 20 3c 20 6b 3b 20 2b 2b 6a 29 12; j < k; ++j) 00030f70: 20 7b 5c 6e 20 20 20 20 20 20 78 5b 6a 5d 20 2b {\n x[j] + 00030f80: 3d 20 63 61 72 72 79 20 2d 20 31 36 20 2a 20 78 = carry - 16 * x 00030f90: 5b 69 5d 20 2a 20 4c 5b 6a 20 2d 20 28 69 20 2d [i] * L[j - (i - 00030fa0: 20 33 32 29 5d 3b 5c 6e 20 20 20 20 20 20 63 61 32)];\n ca 00030fb0: 72 72 79 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 rry = Math.floor 00030fc0: 28 28 78 5b 6a 5d 20 2b 20 31 32 38 29 20 2f 20 ((x[j] + 128) / 00030fd0: 32 35 36 29 3b 5c 6e 20 20 20 20 20 20 78 5b 6a 256);\n x[j 00030fe0: 5d 20 2d 3d 20 63 61 72 72 79 20 2a 20 32 35 36 ] -= carry * 256 00030ff0: 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 78 5b ;\n }\n x[ 00031000: 6a 5d 20 2b 3d 20 63 61 72 72 79 3b 5c 6e 20 20 j] += carry;\n 00031010: 20 20 78 5b 69 5d 20 3d 20 30 3b 5c 6e 20 20 7d x[i] = 0;\n } 00031020: 5c 6e 20 20 63 61 72 72 79 20 3d 20 30 3b 5c 6e \n carry = 0;\n 00031030: 20 20 66 6f 72 20 28 6a 20 3d 20 30 3b 20 6a 20 for (j = 0; j 00031040: 3c 20 33 32 3b 20 6a 2b 2b 29 20 7b 5c 6e 20 20 < 32; j++) {\n 00031050: 20 20 78 5b 6a 5d 20 2b 3d 20 63 61 72 72 79 20 x[j] += carry 00031060: 2d 20 28 78 5b 33 31 5d 20 3e 3e 20 34 29 20 2a - (x[31] >> 4) * 00031070: 20 4c 5b 6a 5d 3b 5c 6e 20 20 20 20 63 61 72 72 L[j];\n carr 00031080: 79 20 3d 20 78 5b 6a 5d 20 3e 3e 20 38 3b 5c 6e y = x[j] >> 8;\n 00031090: 20 20 20 20 78 5b 6a 5d 20 26 3d 20 32 35 35 3b x[j] &= 255; 000310a0: 5c 6e 20 20 7d 5c 6e 20 20 66 6f 72 20 28 6a 20 \n }\n for (j 000310b0: 3d 20 30 3b 20 6a 20 3c 20 33 32 3b 20 6a 2b 2b = 0; j < 32; j++ 000310c0: 29 20 78 5b 6a 5d 20 2d 3d 20 63 61 72 72 79 20 ) x[j] -= carry 000310d0: 2a 20 4c 5b 6a 5d 3b 5c 6e 20 20 66 6f 72 20 28 * L[j];\n for ( 000310e0: 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 3b 20 69 i = 0; i < 32; i 000310f0: 2b 2b 29 20 7b 5c 6e 20 20 20 20 78 5b 69 2b 31 ++) {\n x[i+1 00031100: 5d 20 2b 3d 20 78 5b 69 5d 20 3e 3e 20 38 3b 5c ] += x[i] >> 8;\ 00031110: 6e 20 20 20 20 72 5b 69 5d 20 3d 20 78 5b 69 5d n r[i] = x[i] 00031120: 20 26 20 32 35 35 3b 5c 6e 20 20 7d 5c 6e 7d 5c & 255;\n }\n}\ 00031130: 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 72 65 64 75 n\nfunction redu 00031140: 63 65 28 72 29 20 7b 5c 6e 20 20 76 61 72 20 78 ce(r) {\n var x 00031150: 20 3d 20 6e 65 77 20 46 6c 6f 61 74 36 34 41 72 = new Float64Ar 00031160: 72 61 79 28 36 34 29 2c 20 69 3b 5c 6e 20 20 66 ray(64), i;\n f 00031170: 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 36 or (i = 0; i < 6 00031180: 34 3b 20 69 2b 2b 29 20 78 5b 69 5d 20 3d 20 72 4; i++) x[i] = r 00031190: 5b 69 5d 3b 5c 6e 20 20 66 6f 72 20 28 69 20 3d [i];\n for (i = 000311a0: 20 30 3b 20 69 20 3c 20 36 34 3b 20 69 2b 2b 29 0; i < 64; i++) 000311b0: 20 72 5b 69 5d 20 3d 20 30 3b 5c 6e 20 20 6d 6f r[i] = 0;\n mo 000311c0: 64 4c 28 72 2c 20 78 29 3b 5c 6e 7d 5c 6e 5c 6e dL(r, x);\n}\n\n 000311d0: 2f 2f 20 4e 6f 74 65 3a 20 64 69 66 66 65 72 65 // Note: differe 000311e0: 6e 63 65 20 66 72 6f 6d 20 43 20 2d 20 73 6d 6c nce from C - sml 000311f0: 65 6e 20 72 65 74 75 72 6e 65 64 2c 20 6e 6f 74 en returned, not 00031200: 20 70 61 73 73 65 64 20 61 73 20 61 72 67 75 6d passed as argum 00031210: 65 6e 74 2e 5c 6e 66 75 6e 63 74 69 6f 6e 20 63 ent.\nfunction c 00031220: 72 79 70 74 6f 5f 73 69 67 6e 28 73 6d 2c 20 6d rypto_sign(sm, m 00031230: 2c 20 6e 2c 20 73 6b 29 20 7b 5c 6e 20 20 76 61 , n, sk) {\n va 00031240: 72 20 64 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 r d = new Uint8A 00031250: 72 72 61 79 28 36 34 29 2c 20 68 20 3d 20 6e 65 rray(64), h = ne 00031260: 77 20 55 69 6e 74 38 41 72 72 61 79 28 36 34 29 w Uint8Array(64) 00031270: 2c 20 72 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 , r = new Uint8A 00031280: 72 72 61 79 28 36 34 29 3b 5c 6e 20 20 76 61 72 rray(64);\n var 00031290: 20 69 2c 20 6a 2c 20 78 20 3d 20 6e 65 77 20 46 i, j, x = new F 000312a0: 6c 6f 61 74 36 34 41 72 72 61 79 28 36 34 29 3b loat64Array(64); 000312b0: 5c 6e 20 20 76 61 72 20 70 20 3d 20 5b 67 66 28 \n var p = [gf( 000312c0: 29 2c 20 67 66 28 29 2c 20 67 66 28 29 2c 20 67 ), gf(), gf(), g 000312d0: 66 28 29 5d 3b 5c 6e 5c 6e 20 20 63 72 79 70 74 f()];\n\n crypt 000312e0: 6f 5f 68 61 73 68 28 64 2c 20 73 6b 2c 20 33 32 o_hash(d, sk, 32 000312f0: 29 3b 5c 6e 20 20 64 5b 30 5d 20 26 3d 20 32 34 );\n d[0] &= 24 00031300: 38 3b 5c 6e 20 20 64 5b 33 31 5d 20 26 3d 20 31 8;\n d[31] &= 1 00031310: 32 37 3b 5c 6e 20 20 64 5b 33 31 5d 20 7c 3d 20 27;\n d[31] |= 00031320: 36 34 3b 5c 6e 5c 6e 20 20 76 61 72 20 73 6d 6c 64;\n\n var sml 00031330: 65 6e 20 3d 20 6e 20 2b 20 36 34 3b 5c 6e 20 20 en = n + 64;\n 00031340: 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 for (i = 0; i < 00031350: 6e 3b 20 69 2b 2b 29 20 73 6d 5b 36 34 20 2b 20 n; i++) sm[64 + 00031360: 69 5d 20 3d 20 6d 5b 69 5d 3b 5c 6e 20 20 66 6f i] = m[i];\n fo 00031370: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 r (i = 0; i < 32 00031380: 3b 20 69 2b 2b 29 20 73 6d 5b 33 32 20 2b 20 69 ; i++) sm[32 + i 00031390: 5d 20 3d 20 64 5b 33 32 20 2b 20 69 5d 3b 5c 6e ] = d[32 + i];\n 000313a0: 5c 6e 20 20 63 72 79 70 74 6f 5f 68 61 73 68 28 \n crypto_hash( 000313b0: 72 2c 20 73 6d 2e 73 75 62 61 72 72 61 79 28 33 r, sm.subarray(3 000313c0: 32 29 2c 20 6e 2b 33 32 29 3b 5c 6e 20 20 72 65 2), n+32);\n re 000313d0: 64 75 63 65 28 72 29 3b 5c 6e 20 20 73 63 61 6c duce(r);\n scal 000313e0: 61 72 62 61 73 65 28 70 2c 20 72 29 3b 5c 6e 20 arbase(p, r);\n 000313f0: 20 70 61 63 6b 28 73 6d 2c 20 70 29 3b 5c 6e 5c pack(sm, p);\n\ 00031400: 6e 20 20 66 6f 72 20 28 69 20 3d 20 33 32 3b 20 n for (i = 32; 00031410: 69 20 3c 20 36 34 3b 20 69 2b 2b 29 20 73 6d 5b i < 64; i++) sm[ 00031420: 69 5d 20 3d 20 73 6b 5b 69 5d 3b 5c 6e 20 20 63 i] = sk[i];\n c 00031430: 72 79 70 74 6f 5f 68 61 73 68 28 68 2c 20 73 6d rypto_hash(h, sm 00031440: 2c 20 6e 20 2b 20 36 34 29 3b 5c 6e 20 20 72 65 , n + 64);\n re 00031450: 64 75 63 65 28 68 29 3b 5c 6e 5c 6e 20 20 66 6f duce(h);\n\n fo 00031460: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 36 34 r (i = 0; i < 64 00031470: 3b 20 69 2b 2b 29 20 78 5b 69 5d 20 3d 20 30 3b ; i++) x[i] = 0; 00031480: 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 \n for (i = 0; 00031490: 69 20 3c 20 33 32 3b 20 69 2b 2b 29 20 78 5b 69 i < 32; i++) x[i 000314a0: 5d 20 3d 20 72 5b 69 5d 3b 5c 6e 20 20 66 6f 72 ] = r[i];\n for 000314b0: 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 3b (i = 0; i < 32; 000314c0: 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 66 6f 72 i++) {\n for 000314d0: 20 28 6a 20 3d 20 30 3b 20 6a 20 3c 20 33 32 3b (j = 0; j < 32; 000314e0: 20 6a 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 78 j++) {\n x 000314f0: 5b 69 2b 6a 5d 20 2b 3d 20 68 5b 69 5d 20 2a 20 [i+j] += h[i] * 00031500: 64 5b 6a 5d 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 d[j];\n }\n 00031510: 7d 5c 6e 5c 6e 20 20 6d 6f 64 4c 28 73 6d 2e 73 }\n\n modL(sm.s 00031520: 75 62 61 72 72 61 79 28 33 32 29 2c 20 78 29 3b ubarray(32), x); 00031530: 5c 6e 20 20 72 65 74 75 72 6e 20 73 6d 6c 65 6e \n return smlen 00031540: 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e ;\n}\n\nfunction 00031550: 20 75 6e 70 61 63 6b 6e 65 67 28 72 2c 20 70 29 unpackneg(r, p) 00031560: 20 7b 5c 6e 20 20 76 61 72 20 74 20 3d 20 67 66 {\n var t = gf 00031570: 28 29 2c 20 63 68 6b 20 3d 20 67 66 28 29 2c 20 (), chk = gf(), 00031580: 6e 75 6d 20 3d 20 67 66 28 29 2c 5c 6e 20 20 20 num = gf(),\n 00031590: 20 20 20 64 65 6e 20 3d 20 67 66 28 29 2c 20 64 den = gf(), d 000315a0: 65 6e 32 20 3d 20 67 66 28 29 2c 20 64 65 6e 34 en2 = gf(), den4 000315b0: 20 3d 20 67 66 28 29 2c 5c 6e 20 20 20 20 20 20 = gf(),\n 000315c0: 64 65 6e 36 20 3d 20 67 66 28 29 3b 5c 6e 5c 6e den6 = gf();\n\n 000315d0: 20 20 73 65 74 32 35 35 31 39 28 72 5b 32 5d 2c set25519(r[2], 000315e0: 20 67 66 31 29 3b 5c 6e 20 20 75 6e 70 61 63 6b gf1);\n unpack 000315f0: 32 35 35 31 39 28 72 5b 31 5d 2c 20 70 29 3b 5c 25519(r[1], p);\ 00031600: 6e 20 20 53 28 6e 75 6d 2c 20 72 5b 31 5d 29 3b n S(num, r[1]); 00031610: 5c 6e 20 20 4d 28 64 65 6e 2c 20 6e 75 6d 2c 20 \n M(den, num, 00031620: 44 29 3b 5c 6e 20 20 5a 28 6e 75 6d 2c 20 6e 75 D);\n Z(num, nu 00031630: 6d 2c 20 72 5b 32 5d 29 3b 5c 6e 20 20 41 28 64 m, r[2]);\n A(d 00031640: 65 6e 2c 20 72 5b 32 5d 2c 20 64 65 6e 29 3b 5c en, r[2], den);\ 00031650: 6e 5c 6e 20 20 53 28 64 65 6e 32 2c 20 64 65 6e n\n S(den2, den 00031660: 29 3b 5c 6e 20 20 53 28 64 65 6e 34 2c 20 64 65 );\n S(den4, de 00031670: 6e 32 29 3b 5c 6e 20 20 4d 28 64 65 6e 36 2c 20 n2);\n M(den6, 00031680: 64 65 6e 34 2c 20 64 65 6e 32 29 3b 5c 6e 20 20 den4, den2);\n 00031690: 4d 28 74 2c 20 64 65 6e 36 2c 20 6e 75 6d 29 3b M(t, den6, num); 000316a0: 5c 6e 20 20 4d 28 74 2c 20 74 2c 20 64 65 6e 29 \n M(t, t, den) 000316b0: 3b 5c 6e 5c 6e 20 20 70 6f 77 32 35 32 33 28 74 ;\n\n pow2523(t 000316c0: 2c 20 74 29 3b 5c 6e 20 20 4d 28 74 2c 20 74 2c , t);\n M(t, t, 000316d0: 20 6e 75 6d 29 3b 5c 6e 20 20 4d 28 74 2c 20 74 num);\n M(t, t 000316e0: 2c 20 64 65 6e 29 3b 5c 6e 20 20 4d 28 74 2c 20 , den);\n M(t, 000316f0: 74 2c 20 64 65 6e 29 3b 5c 6e 20 20 4d 28 72 5b t, den);\n M(r[ 00031700: 30 5d 2c 20 74 2c 20 64 65 6e 29 3b 5c 6e 5c 6e 0], t, den);\n\n 00031710: 20 20 53 28 63 68 6b 2c 20 72 5b 30 5d 29 3b 5c S(chk, r[0]);\ 00031720: 6e 20 20 4d 28 63 68 6b 2c 20 63 68 6b 2c 20 64 n M(chk, chk, d 00031730: 65 6e 29 3b 5c 6e 20 20 69 66 20 28 6e 65 71 32 en);\n if (neq2 00031740: 35 35 31 39 28 63 68 6b 2c 20 6e 75 6d 29 29 20 5519(chk, num)) 00031750: 4d 28 72 5b 30 5d 2c 20 72 5b 30 5d 2c 20 49 29 M(r[0], r[0], I) 00031760: 3b 5c 6e 5c 6e 20 20 53 28 63 68 6b 2c 20 72 5b ;\n\n S(chk, r[ 00031770: 30 5d 29 3b 5c 6e 20 20 4d 28 63 68 6b 2c 20 63 0]);\n M(chk, c 00031780: 68 6b 2c 20 64 65 6e 29 3b 5c 6e 20 20 69 66 20 hk, den);\n if 00031790: 28 6e 65 71 32 35 35 31 39 28 63 68 6b 2c 20 6e (neq25519(chk, n 000317a0: 75 6d 29 29 20 72 65 74 75 72 6e 20 2d 31 3b 5c um)) return -1;\ 000317b0: 6e 5c 6e 20 20 69 66 20 28 70 61 72 32 35 35 31 n\n if (par2551 000317c0: 39 28 72 5b 30 5d 29 20 3d 3d 3d 20 28 70 5b 33 9(r[0]) === (p[3 000317d0: 31 5d 3e 3e 37 29 29 20 5a 28 72 5b 30 5d 2c 20 1]>>7)) Z(r[0], 000317e0: 67 66 30 2c 20 72 5b 30 5d 29 3b 5c 6e 5c 6e 20 gf0, r[0]);\n\n 000317f0: 20 4d 28 72 5b 33 5d 2c 20 72 5b 30 5d 2c 20 72 M(r[3], r[0], r 00031800: 5b 31 5d 29 3b 5c 6e 20 20 72 65 74 75 72 6e 20 [1]);\n return 00031810: 30 3b 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 0;\n}\n\nfunctio 00031820: 6e 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 6f 70 n crypto_sign_op 00031830: 65 6e 28 6d 2c 20 73 6d 2c 20 6e 2c 20 70 6b 29 en(m, sm, n, pk) 00031840: 20 7b 5c 6e 20 20 76 61 72 20 69 3b 5c 6e 20 20 {\n var i;\n 00031850: 76 61 72 20 74 20 3d 20 6e 65 77 20 55 69 6e 74 var t = new Uint 00031860: 38 41 72 72 61 79 28 33 32 29 2c 20 68 20 3d 20 8Array(32), h = 00031870: 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 36 new Uint8Array(6 00031880: 34 29 3b 5c 6e 20 20 76 61 72 20 70 20 3d 20 5b 4);\n var p = [ 00031890: 67 66 28 29 2c 20 67 66 28 29 2c 20 67 66 28 29 gf(), gf(), gf() 000318a0: 2c 20 67 66 28 29 5d 2c 5c 6e 20 20 20 20 20 20 , gf()],\n 000318b0: 71 20 3d 20 5b 67 66 28 29 2c 20 67 66 28 29 2c q = [gf(), gf(), 000318c0: 20 67 66 28 29 2c 20 67 66 28 29 5d 3b 5c 6e 5c gf(), gf()];\n\ 000318d0: 6e 20 20 69 66 20 28 6e 20 3c 20 36 34 29 20 72 n if (n < 64) r 000318e0: 65 74 75 72 6e 20 2d 31 3b 5c 6e 5c 6e 20 20 69 eturn -1;\n\n i 000318f0: 66 20 28 75 6e 70 61 63 6b 6e 65 67 28 71 2c 20 f (unpackneg(q, 00031900: 70 6b 29 29 20 72 65 74 75 72 6e 20 2d 31 3b 5c pk)) return -1;\ 00031910: 6e 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b n\n for (i = 0; 00031920: 20 69 20 3c 20 6e 3b 20 69 2b 2b 29 20 6d 5b 69 i < n; i++) m[i 00031930: 5d 20 3d 20 73 6d 5b 69 5d 3b 5c 6e 20 20 66 6f ] = sm[i];\n fo 00031940: 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 r (i = 0; i < 32 00031950: 3b 20 69 2b 2b 29 20 6d 5b 69 2b 33 32 5d 20 3d ; i++) m[i+32] = 00031960: 20 70 6b 5b 69 5d 3b 5c 6e 20 20 63 72 79 70 74 pk[i];\n crypt 00031970: 6f 5f 68 61 73 68 28 68 2c 20 6d 2c 20 6e 29 3b o_hash(h, m, n); 00031980: 5c 6e 20 20 72 65 64 75 63 65 28 68 29 3b 5c 6e \n reduce(h);\n 00031990: 20 20 73 63 61 6c 61 72 6d 75 6c 74 28 70 2c 20 scalarmult(p, 000319a0: 71 2c 20 68 29 3b 5c 6e 5c 6e 20 20 73 63 61 6c q, h);\n\n scal 000319b0: 61 72 62 61 73 65 28 71 2c 20 73 6d 2e 73 75 62 arbase(q, sm.sub 000319c0: 61 72 72 61 79 28 33 32 29 29 3b 5c 6e 20 20 61 array(32));\n a 000319d0: 64 64 28 70 2c 20 71 29 3b 5c 6e 20 20 70 61 63 dd(p, q);\n pac 000319e0: 6b 28 74 2c 20 70 29 3b 5c 6e 5c 6e 20 20 6e 20 k(t, p);\n\n n 000319f0: 2d 3d 20 36 34 3b 5c 6e 20 20 69 66 20 28 63 72 -= 64;\n if (cr 00031a00: 79 70 74 6f 5f 76 65 72 69 66 79 5f 33 32 28 73 ypto_verify_32(s 00031a10: 6d 2c 20 30 2c 20 74 2c 20 30 29 29 20 7b 5c 6e m, 0, t, 0)) {\n 00031a20: 20 20 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 for (i = 0; 00031a30: 69 20 3c 20 6e 3b 20 69 2b 2b 29 20 6d 5b 69 5d i < n; i++) m[i] 00031a40: 20 3d 20 30 3b 5c 6e 20 20 20 20 72 65 74 75 72 = 0;\n retur 00031a50: 6e 20 2d 31 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 n -1;\n }\n\n 00031a60: 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 for (i = 0; i < 00031a70: 6e 3b 20 69 2b 2b 29 20 6d 5b 69 5d 20 3d 20 73 n; i++) m[i] = s 00031a80: 6d 5b 69 20 2b 20 36 34 5d 3b 5c 6e 20 20 72 65 m[i + 64];\n re 00031a90: 74 75 72 6e 20 6e 3b 5c 6e 7d 5c 6e 5c 6e 76 61 turn n;\n}\n\nva 00031aa0: 72 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 62 r crypto_secretb 00031ab0: 6f 78 5f 4b 45 59 42 59 54 45 53 20 3d 20 33 32 ox_KEYBYTES = 32 00031ac0: 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 5f 73 65 ,\n crypto_se 00031ad0: 63 72 65 74 62 6f 78 5f 4e 4f 4e 43 45 42 59 54 cretbox_NONCEBYT 00031ae0: 45 53 20 3d 20 32 34 2c 5c 6e 20 20 20 20 63 72 ES = 24,\n cr 00031af0: 79 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f 5a ypto_secretbox_Z 00031b00: 45 52 4f 42 59 54 45 53 20 3d 20 33 32 2c 5c 6e EROBYTES = 32,\n 00031b10: 20 20 20 20 63 72 79 70 74 6f 5f 73 65 63 72 65 crypto_secre 00031b20: 74 62 6f 78 5f 42 4f 58 5a 45 52 4f 42 59 54 45 tbox_BOXZEROBYTE 00031b30: 53 20 3d 20 31 36 2c 5c 6e 20 20 20 20 63 72 79 S = 16,\n cry 00031b40: 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f 42 pto_scalarmult_B 00031b50: 59 54 45 53 20 3d 20 33 32 2c 5c 6e 20 20 20 20 YTES = 32,\n 00031b60: 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c crypto_scalarmul 00031b70: 74 5f 53 43 41 4c 41 52 42 59 54 45 53 20 3d 20 t_SCALARBYTES = 00031b80: 33 32 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 5f 32,\n crypto_ 00031b90: 62 6f 78 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 box_PUBLICKEYBYT 00031ba0: 45 53 20 3d 20 33 32 2c 5c 6e 20 20 20 20 63 72 ES = 32,\n cr 00031bb0: 79 70 74 6f 5f 62 6f 78 5f 53 45 43 52 45 54 4b ypto_box_SECRETK 00031bc0: 45 59 42 59 54 45 53 20 3d 20 33 32 2c 5c 6e 20 EYBYTES = 32,\n 00031bd0: 20 20 20 63 72 79 70 74 6f 5f 62 6f 78 5f 42 45 crypto_box_BE 00031be0: 46 4f 52 45 4e 4d 42 59 54 45 53 20 3d 20 33 32 FORENMBYTES = 32 00031bf0: 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 5f 62 6f ,\n crypto_bo 00031c00: 78 5f 4e 4f 4e 43 45 42 59 54 45 53 20 3d 20 63 x_NONCEBYTES = c 00031c10: 72 79 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f rypto_secretbox_ 00031c20: 4e 4f 4e 43 45 42 59 54 45 53 2c 5c 6e 20 20 20 NONCEBYTES,\n 00031c30: 20 63 72 79 70 74 6f 5f 62 6f 78 5f 5a 45 52 4f crypto_box_ZERO 00031c40: 42 59 54 45 53 20 3d 20 63 72 79 70 74 6f 5f 73 BYTES = crypto_s 00031c50: 65 63 72 65 74 62 6f 78 5f 5a 45 52 4f 42 59 54 ecretbox_ZEROBYT 00031c60: 45 53 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 5f ES,\n crypto_ 00031c70: 62 6f 78 5f 42 4f 58 5a 45 52 4f 42 59 54 45 53 box_BOXZEROBYTES 00031c80: 20 3d 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 = crypto_secret 00031c90: 62 6f 78 5f 42 4f 58 5a 45 52 4f 42 59 54 45 53 box_BOXZEROBYTES 00031ca0: 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 5f 73 69 ,\n crypto_si 00031cb0: 67 6e 5f 42 59 54 45 53 20 3d 20 36 34 2c 5c 6e gn_BYTES = 64,\n 00031cc0: 20 20 20 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f crypto_sign_ 00031cd0: 50 55 42 4c 49 43 4b 45 59 42 59 54 45 53 20 3d PUBLICKEYBYTES = 00031ce0: 20 33 32 2c 5c 6e 20 20 20 20 63 72 79 70 74 6f 32,\n crypto 00031cf0: 5f 73 69 67 6e 5f 53 45 43 52 45 54 4b 45 59 42 _sign_SECRETKEYB 00031d00: 59 54 45 53 20 3d 20 36 34 2c 5c 6e 20 20 20 20 YTES = 64,\n 00031d10: 63 72 79 70 74 6f 5f 73 69 67 6e 5f 53 45 45 44 crypto_sign_SEED 00031d20: 42 59 54 45 53 20 3d 20 33 32 2c 5c 6e 20 20 20 BYTES = 32,\n 00031d30: 20 63 72 79 70 74 6f 5f 68 61 73 68 5f 42 59 54 crypto_hash_BYT 00031d40: 45 53 20 3d 20 36 34 3b 5c 6e 5c 6e 6e 61 63 6c ES = 64;\n\nnacl 00031d50: 2e 6c 6f 77 6c 65 76 65 6c 20 3d 20 7b 5c 6e 20 .lowlevel = {\n 00031d60: 20 63 72 79 70 74 6f 5f 63 6f 72 65 5f 68 73 61 crypto_core_hsa 00031d70: 6c 73 61 32 30 3a 20 63 72 79 70 74 6f 5f 63 6f lsa20: crypto_co 00031d80: 72 65 5f 68 73 61 6c 73 61 32 30 2c 5c 6e 20 20 re_hsalsa20,\n 00031d90: 63 72 79 70 74 6f 5f 73 74 72 65 61 6d 5f 78 6f crypto_stream_xo 00031da0: 72 3a 20 63 72 79 70 74 6f 5f 73 74 72 65 61 6d r: crypto_stream 00031db0: 5f 78 6f 72 2c 5c 6e 20 20 63 72 79 70 74 6f 5f _xor,\n crypto_ 00031dc0: 73 74 72 65 61 6d 3a 20 63 72 79 70 74 6f 5f 73 stream: crypto_s 00031dd0: 74 72 65 61 6d 2c 5c 6e 20 20 63 72 79 70 74 6f tream,\n crypto 00031de0: 5f 73 74 72 65 61 6d 5f 73 61 6c 73 61 32 30 5f _stream_salsa20_ 00031df0: 78 6f 72 3a 20 63 72 79 70 74 6f 5f 73 74 72 65 xor: crypto_stre 00031e00: 61 6d 5f 73 61 6c 73 61 32 30 5f 78 6f 72 2c 5c am_salsa20_xor,\ 00031e10: 6e 20 20 63 72 79 70 74 6f 5f 73 74 72 65 61 6d n crypto_stream 00031e20: 5f 73 61 6c 73 61 32 30 3a 20 63 72 79 70 74 6f _salsa20: crypto 00031e30: 5f 73 74 72 65 61 6d 5f 73 61 6c 73 61 32 30 2c _stream_salsa20, 00031e40: 5c 6e 20 20 63 72 79 70 74 6f 5f 6f 6e 65 74 69 \n crypto_oneti 00031e50: 6d 65 61 75 74 68 3a 20 63 72 79 70 74 6f 5f 6f meauth: crypto_o 00031e60: 6e 65 74 69 6d 65 61 75 74 68 2c 5c 6e 20 20 63 netimeauth,\n c 00031e70: 72 79 70 74 6f 5f 6f 6e 65 74 69 6d 65 61 75 74 rypto_onetimeaut 00031e80: 68 5f 76 65 72 69 66 79 3a 20 63 72 79 70 74 6f h_verify: crypto 00031e90: 5f 6f 6e 65 74 69 6d 65 61 75 74 68 5f 76 65 72 _onetimeauth_ver 00031ea0: 69 66 79 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 76 ify,\n crypto_v 00031eb0: 65 72 69 66 79 5f 31 36 3a 20 63 72 79 70 74 6f erify_16: crypto 00031ec0: 5f 76 65 72 69 66 79 5f 31 36 2c 5c 6e 20 20 63 _verify_16,\n c 00031ed0: 72 79 70 74 6f 5f 76 65 72 69 66 79 5f 33 32 3a rypto_verify_32: 00031ee0: 20 63 72 79 70 74 6f 5f 76 65 72 69 66 79 5f 33 crypto_verify_3 00031ef0: 32 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 73 65 63 2,\n crypto_sec 00031f00: 72 65 74 62 6f 78 3a 20 63 72 79 70 74 6f 5f 73 retbox: crypto_s 00031f10: 65 63 72 65 74 62 6f 78 2c 5c 6e 20 20 63 72 79 ecretbox,\n cry 00031f20: 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f 6f 70 pto_secretbox_op 00031f30: 65 6e 3a 20 63 72 79 70 74 6f 5f 73 65 63 72 65 en: crypto_secre 00031f40: 74 62 6f 78 5f 6f 70 65 6e 2c 5c 6e 20 20 63 72 tbox_open,\n cr 00031f50: 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 3a ypto_scalarmult: 00031f60: 20 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 crypto_scalarmu 00031f70: 6c 74 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 73 63 lt,\n crypto_sc 00031f80: 61 6c 61 72 6d 75 6c 74 5f 62 61 73 65 3a 20 63 alarmult_base: c 00031f90: 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 rypto_scalarmult 00031fa0: 5f 62 61 73 65 2c 5c 6e 20 20 63 72 79 70 74 6f _base,\n crypto 00031fb0: 5f 62 6f 78 5f 62 65 66 6f 72 65 6e 6d 3a 20 63 _box_beforenm: c 00031fc0: 72 79 70 74 6f 5f 62 6f 78 5f 62 65 66 6f 72 65 rypto_box_before 00031fd0: 6e 6d 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 62 6f nm,\n crypto_bo 00031fe0: 78 5f 61 66 74 65 72 6e 6d 3a 20 63 72 79 70 74 x_afternm: crypt 00031ff0: 6f 5f 62 6f 78 5f 61 66 74 65 72 6e 6d 2c 5c 6e o_box_afternm,\n 00032000: 20 20 63 72 79 70 74 6f 5f 62 6f 78 3a 20 63 72 crypto_box: cr 00032010: 79 70 74 6f 5f 62 6f 78 2c 5c 6e 20 20 63 72 79 ypto_box,\n cry 00032020: 70 74 6f 5f 62 6f 78 5f 6f 70 65 6e 3a 20 63 72 pto_box_open: cr 00032030: 79 70 74 6f 5f 62 6f 78 5f 6f 70 65 6e 2c 5c 6e ypto_box_open,\n 00032040: 20 20 63 72 79 70 74 6f 5f 62 6f 78 5f 6b 65 79 crypto_box_key 00032050: 70 61 69 72 3a 20 63 72 79 70 74 6f 5f 62 6f 78 pair: crypto_box 00032060: 5f 6b 65 79 70 61 69 72 2c 5c 6e 20 20 63 72 79 _keypair,\n cry 00032070: 70 74 6f 5f 68 61 73 68 3a 20 63 72 79 70 74 6f pto_hash: crypto 00032080: 5f 68 61 73 68 2c 5c 6e 20 20 63 72 79 70 74 6f _hash,\n crypto 00032090: 5f 73 69 67 6e 3a 20 63 72 79 70 74 6f 5f 73 69 _sign: crypto_si 000320a0: 67 6e 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 73 69 gn,\n crypto_si 000320b0: 67 6e 5f 6b 65 79 70 61 69 72 3a 20 63 72 79 70 gn_keypair: cryp 000320c0: 74 6f 5f 73 69 67 6e 5f 6b 65 79 70 61 69 72 2c to_sign_keypair, 000320d0: 5c 6e 20 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f \n crypto_sign_ 000320e0: 6f 70 65 6e 3a 20 63 72 79 70 74 6f 5f 73 69 67 open: crypto_sig 000320f0: 6e 5f 6f 70 65 6e 2c 5c 6e 5c 6e 20 20 63 72 79 n_open,\n\n cry 00032100: 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f 4b 45 pto_secretbox_KE 00032110: 59 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 73 YBYTES: crypto_s 00032120: 65 63 72 65 74 62 6f 78 5f 4b 45 59 42 59 54 45 ecretbox_KEYBYTE 00032130: 53 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 73 65 63 S,\n crypto_sec 00032140: 72 65 74 62 6f 78 5f 4e 4f 4e 43 45 42 59 54 45 retbox_NONCEBYTE 00032150: 53 3a 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 S: crypto_secret 00032160: 62 6f 78 5f 4e 4f 4e 43 45 42 59 54 45 53 2c 5c box_NONCEBYTES,\ 00032170: 6e 20 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 n crypto_secret 00032180: 62 6f 78 5f 5a 45 52 4f 42 59 54 45 53 3a 20 63 box_ZEROBYTES: c 00032190: 72 79 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f rypto_secretbox_ 000321a0: 5a 45 52 4f 42 59 54 45 53 2c 5c 6e 20 20 63 72 ZEROBYTES,\n cr 000321b0: 79 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f 42 ypto_secretbox_B 000321c0: 4f 58 5a 45 52 4f 42 59 54 45 53 3a 20 63 72 79 OXZEROBYTES: cry 000321d0: 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 5f 42 4f pto_secretbox_BO 000321e0: 58 5a 45 52 4f 42 59 54 45 53 2c 5c 6e 20 20 63 XZEROBYTES,\n c 000321f0: 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 rypto_scalarmult 00032200: 5f 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 73 _BYTES: crypto_s 00032210: 63 61 6c 61 72 6d 75 6c 74 5f 42 59 54 45 53 2c calarmult_BYTES, 00032220: 5c 6e 20 20 63 72 79 70 74 6f 5f 73 63 61 6c 61 \n crypto_scala 00032230: 72 6d 75 6c 74 5f 53 43 41 4c 41 52 42 59 54 45 rmult_SCALARBYTE 00032240: 53 3a 20 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 S: crypto_scalar 00032250: 6d 75 6c 74 5f 53 43 41 4c 41 52 42 59 54 45 53 mult_SCALARBYTES 00032260: 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 62 6f 78 5f ,\n crypto_box_ 00032270: 50 55 42 4c 49 43 4b 45 59 42 59 54 45 53 3a 20 PUBLICKEYBYTES: 00032280: 63 72 79 70 74 6f 5f 62 6f 78 5f 50 55 42 4c 49 crypto_box_PUBLI 00032290: 43 4b 45 59 42 59 54 45 53 2c 5c 6e 20 20 63 72 CKEYBYTES,\n cr 000322a0: 79 70 74 6f 5f 62 6f 78 5f 53 45 43 52 45 54 4b ypto_box_SECRETK 000322b0: 45 59 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f EYBYTES: crypto_ 000322c0: 62 6f 78 5f 53 45 43 52 45 54 4b 45 59 42 59 54 box_SECRETKEYBYT 000322d0: 45 53 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 62 6f ES,\n crypto_bo 000322e0: 78 5f 42 45 46 4f 52 45 4e 4d 42 59 54 45 53 3a x_BEFORENMBYTES: 000322f0: 20 63 72 79 70 74 6f 5f 62 6f 78 5f 42 45 46 4f crypto_box_BEFO 00032300: 52 45 4e 4d 42 59 54 45 53 2c 5c 6e 20 20 63 72 RENMBYTES,\n cr 00032310: 79 70 74 6f 5f 62 6f 78 5f 4e 4f 4e 43 45 42 59 ypto_box_NONCEBY 00032320: 54 45 53 3a 20 63 72 79 70 74 6f 5f 62 6f 78 5f TES: crypto_box_ 00032330: 4e 4f 4e 43 45 42 59 54 45 53 2c 5c 6e 20 20 63 NONCEBYTES,\n c 00032340: 72 79 70 74 6f 5f 62 6f 78 5f 5a 45 52 4f 42 59 rypto_box_ZEROBY 00032350: 54 45 53 3a 20 63 72 79 70 74 6f 5f 62 6f 78 5f TES: crypto_box_ 00032360: 5a 45 52 4f 42 59 54 45 53 2c 5c 6e 20 20 63 72 ZEROBYTES,\n cr 00032370: 79 70 74 6f 5f 62 6f 78 5f 42 4f 58 5a 45 52 4f ypto_box_BOXZERO 00032380: 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 62 6f BYTES: crypto_bo 00032390: 78 5f 42 4f 58 5a 45 52 4f 42 59 54 45 53 2c 5c x_BOXZEROBYTES,\ 000323a0: 6e 20 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 42 n crypto_sign_B 000323b0: 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 73 69 67 YTES: crypto_sig 000323c0: 6e 5f 42 59 54 45 53 2c 5c 6e 20 20 63 72 79 70 n_BYTES,\n cryp 000323d0: 74 6f 5f 73 69 67 6e 5f 50 55 42 4c 49 43 4b 45 to_sign_PUBLICKE 000323e0: 59 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 73 YBYTES: crypto_s 000323f0: 69 67 6e 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 ign_PUBLICKEYBYT 00032400: 45 53 2c 5c 6e 20 20 63 72 79 70 74 6f 5f 73 69 ES,\n crypto_si 00032410: 67 6e 5f 53 45 43 52 45 54 4b 45 59 42 59 54 45 gn_SECRETKEYBYTE 00032420: 53 3a 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 53 S: crypto_sign_S 00032430: 45 43 52 45 54 4b 45 59 42 59 54 45 53 2c 5c 6e ECRETKEYBYTES,\n 00032440: 20 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 53 45 crypto_sign_SE 00032450: 45 44 42 59 54 45 53 3a 20 63 72 79 70 74 6f 5f EDBYTES: crypto_ 00032460: 73 69 67 6e 5f 53 45 45 44 42 59 54 45 53 2c 5c sign_SEEDBYTES,\ 00032470: 6e 20 20 63 72 79 70 74 6f 5f 68 61 73 68 5f 42 n crypto_hash_B 00032480: 59 54 45 53 3a 20 63 72 79 70 74 6f 5f 68 61 73 YTES: crypto_has 00032490: 68 5f 42 59 54 45 53 2c 5c 6e 5c 6e 20 20 67 66 h_BYTES,\n\n gf 000324a0: 3a 20 67 66 2c 5c 6e 20 20 44 3a 20 44 2c 5c 6e : gf,\n D: D,\n 000324b0: 20 20 4c 3a 20 4c 2c 5c 6e 20 20 70 61 63 6b 32 L: L,\n pack2 000324c0: 35 35 31 39 3a 20 70 61 63 6b 32 35 35 31 39 2c 5519: pack25519, 000324d0: 5c 6e 20 20 75 6e 70 61 63 6b 32 35 35 31 39 3a \n unpack25519: 000324e0: 20 75 6e 70 61 63 6b 32 35 35 31 39 2c 5c 6e 20 unpack25519,\n 000324f0: 20 4d 3a 20 4d 2c 5c 6e 20 20 41 3a 20 41 2c 5c M: M,\n A: A,\ 00032500: 6e 20 20 53 3a 20 53 2c 5c 6e 20 20 5a 3a 20 5a n S: S,\n Z: Z 00032510: 2c 5c 6e 20 20 70 6f 77 32 35 32 33 3a 20 70 6f ,\n pow2523: po 00032520: 77 32 35 32 33 2c 5c 6e 20 20 61 64 64 3a 20 61 w2523,\n add: a 00032530: 64 64 2c 5c 6e 20 20 73 65 74 32 35 35 31 39 3a dd,\n set25519: 00032540: 20 73 65 74 32 35 35 31 39 2c 5c 6e 20 20 6d 6f set25519,\n mo 00032550: 64 4c 3a 20 6d 6f 64 4c 2c 5c 6e 20 20 73 63 61 dL: modL,\n sca 00032560: 6c 61 72 6d 75 6c 74 3a 20 73 63 61 6c 61 72 6d larmult: scalarm 00032570: 75 6c 74 2c 5c 6e 20 20 73 63 61 6c 61 72 62 61 ult,\n scalarba 00032580: 73 65 3a 20 73 63 61 6c 61 72 62 61 73 65 2c 5c se: scalarbase,\ 00032590: 6e 7d 3b 5c 6e 5c 6e 2f 2a 20 48 69 67 68 2d 6c n};\n\n/* High-l 000325a0: 65 76 65 6c 20 41 50 49 20 2a 2f 5c 6e 5c 6e 66 evel API */\n\nf 000325b0: 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 4c 65 6e unction checkLen 000325c0: 67 74 68 73 28 6b 2c 20 6e 29 20 7b 5c 6e 20 20 gths(k, n) {\n 000325d0: 69 66 20 28 6b 2e 6c 65 6e 67 74 68 20 21 3d 3d if (k.length !== 000325e0: 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 62 6f crypto_secretbo 000325f0: 78 5f 4b 45 59 42 59 54 45 53 29 20 74 68 72 6f x_KEYBYTES) thro 00032600: 77 20 6e 65 77 20 45 72 72 6f 72 28 27 62 61 64 w new Error('bad 00032610: 20 6b 65 79 20 73 69 7a 65 27 29 3b 5c 6e 20 20 key size');\n 00032620: 69 66 20 28 6e 2e 6c 65 6e 67 74 68 20 21 3d 3d if (n.length !== 00032630: 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 62 6f crypto_secretbo 00032640: 78 5f 4e 4f 4e 43 45 42 59 54 45 53 29 20 74 68 x_NONCEBYTES) th 00032650: 72 6f 77 20 6e 65 77 20 45 72 72 6f 72 28 27 62 row new Error('b 00032660: 61 64 20 6e 6f 6e 63 65 20 73 69 7a 65 27 29 3b ad nonce size'); 00032670: 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 \n}\n\nfunction 00032680: 63 68 65 63 6b 42 6f 78 4c 65 6e 67 74 68 73 28 checkBoxLengths( 00032690: 70 6b 2c 20 73 6b 29 20 7b 5c 6e 20 20 69 66 20 pk, sk) {\n if 000326a0: 28 70 6b 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 (pk.length !== c 000326b0: 72 79 70 74 6f 5f 62 6f 78 5f 50 55 42 4c 49 43 rypto_box_PUBLIC 000326c0: 4b 45 59 42 59 54 45 53 29 20 74 68 72 6f 77 20 KEYBYTES) throw 000326d0: 6e 65 77 20 45 72 72 6f 72 28 27 62 61 64 20 70 new Error('bad p 000326e0: 75 62 6c 69 63 20 6b 65 79 20 73 69 7a 65 27 29 ublic key size') 000326f0: 3b 5c 6e 20 20 69 66 20 28 73 6b 2e 6c 65 6e 67 ;\n if (sk.leng 00032700: 74 68 20 21 3d 3d 20 63 72 79 70 74 6f 5f 62 6f th !== crypto_bo 00032710: 78 5f 53 45 43 52 45 54 4b 45 59 42 59 54 45 53 x_SECRETKEYBYTES 00032720: 29 20 74 68 72 6f 77 20 6e 65 77 20 45 72 72 6f ) throw new Erro 00032730: 72 28 27 62 61 64 20 73 65 63 72 65 74 20 6b 65 r('bad secret ke 00032740: 79 20 73 69 7a 65 27 29 3b 5c 6e 7d 5c 6e 5c 6e y size');\n}\n\n 00032750: 66 75 6e 63 74 69 6f 6e 20 63 68 65 63 6b 41 72 function checkAr 00032760: 72 61 79 54 79 70 65 73 28 29 20 7b 5c 6e 20 20 rayTypes() {\n 00032770: 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 for (var i = 0; 00032780: 69 20 3c 20 61 72 67 75 6d 65 6e 74 73 2e 6c 65 i < arguments.le 00032790: 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 ngth; i++) {\n 000327a0: 20 20 69 66 20 28 21 28 61 72 67 75 6d 65 6e 74 if (!(argument 000327b0: 73 5b 69 5d 20 69 6e 73 74 61 6e 63 65 6f 66 20 s[i] instanceof 000327c0: 55 69 6e 74 38 41 72 72 61 79 29 29 5c 6e 20 20 Uint8Array))\n 000327d0: 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 54 79 throw new Ty 000327e0: 70 65 45 72 72 6f 72 28 27 75 6e 65 78 70 65 63 peError('unexpec 000327f0: 74 65 64 20 74 79 70 65 2c 20 75 73 65 20 55 69 ted type, use Ui 00032800: 6e 74 38 41 72 72 61 79 27 29 3b 5c 6e 20 20 7d nt8Array');\n } 00032810: 5c 6e 7d 5c 6e 5c 6e 66 75 6e 63 74 69 6f 6e 20 \n}\n\nfunction 00032820: 63 6c 65 61 6e 75 70 28 61 72 72 29 20 7b 5c 6e cleanup(arr) {\n 00032830: 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 for (var i = 0 00032840: 3b 20 69 20 3c 20 61 72 72 2e 6c 65 6e 67 74 68 ; i < arr.length 00032850: 3b 20 69 2b 2b 29 20 61 72 72 5b 69 5d 20 3d 20 ; i++) arr[i] = 00032860: 30 3b 5c 6e 7d 5c 6e 5c 6e 6e 61 63 6c 2e 72 61 0;\n}\n\nnacl.ra 00032870: 6e 64 6f 6d 42 79 74 65 73 20 3d 20 66 75 6e 63 ndomBytes = func 00032880: 74 69 6f 6e 28 6e 29 20 7b 5c 6e 20 20 76 61 72 tion(n) {\n var 00032890: 20 62 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 b = new Uint8Ar 000328a0: 72 61 79 28 6e 29 3b 5c 6e 20 20 72 61 6e 64 6f ray(n);\n rando 000328b0: 6d 62 79 74 65 73 28 62 2c 20 6e 29 3b 5c 6e 20 mbytes(b, n);\n 000328c0: 20 72 65 74 75 72 6e 20 62 3b 5c 6e 7d 3b 5c 6e return b;\n};\n 000328d0: 5c 6e 6e 61 63 6c 2e 73 65 63 72 65 74 62 6f 78 \nnacl.secretbox 000328e0: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 6d 73 67 2c = function(msg, 000328f0: 20 6e 6f 6e 63 65 2c 20 6b 65 79 29 20 7b 5c 6e nonce, key) {\n 00032900: 20 20 63 68 65 63 6b 41 72 72 61 79 54 79 70 65 checkArrayType 00032910: 73 28 6d 73 67 2c 20 6e 6f 6e 63 65 2c 20 6b 65 s(msg, nonce, ke 00032920: 79 29 3b 5c 6e 20 20 63 68 65 63 6b 4c 65 6e 67 y);\n checkLeng 00032930: 74 68 73 28 6b 65 79 2c 20 6e 6f 6e 63 65 29 3b ths(key, nonce); 00032940: 5c 6e 20 20 76 61 72 20 6d 20 3d 20 6e 65 77 20 \n var m = new 00032950: 55 69 6e 74 38 41 72 72 61 79 28 63 72 79 70 74 Uint8Array(crypt 00032960: 6f 5f 73 65 63 72 65 74 62 6f 78 5f 5a 45 52 4f o_secretbox_ZERO 00032970: 42 59 54 45 53 20 2b 20 6d 73 67 2e 6c 65 6e 67 BYTES + msg.leng 00032980: 74 68 29 3b 5c 6e 20 20 76 61 72 20 63 20 3d 20 th);\n var c = 00032990: 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 6d new Uint8Array(m 000329a0: 2e 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 66 6f 72 .length);\n for 000329b0: 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c (var i = 0; i < 000329c0: 20 6d 73 67 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b msg.length; i++ 000329d0: 29 20 6d 5b 69 2b 63 72 79 70 74 6f 5f 73 65 63 ) m[i+crypto_sec 000329e0: 72 65 74 62 6f 78 5f 5a 45 52 4f 42 59 54 45 53 retbox_ZEROBYTES 000329f0: 5d 20 3d 20 6d 73 67 5b 69 5d 3b 5c 6e 20 20 63 ] = msg[i];\n c 00032a00: 72 79 70 74 6f 5f 73 65 63 72 65 74 62 6f 78 28 rypto_secretbox( 00032a10: 63 2c 20 6d 2c 20 6d 2e 6c 65 6e 67 74 68 2c 20 c, m, m.length, 00032a20: 6e 6f 6e 63 65 2c 20 6b 65 79 29 3b 5c 6e 20 20 nonce, key);\n 00032a30: 72 65 74 75 72 6e 20 63 2e 73 75 62 61 72 72 61 return c.subarra 00032a40: 79 28 63 72 79 70 74 6f 5f 73 65 63 72 65 74 62 y(crypto_secretb 00032a50: 6f 78 5f 42 4f 58 5a 45 52 4f 42 59 54 45 53 29 ox_BOXZEROBYTES) 00032a60: 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 65 ;\n};\n\nnacl.se 00032a70: 63 72 65 74 62 6f 78 2e 6f 70 65 6e 20 3d 20 66 cretbox.open = f 00032a80: 75 6e 63 74 69 6f 6e 28 62 6f 78 2c 20 6e 6f 6e unction(box, non 00032a90: 63 65 2c 20 6b 65 79 29 20 7b 5c 6e 20 20 63 68 ce, key) {\n ch 00032aa0: 65 63 6b 41 72 72 61 79 54 79 70 65 73 28 62 6f eckArrayTypes(bo 00032ab0: 78 2c 20 6e 6f 6e 63 65 2c 20 6b 65 79 29 3b 5c x, nonce, key);\ 00032ac0: 6e 20 20 63 68 65 63 6b 4c 65 6e 67 74 68 73 28 n checkLengths( 00032ad0: 6b 65 79 2c 20 6e 6f 6e 63 65 29 3b 5c 6e 20 20 key, nonce);\n 00032ae0: 76 61 72 20 63 20 3d 20 6e 65 77 20 55 69 6e 74 var c = new Uint 00032af0: 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 73 65 8Array(crypto_se 00032b00: 63 72 65 74 62 6f 78 5f 42 4f 58 5a 45 52 4f 42 cretbox_BOXZEROB 00032b10: 59 54 45 53 20 2b 20 62 6f 78 2e 6c 65 6e 67 74 YTES + box.lengt 00032b20: 68 29 3b 5c 6e 20 20 76 61 72 20 6d 20 3d 20 6e h);\n var m = n 00032b30: 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 63 2e ew Uint8Array(c. 00032b40: 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 66 6f 72 20 length);\n for 00032b50: 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 (var i = 0; i < 00032b60: 62 6f 78 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 box.length; i++) 00032b70: 20 63 5b 69 2b 63 72 79 70 74 6f 5f 73 65 63 72 c[i+crypto_secr 00032b80: 65 74 62 6f 78 5f 42 4f 58 5a 45 52 4f 42 59 54 etbox_BOXZEROBYT 00032b90: 45 53 5d 20 3d 20 62 6f 78 5b 69 5d 3b 5c 6e 20 ES] = box[i];\n 00032ba0: 20 69 66 20 28 63 2e 6c 65 6e 67 74 68 20 3c 20 if (c.length < 00032bb0: 33 32 29 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 32) return null; 00032bc0: 5c 6e 20 20 69 66 20 28 63 72 79 70 74 6f 5f 73 \n if (crypto_s 00032bd0: 65 63 72 65 74 62 6f 78 5f 6f 70 65 6e 28 6d 2c ecretbox_open(m, 00032be0: 20 63 2c 20 63 2e 6c 65 6e 67 74 68 2c 20 6e 6f c, c.length, no 00032bf0: 6e 63 65 2c 20 6b 65 79 29 20 21 3d 3d 20 30 29 nce, key) !== 0) 00032c00: 20 72 65 74 75 72 6e 20 6e 75 6c 6c 3b 5c 6e 20 return null;\n 00032c10: 20 72 65 74 75 72 6e 20 6d 2e 73 75 62 61 72 72 return m.subarr 00032c20: 61 79 28 63 72 79 70 74 6f 5f 73 65 63 72 65 74 ay(crypto_secret 00032c30: 62 6f 78 5f 5a 45 52 4f 42 59 54 45 53 29 3b 5c box_ZEROBYTES);\ 00032c40: 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 65 63 72 n};\n\nnacl.secr 00032c50: 65 74 62 6f 78 2e 6b 65 79 4c 65 6e 67 74 68 20 etbox.keyLength 00032c60: 3d 20 63 72 79 70 74 6f 5f 73 65 63 72 65 74 62 = crypto_secretb 00032c70: 6f 78 5f 4b 45 59 42 59 54 45 53 3b 5c 6e 6e 61 ox_KEYBYTES;\nna 00032c80: 63 6c 2e 73 65 63 72 65 74 62 6f 78 2e 6e 6f 6e cl.secretbox.non 00032c90: 63 65 4c 65 6e 67 74 68 20 3d 20 63 72 79 70 74 ceLength = crypt 00032ca0: 6f 5f 73 65 63 72 65 74 62 6f 78 5f 4e 4f 4e 43 o_secretbox_NONC 00032cb0: 45 42 59 54 45 53 3b 5c 6e 6e 61 63 6c 2e 73 65 EBYTES;\nnacl.se 00032cc0: 63 72 65 74 62 6f 78 2e 6f 76 65 72 68 65 61 64 cretbox.overhead 00032cd0: 4c 65 6e 67 74 68 20 3d 20 63 72 79 70 74 6f 5f Length = crypto_ 00032ce0: 73 65 63 72 65 74 62 6f 78 5f 42 4f 58 5a 45 52 secretbox_BOXZER 00032cf0: 4f 42 59 54 45 53 3b 5c 6e 5c 6e 6e 61 63 6c 2e OBYTES;\n\nnacl. 00032d00: 73 63 61 6c 61 72 4d 75 6c 74 20 3d 20 66 75 6e scalarMult = fun 00032d10: 63 74 69 6f 6e 28 6e 2c 20 70 29 20 7b 5c 6e 20 ction(n, p) {\n 00032d20: 20 63 68 65 63 6b 41 72 72 61 79 54 79 70 65 73 checkArrayTypes 00032d30: 28 6e 2c 20 70 29 3b 5c 6e 20 20 69 66 20 28 6e (n, p);\n if (n 00032d40: 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 79 70 .length !== cryp 00032d50: 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f 53 43 to_scalarmult_SC 00032d60: 41 4c 41 52 42 59 54 45 53 29 20 74 68 72 6f 77 ALARBYTES) throw 00032d70: 20 6e 65 77 20 45 72 72 6f 72 28 27 62 61 64 20 new Error('bad 00032d80: 6e 20 73 69 7a 65 27 29 3b 5c 6e 20 20 69 66 20 n size');\n if 00032d90: 28 70 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 (p.length !== cr 00032da0: 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f ypto_scalarmult_ 00032db0: 42 59 54 45 53 29 20 74 68 72 6f 77 20 6e 65 77 BYTES) throw new 00032dc0: 20 45 72 72 6f 72 28 27 62 61 64 20 70 20 73 69 Error('bad p si 00032dd0: 7a 65 27 29 3b 5c 6e 20 20 76 61 72 20 71 20 3d ze');\n var q = 00032de0: 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 new Uint8Array( 00032df0: 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c crypto_scalarmul 00032e00: 74 5f 42 59 54 45 53 29 3b 5c 6e 20 20 63 72 79 t_BYTES);\n cry 00032e10: 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 28 71 pto_scalarmult(q 00032e20: 2c 20 6e 2c 20 70 29 3b 5c 6e 20 20 72 65 74 75 , n, p);\n retu 00032e30: 72 6e 20 71 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 rn q;\n};\n\nnac 00032e40: 6c 2e 73 63 61 6c 61 72 4d 75 6c 74 2e 62 61 73 l.scalarMult.bas 00032e50: 65 20 3d 20 66 75 6e 63 74 69 6f 6e 28 6e 29 20 e = function(n) 00032e60: 7b 5c 6e 20 20 63 68 65 63 6b 41 72 72 61 79 54 {\n checkArrayT 00032e70: 79 70 65 73 28 6e 29 3b 5c 6e 20 20 69 66 20 28 ypes(n);\n if ( 00032e80: 6e 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 79 n.length !== cry 00032e90: 70 74 6f 5f 73 63 61 6c 61 72 6d 75 6c 74 5f 53 pto_scalarmult_S 00032ea0: 43 41 4c 41 52 42 59 54 45 53 29 20 74 68 72 6f CALARBYTES) thro 00032eb0: 77 20 6e 65 77 20 45 72 72 6f 72 28 27 62 61 64 w new Error('bad 00032ec0: 20 6e 20 73 69 7a 65 27 29 3b 5c 6e 20 20 76 61 n size');\n va 00032ed0: 72 20 71 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 r q = new Uint8A 00032ee0: 72 72 61 79 28 63 72 79 70 74 6f 5f 73 63 61 6c rray(crypto_scal 00032ef0: 61 72 6d 75 6c 74 5f 42 59 54 45 53 29 3b 5c 6e armult_BYTES);\n 00032f00: 20 20 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 6d crypto_scalarm 00032f10: 75 6c 74 5f 62 61 73 65 28 71 2c 20 6e 29 3b 5c ult_base(q, n);\ 00032f20: 6e 20 20 72 65 74 75 72 6e 20 71 3b 5c 6e 7d 3b n return q;\n}; 00032f30: 5c 6e 5c 6e 6e 61 63 6c 2e 73 63 61 6c 61 72 4d \n\nnacl.scalarM 00032f40: 75 6c 74 2e 73 63 61 6c 61 72 4c 65 6e 67 74 68 ult.scalarLength 00032f50: 20 3d 20 63 72 79 70 74 6f 5f 73 63 61 6c 61 72 = crypto_scalar 00032f60: 6d 75 6c 74 5f 53 43 41 4c 41 52 42 59 54 45 53 mult_SCALARBYTES 00032f70: 3b 5c 6e 6e 61 63 6c 2e 73 63 61 6c 61 72 4d 75 ;\nnacl.scalarMu 00032f80: 6c 74 2e 67 72 6f 75 70 45 6c 65 6d 65 6e 74 4c lt.groupElementL 00032f90: 65 6e 67 74 68 20 3d 20 63 72 79 70 74 6f 5f 73 ength = crypto_s 00032fa0: 63 61 6c 61 72 6d 75 6c 74 5f 42 59 54 45 53 3b calarmult_BYTES; 00032fb0: 5c 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 20 3d 20 66 \n\nnacl.box = f 00032fc0: 75 6e 63 74 69 6f 6e 28 6d 73 67 2c 20 6e 6f 6e unction(msg, non 00032fd0: 63 65 2c 20 70 75 62 6c 69 63 4b 65 79 2c 20 73 ce, publicKey, s 00032fe0: 65 63 72 65 74 4b 65 79 29 20 7b 5c 6e 20 20 76 ecretKey) {\n v 00032ff0: 61 72 20 6b 20 3d 20 6e 61 63 6c 2e 62 6f 78 2e ar k = nacl.box. 00033000: 62 65 66 6f 72 65 28 70 75 62 6c 69 63 4b 65 79 before(publicKey 00033010: 2c 20 73 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 , secretKey);\n 00033020: 20 72 65 74 75 72 6e 20 6e 61 63 6c 2e 73 65 63 return nacl.sec 00033030: 72 65 74 62 6f 78 28 6d 73 67 2c 20 6e 6f 6e 63 retbox(msg, nonc 00033040: 65 2c 20 6b 29 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 e, k);\n};\n\nna 00033050: 63 6c 2e 62 6f 78 2e 62 65 66 6f 72 65 20 3d 20 cl.box.before = 00033060: 66 75 6e 63 74 69 6f 6e 28 70 75 62 6c 69 63 4b function(publicK 00033070: 65 79 2c 20 73 65 63 72 65 74 4b 65 79 29 20 7b ey, secretKey) { 00033080: 5c 6e 20 20 63 68 65 63 6b 41 72 72 61 79 54 79 \n checkArrayTy 00033090: 70 65 73 28 70 75 62 6c 69 63 4b 65 79 2c 20 73 pes(publicKey, s 000330a0: 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 20 63 68 ecretKey);\n ch 000330b0: 65 63 6b 42 6f 78 4c 65 6e 67 74 68 73 28 70 75 eckBoxLengths(pu 000330c0: 62 6c 69 63 4b 65 79 2c 20 73 65 63 72 65 74 4b blicKey, secretK 000330d0: 65 79 29 3b 5c 6e 20 20 76 61 72 20 6b 20 3d 20 ey);\n var k = 000330e0: 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 63 new Uint8Array(c 000330f0: 72 79 70 74 6f 5f 62 6f 78 5f 42 45 46 4f 52 45 rypto_box_BEFORE 00033100: 4e 4d 42 59 54 45 53 29 3b 5c 6e 20 20 63 72 79 NMBYTES);\n cry 00033110: 70 74 6f 5f 62 6f 78 5f 62 65 66 6f 72 65 6e 6d pto_box_beforenm 00033120: 28 6b 2c 20 70 75 62 6c 69 63 4b 65 79 2c 20 73 (k, publicKey, s 00033130: 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 20 72 65 ecretKey);\n re 00033140: 74 75 72 6e 20 6b 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e turn k;\n};\n\nn 00033150: 61 63 6c 2e 62 6f 78 2e 61 66 74 65 72 20 3d 20 acl.box.after = 00033160: 6e 61 63 6c 2e 73 65 63 72 65 74 62 6f 78 3b 5c nacl.secretbox;\ 00033170: 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 2e 6f 70 65 6e n\nnacl.box.open 00033180: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 6d 73 67 2c = function(msg, 00033190: 20 6e 6f 6e 63 65 2c 20 70 75 62 6c 69 63 4b 65 nonce, publicKe 000331a0: 79 2c 20 73 65 63 72 65 74 4b 65 79 29 20 7b 5c y, secretKey) {\ 000331b0: 6e 20 20 76 61 72 20 6b 20 3d 20 6e 61 63 6c 2e n var k = nacl. 000331c0: 62 6f 78 2e 62 65 66 6f 72 65 28 70 75 62 6c 69 box.before(publi 000331d0: 63 4b 65 79 2c 20 73 65 63 72 65 74 4b 65 79 29 cKey, secretKey) 000331e0: 3b 5c 6e 20 20 72 65 74 75 72 6e 20 6e 61 63 6c ;\n return nacl 000331f0: 2e 73 65 63 72 65 74 62 6f 78 2e 6f 70 65 6e 28 .secretbox.open( 00033200: 6d 73 67 2c 20 6e 6f 6e 63 65 2c 20 6b 29 3b 5c msg, nonce, k);\ 00033210: 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 2e n};\n\nnacl.box. 00033220: 6f 70 65 6e 2e 61 66 74 65 72 20 3d 20 6e 61 63 open.after = nac 00033230: 6c 2e 73 65 63 72 65 74 62 6f 78 2e 6f 70 65 6e l.secretbox.open 00033240: 3b 5c 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 2e 6b 65 ;\n\nnacl.box.ke 00033250: 79 50 61 69 72 20 3d 20 66 75 6e 63 74 69 6f 6e yPair = function 00033260: 28 29 20 7b 5c 6e 20 20 76 61 72 20 70 6b 20 3d () {\n var pk = 00033270: 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 new Uint8Array( 00033280: 63 72 79 70 74 6f 5f 62 6f 78 5f 50 55 42 4c 49 crypto_box_PUBLI 00033290: 43 4b 45 59 42 59 54 45 53 29 3b 5c 6e 20 20 76 CKEYBYTES);\n v 000332a0: 61 72 20 73 6b 20 3d 20 6e 65 77 20 55 69 6e 74 ar sk = new Uint 000332b0: 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 62 6f 8Array(crypto_bo 000332c0: 78 5f 53 45 43 52 45 54 4b 45 59 42 59 54 45 53 x_SECRETKEYBYTES 000332d0: 29 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 62 6f 78 );\n crypto_box 000332e0: 5f 6b 65 79 70 61 69 72 28 70 6b 2c 20 73 6b 29 _keypair(pk, sk) 000332f0: 3b 5c 6e 20 20 72 65 74 75 72 6e 20 7b 70 75 62 ;\n return {pub 00033300: 6c 69 63 4b 65 79 3a 20 70 6b 2c 20 73 65 63 72 licKey: pk, secr 00033310: 65 74 4b 65 79 3a 20 73 6b 7d 3b 5c 6e 7d 3b 5c etKey: sk};\n};\ 00033320: 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 2e 6b 65 79 50 n\nnacl.box.keyP 00033330: 61 69 72 2e 66 72 6f 6d 53 65 63 72 65 74 4b 65 air.fromSecretKe 00033340: 79 20 3d 20 66 75 6e 63 74 69 6f 6e 28 73 65 63 y = function(sec 00033350: 72 65 74 4b 65 79 29 20 7b 5c 6e 20 20 63 68 65 retKey) {\n che 00033360: 63 6b 41 72 72 61 79 54 79 70 65 73 28 73 65 63 ckArrayTypes(sec 00033370: 72 65 74 4b 65 79 29 3b 5c 6e 20 20 69 66 20 28 retKey);\n if ( 00033380: 73 65 63 72 65 74 4b 65 79 2e 6c 65 6e 67 74 68 secretKey.length 00033390: 20 21 3d 3d 20 63 72 79 70 74 6f 5f 62 6f 78 5f !== crypto_box_ 000333a0: 53 45 43 52 45 54 4b 45 59 42 59 54 45 53 29 5c SECRETKEYBYTES)\ 000333b0: 6e 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 45 n throw new E 000333c0: 72 72 6f 72 28 27 62 61 64 20 73 65 63 72 65 74 rror('bad secret 000333d0: 20 6b 65 79 20 73 69 7a 65 27 29 3b 5c 6e 20 20 key size');\n 000333e0: 76 61 72 20 70 6b 20 3d 20 6e 65 77 20 55 69 6e var pk = new Uin 000333f0: 74 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 62 t8Array(crypto_b 00033400: 6f 78 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 45 ox_PUBLICKEYBYTE 00033410: 53 29 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 73 63 S);\n crypto_sc 00033420: 61 6c 61 72 6d 75 6c 74 5f 62 61 73 65 28 70 6b alarmult_base(pk 00033430: 2c 20 73 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 , secretKey);\n 00033440: 20 72 65 74 75 72 6e 20 7b 70 75 62 6c 69 63 4b return {publicK 00033450: 65 79 3a 20 70 6b 2c 20 73 65 63 72 65 74 4b 65 ey: pk, secretKe 00033460: 79 3a 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 y: new Uint8Arra 00033470: 79 28 73 65 63 72 65 74 4b 65 79 29 7d 3b 5c 6e y(secretKey)};\n 00033480: 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 62 6f 78 2e 70 };\n\nnacl.box.p 00033490: 75 62 6c 69 63 4b 65 79 4c 65 6e 67 74 68 20 3d ublicKeyLength = 000334a0: 20 63 72 79 70 74 6f 5f 62 6f 78 5f 50 55 42 4c crypto_box_PUBL 000334b0: 49 43 4b 45 59 42 59 54 45 53 3b 5c 6e 6e 61 63 ICKEYBYTES;\nnac 000334c0: 6c 2e 62 6f 78 2e 73 65 63 72 65 74 4b 65 79 4c l.box.secretKeyL 000334d0: 65 6e 67 74 68 20 3d 20 63 72 79 70 74 6f 5f 62 ength = crypto_b 000334e0: 6f 78 5f 53 45 43 52 45 54 4b 45 59 42 59 54 45 ox_SECRETKEYBYTE 000334f0: 53 3b 5c 6e 6e 61 63 6c 2e 62 6f 78 2e 73 68 61 S;\nnacl.box.sha 00033500: 72 65 64 4b 65 79 4c 65 6e 67 74 68 20 3d 20 63 redKeyLength = c 00033510: 72 79 70 74 6f 5f 62 6f 78 5f 42 45 46 4f 52 45 rypto_box_BEFORE 00033520: 4e 4d 42 59 54 45 53 3b 5c 6e 6e 61 63 6c 2e 62 NMBYTES;\nnacl.b 00033530: 6f 78 2e 6e 6f 6e 63 65 4c 65 6e 67 74 68 20 3d ox.nonceLength = 00033540: 20 63 72 79 70 74 6f 5f 62 6f 78 5f 4e 4f 4e 43 crypto_box_NONC 00033550: 45 42 59 54 45 53 3b 5c 6e 6e 61 63 6c 2e 62 6f EBYTES;\nnacl.bo 00033560: 78 2e 6f 76 65 72 68 65 61 64 4c 65 6e 67 74 68 x.overheadLength 00033570: 20 3d 20 6e 61 63 6c 2e 73 65 63 72 65 74 62 6f = nacl.secretbo 00033580: 78 2e 6f 76 65 72 68 65 61 64 4c 65 6e 67 74 68 x.overheadLength 00033590: 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 69 67 6e 20 3d ;\n\nnacl.sign = 000335a0: 20 66 75 6e 63 74 69 6f 6e 28 6d 73 67 2c 20 73 function(msg, s 000335b0: 65 63 72 65 74 4b 65 79 29 20 7b 5c 6e 20 20 63 ecretKey) {\n c 000335c0: 68 65 63 6b 41 72 72 61 79 54 79 70 65 73 28 6d heckArrayTypes(m 000335d0: 73 67 2c 20 73 65 63 72 65 74 4b 65 79 29 3b 5c sg, secretKey);\ 000335e0: 6e 20 20 69 66 20 28 73 65 63 72 65 74 4b 65 79 n if (secretKey 000335f0: 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 79 70 .length !== cryp 00033600: 74 6f 5f 73 69 67 6e 5f 53 45 43 52 45 54 4b 45 to_sign_SECRETKE 00033610: 59 42 59 54 45 53 29 5c 6e 20 20 20 20 74 68 72 YBYTES)\n thr 00033620: 6f 77 20 6e 65 77 20 45 72 72 6f 72 28 27 62 61 ow new Error('ba 00033630: 64 20 73 65 63 72 65 74 20 6b 65 79 20 73 69 7a d secret key siz 00033640: 65 27 29 3b 5c 6e 20 20 76 61 72 20 73 69 67 6e e');\n var sign 00033650: 65 64 4d 73 67 20 3d 20 6e 65 77 20 55 69 6e 74 edMsg = new Uint 00033660: 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 73 69 8Array(crypto_si 00033670: 67 6e 5f 42 59 54 45 53 2b 6d 73 67 2e 6c 65 6e gn_BYTES+msg.len 00033680: 67 74 68 29 3b 5c 6e 20 20 63 72 79 70 74 6f 5f gth);\n crypto_ 00033690: 73 69 67 6e 28 73 69 67 6e 65 64 4d 73 67 2c 20 sign(signedMsg, 000336a0: 6d 73 67 2c 20 6d 73 67 2e 6c 65 6e 67 74 68 2c msg, msg.length, 000336b0: 20 73 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 20 secretKey);\n 000336c0: 72 65 74 75 72 6e 20 73 69 67 6e 65 64 4d 73 67 return signedMsg 000336d0: 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 69 ;\n};\n\nnacl.si 000336e0: 67 6e 2e 6f 70 65 6e 20 3d 20 66 75 6e 63 74 69 gn.open = functi 000336f0: 6f 6e 28 73 69 67 6e 65 64 4d 73 67 2c 20 70 75 on(signedMsg, pu 00033700: 62 6c 69 63 4b 65 79 29 20 7b 5c 6e 20 20 63 68 blicKey) {\n ch 00033710: 65 63 6b 41 72 72 61 79 54 79 70 65 73 28 73 69 eckArrayTypes(si 00033720: 67 6e 65 64 4d 73 67 2c 20 70 75 62 6c 69 63 4b gnedMsg, publicK 00033730: 65 79 29 3b 5c 6e 20 20 69 66 20 28 70 75 62 6c ey);\n if (publ 00033740: 69 63 4b 65 79 2e 6c 65 6e 67 74 68 20 21 3d 3d icKey.length !== 00033750: 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 50 55 42 crypto_sign_PUB 00033760: 4c 49 43 4b 45 59 42 59 54 45 53 29 5c 6e 20 20 LICKEYBYTES)\n 00033770: 20 20 74 68 72 6f 77 20 6e 65 77 20 45 72 72 6f throw new Erro 00033780: 72 28 27 62 61 64 20 70 75 62 6c 69 63 20 6b 65 r('bad public ke 00033790: 79 20 73 69 7a 65 27 29 3b 5c 6e 20 20 76 61 72 y size');\n var 000337a0: 20 74 6d 70 20 3d 20 6e 65 77 20 55 69 6e 74 38 tmp = new Uint8 000337b0: 41 72 72 61 79 28 73 69 67 6e 65 64 4d 73 67 2e Array(signedMsg. 000337c0: 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 76 61 72 20 length);\n var 000337d0: 6d 6c 65 6e 20 3d 20 63 72 79 70 74 6f 5f 73 69 mlen = crypto_si 000337e0: 67 6e 5f 6f 70 65 6e 28 74 6d 70 2c 20 73 69 67 gn_open(tmp, sig 000337f0: 6e 65 64 4d 73 67 2c 20 73 69 67 6e 65 64 4d 73 nedMsg, signedMs 00033800: 67 2e 6c 65 6e 67 74 68 2c 20 70 75 62 6c 69 63 g.length, public 00033810: 4b 65 79 29 3b 5c 6e 20 20 69 66 20 28 6d 6c 65 Key);\n if (mle 00033820: 6e 20 3c 20 30 29 20 72 65 74 75 72 6e 20 6e 75 n < 0) return nu 00033830: 6c 6c 3b 5c 6e 20 20 76 61 72 20 6d 20 3d 20 6e ll;\n var m = n 00033840: 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 6d 6c ew Uint8Array(ml 00033850: 65 6e 29 3b 5c 6e 20 20 66 6f 72 20 28 76 61 72 en);\n for (var 00033860: 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 2e 6c 65 i = 0; i < m.le 00033870: 6e 67 74 68 3b 20 69 2b 2b 29 20 6d 5b 69 5d 20 ngth; i++) m[i] 00033880: 3d 20 74 6d 70 5b 69 5d 3b 5c 6e 20 20 72 65 74 = tmp[i];\n ret 00033890: 75 72 6e 20 6d 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 urn m;\n};\n\nna 000338a0: 63 6c 2e 73 69 67 6e 2e 64 65 74 61 63 68 65 64 cl.sign.detached 000338b0: 20 3d 20 66 75 6e 63 74 69 6f 6e 28 6d 73 67 2c = function(msg, 000338c0: 20 73 65 63 72 65 74 4b 65 79 29 20 7b 5c 6e 20 secretKey) {\n 000338d0: 20 76 61 72 20 73 69 67 6e 65 64 4d 73 67 20 3d var signedMsg = 000338e0: 20 6e 61 63 6c 2e 73 69 67 6e 28 6d 73 67 2c 20 nacl.sign(msg, 000338f0: 73 65 63 72 65 74 4b 65 79 29 3b 5c 6e 20 20 76 secretKey);\n v 00033900: 61 72 20 73 69 67 20 3d 20 6e 65 77 20 55 69 6e ar sig = new Uin 00033910: 74 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 73 t8Array(crypto_s 00033920: 69 67 6e 5f 42 59 54 45 53 29 3b 5c 6e 20 20 66 ign_BYTES);\n f 00033930: 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 or (var i = 0; i 00033940: 20 3c 20 73 69 67 2e 6c 65 6e 67 74 68 3b 20 69 < sig.length; i 00033950: 2b 2b 29 20 73 69 67 5b 69 5d 20 3d 20 73 69 67 ++) sig[i] = sig 00033960: 6e 65 64 4d 73 67 5b 69 5d 3b 5c 6e 20 20 72 65 nedMsg[i];\n re 00033970: 74 75 72 6e 20 73 69 67 3b 5c 6e 7d 3b 5c 6e 5c turn sig;\n};\n\ 00033980: 6e 6e 61 63 6c 2e 73 69 67 6e 2e 64 65 74 61 63 nnacl.sign.detac 00033990: 68 65 64 2e 76 65 72 69 66 79 20 3d 20 66 75 6e hed.verify = fun 000339a0: 63 74 69 6f 6e 28 6d 73 67 2c 20 73 69 67 2c 20 ction(msg, sig, 000339b0: 70 75 62 6c 69 63 4b 65 79 29 20 7b 5c 6e 20 20 publicKey) {\n 000339c0: 63 68 65 63 6b 41 72 72 61 79 54 79 70 65 73 28 checkArrayTypes( 000339d0: 6d 73 67 2c 20 73 69 67 2c 20 70 75 62 6c 69 63 msg, sig, public 000339e0: 4b 65 79 29 3b 5c 6e 20 20 69 66 20 28 73 69 67 Key);\n if (sig 000339f0: 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 79 70 .length !== cryp 00033a00: 74 6f 5f 73 69 67 6e 5f 42 59 54 45 53 29 5c 6e to_sign_BYTES)\n 00033a10: 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 45 72 throw new Er 00033a20: 72 6f 72 28 27 62 61 64 20 73 69 67 6e 61 74 75 ror('bad signatu 00033a30: 72 65 20 73 69 7a 65 27 29 3b 5c 6e 20 20 69 66 re size');\n if 00033a40: 20 28 70 75 62 6c 69 63 4b 65 79 2e 6c 65 6e 67 (publicKey.leng 00033a50: 74 68 20 21 3d 3d 20 63 72 79 70 74 6f 5f 73 69 th !== crypto_si 00033a60: 67 6e 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 45 gn_PUBLICKEYBYTE 00033a70: 53 29 5c 6e 20 20 20 20 74 68 72 6f 77 20 6e 65 S)\n throw ne 00033a80: 77 20 45 72 72 6f 72 28 27 62 61 64 20 70 75 62 w Error('bad pub 00033a90: 6c 69 63 20 6b 65 79 20 73 69 7a 65 27 29 3b 5c lic key size');\ 00033aa0: 6e 20 20 76 61 72 20 73 6d 20 3d 20 6e 65 77 20 n var sm = new 00033ab0: 55 69 6e 74 38 41 72 72 61 79 28 63 72 79 70 74 Uint8Array(crypt 00033ac0: 6f 5f 73 69 67 6e 5f 42 59 54 45 53 20 2b 20 6d o_sign_BYTES + m 00033ad0: 73 67 2e 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 76 sg.length);\n v 00033ae0: 61 72 20 6d 20 3d 20 6e 65 77 20 55 69 6e 74 38 ar m = new Uint8 00033af0: 41 72 72 61 79 28 63 72 79 70 74 6f 5f 73 69 67 Array(crypto_sig 00033b00: 6e 5f 42 59 54 45 53 20 2b 20 6d 73 67 2e 6c 65 n_BYTES + msg.le 00033b10: 6e 67 74 68 29 3b 5c 6e 20 20 76 61 72 20 69 3b ngth);\n var i; 00033b20: 5c 6e 20 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 \n for (i = 0; 00033b30: 69 20 3c 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f i < crypto_sign_ 00033b40: 42 59 54 45 53 3b 20 69 2b 2b 29 20 73 6d 5b 69 BYTES; i++) sm[i 00033b50: 5d 20 3d 20 73 69 67 5b 69 5d 3b 5c 6e 20 20 66 ] = sig[i];\n f 00033b60: 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c 20 6d or (i = 0; i < m 00033b70: 73 67 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 20 sg.length; i++) 00033b80: 73 6d 5b 69 2b 63 72 79 70 74 6f 5f 73 69 67 6e sm[i+crypto_sign 00033b90: 5f 42 59 54 45 53 5d 20 3d 20 6d 73 67 5b 69 5d _BYTES] = msg[i] 00033ba0: 3b 5c 6e 20 20 72 65 74 75 72 6e 20 28 63 72 79 ;\n return (cry 00033bb0: 70 74 6f 5f 73 69 67 6e 5f 6f 70 65 6e 28 6d 2c pto_sign_open(m, 00033bc0: 20 73 6d 2c 20 73 6d 2e 6c 65 6e 67 74 68 2c 20 sm, sm.length, 00033bd0: 70 75 62 6c 69 63 4b 65 79 29 20 3e 3d 20 30 29 publicKey) >= 0) 00033be0: 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 69 ;\n};\n\nnacl.si 00033bf0: 67 6e 2e 6b 65 79 50 61 69 72 20 3d 20 66 75 6e gn.keyPair = fun 00033c00: 63 74 69 6f 6e 28 29 20 7b 5c 6e 20 20 76 61 72 ction() {\n var 00033c10: 20 70 6b 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 pk = new Uint8A 00033c20: 72 72 61 79 28 63 72 79 70 74 6f 5f 73 69 67 6e rray(crypto_sign 00033c30: 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 45 53 29 _PUBLICKEYBYTES) 00033c40: 3b 5c 6e 20 20 76 61 72 20 73 6b 20 3d 20 6e 65 ;\n var sk = ne 00033c50: 77 20 55 69 6e 74 38 41 72 72 61 79 28 63 72 79 w Uint8Array(cry 00033c60: 70 74 6f 5f 73 69 67 6e 5f 53 45 43 52 45 54 4b pto_sign_SECRETK 00033c70: 45 59 42 59 54 45 53 29 3b 5c 6e 20 20 63 72 79 EYBYTES);\n cry 00033c80: 70 74 6f 5f 73 69 67 6e 5f 6b 65 79 70 61 69 72 pto_sign_keypair 00033c90: 28 70 6b 2c 20 73 6b 29 3b 5c 6e 20 20 72 65 74 (pk, sk);\n ret 00033ca0: 75 72 6e 20 7b 70 75 62 6c 69 63 4b 65 79 3a 20 urn {publicKey: 00033cb0: 70 6b 2c 20 73 65 63 72 65 74 4b 65 79 3a 20 73 pk, secretKey: s 00033cc0: 6b 7d 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e k};\n};\n\nnacl. 00033cd0: 73 69 67 6e 2e 6b 65 79 50 61 69 72 2e 66 72 6f sign.keyPair.fro 00033ce0: 6d 53 65 63 72 65 74 4b 65 79 20 3d 20 66 75 6e mSecretKey = fun 00033cf0: 63 74 69 6f 6e 28 73 65 63 72 65 74 4b 65 79 29 ction(secretKey) 00033d00: 20 7b 5c 6e 20 20 63 68 65 63 6b 41 72 72 61 79 {\n checkArray 00033d10: 54 79 70 65 73 28 73 65 63 72 65 74 4b 65 79 29 Types(secretKey) 00033d20: 3b 5c 6e 20 20 69 66 20 28 73 65 63 72 65 74 4b ;\n if (secretK 00033d30: 65 79 2e 6c 65 6e 67 74 68 20 21 3d 3d 20 63 72 ey.length !== cr 00033d40: 79 70 74 6f 5f 73 69 67 6e 5f 53 45 43 52 45 54 ypto_sign_SECRET 00033d50: 4b 45 59 42 59 54 45 53 29 5c 6e 20 20 20 20 74 KEYBYTES)\n t 00033d60: 68 72 6f 77 20 6e 65 77 20 45 72 72 6f 72 28 27 hrow new Error(' 00033d70: 62 61 64 20 73 65 63 72 65 74 20 6b 65 79 20 73 bad secret key s 00033d80: 69 7a 65 27 29 3b 5c 6e 20 20 76 61 72 20 70 6b ize');\n var pk 00033d90: 20 3d 20 6e 65 77 20 55 69 6e 74 38 41 72 72 61 = new Uint8Arra 00033da0: 79 28 63 72 79 70 74 6f 5f 73 69 67 6e 5f 50 55 y(crypto_sign_PU 00033db0: 42 4c 49 43 4b 45 59 42 59 54 45 53 29 3b 5c 6e BLICKEYBYTES);\n 00033dc0: 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 for (var i = 0 00033dd0: 3b 20 69 20 3c 20 70 6b 2e 6c 65 6e 67 74 68 3b ; i < pk.length; 00033de0: 20 69 2b 2b 29 20 70 6b 5b 69 5d 20 3d 20 73 65 i++) pk[i] = se 00033df0: 63 72 65 74 4b 65 79 5b 33 32 2b 69 5d 3b 5c 6e cretKey[32+i];\n 00033e00: 20 20 72 65 74 75 72 6e 20 7b 70 75 62 6c 69 63 return {public 00033e10: 4b 65 79 3a 20 70 6b 2c 20 73 65 63 72 65 74 4b Key: pk, secretK 00033e20: 65 79 3a 20 6e 65 77 20 55 69 6e 74 38 41 72 72 ey: new Uint8Arr 00033e30: 61 79 28 73 65 63 72 65 74 4b 65 79 29 7d 3b 5c ay(secretKey)};\ 00033e40: 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 73 69 67 6e n};\n\nnacl.sign 00033e50: 2e 6b 65 79 50 61 69 72 2e 66 72 6f 6d 53 65 65 .keyPair.fromSee 00033e60: 64 20 3d 20 66 75 6e 63 74 69 6f 6e 28 73 65 65 d = function(see 00033e70: 64 29 20 7b 5c 6e 20 20 63 68 65 63 6b 41 72 72 d) {\n checkArr 00033e80: 61 79 54 79 70 65 73 28 73 65 65 64 29 3b 5c 6e ayTypes(seed);\n 00033e90: 20 20 69 66 20 28 73 65 65 64 2e 6c 65 6e 67 74 if (seed.lengt 00033ea0: 68 20 21 3d 3d 20 63 72 79 70 74 6f 5f 73 69 67 h !== crypto_sig 00033eb0: 6e 5f 53 45 45 44 42 59 54 45 53 29 5c 6e 20 20 n_SEEDBYTES)\n 00033ec0: 20 20 74 68 72 6f 77 20 6e 65 77 20 45 72 72 6f throw new Erro 00033ed0: 72 28 27 62 61 64 20 73 65 65 64 20 73 69 7a 65 r('bad seed size 00033ee0: 27 29 3b 5c 6e 20 20 76 61 72 20 70 6b 20 3d 20 ');\n var pk = 00033ef0: 6e 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 63 new Uint8Array(c 00033f00: 72 79 70 74 6f 5f 73 69 67 6e 5f 50 55 42 4c 49 rypto_sign_PUBLI 00033f10: 43 4b 45 59 42 59 54 45 53 29 3b 5c 6e 20 20 76 CKEYBYTES);\n v 00033f20: 61 72 20 73 6b 20 3d 20 6e 65 77 20 55 69 6e 74 ar sk = new Uint 00033f30: 38 41 72 72 61 79 28 63 72 79 70 74 6f 5f 73 69 8Array(crypto_si 00033f40: 67 6e 5f 53 45 43 52 45 54 4b 45 59 42 59 54 45 gn_SECRETKEYBYTE 00033f50: 53 29 3b 5c 6e 20 20 66 6f 72 20 28 76 61 72 20 S);\n for (var 00033f60: 69 20 3d 20 30 3b 20 69 20 3c 20 33 32 3b 20 69 i = 0; i < 32; i 00033f70: 2b 2b 29 20 73 6b 5b 69 5d 20 3d 20 73 65 65 64 ++) sk[i] = seed 00033f80: 5b 69 5d 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 73 [i];\n crypto_s 00033f90: 69 67 6e 5f 6b 65 79 70 61 69 72 28 70 6b 2c 20 ign_keypair(pk, 00033fa0: 73 6b 2c 20 74 72 75 65 29 3b 5c 6e 20 20 72 65 sk, true);\n re 00033fb0: 74 75 72 6e 20 7b 70 75 62 6c 69 63 4b 65 79 3a turn {publicKey: 00033fc0: 20 70 6b 2c 20 73 65 63 72 65 74 4b 65 79 3a 20 pk, secretKey: 00033fd0: 73 6b 7d 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c sk};\n};\n\nnacl 00033fe0: 2e 73 69 67 6e 2e 70 75 62 6c 69 63 4b 65 79 4c .sign.publicKeyL 00033ff0: 65 6e 67 74 68 20 3d 20 63 72 79 70 74 6f 5f 73 ength = crypto_s 00034000: 69 67 6e 5f 50 55 42 4c 49 43 4b 45 59 42 59 54 ign_PUBLICKEYBYT 00034010: 45 53 3b 5c 6e 6e 61 63 6c 2e 73 69 67 6e 2e 73 ES;\nnacl.sign.s 00034020: 65 63 72 65 74 4b 65 79 4c 65 6e 67 74 68 20 3d ecretKeyLength = 00034030: 20 63 72 79 70 74 6f 5f 73 69 67 6e 5f 53 45 43 crypto_sign_SEC 00034040: 52 45 54 4b 45 59 42 59 54 45 53 3b 5c 6e 6e 61 RETKEYBYTES;\nna 00034050: 63 6c 2e 73 69 67 6e 2e 73 65 65 64 4c 65 6e 67 cl.sign.seedLeng 00034060: 74 68 20 3d 20 63 72 79 70 74 6f 5f 73 69 67 6e th = crypto_sign 00034070: 5f 53 45 45 44 42 59 54 45 53 3b 5c 6e 6e 61 63 _SEEDBYTES;\nnac 00034080: 6c 2e 73 69 67 6e 2e 73 69 67 6e 61 74 75 72 65 l.sign.signature 00034090: 4c 65 6e 67 74 68 20 3d 20 63 72 79 70 74 6f 5f Length = crypto_ 000340a0: 73 69 67 6e 5f 42 59 54 45 53 3b 5c 6e 5c 6e 6e sign_BYTES;\n\nn 000340b0: 61 63 6c 2e 68 61 73 68 20 3d 20 66 75 6e 63 74 acl.hash = funct 000340c0: 69 6f 6e 28 6d 73 67 29 20 7b 5c 6e 20 20 63 68 ion(msg) {\n ch 000340d0: 65 63 6b 41 72 72 61 79 54 79 70 65 73 28 6d 73 eckArrayTypes(ms 000340e0: 67 29 3b 5c 6e 20 20 76 61 72 20 68 20 3d 20 6e g);\n var h = n 000340f0: 65 77 20 55 69 6e 74 38 41 72 72 61 79 28 63 72 ew Uint8Array(cr 00034100: 79 70 74 6f 5f 68 61 73 68 5f 42 59 54 45 53 29 ypto_hash_BYTES) 00034110: 3b 5c 6e 20 20 63 72 79 70 74 6f 5f 68 61 73 68 ;\n crypto_hash 00034120: 28 68 2c 20 6d 73 67 2c 20 6d 73 67 2e 6c 65 6e (h, msg, msg.len 00034130: 67 74 68 29 3b 5c 6e 20 20 72 65 74 75 72 6e 20 gth);\n return 00034140: 68 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e 68 h;\n};\n\nnacl.h 00034150: 61 73 68 2e 68 61 73 68 4c 65 6e 67 74 68 20 3d ash.hashLength = 00034160: 20 63 72 79 70 74 6f 5f 68 61 73 68 5f 42 59 54 crypto_hash_BYT 00034170: 45 53 3b 5c 6e 5c 6e 6e 61 63 6c 2e 76 65 72 69 ES;\n\nnacl.veri 00034180: 66 79 20 3d 20 66 75 6e 63 74 69 6f 6e 28 78 2c fy = function(x, 00034190: 20 79 29 20 7b 5c 6e 20 20 63 68 65 63 6b 41 72 y) {\n checkAr 000341a0: 72 61 79 54 79 70 65 73 28 78 2c 20 79 29 3b 5c rayTypes(x, y);\ 000341b0: 6e 20 20 2f 2f 20 5a 65 72 6f 20 6c 65 6e 67 74 n // Zero lengt 000341c0: 68 20 61 72 67 75 6d 65 6e 74 73 20 61 72 65 20 h arguments are 000341d0: 63 6f 6e 73 69 64 65 72 65 64 20 6e 6f 74 20 65 considered not e 000341e0: 71 75 61 6c 2e 5c 6e 20 20 69 66 20 28 78 2e 6c qual.\n if (x.l 000341f0: 65 6e 67 74 68 20 3d 3d 3d 20 30 20 7c 7c 20 79 ength === 0 || y 00034200: 2e 6c 65 6e 67 74 68 20 3d 3d 3d 20 30 29 20 72 .length === 0) r 00034210: 65 74 75 72 6e 20 66 61 6c 73 65 3b 5c 6e 20 20 eturn false;\n 00034220: 69 66 20 28 78 2e 6c 65 6e 67 74 68 20 21 3d 3d if (x.length !== 00034230: 20 79 2e 6c 65 6e 67 74 68 29 20 72 65 74 75 72 y.length) retur 00034240: 6e 20 66 61 6c 73 65 3b 5c 6e 20 20 72 65 74 75 n false;\n retu 00034250: 72 6e 20 28 76 6e 28 78 2c 20 30 2c 20 79 2c 20 rn (vn(x, 0, y, 00034260: 30 2c 20 78 2e 6c 65 6e 67 74 68 29 20 3d 3d 3d 0, x.length) === 00034270: 20 30 29 20 3f 20 74 72 75 65 20 3a 20 66 61 6c 0) ? true : fal 00034280: 73 65 3b 5c 6e 7d 3b 5c 6e 5c 6e 6e 61 63 6c 2e se;\n};\n\nnacl. 00034290: 73 65 74 50 52 4e 47 20 3d 20 66 75 6e 63 74 69 setPRNG = functi 000342a0: 6f 6e 28 66 6e 29 20 7b 5c 6e 20 20 72 61 6e 64 on(fn) {\n rand 000342b0: 6f 6d 62 79 74 65 73 20 3d 20 66 6e 3b 5c 6e 7d ombytes = fn;\n} 000342c0: 3b 5c 6e 5c 6e 28 66 75 6e 63 74 69 6f 6e 28 29 ;\n\n(function() 000342d0: 20 7b 5c 6e 20 20 2f 2f 20 49 6e 69 74 69 61 6c {\n // Initial 000342e0: 69 7a 65 20 50 52 4e 47 20 69 66 20 65 6e 76 69 ize PRNG if envi 000342f0: 72 6f 6e 6d 65 6e 74 20 70 72 6f 76 69 64 65 73 ronment provides 00034300: 20 43 53 50 52 4e 47 2e 5c 6e 20 20 2f 2f 20 49 CSPRNG.\n // I 00034310: 66 20 6e 6f 74 2c 20 6d 65 74 68 6f 64 73 20 63 f not, methods c 00034320: 61 6c 6c 69 6e 67 20 72 61 6e 64 6f 6d 62 79 74 alling randombyt 00034330: 65 73 20 77 69 6c 6c 20 74 68 72 6f 77 2e 5c 6e es will throw.\n 00034340: 20 20 76 61 72 20 63 72 79 70 74 6f 20 3d 20 74 var crypto = t 00034350: 79 70 65 6f 66 20 73 65 6c 66 20 21 3d 3d 20 27 ypeof self !== ' 00034360: 75 6e 64 65 66 69 6e 65 64 27 20 3f 20 28 73 65 undefined' ? (se 00034370: 6c 66 2e 63 72 79 70 74 6f 20 7c 7c 20 73 65 6c lf.crypto || sel 00034380: 66 2e 6d 73 43 72 79 70 74 6f 29 20 3a 20 6e 75 f.msCrypto) : nu 00034390: 6c 6c 3b 5c 6e 20 20 69 66 20 28 63 72 79 70 74 ll;\n if (crypt 000343a0: 6f 20 26 26 20 63 72 79 70 74 6f 2e 67 65 74 52 o && crypto.getR 000343b0: 61 6e 64 6f 6d 56 61 6c 75 65 73 29 20 7b 5c 6e andomValues) {\n 000343c0: 20 20 20 20 2f 2f 20 42 72 6f 77 73 65 72 73 2e // Browsers. 000343d0: 5c 6e 20 20 20 20 76 61 72 20 51 55 4f 54 41 20 \n var QUOTA 000343e0: 3d 20 36 35 35 33 36 3b 5c 6e 20 20 20 20 6e 61 = 65536;\n na 000343f0: 63 6c 2e 73 65 74 50 52 4e 47 28 66 75 6e 63 74 cl.setPRNG(funct 00034400: 69 6f 6e 28 78 2c 20 6e 29 20 7b 5c 6e 20 20 20 ion(x, n) {\n 00034410: 20 20 20 76 61 72 20 69 2c 20 76 20 3d 20 6e 65 var i, v = ne 00034420: 77 20 55 69 6e 74 38 41 72 72 61 79 28 6e 29 3b w Uint8Array(n); 00034430: 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 69 20 3d \n for (i = 00034440: 20 30 3b 20 69 20 3c 20 6e 3b 20 69 20 2b 3d 20 0; i < n; i += 00034450: 51 55 4f 54 41 29 20 7b 5c 6e 20 20 20 20 20 20 QUOTA) {\n 00034460: 20 20 63 72 79 70 74 6f 2e 67 65 74 52 61 6e 64 crypto.getRand 00034470: 6f 6d 56 61 6c 75 65 73 28 76 2e 73 75 62 61 72 omValues(v.subar 00034480: 72 61 79 28 69 2c 20 69 20 2b 20 4d 61 74 68 2e ray(i, i + Math. 00034490: 6d 69 6e 28 6e 20 2d 20 69 2c 20 51 55 4f 54 41 min(n - i, QUOTA 000344a0: 29 29 29 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 )));\n }\n 000344b0: 20 20 20 20 20 66 6f 72 20 28 69 20 3d 20 30 3b for (i = 0; 000344c0: 20 69 20 3c 20 6e 3b 20 69 2b 2b 29 20 78 5b 69 i < n; i++) x[i 000344d0: 5d 20 3d 20 76 5b 69 5d 3b 5c 6e 20 20 20 20 20 ] = v[i];\n 000344e0: 20 63 6c 65 61 6e 75 70 28 76 29 3b 5c 6e 20 20 cleanup(v);\n 000344f0: 20 20 7d 29 3b 5c 6e 20 20 7d 20 65 6c 73 65 20 });\n } else 00034500: 69 66 20 28 74 79 70 65 6f 66 20 72 65 71 75 69 if (typeof requi 00034510: 72 65 20 21 3d 3d 20 27 75 6e 64 65 66 69 6e 65 re !== 'undefine 00034520: 64 27 29 20 7b 5c 6e 20 20 20 20 2f 2f 20 4e 6f d') {\n // No 00034530: 64 65 2e 6a 73 2e 5c 6e 20 20 20 20 63 72 79 70 de.js.\n cryp 00034540: 74 6f 20 3d 20 72 65 71 75 69 72 65 28 27 63 72 to = require('cr 00034550: 79 70 74 6f 27 29 3b 5c 6e 20 20 20 20 69 66 20 ypto');\n if 00034560: 28 63 72 79 70 74 6f 20 26 26 20 63 72 79 70 74 (crypto && crypt 00034570: 6f 2e 72 61 6e 64 6f 6d 42 79 74 65 73 29 20 7b o.randomBytes) { 00034580: 5c 6e 20 20 20 20 20 20 6e 61 63 6c 2e 73 65 74 \n nacl.set 00034590: 50 52 4e 47 28 66 75 6e 63 74 69 6f 6e 28 78 2c PRNG(function(x, 000345a0: 20 6e 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 76 n) {\n v 000345b0: 61 72 20 69 2c 20 76 20 3d 20 63 72 79 70 74 6f ar i, v = crypto 000345c0: 2e 72 61 6e 64 6f 6d 42 79 74 65 73 28 6e 29 3b .randomBytes(n); 000345d0: 5c 6e 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 \n for (i 000345e0: 20 3d 20 30 3b 20 69 20 3c 20 6e 3b 20 69 2b 2b = 0; i < n; i++ 000345f0: 29 20 78 5b 69 5d 20 3d 20 76 5b 69 5d 3b 5c 6e ) x[i] = v[i];\n 00034600: 20 20 20 20 20 20 20 20 63 6c 65 61 6e 75 70 28 cleanup( 00034610: 76 29 3b 5c 6e 20 20 20 20 20 20 7d 29 3b 5c 6e v);\n });\n 00034620: 20 20 20 20 7d 5c 6e 20 20 7d 5c 6e 7d 29 28 29 }\n }\n})() 00034630: 3b 5c 6e 5c 6e 7d 29 28 74 79 70 65 6f 66 20 6d ;\n\n})(typeof m 00034640: 6f 64 75 6c 65 20 21 3d 3d 20 27 75 6e 64 65 66 odule !== 'undef 00034650: 69 6e 65 64 27 20 26 26 20 6d 6f 64 75 6c 65 2e ined' && module. 00034660: 65 78 70 6f 72 74 73 20 3f 20 6d 6f 64 75 6c 65 exports ? module 00034670: 2e 65 78 70 6f 72 74 73 20 3a 20 28 73 65 6c 66 .exports : (self 00034680: 2e 6e 61 63 6c 20 3d 20 73 65 6c 66 2e 6e 61 63 .nacl = self.nac 00034690: 6c 20 7c 7c 20 7b 7d 29 29 3b 5c 6e 22 2c 22 28 l || {}));\n","( 000346a0: 66 75 6e 63 74 69 6f 6e 20 28 6d 6f 64 75 6c 65 function (module 000346b0: 2c 20 65 78 70 6f 72 74 73 29 20 7b 5c 6e 20 20 , exports) {\n 000346c0: 27 75 73 65 20 73 74 72 69 63 74 27 3b 5c 6e 5c 'use strict';\n\ 000346d0: 6e 20 20 2f 2f 20 55 74 69 6c 73 5c 6e 20 20 66 n // Utils\n f 000346e0: 75 6e 63 74 69 6f 6e 20 61 73 73 65 72 74 20 28 unction assert ( 000346f0: 76 61 6c 2c 20 6d 73 67 29 20 7b 5c 6e 20 20 20 val, msg) {\n 00034700: 20 69 66 20 28 21 76 61 6c 29 20 74 68 72 6f 77 if (!val) throw 00034710: 20 6e 65 77 20 45 72 72 6f 72 28 6d 73 67 20 7c new Error(msg | 00034720: 7c 20 27 41 73 73 65 72 74 69 6f 6e 20 66 61 69 | 'Assertion fai 00034730: 6c 65 64 27 29 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 led');\n }\n\n 00034740: 20 2f 2f 20 43 6f 75 6c 64 20 75 73 65 20 60 69 // Could use `i 00034750: 6e 68 65 72 69 74 73 60 20 6d 6f 64 75 6c 65 2c nherits` module, 00034760: 20 62 75 74 20 64 6f 6e 27 74 20 77 61 6e 74 20 but don't want 00034770: 74 6f 20 6d 6f 76 65 20 66 72 6f 6d 20 73 69 6e to move from sin 00034780: 67 6c 65 20 66 69 6c 65 5c 6e 20 20 2f 2f 20 61 gle file\n // a 00034790: 72 63 68 69 74 65 63 74 75 72 65 20 79 65 74 2e rchitecture yet. 000347a0: 5c 6e 20 20 66 75 6e 63 74 69 6f 6e 20 69 6e 68 \n function inh 000347b0: 65 72 69 74 73 20 28 63 74 6f 72 2c 20 73 75 70 erits (ctor, sup 000347c0: 65 72 43 74 6f 72 29 20 7b 5c 6e 20 20 20 20 63 erCtor) {\n c 000347d0: 74 6f 72 2e 73 75 70 65 72 5f 20 3d 20 73 75 70 tor.super_ = sup 000347e0: 65 72 43 74 6f 72 3b 5c 6e 20 20 20 20 76 61 72 erCtor;\n var 000347f0: 20 54 65 6d 70 43 74 6f 72 20 3d 20 66 75 6e 63 TempCtor = func 00034800: 74 69 6f 6e 20 28 29 20 7b 7d 3b 5c 6e 20 20 20 tion () {};\n 00034810: 20 54 65 6d 70 43 74 6f 72 2e 70 72 6f 74 6f 74 TempCtor.protot 00034820: 79 70 65 20 3d 20 73 75 70 65 72 43 74 6f 72 2e ype = superCtor. 00034830: 70 72 6f 74 6f 74 79 70 65 3b 5c 6e 20 20 20 20 prototype;\n 00034840: 63 74 6f 72 2e 70 72 6f 74 6f 74 79 70 65 20 3d ctor.prototype = 00034850: 20 6e 65 77 20 54 65 6d 70 43 74 6f 72 28 29 3b new TempCtor(); 00034860: 5c 6e 20 20 20 20 63 74 6f 72 2e 70 72 6f 74 6f \n ctor.proto 00034870: 74 79 70 65 2e 63 6f 6e 73 74 72 75 63 74 6f 72 type.constructor 00034880: 20 3d 20 63 74 6f 72 3b 5c 6e 20 20 7d 5c 6e 5c = ctor;\n }\n\ 00034890: 6e 20 20 2f 2f 20 42 4e 5c 6e 5c 6e 20 20 66 75 n // BN\n\n fu 000348a0: 6e 63 74 69 6f 6e 20 42 4e 20 28 6e 75 6d 62 65 nction BN (numbe 000348b0: 72 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e 29 r, base, endian) 000348c0: 20 7b 5c 6e 20 20 20 20 69 66 20 28 42 4e 2e 69 {\n if (BN.i 000348d0: 73 42 4e 28 6e 75 6d 62 65 72 29 29 20 7b 5c 6e sBN(number)) {\n 000348e0: 20 20 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6d return num 000348f0: 62 65 72 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 ber;\n }\n\n 00034900: 20 20 20 74 68 69 73 2e 6e 65 67 61 74 69 76 65 this.negative 00034910: 20 3d 20 30 3b 5c 6e 20 20 20 20 74 68 69 73 2e = 0;\n this. 00034920: 77 6f 72 64 73 20 3d 20 6e 75 6c 6c 3b 5c 6e 20 words = null;\n 00034930: 20 20 20 74 68 69 73 2e 6c 65 6e 67 74 68 20 3d this.length = 00034940: 20 30 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 52 65 0;\n\n // Re 00034950: 64 75 63 74 69 6f 6e 20 63 6f 6e 74 65 78 74 5c duction context\ 00034960: 6e 20 20 20 20 74 68 69 73 2e 72 65 64 20 3d 20 n this.red = 00034970: 6e 75 6c 6c 3b 5c 6e 5c 6e 20 20 20 20 69 66 20 null;\n\n if 00034980: 28 6e 75 6d 62 65 72 20 21 3d 3d 20 6e 75 6c 6c (number !== null 00034990: 29 20 7b 5c 6e 20 20 20 20 20 20 69 66 20 28 62 ) {\n if (b 000349a0: 61 73 65 20 3d 3d 3d 20 27 6c 65 27 20 7c 7c 20 ase === 'le' || 000349b0: 62 61 73 65 20 3d 3d 3d 20 27 62 65 27 29 20 7b base === 'be') { 000349c0: 5c 6e 20 20 20 20 20 20 20 20 65 6e 64 69 61 6e \n endian 000349d0: 20 3d 20 62 61 73 65 3b 5c 6e 20 20 20 20 20 20 = base;\n 000349e0: 20 20 62 61 73 65 20 3d 20 31 30 3b 5c 6e 20 20 base = 10;\n 000349f0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 74 }\n\n t 00034a00: 68 69 73 2e 5f 69 6e 69 74 28 6e 75 6d 62 65 72 his._init(number 00034a10: 20 7c 7c 20 30 2c 20 62 61 73 65 20 7c 7c 20 31 || 0, base || 1 00034a20: 30 2c 20 65 6e 64 69 61 6e 20 7c 7c 20 27 62 65 0, endian || 'be 00034a30: 27 29 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 5c ');\n }\n }\ 00034a40: 6e 20 20 69 66 20 28 74 79 70 65 6f 66 20 6d 6f n if (typeof mo 00034a50: 64 75 6c 65 20 3d 3d 3d 20 27 6f 62 6a 65 63 74 dule === 'object 00034a60: 27 29 20 7b 5c 6e 20 20 20 20 6d 6f 64 75 6c 65 ') {\n module 00034a70: 2e 65 78 70 6f 72 74 73 20 3d 20 42 4e 3b 5c 6e .exports = BN;\n 00034a80: 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 } else {\n 00034a90: 65 78 70 6f 72 74 73 2e 42 4e 20 3d 20 42 4e 3b exports.BN = BN; 00034aa0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 42 4e 2e 42 4e \n }\n\n BN.BN 00034ab0: 20 3d 20 42 4e 3b 5c 6e 20 20 42 4e 2e 77 6f 72 = BN;\n BN.wor 00034ac0: 64 53 69 7a 65 20 3d 20 32 36 3b 5c 6e 5c 6e 20 dSize = 26;\n\n 00034ad0: 20 76 61 72 20 42 75 66 66 65 72 3b 5c 6e 20 20 var Buffer;\n 00034ae0: 74 72 79 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 try {\n if (t 00034af0: 79 70 65 6f 66 20 77 69 6e 64 6f 77 20 21 3d 3d ypeof window !== 00034b00: 20 27 75 6e 64 65 66 69 6e 65 64 27 20 26 26 20 'undefined' && 00034b10: 74 79 70 65 6f 66 20 77 69 6e 64 6f 77 2e 42 75 typeof window.Bu 00034b20: 66 66 65 72 20 21 3d 3d 20 27 75 6e 64 65 66 69 ffer !== 'undefi 00034b30: 6e 65 64 27 29 20 7b 5c 6e 20 20 20 20 20 20 42 ned') {\n B 00034b40: 75 66 66 65 72 20 3d 20 77 69 6e 64 6f 77 2e 42 uffer = window.B 00034b50: 75 66 66 65 72 3b 5c 6e 20 20 20 20 7d 20 65 6c uffer;\n } el 00034b60: 73 65 20 7b 5c 6e 20 20 20 20 20 20 42 75 66 66 se {\n Buff 00034b70: 65 72 20 3d 20 72 65 71 75 69 72 65 28 27 62 75 er = require('bu 00034b80: 66 66 65 72 27 29 2e 42 75 66 66 65 72 3b 5c 6e ffer').Buffer;\n 00034b90: 20 20 20 20 7d 5c 6e 20 20 7d 20 63 61 74 63 68 }\n } catch 00034ba0: 20 28 65 29 20 7b 5c 6e 20 20 7d 5c 6e 5c 6e 20 (e) {\n }\n\n 00034bb0: 20 42 4e 2e 69 73 42 4e 20 3d 20 66 75 6e 63 74 BN.isBN = funct 00034bc0: 69 6f 6e 20 69 73 42 4e 20 28 6e 75 6d 29 20 7b ion isBN (num) { 00034bd0: 5c 6e 20 20 20 20 69 66 20 28 6e 75 6d 20 69 6e \n if (num in 00034be0: 73 74 61 6e 63 65 6f 66 20 42 4e 29 20 7b 5c 6e stanceof BN) {\n 00034bf0: 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 75 return tru 00034c00: 65 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 e;\n }\n\n 00034c10: 20 72 65 74 75 72 6e 20 6e 75 6d 20 21 3d 3d 20 return num !== 00034c20: 6e 75 6c 6c 20 26 26 20 74 79 70 65 6f 66 20 6e null && typeof n 00034c30: 75 6d 20 3d 3d 3d 20 27 6f 62 6a 65 63 74 27 20 um === 'object' 00034c40: 26 26 5c 6e 20 20 20 20 20 20 6e 75 6d 2e 63 6f &&\n num.co 00034c50: 6e 73 74 72 75 63 74 6f 72 2e 77 6f 72 64 53 69 nstructor.wordSi 00034c60: 7a 65 20 3d 3d 3d 20 42 4e 2e 77 6f 72 64 53 69 ze === BN.wordSi 00034c70: 7a 65 20 26 26 20 41 72 72 61 79 2e 69 73 41 72 ze && Array.isAr 00034c80: 72 61 79 28 6e 75 6d 2e 77 6f 72 64 73 29 3b 5c ray(num.words);\ 00034c90: 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 6d 61 n };\n\n BN.ma 00034ca0: 78 20 3d 20 66 75 6e 63 74 69 6f 6e 20 6d 61 78 x = function max 00034cb0: 20 28 6c 65 66 74 2c 20 72 69 67 68 74 29 20 7b (left, right) { 00034cc0: 5c 6e 20 20 20 20 69 66 20 28 6c 65 66 74 2e 63 \n if (left.c 00034cd0: 6d 70 28 72 69 67 68 74 29 20 3e 20 30 29 20 72 mp(right) > 0) r 00034ce0: 65 74 75 72 6e 20 6c 65 66 74 3b 5c 6e 20 20 20 eturn left;\n 00034cf0: 20 72 65 74 75 72 6e 20 72 69 67 68 74 3b 5c 6e return right;\n 00034d00: 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 6d 69 6e };\n\n BN.min 00034d10: 20 3d 20 66 75 6e 63 74 69 6f 6e 20 6d 69 6e 20 = function min 00034d20: 28 6c 65 66 74 2c 20 72 69 67 68 74 29 20 7b 5c (left, right) {\ 00034d30: 6e 20 20 20 20 69 66 20 28 6c 65 66 74 2e 63 6d n if (left.cm 00034d40: 70 28 72 69 67 68 74 29 20 3c 20 30 29 20 72 65 p(right) < 0) re 00034d50: 74 75 72 6e 20 6c 65 66 74 3b 5c 6e 20 20 20 20 turn left;\n 00034d60: 72 65 74 75 72 6e 20 72 69 67 68 74 3b 5c 6e 20 return right;\n 00034d70: 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 };\n\n BN.prot 00034d80: 6f 74 79 70 65 2e 5f 69 6e 69 74 20 3d 20 66 75 otype._init = fu 00034d90: 6e 63 74 69 6f 6e 20 69 6e 69 74 20 28 6e 75 6d nction init (num 00034da0: 62 65 72 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 ber, base, endia 00034db0: 6e 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 79 n) {\n if (ty 00034dc0: 70 65 6f 66 20 6e 75 6d 62 65 72 20 3d 3d 3d 20 peof number === 00034dd0: 27 6e 75 6d 62 65 72 27 29 20 7b 5c 6e 20 20 20 'number') {\n 00034de0: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f return this._ 00034df0: 69 6e 69 74 4e 75 6d 62 65 72 28 6e 75 6d 62 65 initNumber(numbe 00034e00: 72 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e 29 r, base, endian) 00034e10: 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 ;\n }\n\n 00034e20: 69 66 20 28 74 79 70 65 6f 66 20 6e 75 6d 62 65 if (typeof numbe 00034e30: 72 20 3d 3d 3d 20 27 6f 62 6a 65 63 74 27 29 20 r === 'object') 00034e40: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 {\n return 00034e50: 74 68 69 73 2e 5f 69 6e 69 74 41 72 72 61 79 28 this._initArray( 00034e60: 6e 75 6d 62 65 72 2c 20 62 61 73 65 2c 20 65 6e number, base, en 00034e70: 64 69 61 6e 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c dian);\n }\n\ 00034e80: 6e 20 20 20 20 69 66 20 28 62 61 73 65 20 3d 3d n if (base == 00034e90: 3d 20 27 68 65 78 27 29 20 7b 5c 6e 20 20 20 20 = 'hex') {\n 00034ea0: 20 20 62 61 73 65 20 3d 20 31 36 3b 5c 6e 20 20 base = 16;\n 00034eb0: 20 20 7d 5c 6e 20 20 20 20 61 73 73 65 72 74 28 }\n assert( 00034ec0: 62 61 73 65 20 3d 3d 3d 20 28 62 61 73 65 20 7c base === (base | 00034ed0: 20 30 29 20 26 26 20 62 61 73 65 20 3e 3d 20 32 0) && base >= 2 00034ee0: 20 26 26 20 62 61 73 65 20 3c 3d 20 33 36 29 3b && base <= 36); 00034ef0: 5c 6e 5c 6e 20 20 20 20 6e 75 6d 62 65 72 20 3d \n\n number = 00034f00: 20 6e 75 6d 62 65 72 2e 74 6f 53 74 72 69 6e 67 number.toString 00034f10: 28 29 2e 72 65 70 6c 61 63 65 28 2f 5c 5c 73 2b ().replace(/\\s+ 00034f20: 2f 67 2c 20 27 27 29 3b 5c 6e 20 20 20 20 76 61 /g, '');\n va 00034f30: 72 20 73 74 61 72 74 20 3d 20 30 3b 5c 6e 20 20 r start = 0;\n 00034f40: 20 20 69 66 20 28 6e 75 6d 62 65 72 5b 30 5d 20 if (number[0] 00034f50: 3d 3d 3d 20 27 2d 27 29 20 7b 5c 6e 20 20 20 20 === '-') {\n 00034f60: 20 20 73 74 61 72 74 2b 2b 3b 5c 6e 20 20 20 20 start++;\n 00034f70: 20 20 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 this.negative 00034f80: 3d 20 31 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 = 1;\n }\n\n 00034f90: 20 20 20 69 66 20 28 73 74 61 72 74 20 3c 20 6e if (start < n 00034fa0: 75 6d 62 65 72 2e 6c 65 6e 67 74 68 29 20 7b 5c umber.length) {\ 00034fb0: 6e 20 20 20 20 20 20 69 66 20 28 62 61 73 65 20 n if (base 00034fc0: 3d 3d 3d 20 31 36 29 20 7b 5c 6e 20 20 20 20 20 === 16) {\n 00034fd0: 20 20 20 74 68 69 73 2e 5f 70 61 72 73 65 48 65 this._parseHe 00034fe0: 78 28 6e 75 6d 62 65 72 2c 20 73 74 61 72 74 2c x(number, start, 00034ff0: 20 65 6e 64 69 61 6e 29 3b 5c 6e 20 20 20 20 20 endian);\n 00035000: 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 20 } else {\n 00035010: 20 20 20 74 68 69 73 2e 5f 70 61 72 73 65 42 61 this._parseBa 00035020: 73 65 28 6e 75 6d 62 65 72 2c 20 62 61 73 65 2c se(number, base, 00035030: 20 73 74 61 72 74 29 3b 5c 6e 20 20 20 20 20 20 start);\n 00035040: 20 20 69 66 20 28 65 6e 64 69 61 6e 20 3d 3d 3d if (endian === 00035050: 20 27 6c 65 27 29 20 7b 5c 6e 20 20 20 20 20 20 'le') {\n 00035060: 20 20 20 20 74 68 69 73 2e 5f 69 6e 69 74 41 72 this._initAr 00035070: 72 61 79 28 74 68 69 73 2e 74 6f 41 72 72 61 79 ray(this.toArray 00035080: 28 29 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e (), base, endian 00035090: 29 3b 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 );\n }\n 000350a0: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 20 }\n }\n 000350b0: 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 };\n\n BN.prot 000350c0: 6f 74 79 70 65 2e 5f 69 6e 69 74 4e 75 6d 62 65 otype._initNumbe 000350d0: 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 5f 69 6e r = function _in 000350e0: 69 74 4e 75 6d 62 65 72 20 28 6e 75 6d 62 65 72 itNumber (number 000350f0: 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e 29 20 , base, endian) 00035100: 7b 5c 6e 20 20 20 20 69 66 20 28 6e 75 6d 62 65 {\n if (numbe 00035110: 72 20 3c 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 r < 0) {\n 00035120: 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 3d 20 this.negative = 00035130: 31 3b 5c 6e 20 20 20 20 20 20 6e 75 6d 62 65 72 1;\n number 00035140: 20 3d 20 2d 6e 75 6d 62 65 72 3b 5c 6e 20 20 20 = -number;\n 00035150: 20 7d 5c 6e 20 20 20 20 69 66 20 28 6e 75 6d 62 }\n if (numb 00035160: 65 72 20 3c 20 30 78 34 30 30 30 30 30 30 29 20 er < 0x4000000) 00035170: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 77 6f {\n this.wo 00035180: 72 64 73 20 3d 20 5b 6e 75 6d 62 65 72 20 26 20 rds = [number & 00035190: 30 78 33 66 66 66 66 66 66 5d 3b 5c 6e 20 20 20 0x3ffffff];\n 000351a0: 20 20 20 74 68 69 73 2e 6c 65 6e 67 74 68 20 3d this.length = 000351b0: 20 31 3b 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 1;\n } else 000351c0: 69 66 20 28 6e 75 6d 62 65 72 20 3c 20 30 78 31 if (number < 0x1 000351d0: 30 30 30 30 30 30 30 30 30 30 30 30 30 29 20 7b 0000000000000) { 000351e0: 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 \n this.wor 000351f0: 64 73 20 3d 20 5b 5c 6e 20 20 20 20 20 20 20 20 ds = [\n 00035200: 6e 75 6d 62 65 72 20 26 20 30 78 33 66 66 66 66 number & 0x3ffff 00035210: 66 66 2c 5c 6e 20 20 20 20 20 20 20 20 28 6e 75 ff,\n (nu 00035220: 6d 62 65 72 20 2f 20 30 78 34 30 30 30 30 30 30 mber / 0x4000000 00035230: 29 20 26 20 30 78 33 66 66 66 66 66 66 5c 6e 20 ) & 0x3ffffff\n 00035240: 20 20 20 20 20 5d 3b 5c 6e 20 20 20 20 20 20 74 ];\n t 00035250: 68 69 73 2e 6c 65 6e 67 74 68 20 3d 20 32 3b 5c his.length = 2;\ 00035260: 6e 20 20 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 n } else {\n 00035270: 20 20 20 20 20 61 73 73 65 72 74 28 6e 75 6d 62 assert(numb 00035280: 65 72 20 3c 20 30 78 32 30 30 30 30 30 30 30 30 er < 0x200000000 00035290: 30 30 30 30 30 29 3b 20 2f 2f 20 32 20 5e 20 35 00000); // 2 ^ 5 000352a0: 33 20 28 75 6e 73 61 66 65 29 5c 6e 20 20 20 20 3 (unsafe)\n 000352b0: 20 20 74 68 69 73 2e 77 6f 72 64 73 20 3d 20 5b this.words = [ 000352c0: 5c 6e 20 20 20 20 20 20 20 20 6e 75 6d 62 65 72 \n number 000352d0: 20 26 20 30 78 33 66 66 66 66 66 66 2c 5c 6e 20 & 0x3ffffff,\n 000352e0: 20 20 20 20 20 20 20 28 6e 75 6d 62 65 72 20 2f (number / 000352f0: 20 30 78 34 30 30 30 30 30 30 29 20 26 20 30 78 0x4000000) & 0x 00035300: 33 66 66 66 66 66 66 2c 5c 6e 20 20 20 20 20 20 3ffffff,\n 00035310: 20 20 31 5c 6e 20 20 20 20 20 20 5d 3b 5c 6e 20 1\n ];\n 00035320: 20 20 20 20 20 74 68 69 73 2e 6c 65 6e 67 74 68 this.length 00035330: 20 3d 20 33 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e = 3;\n }\n\n 00035340: 20 20 20 20 69 66 20 28 65 6e 64 69 61 6e 20 21 if (endian ! 00035350: 3d 3d 20 27 6c 65 27 29 20 72 65 74 75 72 6e 3b == 'le') return; 00035360: 5c 6e 5c 6e 20 20 20 20 2f 2f 20 52 65 76 65 72 \n\n // Rever 00035370: 73 65 20 74 68 65 20 62 79 74 65 73 5c 6e 20 20 se the bytes\n 00035380: 20 20 74 68 69 73 2e 5f 69 6e 69 74 41 72 72 61 this._initArra 00035390: 79 28 74 68 69 73 2e 74 6f 41 72 72 61 79 28 29 y(this.toArray() 000353a0: 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e 29 3b , base, endian); 000353b0: 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 \n };\n\n BN.p 000353c0: 72 6f 74 6f 74 79 70 65 2e 5f 69 6e 69 74 41 72 rototype._initAr 000353d0: 72 61 79 20 3d 20 66 75 6e 63 74 69 6f 6e 20 5f ray = function _ 000353e0: 69 6e 69 74 41 72 72 61 79 20 28 6e 75 6d 62 65 initArray (numbe 000353f0: 72 2c 20 62 61 73 65 2c 20 65 6e 64 69 61 6e 29 r, base, endian) 00035400: 20 7b 5c 6e 20 20 20 20 2f 2f 20 50 65 72 68 61 {\n // Perha 00035410: 70 73 20 61 20 55 69 6e 74 38 41 72 72 61 79 5c ps a Uint8Array\ 00035420: 6e 20 20 20 20 61 73 73 65 72 74 28 74 79 70 65 n assert(type 00035430: 6f 66 20 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 of number.length 00035440: 20 3d 3d 3d 20 27 6e 75 6d 62 65 72 27 29 3b 5c === 'number');\ 00035450: 6e 20 20 20 20 69 66 20 28 6e 75 6d 62 65 72 2e n if (number. 00035460: 6c 65 6e 67 74 68 20 3c 3d 20 30 29 20 7b 5c 6e length <= 0) {\n 00035470: 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 this.words 00035480: 20 3d 20 5b 30 5d 3b 5c 6e 20 20 20 20 20 20 74 = [0];\n t 00035490: 68 69 73 2e 6c 65 6e 67 74 68 20 3d 20 31 3b 5c his.length = 1;\ 000354a0: 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 68 n return th 000354b0: 69 73 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 is;\n }\n\n 000354c0: 20 20 74 68 69 73 2e 6c 65 6e 67 74 68 20 3d 20 this.length = 000354d0: 4d 61 74 68 2e 63 65 69 6c 28 6e 75 6d 62 65 72 Math.ceil(number 000354e0: 2e 6c 65 6e 67 74 68 20 2f 20 33 29 3b 5c 6e 20 .length / 3);\n 000354f0: 20 20 20 74 68 69 73 2e 77 6f 72 64 73 20 3d 20 this.words = 00035500: 6e 65 77 20 41 72 72 61 79 28 74 68 69 73 2e 6c new Array(this.l 00035510: 65 6e 67 74 68 29 3b 5c 6e 20 20 20 20 66 6f 72 ength);\n for 00035520: 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c (var i = 0; i < 00035530: 20 74 68 69 73 2e 6c 65 6e 67 74 68 3b 20 69 2b this.length; i+ 00035540: 2b 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 +) {\n this 00035550: 2e 77 6f 72 64 73 5b 69 5d 20 3d 20 30 3b 5c 6e .words[i] = 0;\n 00035560: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 76 61 72 }\n\n var 00035570: 20 6a 2c 20 77 3b 5c 6e 20 20 20 20 76 61 72 20 j, w;\n var 00035580: 6f 66 66 20 3d 20 30 3b 5c 6e 20 20 20 20 69 66 off = 0;\n if 00035590: 20 28 65 6e 64 69 61 6e 20 3d 3d 3d 20 27 62 65 (endian === 'be 000355a0: 27 29 20 7b 5c 6e 20 20 20 20 20 20 66 6f 72 20 ') {\n for 000355b0: 28 69 20 3d 20 6e 75 6d 62 65 72 2e 6c 65 6e 67 (i = number.leng 000355c0: 74 68 20 2d 20 31 2c 20 6a 20 3d 20 30 3b 20 69 th - 1, j = 0; i 000355d0: 20 3e 3d 20 30 3b 20 69 20 2d 3d 20 33 29 20 7b >= 0; i -= 3) { 000355e0: 5c 6e 20 20 20 20 20 20 20 20 77 20 3d 20 6e 75 \n w = nu 000355f0: 6d 62 65 72 5b 69 5d 20 7c 20 28 6e 75 6d 62 65 mber[i] | (numbe 00035600: 72 5b 69 20 2d 20 31 5d 20 3c 3c 20 38 29 20 7c r[i - 1] << 8) | 00035610: 20 28 6e 75 6d 62 65 72 5b 69 20 2d 20 32 5d 20 (number[i - 2] 00035620: 3c 3c 20 31 36 29 3b 5c 6e 20 20 20 20 20 20 20 << 16);\n 00035630: 20 74 68 69 73 2e 77 6f 72 64 73 5b 6a 5d 20 7c this.words[j] | 00035640: 3d 20 28 77 20 3c 3c 20 6f 66 66 29 20 26 20 30 = (w << off) & 0 00035650: 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 20 20 x3ffffff;\n 00035660: 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 6a 20 this.words[j 00035670: 2b 20 31 5d 20 3d 20 28 77 20 3e 3e 3e 20 28 32 + 1] = (w >>> (2 00035680: 36 20 2d 20 6f 66 66 29 29 20 26 20 30 78 33 66 6 - off)) & 0x3f 00035690: 66 66 66 66 66 3b 5c 6e 20 20 20 20 20 20 20 20 fffff;\n 000356a0: 6f 66 66 20 2b 3d 20 32 34 3b 5c 6e 20 20 20 20 off += 24;\n 000356b0: 20 20 20 20 69 66 20 28 6f 66 66 20 3e 3d 20 32 if (off >= 2 000356c0: 36 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6) {\n 000356d0: 6f 66 66 20 2d 3d 20 32 36 3b 5c 6e 20 20 20 20 off -= 26;\n 000356e0: 20 20 20 20 20 20 6a 2b 2b 3b 5c 6e 20 20 20 20 j++;\n 000356f0: 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 7d 5c 6e }\n }\n 00035700: 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 65 } else if (e 00035710: 6e 64 69 61 6e 20 3d 3d 3d 20 27 6c 65 27 29 20 ndian === 'le') 00035720: 7b 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 69 20 {\n for (i 00035730: 3d 20 30 2c 20 6a 20 3d 20 30 3b 20 69 20 3c 20 = 0, j = 0; i < 00035740: 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 3b 20 69 number.length; i 00035750: 20 2b 3d 20 33 29 20 7b 5c 6e 20 20 20 20 20 20 += 3) {\n 00035760: 20 20 77 20 3d 20 6e 75 6d 62 65 72 5b 69 5d 20 w = number[i] 00035770: 7c 20 28 6e 75 6d 62 65 72 5b 69 20 2b 20 31 5d | (number[i + 1] 00035780: 20 3c 3c 20 38 29 20 7c 20 28 6e 75 6d 62 65 72 << 8) | (number 00035790: 5b 69 20 2b 20 32 5d 20 3c 3c 20 31 36 29 3b 5c [i + 2] << 16);\ 000357a0: 6e 20 20 20 20 20 20 20 20 74 68 69 73 2e 77 6f n this.wo 000357b0: 72 64 73 5b 6a 5d 20 7c 3d 20 28 77 20 3c 3c 20 rds[j] |= (w << 000357c0: 6f 66 66 29 20 26 20 30 78 33 66 66 66 66 66 66 off) & 0x3ffffff 000357d0: 3b 5c 6e 20 20 20 20 20 20 20 20 74 68 69 73 2e ;\n this. 000357e0: 77 6f 72 64 73 5b 6a 20 2b 20 31 5d 20 3d 20 28 words[j + 1] = ( 000357f0: 77 20 3e 3e 3e 20 28 32 36 20 2d 20 6f 66 66 29 w >>> (26 - off) 00035800: 29 20 26 20 30 78 33 66 66 66 66 66 66 3b 5c 6e ) & 0x3ffffff;\n 00035810: 20 20 20 20 20 20 20 20 6f 66 66 20 2b 3d 20 32 off += 2 00035820: 34 3b 5c 6e 20 20 20 20 20 20 20 20 69 66 20 28 4;\n if ( 00035830: 6f 66 66 20 3e 3d 20 32 36 29 20 7b 5c 6e 20 20 off >= 26) {\n 00035840: 20 20 20 20 20 20 20 20 6f 66 66 20 2d 3d 20 32 off -= 2 00035850: 36 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 6a 2b 6;\n j+ 00035860: 2b 3b 5c 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 +;\n }\n 00035870: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 20 }\n }\n 00035880: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f return this._ 00035890: 73 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e strip();\n };\n 000358a0: 5c 6e 20 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 \n function par 000358b0: 73 65 48 65 78 34 42 69 74 73 20 28 73 74 72 69 seHex4Bits (stri 000358c0: 6e 67 2c 20 69 6e 64 65 78 29 20 7b 5c 6e 20 20 ng, index) {\n 000358d0: 20 20 76 61 72 20 63 20 3d 20 73 74 72 69 6e 67 var c = string 000358e0: 2e 63 68 61 72 43 6f 64 65 41 74 28 69 6e 64 65 .charCodeAt(inde 000358f0: 78 29 3b 5c 6e 20 20 20 20 2f 2f 20 27 30 27 20 x);\n // '0' 00035900: 2d 20 27 39 27 5c 6e 20 20 20 20 69 66 20 28 63 - '9'\n if (c 00035910: 20 3e 3d 20 34 38 20 26 26 20 63 20 3c 3d 20 35 >= 48 && c <= 5 00035920: 37 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 7) {\n retu 00035930: 72 6e 20 63 20 2d 20 34 38 3b 5c 6e 20 20 20 20 rn c - 48;\n 00035940: 2f 2f 20 27 41 27 20 2d 20 27 46 27 5c 6e 20 20 // 'A' - 'F'\n 00035950: 20 20 7d 20 65 6c 73 65 20 69 66 20 28 63 20 3e } else if (c > 00035960: 3d 20 36 35 20 26 26 20 63 20 3c 3d 20 37 30 29 = 65 && c <= 70) 00035970: 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e {\n return 00035980: 20 63 20 2d 20 35 35 3b 5c 6e 20 20 20 20 2f 2f c - 55;\n // 00035990: 20 27 61 27 20 2d 20 27 66 27 5c 6e 20 20 20 20 'a' - 'f'\n 000359a0: 7d 20 65 6c 73 65 20 69 66 20 28 63 20 3e 3d 20 } else if (c >= 000359b0: 39 37 20 26 26 20 63 20 3c 3d 20 31 30 32 29 20 97 && c <= 102) 000359c0: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 {\n return 000359d0: 63 20 2d 20 38 37 3b 5c 6e 20 20 20 20 7d 20 65 c - 87;\n } e 000359e0: 6c 73 65 20 7b 5c 6e 20 20 20 20 20 20 61 73 73 lse {\n ass 000359f0: 65 72 74 28 66 61 6c 73 65 2c 20 27 49 6e 76 61 ert(false, 'Inva 00035a00: 6c 69 64 20 63 68 61 72 61 63 74 65 72 20 69 6e lid character in 00035a10: 20 27 20 2b 20 73 74 72 69 6e 67 29 3b 5c 6e 20 ' + string);\n 00035a20: 20 20 20 7d 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 66 }\n }\n\n f 00035a30: 75 6e 63 74 69 6f 6e 20 70 61 72 73 65 48 65 78 unction parseHex 00035a40: 42 79 74 65 20 28 73 74 72 69 6e 67 2c 20 6c 6f Byte (string, lo 00035a50: 77 65 72 42 6f 75 6e 64 2c 20 69 6e 64 65 78 29 werBound, index) 00035a60: 20 7b 5c 6e 20 20 20 20 76 61 72 20 72 20 3d 20 {\n var r = 00035a70: 70 61 72 73 65 48 65 78 34 42 69 74 73 28 73 74 parseHex4Bits(st 00035a80: 72 69 6e 67 2c 20 69 6e 64 65 78 29 3b 5c 6e 20 ring, index);\n 00035a90: 20 20 20 69 66 20 28 69 6e 64 65 78 20 2d 20 31 if (index - 1 00035aa0: 20 3e 3d 20 6c 6f 77 65 72 42 6f 75 6e 64 29 20 >= lowerBound) 00035ab0: 7b 5c 6e 20 20 20 20 20 20 72 20 7c 3d 20 70 61 {\n r |= pa 00035ac0: 72 73 65 48 65 78 34 42 69 74 73 28 73 74 72 69 rseHex4Bits(stri 00035ad0: 6e 67 2c 20 69 6e 64 65 78 20 2d 20 31 29 20 3c ng, index - 1) < 00035ae0: 3c 20 34 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 < 4;\n }\n 00035af0: 20 72 65 74 75 72 6e 20 72 3b 5c 6e 20 20 7d 5c return r;\n }\ 00035b00: 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 n\n BN.prototyp 00035b10: 65 2e 5f 70 61 72 73 65 48 65 78 20 3d 20 66 75 e._parseHex = fu 00035b20: 6e 63 74 69 6f 6e 20 5f 70 61 72 73 65 48 65 78 nction _parseHex 00035b30: 20 28 6e 75 6d 62 65 72 2c 20 73 74 61 72 74 2c (number, start, 00035b40: 20 65 6e 64 69 61 6e 29 20 7b 5c 6e 20 20 20 20 endian) {\n 00035b50: 2f 2f 20 43 72 65 61 74 65 20 70 6f 73 73 69 62 // Create possib 00035b60: 6c 79 20 62 69 67 67 65 72 20 61 72 72 61 79 20 ly bigger array 00035b70: 74 6f 20 65 6e 73 75 72 65 20 74 68 61 74 20 69 to ensure that i 00035b80: 74 20 66 69 74 73 20 74 68 65 20 6e 75 6d 62 65 t fits the numbe 00035b90: 72 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 6e 67 r\n this.leng 00035ba0: 74 68 20 3d 20 4d 61 74 68 2e 63 65 69 6c 28 28 th = Math.ceil(( 00035bb0: 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 20 2d 20 number.length - 00035bc0: 73 74 61 72 74 29 20 2f 20 36 29 3b 5c 6e 20 20 start) / 6);\n 00035bd0: 20 20 74 68 69 73 2e 77 6f 72 64 73 20 3d 20 6e this.words = n 00035be0: 65 77 20 41 72 72 61 79 28 74 68 69 73 2e 6c 65 ew Array(this.le 00035bf0: 6e 67 74 68 29 3b 5c 6e 20 20 20 20 66 6f 72 20 ngth);\n for 00035c00: 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 (var i = 0; i < 00035c10: 74 68 69 73 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b this.length; i++ 00035c20: 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e ) {\n this. 00035c30: 77 6f 72 64 73 5b 69 5d 20 3d 20 30 3b 5c 6e 20 words[i] = 0;\n 00035c40: 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 32 }\n\n // 2 00035c50: 34 2d 62 69 74 73 20 63 68 75 6e 6b 73 5c 6e 20 4-bits chunks\n 00035c60: 20 20 20 76 61 72 20 6f 66 66 20 3d 20 30 3b 5c var off = 0;\ 00035c70: 6e 20 20 20 20 76 61 72 20 6a 20 3d 20 30 3b 5c n var j = 0;\ 00035c80: 6e 5c 6e 20 20 20 20 76 61 72 20 77 3b 5c 6e 20 n\n var w;\n 00035c90: 20 20 20 69 66 20 28 65 6e 64 69 61 6e 20 3d 3d if (endian == 00035ca0: 3d 20 27 62 65 27 29 20 7b 5c 6e 20 20 20 20 20 = 'be') {\n 00035cb0: 20 66 6f 72 20 28 69 20 3d 20 6e 75 6d 62 65 72 for (i = number 00035cc0: 2e 6c 65 6e 67 74 68 20 2d 20 31 3b 20 69 20 3e .length - 1; i > 00035cd0: 3d 20 73 74 61 72 74 3b 20 69 20 2d 3d 20 32 29 = start; i -= 2) 00035ce0: 20 7b 5c 6e 20 20 20 20 20 20 20 20 77 20 3d 20 {\n w = 00035cf0: 70 61 72 73 65 48 65 78 42 79 74 65 28 6e 75 6d parseHexByte(num 00035d00: 62 65 72 2c 20 73 74 61 72 74 2c 20 69 29 20 3c ber, start, i) < 00035d10: 3c 20 6f 66 66 3b 5c 6e 20 20 20 20 20 20 20 20 < off;\n 00035d20: 74 68 69 73 2e 77 6f 72 64 73 5b 6a 5d 20 7c 3d this.words[j] |= 00035d30: 20 77 20 26 20 30 78 33 66 66 66 66 66 66 3b 5c w & 0x3ffffff;\ 00035d40: 6e 20 20 20 20 20 20 20 20 69 66 20 28 6f 66 66 n if (off 00035d50: 20 3e 3d 20 31 38 29 20 7b 5c 6e 20 20 20 20 20 >= 18) {\n 00035d60: 20 20 20 20 20 6f 66 66 20 2d 3d 20 31 38 3b 5c off -= 18;\ 00035d70: 6e 20 20 20 20 20 20 20 20 20 20 6a 20 2b 3d 20 n j += 00035d80: 31 3b 5c 6e 20 20 20 20 20 20 20 20 20 20 74 68 1;\n th 00035d90: 69 73 2e 77 6f 72 64 73 5b 6a 5d 20 7c 3d 20 77 is.words[j] |= w 00035da0: 20 3e 3e 3e 20 32 36 3b 5c 6e 20 20 20 20 20 20 >>> 26;\n 00035db0: 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 } else {\n 00035dc0: 20 20 20 20 20 20 6f 66 66 20 2b 3d 20 38 3b 5c off += 8;\ 00035dd0: 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 n }\n 00035de0: 20 20 7d 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 }\n } else 00035df0: 7b 5c 6e 20 20 20 20 20 20 76 61 72 20 70 61 72 {\n var par 00035e00: 73 65 4c 65 6e 67 74 68 20 3d 20 6e 75 6d 62 65 seLength = numbe 00035e10: 72 2e 6c 65 6e 67 74 68 20 2d 20 73 74 61 72 74 r.length - start 00035e20: 3b 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 69 20 ;\n for (i 00035e30: 3d 20 70 61 72 73 65 4c 65 6e 67 74 68 20 25 20 = parseLength % 00035e40: 32 20 3d 3d 3d 20 30 20 3f 20 73 74 61 72 74 20 2 === 0 ? start 00035e50: 2b 20 31 20 3a 20 73 74 61 72 74 3b 20 69 20 3c + 1 : start; i < 00035e60: 20 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 3b 20 number.length; 00035e70: 69 20 2b 3d 20 32 29 20 7b 5c 6e 20 20 20 20 20 i += 2) {\n 00035e80: 20 20 20 77 20 3d 20 70 61 72 73 65 48 65 78 42 w = parseHexB 00035e90: 79 74 65 28 6e 75 6d 62 65 72 2c 20 73 74 61 72 yte(number, star 00035ea0: 74 2c 20 69 29 20 3c 3c 20 6f 66 66 3b 5c 6e 20 t, i) << off;\n 00035eb0: 20 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 this.word 00035ec0: 73 5b 6a 5d 20 7c 3d 20 77 20 26 20 30 78 33 66 s[j] |= w & 0x3f 00035ed0: 66 66 66 66 66 3b 5c 6e 20 20 20 20 20 20 20 20 fffff;\n 00035ee0: 69 66 20 28 6f 66 66 20 3e 3d 20 31 38 29 20 7b if (off >= 18) { 00035ef0: 5c 6e 20 20 20 20 20 20 20 20 20 20 6f 66 66 20 \n off 00035f00: 2d 3d 20 31 38 3b 5c 6e 20 20 20 20 20 20 20 20 -= 18;\n 00035f10: 20 20 6a 20 2b 3d 20 31 3b 5c 6e 20 20 20 20 20 j += 1;\n 00035f20: 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b this.words[ 00035f30: 6a 5d 20 7c 3d 20 77 20 3e 3e 3e 20 32 36 3b 5c j] |= w >>> 26;\ 00035f40: 6e 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 n } else 00035f50: 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6f 66 66 {\n off 00035f60: 20 2b 3d 20 38 3b 5c 6e 20 20 20 20 20 20 20 20 += 8;\n 00035f70: 7d 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 }\n }\n 00035f80: 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 }\n\n this._s 00035f90: 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c trip();\n };\n\ 00035fa0: 6e 20 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 73 n function pars 00035fb0: 65 42 61 73 65 20 28 73 74 72 2c 20 73 74 61 72 eBase (str, star 00035fc0: 74 2c 20 65 6e 64 2c 20 6d 75 6c 29 20 7b 5c 6e t, end, mul) {\n 00035fd0: 20 20 20 20 76 61 72 20 72 20 3d 20 30 3b 5c 6e var r = 0;\n 00035fe0: 20 20 20 20 76 61 72 20 62 20 3d 20 30 3b 5c 6e var b = 0;\n 00035ff0: 20 20 20 20 76 61 72 20 6c 65 6e 20 3d 20 4d 61 var len = Ma 00036000: 74 68 2e 6d 69 6e 28 73 74 72 2e 6c 65 6e 67 74 th.min(str.lengt 00036010: 68 2c 20 65 6e 64 29 3b 5c 6e 20 20 20 20 66 6f h, end);\n fo 00036020: 72 20 28 76 61 72 20 69 20 3d 20 73 74 61 72 74 r (var i = start 00036030: 3b 20 69 20 3c 20 6c 65 6e 3b 20 69 2b 2b 29 20 ; i < len; i++) 00036040: 7b 5c 6e 20 20 20 20 20 20 76 61 72 20 63 20 3d {\n var c = 00036050: 20 73 74 72 2e 63 68 61 72 43 6f 64 65 41 74 28 str.charCodeAt( 00036060: 69 29 20 2d 20 34 38 3b 5c 6e 5c 6e 20 20 20 20 i) - 48;\n\n 00036070: 20 20 72 20 2a 3d 20 6d 75 6c 3b 5c 6e 5c 6e 20 r *= mul;\n\n 00036080: 20 20 20 20 20 2f 2f 20 27 61 27 5c 6e 20 20 20 // 'a'\n 00036090: 20 20 20 69 66 20 28 63 20 3e 3d 20 34 39 29 20 if (c >= 49) 000360a0: 7b 5c 6e 20 20 20 20 20 20 20 20 62 20 3d 20 63 {\n b = c 000360b0: 20 2d 20 34 39 20 2b 20 30 78 61 3b 5c 6e 5c 6e - 49 + 0xa;\n\n 000360c0: 20 20 20 20 20 20 2f 2f 20 27 41 27 5c 6e 20 20 // 'A'\n 000360d0: 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 63 } else if (c 000360e0: 20 3e 3d 20 31 37 29 20 7b 5c 6e 20 20 20 20 20 >= 17) {\n 000360f0: 20 20 20 62 20 3d 20 63 20 2d 20 31 37 20 2b 20 b = c - 17 + 00036100: 30 78 61 3b 5c 6e 5c 6e 20 20 20 20 20 20 2f 2f 0xa;\n\n // 00036110: 20 27 30 27 20 2d 20 27 39 27 5c 6e 20 20 20 20 '0' - '9'\n 00036120: 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 } else {\n 00036130: 20 20 20 20 62 20 3d 20 63 3b 5c 6e 20 20 20 20 b = c;\n 00036140: 20 20 7d 5c 6e 20 20 20 20 20 20 61 73 73 65 72 }\n asser 00036150: 74 28 63 20 3e 3d 20 30 20 26 26 20 62 20 3c 20 t(c >= 0 && b < 00036160: 6d 75 6c 2c 20 27 49 6e 76 61 6c 69 64 20 63 68 mul, 'Invalid ch 00036170: 61 72 61 63 74 65 72 27 29 3b 5c 6e 20 20 20 20 aracter');\n 00036180: 20 20 72 20 2b 3d 20 62 3b 5c 6e 20 20 20 20 7d r += b;\n } 00036190: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 72 3b 5c \n return r;\ 000361a0: 6e 20 20 7d 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f n }\n\n BN.pro 000361b0: 74 6f 74 79 70 65 2e 5f 70 61 72 73 65 42 61 73 totype._parseBas 000361c0: 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 5f 70 61 e = function _pa 000361d0: 72 73 65 42 61 73 65 20 28 6e 75 6d 62 65 72 2c rseBase (number, 000361e0: 20 62 61 73 65 2c 20 73 74 61 72 74 29 20 7b 5c base, start) {\ 000361f0: 6e 20 20 20 20 2f 2f 20 49 6e 69 74 69 61 6c 69 n // Initiali 00036200: 7a 65 20 61 73 20 7a 65 72 6f 5c 6e 20 20 20 20 ze as zero\n 00036210: 74 68 69 73 2e 77 6f 72 64 73 20 3d 20 5b 30 5d this.words = [0] 00036220: 3b 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 6e 67 ;\n this.leng 00036230: 74 68 20 3d 20 31 3b 5c 6e 5c 6e 20 20 20 20 2f th = 1;\n\n / 00036240: 2f 20 46 69 6e 64 20 6c 65 6e 67 74 68 20 6f 66 / Find length of 00036250: 20 6c 69 6d 62 20 69 6e 20 62 61 73 65 5c 6e 20 limb in base\n 00036260: 20 20 20 66 6f 72 20 28 76 61 72 20 6c 69 6d 62 for (var limb 00036270: 4c 65 6e 20 3d 20 30 2c 20 6c 69 6d 62 50 6f 77 Len = 0, limbPow 00036280: 20 3d 20 31 3b 20 6c 69 6d 62 50 6f 77 20 3c 3d = 1; limbPow <= 00036290: 20 30 78 33 66 66 66 66 66 66 3b 20 6c 69 6d 62 0x3ffffff; limb 000362a0: 50 6f 77 20 2a 3d 20 62 61 73 65 29 20 7b 5c 6e Pow *= base) {\n 000362b0: 20 20 20 20 20 20 6c 69 6d 62 4c 65 6e 2b 2b 3b limbLen++; 000362c0: 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 6c 69 6d \n }\n lim 000362d0: 62 4c 65 6e 2d 2d 3b 5c 6e 20 20 20 20 6c 69 6d bLen--;\n lim 000362e0: 62 50 6f 77 20 3d 20 28 6c 69 6d 62 50 6f 77 20 bPow = (limbPow 000362f0: 2f 20 62 61 73 65 29 20 7c 20 30 3b 5c 6e 5c 6e / base) | 0;\n\n 00036300: 20 20 20 20 76 61 72 20 74 6f 74 61 6c 20 3d 20 var total = 00036310: 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 20 2d 20 number.length - 00036320: 73 74 61 72 74 3b 5c 6e 20 20 20 20 76 61 72 20 start;\n var 00036330: 6d 6f 64 20 3d 20 74 6f 74 61 6c 20 25 20 6c 69 mod = total % li 00036340: 6d 62 4c 65 6e 3b 5c 6e 20 20 20 20 76 61 72 20 mbLen;\n var 00036350: 65 6e 64 20 3d 20 4d 61 74 68 2e 6d 69 6e 28 74 end = Math.min(t 00036360: 6f 74 61 6c 2c 20 74 6f 74 61 6c 20 2d 20 6d 6f otal, total - mo 00036370: 64 29 20 2b 20 73 74 61 72 74 3b 5c 6e 5c 6e 20 d) + start;\n\n 00036380: 20 20 20 76 61 72 20 77 6f 72 64 20 3d 20 30 3b var word = 0; 00036390: 5c 6e 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 \n for (var i 000363a0: 20 3d 20 73 74 61 72 74 3b 20 69 20 3c 20 65 6e = start; i < en 000363b0: 64 3b 20 69 20 2b 3d 20 6c 69 6d 62 4c 65 6e 29 d; i += limbLen) 000363c0: 20 7b 5c 6e 20 20 20 20 20 20 77 6f 72 64 20 3d {\n word = 000363d0: 20 70 61 72 73 65 42 61 73 65 28 6e 75 6d 62 65 parseBase(numbe 000363e0: 72 2c 20 69 2c 20 69 20 2b 20 6c 69 6d 62 4c 65 r, i, i + limbLe 000363f0: 6e 2c 20 62 61 73 65 29 3b 5c 6e 5c 6e 20 20 20 n, base);\n\n 00036400: 20 20 20 74 68 69 73 2e 69 6d 75 6c 6e 28 6c 69 this.imuln(li 00036410: 6d 62 50 6f 77 29 3b 5c 6e 20 20 20 20 20 20 69 mbPow);\n i 00036420: 66 20 28 74 68 69 73 2e 77 6f 72 64 73 5b 30 5d f (this.words[0] 00036430: 20 2b 20 77 6f 72 64 20 3c 20 30 78 34 30 30 30 + word < 0x4000 00036440: 30 30 30 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 000) {\n 00036450: 74 68 69 73 2e 77 6f 72 64 73 5b 30 5d 20 2b 3d this.words[0] += 00036460: 20 77 6f 72 64 3b 5c 6e 20 20 20 20 20 20 7d 20 word;\n } 00036470: 65 6c 73 65 20 7b 5c 6e 20 20 20 20 20 20 20 20 else {\n 00036480: 74 68 69 73 2e 5f 69 61 64 64 6e 28 77 6f 72 64 this._iaddn(word 00036490: 29 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 );\n }\n 000364a0: 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 6d 6f }\n\n if (mo 000364b0: 64 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 d !== 0) {\n 000364c0: 20 20 76 61 72 20 70 6f 77 20 3d 20 31 3b 5c 6e var pow = 1;\n 000364d0: 20 20 20 20 20 20 77 6f 72 64 20 3d 20 70 61 72 word = par 000364e0: 73 65 42 61 73 65 28 6e 75 6d 62 65 72 2c 20 69 seBase(number, i 000364f0: 2c 20 6e 75 6d 62 65 72 2e 6c 65 6e 67 74 68 2c , number.length, 00036500: 20 62 61 73 65 29 3b 5c 6e 5c 6e 20 20 20 20 20 base);\n\n 00036510: 20 66 6f 72 20 28 69 20 3d 20 30 3b 20 69 20 3c for (i = 0; i < 00036520: 20 6d 6f 64 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 mod; i++) {\n 00036530: 20 20 20 20 20 20 70 6f 77 20 2a 3d 20 62 61 73 pow *= bas 00036540: 65 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 5c 6e 20 e;\n }\n\n 00036550: 20 20 20 20 20 74 68 69 73 2e 69 6d 75 6c 6e 28 this.imuln( 00036560: 70 6f 77 29 3b 5c 6e 20 20 20 20 20 20 69 66 20 pow);\n if 00036570: 28 74 68 69 73 2e 77 6f 72 64 73 5b 30 5d 20 2b (this.words[0] + 00036580: 20 77 6f 72 64 20 3c 20 30 78 34 30 30 30 30 30 word < 0x400000 00036590: 30 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 74 68 0) {\n th 000365a0: 69 73 2e 77 6f 72 64 73 5b 30 5d 20 2b 3d 20 77 is.words[0] += w 000365b0: 6f 72 64 3b 5c 6e 20 20 20 20 20 20 7d 20 65 6c ord;\n } el 000365c0: 73 65 20 7b 5c 6e 20 20 20 20 20 20 20 20 74 68 se {\n th 000365d0: 69 73 2e 5f 69 61 64 64 6e 28 77 6f 72 64 29 3b is._iaddn(word); 000365e0: 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d \n }\n } 000365f0: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 5f 73 74 \n\n this._st 00036600: 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e rip();\n };\n\n 00036610: 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 63 BN.prototype.c 00036620: 6f 70 79 20 3d 20 66 75 6e 63 74 69 6f 6e 20 63 opy = function c 00036630: 6f 70 79 20 28 64 65 73 74 29 20 7b 5c 6e 20 20 opy (dest) {\n 00036640: 20 20 64 65 73 74 2e 77 6f 72 64 73 20 3d 20 6e dest.words = n 00036650: 65 77 20 41 72 72 61 79 28 74 68 69 73 2e 6c 65 ew Array(this.le 00036660: 6e 67 74 68 29 3b 5c 6e 20 20 20 20 66 6f 72 20 ngth);\n for 00036670: 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 (var i = 0; i < 00036680: 74 68 69 73 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b this.length; i++ 00036690: 29 20 7b 5c 6e 20 20 20 20 20 20 64 65 73 74 2e ) {\n dest. 000366a0: 77 6f 72 64 73 5b 69 5d 20 3d 20 74 68 69 73 2e words[i] = this. 000366b0: 77 6f 72 64 73 5b 69 5d 3b 5c 6e 20 20 20 20 7d words[i];\n } 000366c0: 5c 6e 20 20 20 20 64 65 73 74 2e 6c 65 6e 67 74 \n dest.lengt 000366d0: 68 20 3d 20 74 68 69 73 2e 6c 65 6e 67 74 68 3b h = this.length; 000366e0: 5c 6e 20 20 20 20 64 65 73 74 2e 6e 65 67 61 74 \n dest.negat 000366f0: 69 76 65 20 3d 20 74 68 69 73 2e 6e 65 67 61 74 ive = this.negat 00036700: 69 76 65 3b 5c 6e 20 20 20 20 64 65 73 74 2e 72 ive;\n dest.r 00036710: 65 64 20 3d 20 74 68 69 73 2e 72 65 64 3b 5c 6e ed = this.red;\n 00036720: 20 20 7d 3b 5c 6e 5c 6e 20 20 66 75 6e 63 74 69 };\n\n functi 00036730: 6f 6e 20 6d 6f 76 65 20 28 64 65 73 74 2c 20 73 on move (dest, s 00036740: 72 63 29 20 7b 5c 6e 20 20 20 20 64 65 73 74 2e rc) {\n dest. 00036750: 77 6f 72 64 73 20 3d 20 73 72 63 2e 77 6f 72 64 words = src.word 00036760: 73 3b 5c 6e 20 20 20 20 64 65 73 74 2e 6c 65 6e s;\n dest.len 00036770: 67 74 68 20 3d 20 73 72 63 2e 6c 65 6e 67 74 68 gth = src.length 00036780: 3b 5c 6e 20 20 20 20 64 65 73 74 2e 6e 65 67 61 ;\n dest.nega 00036790: 74 69 76 65 20 3d 20 73 72 63 2e 6e 65 67 61 74 tive = src.negat 000367a0: 69 76 65 3b 5c 6e 20 20 20 20 64 65 73 74 2e 72 ive;\n dest.r 000367b0: 65 64 20 3d 20 73 72 63 2e 72 65 64 3b 5c 6e 20 ed = src.red;\n 000367c0: 20 7d 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f }\n\n BN.proto 000367d0: 74 79 70 65 2e 5f 6d 6f 76 65 20 3d 20 66 75 6e type._move = fun 000367e0: 63 74 69 6f 6e 20 5f 6d 6f 76 65 20 28 64 65 73 ction _move (des 000367f0: 74 29 20 7b 5c 6e 20 20 20 20 6d 6f 76 65 28 64 t) {\n move(d 00036800: 65 73 74 2c 20 74 68 69 73 29 3b 5c 6e 20 20 7d est, this);\n } 00036810: 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 ;\n\n BN.protot 00036820: 79 70 65 2e 63 6c 6f 6e 65 20 3d 20 66 75 6e 63 ype.clone = func 00036830: 74 69 6f 6e 20 63 6c 6f 6e 65 20 28 29 20 7b 5c tion clone () {\ 00036840: 6e 20 20 20 20 76 61 72 20 72 20 3d 20 6e 65 77 n var r = new 00036850: 20 42 4e 28 6e 75 6c 6c 29 3b 5c 6e 20 20 20 20 BN(null);\n 00036860: 74 68 69 73 2e 63 6f 70 79 28 72 29 3b 5c 6e 20 this.copy(r);\n 00036870: 20 20 20 72 65 74 75 72 6e 20 72 3b 5c 6e 20 20 return r;\n 00036880: 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f };\n\n BN.proto 00036890: 74 79 70 65 2e 5f 65 78 70 61 6e 64 20 3d 20 66 type._expand = f 000368a0: 75 6e 63 74 69 6f 6e 20 5f 65 78 70 61 6e 64 20 unction _expand 000368b0: 28 73 69 7a 65 29 20 7b 5c 6e 20 20 20 20 77 68 (size) {\n wh 000368c0: 69 6c 65 20 28 74 68 69 73 2e 6c 65 6e 67 74 68 ile (this.length 000368d0: 20 3c 20 73 69 7a 65 29 20 7b 5c 6e 20 20 20 20 < size) {\n 000368e0: 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 74 68 69 this.words[thi 000368f0: 73 2e 6c 65 6e 67 74 68 2b 2b 5d 20 3d 20 30 3b s.length++] = 0; 00036900: 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 72 65 74 \n }\n ret 00036910: 75 72 6e 20 74 68 69 73 3b 5c 6e 20 20 7d 3b 5c urn this;\n };\ 00036920: 6e 5c 6e 20 20 2f 2f 20 52 65 6d 6f 76 65 20 6c n\n // Remove l 00036930: 65 61 64 69 6e 67 20 60 30 60 20 66 72 6f 6d 20 eading `0` from 00036940: 60 74 68 69 73 60 5c 6e 20 20 42 4e 2e 70 72 6f `this`\n BN.pro 00036950: 74 6f 74 79 70 65 2e 5f 73 74 72 69 70 20 3d 20 totype._strip = 00036960: 66 75 6e 63 74 69 6f 6e 20 73 74 72 69 70 20 28 function strip ( 00036970: 29 20 7b 5c 6e 20 20 20 20 77 68 69 6c 65 20 28 ) {\n while ( 00036980: 74 68 69 73 2e 6c 65 6e 67 74 68 20 3e 20 31 20 this.length > 1 00036990: 26 26 20 74 68 69 73 2e 77 6f 72 64 73 5b 74 68 && this.words[th 000369a0: 69 73 2e 6c 65 6e 67 74 68 20 2d 20 31 5d 20 3d is.length - 1] = 000369b0: 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 74 == 0) {\n t 000369c0: 68 69 73 2e 6c 65 6e 67 74 68 2d 2d 3b 5c 6e 20 his.length--;\n 000369d0: 20 20 20 7d 5c 6e 20 20 20 20 72 65 74 75 72 6e }\n return 000369e0: 20 74 68 69 73 2e 5f 6e 6f 72 6d 53 69 67 6e 28 this._normSign( 000369f0: 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e );\n };\n\n BN 00036a00: 2e 70 72 6f 74 6f 74 79 70 65 2e 5f 6e 6f 72 6d .prototype._norm 00036a10: 53 69 67 6e 20 3d 20 66 75 6e 63 74 69 6f 6e 20 Sign = function 00036a20: 5f 6e 6f 72 6d 53 69 67 6e 20 28 29 20 7b 5c 6e _normSign () {\n 00036a30: 20 20 20 20 2f 2f 20 2d 30 20 3d 20 30 5c 6e 20 // -0 = 0\n 00036a40: 20 20 20 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 if (this.leng 00036a50: 74 68 20 3d 3d 3d 20 31 20 26 26 20 74 68 69 73 th === 1 && this 00036a60: 2e 77 6f 72 64 73 5b 30 5d 20 3d 3d 3d 20 30 29 .words[0] === 0) 00036a70: 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 6e {\n this.n 00036a80: 65 67 61 74 69 76 65 20 3d 20 30 3b 5c 6e 20 20 egative = 0;\n 00036a90: 20 20 7d 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 }\n return 00036aa0: 74 68 69 73 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 this;\n };\n\n 00036ab0: 20 2f 2f 20 43 68 65 63 6b 20 53 79 6d 62 6f 6c // Check Symbol 00036ac0: 2e 66 6f 72 20 62 65 63 61 75 73 65 20 6e 6f 74 .for because not 00036ad0: 20 65 76 65 72 79 77 68 65 72 65 20 77 68 65 72 everywhere wher 00036ae0: 65 20 53 79 6d 62 6f 6c 20 64 65 66 69 6e 65 64 e Symbol defined 00036af0: 5c 6e 20 20 2f 2f 20 53 65 65 20 68 74 74 70 73 \n // See https 00036b00: 3a 2f 2f 64 65 76 65 6c 6f 70 65 72 2e 6d 6f 7a ://developer.moz 00036b10: 69 6c 6c 61 2e 6f 72 67 2f 65 6e 2d 55 53 2f 64 illa.org/en-US/d 00036b20: 6f 63 73 2f 57 65 62 2f 4a 61 76 61 53 63 72 69 ocs/Web/JavaScri 00036b30: 70 74 2f 52 65 66 65 72 65 6e 63 65 2f 47 6c 6f pt/Reference/Glo 00036b40: 62 61 6c 5f 4f 62 6a 65 63 74 73 2f 53 79 6d 62 bal_Objects/Symb 00036b50: 6f 6c 23 42 72 6f 77 73 65 72 5f 63 6f 6d 70 61 ol#Browser_compa 00036b60: 74 69 62 69 6c 69 74 79 5c 6e 20 20 69 66 20 28 tibility\n if ( 00036b70: 74 79 70 65 6f 66 20 53 79 6d 62 6f 6c 20 21 3d typeof Symbol != 00036b80: 3d 20 27 75 6e 64 65 66 69 6e 65 64 27 20 26 26 = 'undefined' && 00036b90: 20 74 79 70 65 6f 66 20 53 79 6d 62 6f 6c 2e 66 typeof Symbol.f 00036ba0: 6f 72 20 3d 3d 3d 20 27 66 75 6e 63 74 69 6f 6e or === 'function 00036bb0: 27 29 20 7b 5c 6e 20 20 20 20 74 72 79 20 7b 5c ') {\n try {\ 00036bc0: 6e 20 20 20 20 20 20 42 4e 2e 70 72 6f 74 6f 74 n BN.protot 00036bd0: 79 70 65 5b 53 79 6d 62 6f 6c 2e 66 6f 72 28 27 ype[Symbol.for(' 00036be0: 6e 6f 64 65 6a 73 2e 75 74 69 6c 2e 69 6e 73 70 nodejs.util.insp 00036bf0: 65 63 74 2e 63 75 73 74 6f 6d 27 29 5d 20 3d 20 ect.custom')] = 00036c00: 69 6e 73 70 65 63 74 3b 5c 6e 20 20 20 20 7d 20 inspect;\n } 00036c10: 63 61 74 63 68 20 28 65 29 20 7b 5c 6e 20 20 20 catch (e) {\n 00036c20: 20 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e BN.prototype. 00036c30: 69 6e 73 70 65 63 74 20 3d 20 69 6e 73 70 65 63 inspect = inspec 00036c40: 74 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 20 65 t;\n }\n } e 00036c50: 6c 73 65 20 7b 5c 6e 20 20 20 20 42 4e 2e 70 72 lse {\n BN.pr 00036c60: 6f 74 6f 74 79 70 65 2e 69 6e 73 70 65 63 74 20 ototype.inspect 00036c70: 3d 20 69 6e 73 70 65 63 74 3b 5c 6e 20 20 7d 5c = inspect;\n }\ 00036c80: 6e 5c 6e 20 20 66 75 6e 63 74 69 6f 6e 20 69 6e n\n function in 00036c90: 73 70 65 63 74 20 28 29 20 7b 5c 6e 20 20 20 20 spect () {\n 00036ca0: 72 65 74 75 72 6e 20 28 74 68 69 73 2e 72 65 64 return (this.red 00036cb0: 20 3f 20 27 3c 42 4e 2d 52 3a 20 27 20 3a 20 27 ? '<BN-R: ' : ' 00036cc0: 3c 42 4e 3a 20 27 29 20 2b 20 74 68 69 73 2e 74 <BN: ') + this.t 00036cd0: 6f 53 74 72 69 6e 67 28 31 36 29 20 2b 20 27 3e oString(16) + '> 00036ce0: 27 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2a 5c ';\n }\n\n /*\ 00036cf0: 6e 5c 6e 20 20 76 61 72 20 7a 65 72 6f 73 20 3d n\n var zeros = 00036d00: 20 5b 5d 3b 5c 6e 20 20 76 61 72 20 67 72 6f 75 [];\n var grou 00036d10: 70 53 69 7a 65 73 20 3d 20 5b 5d 3b 5c 6e 20 20 pSizes = [];\n 00036d20: 76 61 72 20 67 72 6f 75 70 42 61 73 65 73 20 3d var groupBases = 00036d30: 20 5b 5d 3b 5c 6e 5c 6e 20 20 76 61 72 20 73 20 [];\n\n var s 00036d40: 3d 20 27 27 3b 5c 6e 20 20 76 61 72 20 69 20 3d = '';\n var i = 00036d50: 20 2d 31 3b 5c 6e 20 20 77 68 69 6c 65 20 28 2b -1;\n while (+ 00036d60: 2b 69 20 3c 20 42 4e 2e 77 6f 72 64 53 69 7a 65 +i < BN.wordSize 00036d70: 29 20 7b 5c 6e 20 20 20 20 7a 65 72 6f 73 5b 69 ) {\n zeros[i 00036d80: 5d 20 3d 20 73 3b 5c 6e 20 20 20 20 73 20 2b 3d ] = s;\n s += 00036d90: 20 27 30 27 3b 5c 6e 20 20 7d 5c 6e 20 20 67 72 '0';\n }\n gr 00036da0: 6f 75 70 53 69 7a 65 73 5b 30 5d 20 3d 20 30 3b oupSizes[0] = 0; 00036db0: 5c 6e 20 20 67 72 6f 75 70 53 69 7a 65 73 5b 31 \n groupSizes[1 00036dc0: 5d 20 3d 20 30 3b 5c 6e 20 20 67 72 6f 75 70 42 ] = 0;\n groupB 00036dd0: 61 73 65 73 5b 30 5d 20 3d 20 30 3b 5c 6e 20 20 ases[0] = 0;\n 00036de0: 67 72 6f 75 70 42 61 73 65 73 5b 31 5d 20 3d 20 groupBases[1] = 00036df0: 30 3b 5c 6e 20 20 76 61 72 20 62 61 73 65 20 3d 0;\n var base = 00036e00: 20 32 20 2d 20 31 3b 5c 6e 20 20 77 68 69 6c 65 2 - 1;\n while 00036e10: 20 28 2b 2b 62 61 73 65 20 3c 20 33 36 20 2b 20 (++base < 36 + 00036e20: 31 29 20 7b 5c 6e 20 20 20 20 76 61 72 20 67 72 1) {\n var gr 00036e30: 6f 75 70 53 69 7a 65 20 3d 20 30 3b 5c 6e 20 20 oupSize = 0;\n 00036e40: 20 20 76 61 72 20 67 72 6f 75 70 42 61 73 65 20 var groupBase 00036e50: 3d 20 31 3b 5c 6e 20 20 20 20 77 68 69 6c 65 20 = 1;\n while 00036e60: 28 67 72 6f 75 70 42 61 73 65 20 3c 20 28 31 20 (groupBase < (1 00036e70: 3c 3c 20 42 4e 2e 77 6f 72 64 53 69 7a 65 29 20 << BN.wordSize) 00036e80: 2f 20 62 61 73 65 29 20 7b 5c 6e 20 20 20 20 20 / base) {\n 00036e90: 20 67 72 6f 75 70 42 61 73 65 20 2a 3d 20 62 61 groupBase *= ba 00036ea0: 73 65 3b 5c 6e 20 20 20 20 20 20 67 72 6f 75 70 se;\n group 00036eb0: 53 69 7a 65 20 2b 3d 20 31 3b 5c 6e 20 20 20 20 Size += 1;\n 00036ec0: 7d 5c 6e 20 20 20 20 67 72 6f 75 70 53 69 7a 65 }\n groupSize 00036ed0: 73 5b 62 61 73 65 5d 20 3d 20 67 72 6f 75 70 53 s[base] = groupS 00036ee0: 69 7a 65 3b 5c 6e 20 20 20 20 67 72 6f 75 70 42 ize;\n groupB 00036ef0: 61 73 65 73 5b 62 61 73 65 5d 20 3d 20 67 72 6f ases[base] = gro 00036f00: 75 70 42 61 73 65 3b 5c 6e 20 20 7d 5c 6e 5c 6e upBase;\n }\n\n 00036f10: 20 20 2a 2f 5c 6e 5c 6e 20 20 76 61 72 20 7a 65 */\n\n var ze 00036f20: 72 6f 73 20 3d 20 5b 5c 6e 20 20 20 20 27 27 2c ros = [\n '', 00036f30: 5c 6e 20 20 20 20 27 30 27 2c 5c 6e 20 20 20 20 \n '0',\n 00036f40: 27 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 27 '00',\n '000' 00036f50: 2c 5c 6e 20 20 20 20 27 30 30 30 30 27 2c 5c 6e ,\n '0000',\n 00036f60: 20 20 20 20 27 30 30 30 30 30 27 2c 5c 6e 20 20 '00000',\n 00036f70: 20 20 27 30 30 30 30 30 30 27 2c 5c 6e 20 20 20 '000000',\n 00036f80: 20 27 30 30 30 30 30 30 30 27 2c 5c 6e 20 20 20 '0000000',\n 00036f90: 20 27 30 30 30 30 30 30 30 30 27 2c 5c 6e 20 20 '00000000',\n 00036fa0: 20 20 27 30 30 30 30 30 30 30 30 30 27 2c 5c 6e '000000000',\n 00036fb0: 20 20 20 20 27 30 30 30 30 30 30 30 30 30 30 27 '0000000000' 00036fc0: 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 30 30 30 ,\n '00000000 00036fd0: 30 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 000',\n '0000 00036fe0: 30 30 30 30 30 30 30 30 27 2c 5c 6e 20 20 20 20 00000000',\n 00036ff0: 27 30 30 30 30 30 30 30 30 30 30 30 30 30 27 2c '0000000000000', 00037000: 5c 6e 20 20 20 20 27 30 30 30 30 30 30 30 30 30 \n '000000000 00037010: 30 30 30 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 00000',\n '00 00037020: 30 30 30 30 30 30 30 30 30 30 30 30 30 27 2c 5c 0000000000000',\ 00037030: 6e 20 20 20 20 27 30 30 30 30 30 30 30 30 30 30 n '0000000000 00037040: 30 30 30 30 30 30 27 2c 5c 6e 20 20 20 20 27 30 000000',\n '0 00037050: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 00037060: 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 30 30 ',\n '0000000 00037070: 30 30 30 30 30 30 30 30 30 30 30 27 2c 5c 6e 20 00000000000',\n 00037080: 20 20 20 27 30 30 30 30 30 30 30 30 30 30 30 30 '000000000000 00037090: 30 30 30 30 30 30 30 27 2c 5c 6e 20 20 20 20 27 0000000',\n ' 000370a0: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 000370b0: 30 30 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 0000',\n '000 000370c0: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 000370d0: 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 00',\n '00000 000370e0: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 000370f0: 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 30 0',\n '000000 00037100: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 00037110: 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 30 0',\n '000000 00037120: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 00037130: 30 30 27 2c 5c 6e 20 20 20 20 27 30 30 30 30 30 00',\n '00000 00037140: 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0000000000000000 00037150: 30 30 30 30 27 5c 6e 20 20 5d 3b 5c 6e 5c 6e 20 0000'\n ];\n\n 00037160: 20 76 61 72 20 67 72 6f 75 70 53 69 7a 65 73 20 var groupSizes 00037170: 3d 20 5b 5c 6e 20 20 20 20 30 2c 20 30 2c 5c 6e = [\n 0, 0,\n 00037180: 20 20 20 20 32 35 2c 20 31 36 2c 20 31 32 2c 20 25, 16, 12, 00037190: 31 31 2c 20 31 30 2c 20 39 2c 20 38 2c 5c 6e 20 11, 10, 9, 8,\n 000371a0: 20 20 20 38 2c 20 37 2c 20 37 2c 20 37 2c 20 37 8, 7, 7, 7, 7 000371b0: 2c 20 36 2c 20 36 2c 5c 6e 20 20 20 20 36 2c 20 , 6, 6,\n 6, 000371c0: 36 2c 20 36 2c 20 36 2c 20 36 2c 20 35 2c 20 35 6, 6, 6, 6, 5, 5 000371d0: 2c 5c 6e 20 20 20 20 35 2c 20 35 2c 20 35 2c 20 ,\n 5, 5, 5, 000371e0: 35 2c 20 35 2c 20 35 2c 20 35 2c 5c 6e 20 20 20 5, 5, 5, 5,\n 000371f0: 20 35 2c 20 35 2c 20 35 2c 20 35 2c 20 35 2c 20 5, 5, 5, 5, 5, 00037200: 35 2c 20 35 5c 6e 20 20 5d 3b 5c 6e 5c 6e 20 20 5, 5\n ];\n\n 00037210: 76 61 72 20 67 72 6f 75 70 42 61 73 65 73 20 3d var groupBases = 00037220: 20 5b 5c 6e 20 20 20 20 30 2c 20 30 2c 5c 6e 20 [\n 0, 0,\n 00037230: 20 20 20 33 33 35 35 34 34 33 32 2c 20 34 33 30 33554432, 430 00037240: 34 36 37 32 31 2c 20 31 36 37 37 37 32 31 36 2c 46721, 16777216, 00037250: 20 34 38 38 32 38 31 32 35 2c 20 36 30 34 36 36 48828125, 60466 00037260: 31 37 36 2c 20 34 30 33 35 33 36 30 37 2c 20 31 176, 40353607, 1 00037270: 36 37 37 37 32 31 36 2c 5c 6e 20 20 20 20 34 33 6777216,\n 43 00037280: 30 34 36 37 32 31 2c 20 31 30 30 30 30 30 30 30 046721, 10000000 00037290: 2c 20 31 39 34 38 37 31 37 31 2c 20 33 35 38 33 , 19487171, 3583 000372a0: 31 38 30 38 2c 20 36 32 37 34 38 35 31 37 2c 20 1808, 62748517, 000372b0: 37 35 32 39 35 33 36 2c 20 31 31 33 39 30 36 32 7529536, 1139062 000372c0: 35 2c 5c 6e 20 20 20 20 31 36 37 37 37 32 31 36 5,\n 16777216 000372d0: 2c 20 32 34 31 33 37 35 36 39 2c 20 33 34 30 31 , 24137569, 3401 000372e0: 32 32 32 34 2c 20 34 37 30 34 35 38 38 31 2c 20 2224, 47045881, 000372f0: 36 34 30 30 30 30 30 30 2c 20 34 30 38 34 31 30 64000000, 408410 00037300: 31 2c 20 35 31 35 33 36 33 32 2c 5c 6e 20 20 20 1, 5153632,\n 00037310: 20 36 34 33 36 33 34 33 2c 20 37 39 36 32 36 32 6436343, 796262 00037320: 34 2c 20 39 37 36 35 36 32 35 2c 20 31 31 38 38 4, 9765625, 1188 00037330: 31 33 37 36 2c 20 31 34 33 34 38 39 30 37 2c 20 1376, 14348907, 00037340: 31 37 32 31 30 33 36 38 2c 20 32 30 35 31 31 31 17210368, 205111 00037350: 34 39 2c 5c 6e 20 20 20 20 32 34 33 30 30 30 30 49,\n 2430000 00037360: 30 2c 20 32 38 36 32 39 31 35 31 2c 20 33 33 35 0, 28629151, 335 00037370: 35 34 34 33 32 2c 20 33 39 31 33 35 33 39 33 2c 54432, 39135393, 00037380: 20 34 35 34 33 35 34 32 34 2c 20 35 32 35 32 31 45435424, 52521 00037390: 38 37 35 2c 20 36 30 34 36 36 31 37 36 5c 6e 20 875, 60466176\n 000373a0: 20 5d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 ];\n\n BN.prot 000373b0: 6f 74 79 70 65 2e 74 6f 53 74 72 69 6e 67 20 3d otype.toString = 000373c0: 20 66 75 6e 63 74 69 6f 6e 20 74 6f 53 74 72 69 function toStri 000373d0: 6e 67 20 28 62 61 73 65 2c 20 70 61 64 64 69 6e ng (base, paddin 000373e0: 67 29 20 7b 5c 6e 20 20 20 20 62 61 73 65 20 3d g) {\n base = 000373f0: 20 62 61 73 65 20 7c 7c 20 31 30 3b 5c 6e 20 20 base || 10;\n 00037400: 20 20 70 61 64 64 69 6e 67 20 3d 20 70 61 64 64 padding = padd 00037410: 69 6e 67 20 7c 20 30 20 7c 7c 20 31 3b 5c 6e 5c ing | 0 || 1;\n\ 00037420: 6e 20 20 20 20 76 61 72 20 6f 75 74 3b 5c 6e 20 n var out;\n 00037430: 20 20 20 69 66 20 28 62 61 73 65 20 3d 3d 3d 20 if (base === 00037440: 31 36 20 7c 7c 20 62 61 73 65 20 3d 3d 3d 20 27 16 || base === ' 00037450: 68 65 78 27 29 20 7b 5c 6e 20 20 20 20 20 20 6f hex') {\n o 00037460: 75 74 20 3d 20 27 27 3b 5c 6e 20 20 20 20 20 20 ut = '';\n 00037470: 76 61 72 20 6f 66 66 20 3d 20 30 3b 5c 6e 20 20 var off = 0;\n 00037480: 20 20 20 20 76 61 72 20 63 61 72 72 79 20 3d 20 var carry = 00037490: 30 3b 5c 6e 20 20 20 20 20 20 66 6f 72 20 28 76 0;\n for (v 000374a0: 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 74 68 ar i = 0; i < th 000374b0: 69 73 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 20 is.length; i++) 000374c0: 7b 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 77 {\n var w 000374d0: 20 3d 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d = this.words[i] 000374e0: 3b 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 77 ;\n var w 000374f0: 6f 72 64 20 3d 20 28 28 28 77 20 3c 3c 20 6f 66 ord = (((w << of 00037500: 66 29 20 7c 20 63 61 72 72 79 29 20 26 20 30 78 f) | carry) & 0x 00037510: 66 66 66 66 66 66 29 2e 74 6f 53 74 72 69 6e 67 ffffff).toString 00037520: 28 31 36 29 3b 5c 6e 20 20 20 20 20 20 20 20 63 (16);\n c 00037530: 61 72 72 79 20 3d 20 28 77 20 3e 3e 3e 20 28 32 arry = (w >>> (2 00037540: 34 20 2d 20 6f 66 66 29 29 20 26 20 30 78 66 66 4 - off)) & 0xff 00037550: 66 66 66 66 3b 5c 6e 20 20 20 20 20 20 20 20 6f ffff;\n o 00037560: 66 66 20 2b 3d 20 32 3b 5c 6e 20 20 20 20 20 20 ff += 2;\n 00037570: 20 20 69 66 20 28 6f 66 66 20 3e 3d 20 32 36 29 if (off >= 26) 00037580: 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6f 66 {\n of 00037590: 66 20 2d 3d 20 32 36 3b 5c 6e 20 20 20 20 20 20 f -= 26;\n 000375a0: 20 20 20 20 69 2d 2d 3b 5c 6e 20 20 20 20 20 20 i--;\n 000375b0: 20 20 7d 5c 6e 20 20 20 20 20 20 20 20 69 66 20 }\n if 000375c0: 28 63 61 72 72 79 20 21 3d 3d 20 30 20 7c 7c 20 (carry !== 0 || 000375d0: 69 20 21 3d 3d 20 74 68 69 73 2e 6c 65 6e 67 74 i !== this.lengt 000375e0: 68 20 2d 20 31 29 20 7b 5c 6e 20 20 20 20 20 20 h - 1) {\n 000375f0: 20 20 20 20 6f 75 74 20 3d 20 7a 65 72 6f 73 5b out = zeros[ 00037600: 36 20 2d 20 77 6f 72 64 2e 6c 65 6e 67 74 68 5d 6 - word.length] 00037610: 20 2b 20 77 6f 72 64 20 2b 20 6f 75 74 3b 5c 6e + word + out;\n 00037620: 20 20 20 20 20 20 20 20 7d 20 65 6c 73 65 20 7b } else { 00037630: 5c 6e 20 20 20 20 20 20 20 20 20 20 6f 75 74 20 \n out 00037640: 3d 20 77 6f 72 64 20 2b 20 6f 75 74 3b 5c 6e 20 = word + out;\n 00037650: 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 }\n 00037660: 7d 5c 6e 20 20 20 20 20 20 69 66 20 28 63 61 72 }\n if (car 00037670: 72 79 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 ry !== 0) {\n 00037680: 20 20 20 20 20 6f 75 74 20 3d 20 63 61 72 72 79 out = carry 00037690: 2e 74 6f 53 74 72 69 6e 67 28 31 36 29 20 2b 20 .toString(16) + 000376a0: 6f 75 74 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 out;\n }\n 000376b0: 20 20 20 20 20 77 68 69 6c 65 20 28 6f 75 74 2e while (out. 000376c0: 6c 65 6e 67 74 68 20 25 20 70 61 64 64 69 6e 67 length % padding 000376d0: 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 !== 0) {\n 000376e0: 20 20 20 6f 75 74 20 3d 20 27 30 27 20 2b 20 6f out = '0' + o 000376f0: 75 74 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 ut;\n }\n 00037700: 20 20 20 20 69 66 20 28 74 68 69 73 2e 6e 65 67 if (this.neg 00037710: 61 74 69 76 65 20 21 3d 3d 20 30 29 20 7b 5c 6e ative !== 0) {\n 00037720: 20 20 20 20 20 20 20 20 6f 75 74 20 3d 20 27 2d out = '- 00037730: 27 20 2b 20 6f 75 74 3b 5c 6e 20 20 20 20 20 20 ' + out;\n 00037740: 7d 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 }\n return 00037750: 6f 75 74 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 out;\n }\n\n 00037760: 20 20 20 69 66 20 28 62 61 73 65 20 3d 3d 3d 20 if (base === 00037770: 28 62 61 73 65 20 7c 20 30 29 20 26 26 20 62 61 (base | 0) && ba 00037780: 73 65 20 3e 3d 20 32 20 26 26 20 62 61 73 65 20 se >= 2 && base 00037790: 3c 3d 20 33 36 29 20 7b 5c 6e 20 20 20 20 20 20 <= 36) {\n 000377a0: 2f 2f 20 76 61 72 20 67 72 6f 75 70 53 69 7a 65 // var groupSize 000377b0: 20 3d 20 4d 61 74 68 2e 66 6c 6f 6f 72 28 42 4e = Math.floor(BN 000377c0: 2e 77 6f 72 64 53 69 7a 65 20 2a 20 4d 61 74 68 .wordSize * Math 000377d0: 2e 4c 4e 32 20 2f 20 4d 61 74 68 2e 6c 6f 67 28 .LN2 / Math.log( 000377e0: 62 61 73 65 29 29 3b 5c 6e 20 20 20 20 20 20 76 base));\n v 000377f0: 61 72 20 67 72 6f 75 70 53 69 7a 65 20 3d 20 67 ar groupSize = g 00037800: 72 6f 75 70 53 69 7a 65 73 5b 62 61 73 65 5d 3b roupSizes[base]; 00037810: 5c 6e 20 20 20 20 20 20 2f 2f 20 76 61 72 20 67 \n // var g 00037820: 72 6f 75 70 42 61 73 65 20 3d 20 4d 61 74 68 2e roupBase = Math. 00037830: 70 6f 77 28 62 61 73 65 2c 20 67 72 6f 75 70 53 pow(base, groupS 00037840: 69 7a 65 29 3b 5c 6e 20 20 20 20 20 20 76 61 72 ize);\n var 00037850: 20 67 72 6f 75 70 42 61 73 65 20 3d 20 67 72 6f groupBase = gro 00037860: 75 70 42 61 73 65 73 5b 62 61 73 65 5d 3b 5c 6e upBases[base];\n 00037870: 20 20 20 20 20 20 6f 75 74 20 3d 20 27 27 3b 5c out = '';\ 00037880: 6e 20 20 20 20 20 20 76 61 72 20 63 20 3d 20 74 n var c = t 00037890: 68 69 73 2e 63 6c 6f 6e 65 28 29 3b 5c 6e 20 20 his.clone();\n 000378a0: 20 20 20 20 63 2e 6e 65 67 61 74 69 76 65 20 3d c.negative = 000378b0: 20 30 3b 5c 6e 20 20 20 20 20 20 77 68 69 6c 65 0;\n while 000378c0: 20 28 21 63 2e 69 73 5a 65 72 6f 28 29 29 20 7b (!c.isZero()) { 000378d0: 5c 6e 20 20 20 20 20 20 20 20 76 61 72 20 72 20 \n var r 000378e0: 3d 20 63 2e 6d 6f 64 72 6e 28 67 72 6f 75 70 42 = c.modrn(groupB 000378f0: 61 73 65 29 2e 74 6f 53 74 72 69 6e 67 28 62 61 ase).toString(ba 00037900: 73 65 29 3b 5c 6e 20 20 20 20 20 20 20 20 63 20 se);\n c 00037910: 3d 20 63 2e 69 64 69 76 6e 28 67 72 6f 75 70 42 = c.idivn(groupB 00037920: 61 73 65 29 3b 5c 6e 5c 6e 20 20 20 20 20 20 20 ase);\n\n 00037930: 20 69 66 20 28 21 63 2e 69 73 5a 65 72 6f 28 29 if (!c.isZero() 00037940: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 6f ) {\n o 00037950: 75 74 20 3d 20 7a 65 72 6f 73 5b 67 72 6f 75 70 ut = zeros[group 00037960: 53 69 7a 65 20 2d 20 72 2e 6c 65 6e 67 74 68 5d Size - r.length] 00037970: 20 2b 20 72 20 2b 20 6f 75 74 3b 5c 6e 20 20 20 + r + out;\n 00037980: 20 20 20 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 } else {\n 00037990: 20 20 20 20 20 20 20 20 20 6f 75 74 20 3d 20 72 out = r 000379a0: 20 2b 20 6f 75 74 3b 5c 6e 20 20 20 20 20 20 20 + out;\n 000379b0: 20 7d 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 }\n }\n 000379c0: 20 20 20 69 66 20 28 74 68 69 73 2e 69 73 5a 65 if (this.isZe 000379d0: 72 6f 28 29 29 20 7b 5c 6e 20 20 20 20 20 20 20 ro()) {\n 000379e0: 20 6f 75 74 20 3d 20 27 30 27 20 2b 20 6f 75 74 out = '0' + out 000379f0: 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 ;\n }\n 00037a00: 20 20 77 68 69 6c 65 20 28 6f 75 74 2e 6c 65 6e while (out.len 00037a10: 67 74 68 20 25 20 70 61 64 64 69 6e 67 20 21 3d gth % padding != 00037a20: 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 = 0) {\n 00037a30: 6f 75 74 20 3d 20 27 30 27 20 2b 20 6f 75 74 3b out = '0' + out; 00037a40: 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 \n }\n 00037a50: 20 69 66 20 28 74 68 69 73 2e 6e 65 67 61 74 69 if (this.negati 00037a60: 76 65 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 ve !== 0) {\n 00037a70: 20 20 20 20 20 6f 75 74 20 3d 20 27 2d 27 20 2b out = '-' + 00037a80: 20 6f 75 74 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e out;\n }\n 00037a90: 20 20 20 20 20 20 72 65 74 75 72 6e 20 6f 75 74 return out 00037aa0: 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 ;\n }\n\n 00037ab0: 61 73 73 65 72 74 28 66 61 6c 73 65 2c 20 27 42 assert(false, 'B 00037ac0: 61 73 65 20 73 68 6f 75 6c 64 20 62 65 20 62 65 ase should be be 00037ad0: 74 77 65 65 6e 20 32 20 61 6e 64 20 33 36 27 29 tween 2 and 36') 00037ae0: 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e ;\n };\n\n BN. 00037af0: 70 72 6f 74 6f 74 79 70 65 2e 74 6f 4e 75 6d 62 prototype.toNumb 00037b00: 65 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 74 6f er = function to 00037b10: 4e 75 6d 62 65 72 20 28 29 20 7b 5c 6e 20 20 20 Number () {\n 00037b20: 20 76 61 72 20 72 65 74 20 3d 20 74 68 69 73 2e var ret = this. 00037b30: 77 6f 72 64 73 5b 30 5d 3b 5c 6e 20 20 20 20 69 words[0];\n i 00037b40: 66 20 28 74 68 69 73 2e 6c 65 6e 67 74 68 20 3d f (this.length = 00037b50: 3d 3d 20 32 29 20 7b 5c 6e 20 20 20 20 20 20 72 == 2) {\n r 00037b60: 65 74 20 2b 3d 20 74 68 69 73 2e 77 6f 72 64 73 et += this.words 00037b70: 5b 31 5d 20 2a 20 30 78 34 30 30 30 30 30 30 3b [1] * 0x4000000; 00037b80: 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 \n } else if 00037b90: 28 74 68 69 73 2e 6c 65 6e 67 74 68 20 3d 3d 3d (this.length === 00037ba0: 20 33 20 26 26 20 74 68 69 73 2e 77 6f 72 64 73 3 && this.words 00037bb0: 5b 32 5d 20 3d 3d 3d 20 30 78 30 31 29 20 7b 5c [2] === 0x01) {\ 00037bc0: 6e 20 20 20 20 20 20 2f 2f 20 4e 4f 54 45 3a 20 n // NOTE: 00037bd0: 61 74 20 74 68 69 73 20 73 74 61 67 65 20 69 74 at this stage it 00037be0: 20 69 73 20 6b 6e 6f 77 6e 20 74 68 61 74 20 74 is known that t 00037bf0: 68 65 20 74 6f 70 20 62 69 74 20 69 73 20 73 65 he top bit is se 00037c00: 74 5c 6e 20 20 20 20 20 20 72 65 74 20 2b 3d 20 t\n ret += 00037c10: 30 78 31 30 30 30 30 30 30 30 30 30 30 30 30 30 0x10000000000000 00037c20: 20 2b 20 28 74 68 69 73 2e 77 6f 72 64 73 5b 31 + (this.words[1 00037c30: 5d 20 2a 20 30 78 34 30 30 30 30 30 30 29 3b 5c ] * 0x4000000);\ 00037c40: 6e 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 n } else if ( 00037c50: 74 68 69 73 2e 6c 65 6e 67 74 68 20 3e 20 32 29 this.length > 2) 00037c60: 20 7b 5c 6e 20 20 20 20 20 20 61 73 73 65 72 74 {\n assert 00037c70: 28 66 61 6c 73 65 2c 20 27 4e 75 6d 62 65 72 20 (false, 'Number 00037c80: 63 61 6e 20 6f 6e 6c 79 20 73 61 66 65 6c 79 20 can only safely 00037c90: 73 74 6f 72 65 20 75 70 20 74 6f 20 35 33 20 62 store up to 53 b 00037ca0: 69 74 73 27 29 3b 5c 6e 20 20 20 20 7d 5c 6e 20 its');\n }\n 00037cb0: 20 20 20 72 65 74 75 72 6e 20 28 74 68 69 73 2e return (this. 00037cc0: 6e 65 67 61 74 69 76 65 20 21 3d 3d 20 30 29 20 negative !== 0) 00037cd0: 3f 20 2d 72 65 74 20 3a 20 72 65 74 3b 5c 6e 20 ? -ret : ret;\n 00037ce0: 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 };\n\n BN.prot 00037cf0: 6f 74 79 70 65 2e 74 6f 4a 53 4f 4e 20 3d 20 66 otype.toJSON = f 00037d00: 75 6e 63 74 69 6f 6e 20 74 6f 4a 53 4f 4e 20 28 unction toJSON ( 00037d10: 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 ) {\n return 00037d20: 74 68 69 73 2e 74 6f 53 74 72 69 6e 67 28 31 36 this.toString(16 00037d30: 2c 20 32 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 , 2);\n };\n\n 00037d40: 20 69 66 20 28 42 75 66 66 65 72 29 20 7b 5c 6e if (Buffer) {\n 00037d50: 20 20 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 BN.prototype 00037d60: 2e 74 6f 42 75 66 66 65 72 20 3d 20 66 75 6e 63 .toBuffer = func 00037d70: 74 69 6f 6e 20 74 6f 42 75 66 66 65 72 20 28 65 tion toBuffer (e 00037d80: 6e 64 69 61 6e 2c 20 6c 65 6e 67 74 68 29 20 7b ndian, length) { 00037d90: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 \n return t 00037da0: 68 69 73 2e 74 6f 41 72 72 61 79 4c 69 6b 65 28 his.toArrayLike( 00037db0: 42 75 66 66 65 72 2c 20 65 6e 64 69 61 6e 2c 20 Buffer, endian, 00037dc0: 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 20 20 7d 3b length);\n }; 00037dd0: 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 42 4e 2e 70 72 \n }\n\n BN.pr 00037de0: 6f 74 6f 74 79 70 65 2e 74 6f 41 72 72 61 79 20 ototype.toArray 00037df0: 3d 20 66 75 6e 63 74 69 6f 6e 20 74 6f 41 72 72 = function toArr 00037e00: 61 79 20 28 65 6e 64 69 61 6e 2c 20 6c 65 6e 67 ay (endian, leng 00037e10: 74 68 29 20 7b 5c 6e 20 20 20 20 72 65 74 75 72 th) {\n retur 00037e20: 6e 20 74 68 69 73 2e 74 6f 41 72 72 61 79 4c 69 n this.toArrayLi 00037e30: 6b 65 28 41 72 72 61 79 2c 20 65 6e 64 69 61 6e ke(Array, endian 00037e40: 2c 20 6c 65 6e 67 74 68 29 3b 5c 6e 20 20 7d 3b , length);\n }; 00037e50: 5c 6e 5c 6e 20 20 76 61 72 20 61 6c 6c 6f 63 61 \n\n var alloca 00037e60: 74 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 61 6c te = function al 00037e70: 6c 6f 63 61 74 65 20 28 41 72 72 61 79 54 79 70 locate (ArrayTyp 00037e80: 65 2c 20 73 69 7a 65 29 20 7b 5c 6e 20 20 20 20 e, size) {\n 00037e90: 69 66 20 28 41 72 72 61 79 54 79 70 65 2e 61 6c if (ArrayType.al 00037ea0: 6c 6f 63 55 6e 73 61 66 65 29 20 7b 5c 6e 20 20 locUnsafe) {\n 00037eb0: 20 20 20 20 72 65 74 75 72 6e 20 41 72 72 61 79 return Array 00037ec0: 54 79 70 65 2e 61 6c 6c 6f 63 55 6e 73 61 66 65 Type.allocUnsafe 00037ed0: 28 73 69 7a 65 29 3b 5c 6e 20 20 20 20 7d 5c 6e (size);\n }\n 00037ee0: 20 20 20 20 72 65 74 75 72 6e 20 6e 65 77 20 41 return new A 00037ef0: 72 72 61 79 54 79 70 65 28 73 69 7a 65 29 3b 5c rrayType(size);\ 00037f00: 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 n };\n\n BN.pr 00037f10: 6f 74 6f 74 79 70 65 2e 74 6f 41 72 72 61 79 4c ototype.toArrayL 00037f20: 69 6b 65 20 3d 20 66 75 6e 63 74 69 6f 6e 20 74 ike = function t 00037f30: 6f 41 72 72 61 79 4c 69 6b 65 20 28 41 72 72 61 oArrayLike (Arra 00037f40: 79 54 79 70 65 2c 20 65 6e 64 69 61 6e 2c 20 6c yType, endian, l 00037f50: 65 6e 67 74 68 29 20 7b 5c 6e 20 20 20 20 74 68 ength) {\n th 00037f60: 69 73 2e 5f 73 74 72 69 70 28 29 3b 5c 6e 5c 6e is._strip();\n\n 00037f70: 20 20 20 20 76 61 72 20 62 79 74 65 4c 65 6e 67 var byteLeng 00037f80: 74 68 20 3d 20 74 68 69 73 2e 62 79 74 65 4c 65 th = this.byteLe 00037f90: 6e 67 74 68 28 29 3b 5c 6e 20 20 20 20 76 61 72 ngth();\n var 00037fa0: 20 72 65 71 4c 65 6e 67 74 68 20 3d 20 6c 65 6e reqLength = len 00037fb0: 67 74 68 20 7c 7c 20 4d 61 74 68 2e 6d 61 78 28 gth || Math.max( 00037fc0: 31 2c 20 62 79 74 65 4c 65 6e 67 74 68 29 3b 5c 1, byteLength);\ 00037fd0: 6e 20 20 20 20 61 73 73 65 72 74 28 62 79 74 65 n assert(byte 00037fe0: 4c 65 6e 67 74 68 20 3c 3d 20 72 65 71 4c 65 6e Length <= reqLen 00037ff0: 67 74 68 2c 20 27 62 79 74 65 20 61 72 72 61 79 gth, 'byte array 00038000: 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 64 65 73 longer than des 00038010: 69 72 65 64 20 6c 65 6e 67 74 68 27 29 3b 5c 6e ired length');\n 00038020: 20 20 20 20 61 73 73 65 72 74 28 72 65 71 4c 65 assert(reqLe 00038030: 6e 67 74 68 20 3e 20 30 2c 20 27 52 65 71 75 65 ngth > 0, 'Reque 00038040: 73 74 65 64 20 61 72 72 61 79 20 6c 65 6e 67 74 sted array lengt 00038050: 68 20 3c 3d 20 30 27 29 3b 5c 6e 5c 6e 20 20 20 h <= 0');\n\n 00038060: 20 76 61 72 20 72 65 73 20 3d 20 61 6c 6c 6f 63 var res = alloc 00038070: 61 74 65 28 41 72 72 61 79 54 79 70 65 2c 20 72 ate(ArrayType, r 00038080: 65 71 4c 65 6e 67 74 68 29 3b 5c 6e 20 20 20 20 eqLength);\n 00038090: 76 61 72 20 70 6f 73 74 66 69 78 20 3d 20 65 6e var postfix = en 000380a0: 64 69 61 6e 20 3d 3d 3d 20 27 6c 65 27 20 3f 20 dian === 'le' ? 000380b0: 27 4c 45 27 20 3a 20 27 42 45 27 3b 5c 6e 20 20 'LE' : 'BE';\n 000380c0: 20 20 74 68 69 73 5b 27 5f 74 6f 41 72 72 61 79 this['_toArray 000380d0: 4c 69 6b 65 27 20 2b 20 70 6f 73 74 66 69 78 5d Like' + postfix] 000380e0: 28 72 65 73 2c 20 62 79 74 65 4c 65 6e 67 74 68 (res, byteLength 000380f0: 29 3b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 72 );\n return r 00038100: 65 73 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 es;\n };\n\n B 00038110: 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 5f 74 6f 41 N.prototype._toA 00038120: 72 72 61 79 4c 69 6b 65 4c 45 20 3d 20 66 75 6e rrayLikeLE = fun 00038130: 63 74 69 6f 6e 20 5f 74 6f 41 72 72 61 79 4c 69 ction _toArrayLi 00038140: 6b 65 4c 45 20 28 72 65 73 2c 20 62 79 74 65 4c keLE (res, byteL 00038150: 65 6e 67 74 68 29 20 7b 5c 6e 20 20 20 20 76 61 ength) {\n va 00038160: 72 20 70 6f 73 69 74 69 6f 6e 20 3d 20 30 3b 5c r position = 0;\ 00038170: 6e 20 20 20 20 76 61 72 20 63 61 72 72 79 20 3d n var carry = 00038180: 20 30 3b 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 0;\n\n for ( 00038190: 76 61 72 20 69 20 3d 20 30 2c 20 73 68 69 66 74 var i = 0, shift 000381a0: 20 3d 20 30 3b 20 69 20 3c 20 74 68 69 73 2e 6c = 0; i < this.l 000381b0: 65 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 ength; i++) {\n 000381c0: 20 20 20 20 20 76 61 72 20 77 6f 72 64 20 3d 20 var word = 000381d0: 28 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 3c (this.words[i] < 000381e0: 3c 20 73 68 69 66 74 29 20 7c 20 63 61 72 72 79 < shift) | carry 000381f0: 3b 5c 6e 5c 6e 20 20 20 20 20 20 72 65 73 5b 70 ;\n\n res[p 00038200: 6f 73 69 74 69 6f 6e 2b 2b 5d 20 3d 20 77 6f 72 osition++] = wor 00038210: 64 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 20 d & 0xff;\n 00038220: 20 69 66 20 28 70 6f 73 69 74 69 6f 6e 20 3c 20 if (position < 00038230: 72 65 73 2e 6c 65 6e 67 74 68 29 20 7b 5c 6e 20 res.length) {\n 00038240: 20 20 20 20 20 20 20 72 65 73 5b 70 6f 73 69 74 res[posit 00038250: 69 6f 6e 2b 2b 5d 20 3d 20 28 77 6f 72 64 20 3e ion++] = (word > 00038260: 3e 20 38 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 > 8) & 0xff;\n 00038270: 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 69 66 20 }\n if 00038280: 28 70 6f 73 69 74 69 6f 6e 20 3c 20 72 65 73 2e (position < res. 00038290: 6c 65 6e 67 74 68 29 20 7b 5c 6e 20 20 20 20 20 length) {\n 000382a0: 20 20 20 72 65 73 5b 70 6f 73 69 74 69 6f 6e 2b res[position+ 000382b0: 2b 5d 20 3d 20 28 77 6f 72 64 20 3e 3e 20 31 36 +] = (word >> 16 000382c0: 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 20 ) & 0xff;\n 000382d0: 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 28 }\n\n if ( 000382e0: 73 68 69 66 74 20 3d 3d 3d 20 36 29 20 7b 5c 6e shift === 6) {\n 000382f0: 20 20 20 20 20 20 20 20 69 66 20 28 70 6f 73 69 if (posi 00038300: 74 69 6f 6e 20 3c 20 72 65 73 2e 6c 65 6e 67 74 tion < res.lengt 00038310: 68 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 20 20 h) {\n 00038320: 72 65 73 5b 70 6f 73 69 74 69 6f 6e 2b 2b 5d 20 res[position++] 00038330: 3d 20 28 77 6f 72 64 20 3e 3e 20 32 34 29 20 26 = (word >> 24) & 00038340: 20 30 78 66 66 3b 5c 6e 20 20 20 20 20 20 20 20 0xff;\n 00038350: 7d 5c 6e 20 20 20 20 20 20 20 20 63 61 72 72 79 }\n carry 00038360: 20 3d 20 30 3b 5c 6e 20 20 20 20 20 20 20 20 73 = 0;\n s 00038370: 68 69 66 74 20 3d 20 30 3b 5c 6e 20 20 20 20 20 hift = 0;\n 00038380: 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 20 } else {\n 00038390: 20 20 20 63 61 72 72 79 20 3d 20 77 6f 72 64 20 carry = word 000383a0: 3e 3e 3e 20 32 34 3b 5c 6e 20 20 20 20 20 20 20 >>> 24;\n 000383b0: 20 73 68 69 66 74 20 2b 3d 20 32 3b 5c 6e 20 20 shift += 2;\n 000383c0: 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c 6e }\n }\n\n 000383d0: 20 20 20 20 69 66 20 28 70 6f 73 69 74 69 6f 6e if (position 000383e0: 20 3c 20 72 65 73 2e 6c 65 6e 67 74 68 29 20 7b < res.length) { 000383f0: 5c 6e 20 20 20 20 20 20 72 65 73 5b 70 6f 73 69 \n res[posi 00038400: 74 69 6f 6e 2b 2b 5d 20 3d 20 63 61 72 72 79 3b tion++] = carry; 00038410: 5c 6e 5c 6e 20 20 20 20 20 20 77 68 69 6c 65 20 \n\n while 00038420: 28 70 6f 73 69 74 69 6f 6e 20 3c 20 72 65 73 2e (position < res. 00038430: 6c 65 6e 67 74 68 29 20 7b 5c 6e 20 20 20 20 20 length) {\n 00038440: 20 20 20 72 65 73 5b 70 6f 73 69 74 69 6f 6e 2b res[position+ 00038450: 2b 5d 20 3d 20 30 3b 5c 6e 20 20 20 20 20 20 7d +] = 0;\n } 00038460: 5c 6e 20 20 20 20 7d 5c 6e 20 20 7d 3b 5c 6e 5c \n }\n };\n\ 00038470: 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e n BN.prototype. 00038480: 5f 74 6f 41 72 72 61 79 4c 69 6b 65 42 45 20 3d _toArrayLikeBE = 00038490: 20 66 75 6e 63 74 69 6f 6e 20 5f 74 6f 41 72 72 function _toArr 000384a0: 61 79 4c 69 6b 65 42 45 20 28 72 65 73 2c 20 62 ayLikeBE (res, b 000384b0: 79 74 65 4c 65 6e 67 74 68 29 20 7b 5c 6e 20 20 yteLength) {\n 000384c0: 20 20 76 61 72 20 70 6f 73 69 74 69 6f 6e 20 3d var position = 000384d0: 20 72 65 73 2e 6c 65 6e 67 74 68 20 2d 20 31 3b res.length - 1; 000384e0: 5c 6e 20 20 20 20 76 61 72 20 63 61 72 72 79 20 \n var carry 000384f0: 3d 20 30 3b 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 = 0;\n\n for 00038500: 28 76 61 72 20 69 20 3d 20 30 2c 20 73 68 69 66 (var i = 0, shif 00038510: 74 20 3d 20 30 3b 20 69 20 3c 20 74 68 69 73 2e t = 0; i < this. 00038520: 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e length; i++) {\n 00038530: 20 20 20 20 20 20 76 61 72 20 77 6f 72 64 20 3d var word = 00038540: 20 28 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 (this.words[i] 00038550: 3c 3c 20 73 68 69 66 74 29 20 7c 20 63 61 72 72 << shift) | carr 00038560: 79 3b 5c 6e 5c 6e 20 20 20 20 20 20 72 65 73 5b y;\n\n res[ 00038570: 70 6f 73 69 74 69 6f 6e 2d 2d 5d 20 3d 20 77 6f position--] = wo 00038580: 72 64 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 rd & 0xff;\n 00038590: 20 20 69 66 20 28 70 6f 73 69 74 69 6f 6e 20 3e if (position > 000385a0: 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 = 0) {\n 000385b0: 72 65 73 5b 70 6f 73 69 74 69 6f 6e 2d 2d 5d 20 res[position--] 000385c0: 3d 20 28 77 6f 72 64 20 3e 3e 20 38 29 20 26 20 = (word >> 8) & 000385d0: 30 78 66 66 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 0xff;\n }\n 000385e0: 20 20 20 20 20 20 69 66 20 28 70 6f 73 69 74 69 if (positi 000385f0: 6f 6e 20 3e 3d 20 30 29 20 7b 5c 6e 20 20 20 20 on >= 0) {\n 00038600: 20 20 20 20 72 65 73 5b 70 6f 73 69 74 69 6f 6e res[position 00038610: 2d 2d 5d 20 3d 20 28 77 6f 72 64 20 3e 3e 20 31 --] = (word >> 1 00038620: 36 29 20 26 20 30 78 66 66 3b 5c 6e 20 20 20 20 6) & 0xff;\n 00038630: 20 20 7d 5c 6e 5c 6e 20 20 20 20 20 20 69 66 20 }\n\n if 00038640: 28 73 68 69 66 74 20 3d 3d 3d 20 36 29 20 7b 5c (shift === 6) {\ 00038650: 6e 20 20 20 20 20 20 20 20 69 66 20 28 70 6f 73 n if (pos 00038660: 69 74 69 6f 6e 20 3e 3d 20 30 29 20 7b 5c 6e 20 ition >= 0) {\n 00038670: 20 20 20 20 20 20 20 20 20 72 65 73 5b 70 6f 73 res[pos 00038680: 69 74 69 6f 6e 2d 2d 5d 20 3d 20 28 77 6f 72 64 ition--] = (word 00038690: 20 3e 3e 20 32 34 29 20 26 20 30 78 66 66 3b 5c >> 24) & 0xff;\ 000386a0: 6e 20 20 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 n }\n 000386b0: 20 20 20 20 63 61 72 72 79 20 3d 20 30 3b 5c 6e carry = 0;\n 000386c0: 20 20 20 20 20 20 20 20 73 68 69 66 74 20 3d 20 shift = 000386d0: 30 3b 5c 6e 20 20 20 20 20 20 7d 20 65 6c 73 65 0;\n } else 000386e0: 20 7b 5c 6e 20 20 20 20 20 20 20 20 63 61 72 72 {\n carr 000386f0: 79 20 3d 20 77 6f 72 64 20 3e 3e 3e 20 32 34 3b y = word >>> 24; 00038700: 5c 6e 20 20 20 20 20 20 20 20 73 68 69 66 74 20 \n shift 00038710: 2b 3d 20 32 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e += 2;\n }\n 00038720: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 }\n\n if 00038730: 28 70 6f 73 69 74 69 6f 6e 20 3e 3d 20 30 29 20 (position >= 0) 00038740: 7b 5c 6e 20 20 20 20 20 20 72 65 73 5b 70 6f 73 {\n res[pos 00038750: 69 74 69 6f 6e 2d 2d 5d 20 3d 20 63 61 72 72 79 ition--] = carry 00038760: 3b 5c 6e 5c 6e 20 20 20 20 20 20 77 68 69 6c 65 ;\n\n while 00038770: 20 28 70 6f 73 69 74 69 6f 6e 20 3e 3d 20 30 29 (position >= 0) 00038780: 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 65 73 5b {\n res[ 00038790: 70 6f 73 69 74 69 6f 6e 2d 2d 5d 20 3d 20 30 3b position--] = 0; 000387a0: 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d \n }\n } 000387b0: 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 69 66 20 28 \n };\n\n if ( 000387c0: 4d 61 74 68 2e 63 6c 7a 33 32 29 20 7b 5c 6e 20 Math.clz32) {\n 000387d0: 20 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e BN.prototype. 000387e0: 5f 63 6f 75 6e 74 42 69 74 73 20 3d 20 66 75 6e _countBits = fun 000387f0: 63 74 69 6f 6e 20 5f 63 6f 75 6e 74 42 69 74 73 ction _countBits 00038800: 20 28 77 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 (w) {\n re 00038810: 74 75 72 6e 20 33 32 20 2d 20 4d 61 74 68 2e 63 turn 32 - Math.c 00038820: 6c 7a 33 32 28 77 29 3b 5c 6e 20 20 20 20 7d 3b lz32(w);\n }; 00038830: 5c 6e 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 \n } else {\n 00038840: 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 5f BN.prototype._ 00038850: 63 6f 75 6e 74 42 69 74 73 20 3d 20 66 75 6e 63 countBits = func 00038860: 74 69 6f 6e 20 5f 63 6f 75 6e 74 42 69 74 73 20 tion _countBits 00038870: 28 77 29 20 7b 5c 6e 20 20 20 20 20 20 76 61 72 (w) {\n var 00038880: 20 74 20 3d 20 77 3b 5c 6e 20 20 20 20 20 20 76 t = w;\n v 00038890: 61 72 20 72 20 3d 20 30 3b 5c 6e 20 20 20 20 20 ar r = 0;\n 000388a0: 20 69 66 20 28 74 20 3e 3d 20 30 78 31 30 30 30 if (t >= 0x1000 000388b0: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 20 2b ) {\n r + 000388c0: 3d 20 31 33 3b 5c 6e 20 20 20 20 20 20 20 20 74 = 13;\n t 000388d0: 20 3e 3e 3e 3d 20 31 33 3b 5c 6e 20 20 20 20 20 >>>= 13;\n 000388e0: 20 7d 5c 6e 20 20 20 20 20 20 69 66 20 28 74 20 }\n if (t 000388f0: 3e 3d 20 30 78 34 30 29 20 7b 5c 6e 20 20 20 20 >= 0x40) {\n 00038900: 20 20 20 20 72 20 2b 3d 20 37 3b 5c 6e 20 20 20 r += 7;\n 00038910: 20 20 20 20 20 74 20 3e 3e 3e 3d 20 37 3b 5c 6e t >>>= 7;\n 00038920: 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 20 20 69 }\n i 00038930: 66 20 28 74 20 3e 3d 20 30 78 38 29 20 7b 5c 6e f (t >= 0x8) {\n 00038940: 20 20 20 20 20 20 20 20 72 20 2b 3d 20 34 3b 5c r += 4;\ 00038950: 6e 20 20 20 20 20 20 20 20 74 20 3e 3e 3e 3d 20 n t >>>= 00038960: 34 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 4;\n }\n 00038970: 20 20 20 69 66 20 28 74 20 3e 3d 20 30 78 30 32 if (t >= 0x02 00038980: 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 72 20 2b ) {\n r + 00038990: 3d 20 32 3b 5c 6e 20 20 20 20 20 20 20 20 74 20 = 2;\n t 000389a0: 3e 3e 3e 3d 20 32 3b 5c 6e 20 20 20 20 20 20 7d >>>= 2;\n } 000389b0: 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 \n return r 000389c0: 20 2b 20 74 3b 5c 6e 20 20 20 20 7d 3b 5c 6e 20 + t;\n };\n 000389d0: 20 7d 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f }\n\n BN.proto 000389e0: 74 79 70 65 2e 5f 7a 65 72 6f 42 69 74 73 20 3d type._zeroBits = 000389f0: 20 66 75 6e 63 74 69 6f 6e 20 5f 7a 65 72 6f 42 function _zeroB 00038a00: 69 74 73 20 28 77 29 20 7b 5c 6e 20 20 20 20 2f its (w) {\n / 00038a10: 2f 20 53 68 6f 72 74 2d 63 75 74 5c 6e 20 20 20 / Short-cut\n 00038a20: 20 69 66 20 28 77 20 3d 3d 3d 20 30 29 20 72 65 if (w === 0) re 00038a30: 74 75 72 6e 20 32 36 3b 5c 6e 5c 6e 20 20 20 20 turn 26;\n\n 00038a40: 76 61 72 20 74 20 3d 20 77 3b 5c 6e 20 20 20 20 var t = w;\n 00038a50: 76 61 72 20 72 20 3d 20 30 3b 5c 6e 20 20 20 20 var r = 0;\n 00038a60: 69 66 20 28 28 74 20 26 20 30 78 31 66 66 66 29 if ((t & 0x1fff) 00038a70: 20 3d 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 === 0) {\n 00038a80: 20 72 20 2b 3d 20 31 33 3b 5c 6e 20 20 20 20 20 r += 13;\n 00038a90: 20 74 20 3e 3e 3e 3d 20 31 33 3b 5c 6e 20 20 20 t >>>= 13;\n 00038aa0: 20 7d 5c 6e 20 20 20 20 69 66 20 28 28 74 20 26 }\n if ((t & 00038ab0: 20 30 78 37 66 29 20 3d 3d 3d 20 30 29 20 7b 5c 0x7f) === 0) {\ 00038ac0: 6e 20 20 20 20 20 20 72 20 2b 3d 20 37 3b 5c 6e n r += 7;\n 00038ad0: 20 20 20 20 20 20 74 20 3e 3e 3e 3d 20 37 3b 5c t >>>= 7;\ 00038ae0: 6e 20 20 20 20 7d 5c 6e 20 20 20 20 69 66 20 28 n }\n if ( 00038af0: 28 74 20 26 20 30 78 66 29 20 3d 3d 3d 20 30 29 (t & 0xf) === 0) 00038b00: 20 7b 5c 6e 20 20 20 20 20 20 72 20 2b 3d 20 34 {\n r += 4 00038b10: 3b 5c 6e 20 20 20 20 20 20 74 20 3e 3e 3e 3d 20 ;\n t >>>= 00038b20: 34 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 69 4;\n }\n i 00038b30: 66 20 28 28 74 20 26 20 30 78 33 29 20 3d 3d 3d f ((t & 0x3) === 00038b40: 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 72 20 2b 0) {\n r + 00038b50: 3d 20 32 3b 5c 6e 20 20 20 20 20 20 74 20 3e 3e = 2;\n t >> 00038b60: 3e 3d 20 32 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 >= 2;\n }\n 00038b70: 20 20 69 66 20 28 28 74 20 26 20 30 78 31 29 20 if ((t & 0x1) 00038b80: 3d 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 === 0) {\n 00038b90: 72 2b 2b 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 r++;\n }\n 00038ba0: 20 72 65 74 75 72 6e 20 72 3b 5c 6e 20 20 7d 3b return r;\n }; 00038bb0: 5c 6e 5c 6e 20 20 2f 2f 20 52 65 74 75 72 6e 20 \n\n // Return 00038bc0: 6e 75 6d 62 65 72 20 6f 66 20 75 73 65 64 20 62 number of used b 00038bd0: 69 74 73 20 69 6e 20 61 20 42 4e 5c 6e 20 20 42 its in a BN\n B 00038be0: 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 62 69 74 4c N.prototype.bitL 00038bf0: 65 6e 67 74 68 20 3d 20 66 75 6e 63 74 69 6f 6e ength = function 00038c00: 20 62 69 74 4c 65 6e 67 74 68 20 28 29 20 7b 5c bitLength () {\ 00038c10: 6e 20 20 20 20 76 61 72 20 77 20 3d 20 74 68 69 n var w = thi 00038c20: 73 2e 77 6f 72 64 73 5b 74 68 69 73 2e 6c 65 6e s.words[this.len 00038c30: 67 74 68 20 2d 20 31 5d 3b 5c 6e 20 20 20 20 76 gth - 1];\n v 00038c40: 61 72 20 68 69 20 3d 20 74 68 69 73 2e 5f 63 6f ar hi = this._co 00038c50: 75 6e 74 42 69 74 73 28 77 29 3b 5c 6e 20 20 20 untBits(w);\n 00038c60: 20 72 65 74 75 72 6e 20 28 74 68 69 73 2e 6c 65 return (this.le 00038c70: 6e 67 74 68 20 2d 20 31 29 20 2a 20 32 36 20 2b ngth - 1) * 26 + 00038c80: 20 68 69 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 hi;\n };\n\n 00038c90: 66 75 6e 63 74 69 6f 6e 20 74 6f 42 69 74 41 72 function toBitAr 00038ca0: 72 61 79 20 28 6e 75 6d 29 20 7b 5c 6e 20 20 20 ray (num) {\n 00038cb0: 20 76 61 72 20 77 20 3d 20 6e 65 77 20 41 72 72 var w = new Arr 00038cc0: 61 79 28 6e 75 6d 2e 62 69 74 4c 65 6e 67 74 68 ay(num.bitLength 00038cd0: 28 29 29 3b 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 ());\n\n for 00038ce0: 28 76 61 72 20 62 69 74 20 3d 20 30 3b 20 62 69 (var bit = 0; bi 00038cf0: 74 20 3c 20 77 2e 6c 65 6e 67 74 68 3b 20 62 69 t < w.length; bi 00038d00: 74 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 76 61 t++) {\n va 00038d10: 72 20 6f 66 66 20 3d 20 28 62 69 74 20 2f 20 32 r off = (bit / 2 00038d20: 36 29 20 7c 20 30 3b 5c 6e 20 20 20 20 20 20 76 6) | 0;\n v 00038d30: 61 72 20 77 62 69 74 20 3d 20 62 69 74 20 25 20 ar wbit = bit % 00038d40: 32 36 3b 5c 6e 5c 6e 20 20 20 20 20 20 77 5b 62 26;\n\n w[b 00038d50: 69 74 5d 20 3d 20 28 6e 75 6d 2e 77 6f 72 64 73 it] = (num.words 00038d60: 5b 6f 66 66 5d 20 3e 3e 3e 20 77 62 69 74 29 20 [off] >>> wbit) 00038d70: 26 20 30 78 30 31 3b 5c 6e 20 20 20 20 7d 5c 6e & 0x01;\n }\n 00038d80: 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 77 3b 5c \n return w;\ 00038d90: 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 4e 75 6d n }\n\n // Num 00038da0: 62 65 72 20 6f 66 20 74 72 61 69 6c 69 6e 67 20 ber of trailing 00038db0: 7a 65 72 6f 20 62 69 74 73 5c 6e 20 20 42 4e 2e zero bits\n BN. 00038dc0: 70 72 6f 74 6f 74 79 70 65 2e 7a 65 72 6f 42 69 prototype.zeroBi 00038dd0: 74 73 20 3d 20 66 75 6e 63 74 69 6f 6e 20 7a 65 ts = function ze 00038de0: 72 6f 42 69 74 73 20 28 29 20 7b 5c 6e 20 20 20 roBits () {\n 00038df0: 20 69 66 20 28 74 68 69 73 2e 69 73 5a 65 72 6f if (this.isZero 00038e00: 28 29 29 20 72 65 74 75 72 6e 20 30 3b 5c 6e 5c ()) return 0;\n\ 00038e10: 6e 20 20 20 20 76 61 72 20 72 20 3d 20 30 3b 5c n var r = 0;\ 00038e20: 6e 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 n for (var i 00038e30: 3d 20 30 3b 20 69 20 3c 20 74 68 69 73 2e 6c 65 = 0; i < this.le 00038e40: 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 ngth; i++) {\n 00038e50: 20 20 20 20 76 61 72 20 62 20 3d 20 74 68 69 73 var b = this 00038e60: 2e 5f 7a 65 72 6f 42 69 74 73 28 74 68 69 73 2e ._zeroBits(this. 00038e70: 77 6f 72 64 73 5b 69 5d 29 3b 5c 6e 20 20 20 20 words[i]);\n 00038e80: 20 20 72 20 2b 3d 20 62 3b 5c 6e 20 20 20 20 20 r += b;\n 00038e90: 20 69 66 20 28 62 20 21 3d 3d 20 32 36 29 20 62 if (b !== 26) b 00038ea0: 72 65 61 6b 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 reak;\n }\n 00038eb0: 20 20 72 65 74 75 72 6e 20 72 3b 5c 6e 20 20 7d return r;\n } 00038ec0: 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 ;\n\n BN.protot 00038ed0: 79 70 65 2e 62 79 74 65 4c 65 6e 67 74 68 20 3d ype.byteLength = 00038ee0: 20 66 75 6e 63 74 69 6f 6e 20 62 79 74 65 4c 65 function byteLe 00038ef0: 6e 67 74 68 20 28 29 20 7b 5c 6e 20 20 20 20 72 ngth () {\n r 00038f00: 65 74 75 72 6e 20 4d 61 74 68 2e 63 65 69 6c 28 eturn Math.ceil( 00038f10: 74 68 69 73 2e 62 69 74 4c 65 6e 67 74 68 28 29 this.bitLength() 00038f20: 20 2f 20 38 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e / 8);\n };\n\n 00038f30: 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 74 BN.prototype.t 00038f40: 6f 54 77 6f 73 20 3d 20 66 75 6e 63 74 69 6f 6e oTwos = function 00038f50: 20 74 6f 54 77 6f 73 20 28 77 69 64 74 68 29 20 toTwos (width) 00038f60: 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e {\n if (this. 00038f70: 6e 65 67 61 74 69 76 65 20 21 3d 3d 20 30 29 20 negative !== 0) 00038f80: 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 {\n return 00038f90: 74 68 69 73 2e 61 62 73 28 29 2e 69 6e 6f 74 6e this.abs().inotn 00038fa0: 28 77 69 64 74 68 29 2e 69 61 64 64 6e 28 31 29 (width).iaddn(1) 00038fb0: 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 72 65 ;\n }\n re 00038fc0: 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f 6e 65 28 turn this.clone( 00038fd0: 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e );\n };\n\n BN 00038fe0: 2e 70 72 6f 74 6f 74 79 70 65 2e 66 72 6f 6d 54 .prototype.fromT 00038ff0: 77 6f 73 20 3d 20 66 75 6e 63 74 69 6f 6e 20 66 wos = function f 00039000: 72 6f 6d 54 77 6f 73 20 28 77 69 64 74 68 29 20 romTwos (width) 00039010: 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e {\n if (this. 00039020: 74 65 73 74 6e 28 77 69 64 74 68 20 2d 20 31 29 testn(width - 1) 00039030: 29 20 7b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 ) {\n retur 00039040: 6e 20 74 68 69 73 2e 6e 6f 74 6e 28 77 69 64 74 n this.notn(widt 00039050: 68 29 2e 69 61 64 64 6e 28 31 29 2e 69 6e 65 67 h).iaddn(1).ineg 00039060: 28 29 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 ();\n }\n 00039070: 72 65 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f 6e return this.clon 00039080: 65 28 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 e();\n };\n\n 00039090: 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 69 73 4e BN.prototype.isN 000390a0: 65 67 20 3d 20 66 75 6e 63 74 69 6f 6e 20 69 73 eg = function is 000390b0: 4e 65 67 20 28 29 20 7b 5c 6e 20 20 20 20 72 65 Neg () {\n re 000390c0: 74 75 72 6e 20 74 68 69 73 2e 6e 65 67 61 74 69 turn this.negati 000390d0: 76 65 20 21 3d 3d 20 30 3b 5c 6e 20 20 7d 3b 5c ve !== 0;\n };\ 000390e0: 6e 5c 6e 20 20 2f 2f 20 52 65 74 75 72 6e 20 6e n\n // Return n 000390f0: 65 67 61 74 69 76 65 20 63 6c 6f 6e 65 20 6f 66 egative clone of 00039100: 20 60 74 68 69 73 60 5c 6e 20 20 42 4e 2e 70 72 `this`\n BN.pr 00039110: 6f 74 6f 74 79 70 65 2e 6e 65 67 20 3d 20 66 75 ototype.neg = fu 00039120: 6e 63 74 69 6f 6e 20 6e 65 67 20 28 29 20 7b 5c nction neg () {\ 00039130: 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 n return this 00039140: 2e 63 6c 6f 6e 65 28 29 2e 69 6e 65 67 28 29 3b .clone().ineg(); 00039150: 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 \n };\n\n BN.p 00039160: 72 6f 74 6f 74 79 70 65 2e 69 6e 65 67 20 3d 20 rototype.ineg = 00039170: 66 75 6e 63 74 69 6f 6e 20 69 6e 65 67 20 28 29 function ineg () 00039180: 20 7b 5c 6e 20 20 20 20 69 66 20 28 21 74 68 69 {\n if (!thi 00039190: 73 2e 69 73 5a 65 72 6f 28 29 29 20 7b 5c 6e 20 s.isZero()) {\n 000391a0: 20 20 20 20 20 74 68 69 73 2e 6e 65 67 61 74 69 this.negati 000391b0: 76 65 20 5e 3d 20 31 3b 5c 6e 20 20 20 20 7d 5c ve ^= 1;\n }\ 000391c0: 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 n\n return th 000391d0: 69 73 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 2f is;\n };\n\n / 000391e0: 2f 20 4f 72 20 60 6e 75 6d 60 20 77 69 74 68 20 / Or `num` with 000391f0: 60 74 68 69 73 60 20 69 6e 2d 70 6c 61 63 65 5c `this` in-place\ 00039200: 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e n BN.prototype. 00039210: 69 75 6f 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 iuor = function 00039220: 69 75 6f 72 20 28 6e 75 6d 29 20 7b 5c 6e 20 20 iuor (num) {\n 00039230: 20 20 77 68 69 6c 65 20 28 74 68 69 73 2e 6c 65 while (this.le 00039240: 6e 67 74 68 20 3c 20 6e 75 6d 2e 6c 65 6e 67 74 ngth < num.lengt 00039250: 68 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 h) {\n this 00039260: 2e 77 6f 72 64 73 5b 74 68 69 73 2e 6c 65 6e 67 .words[this.leng 00039270: 74 68 2b 2b 5d 20 3d 20 30 3b 5c 6e 20 20 20 20 th++] = 0;\n 00039280: 7d 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 76 61 }\n\n for (va 00039290: 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6e 75 6d r i = 0; i < num 000392a0: 2e 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c .length; i++) {\ 000392b0: 6e 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 n this.word 000392c0: 73 5b 69 5d 20 3d 20 74 68 69 73 2e 77 6f 72 64 s[i] = this.word 000392d0: 73 5b 69 5d 20 7c 20 6e 75 6d 2e 77 6f 72 64 73 s[i] | num.words 000392e0: 5b 69 5d 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 [i];\n }\n\n 000392f0: 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f return this._ 00039300: 73 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e strip();\n };\n 00039310: 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 \n BN.prototype 00039320: 2e 69 6f 72 20 3d 20 66 75 6e 63 74 69 6f 6e 20 .ior = function 00039330: 69 6f 72 20 28 6e 75 6d 29 20 7b 5c 6e 20 20 20 ior (num) {\n 00039340: 20 61 73 73 65 72 74 28 28 74 68 69 73 2e 6e 65 assert((this.ne 00039350: 67 61 74 69 76 65 20 7c 20 6e 75 6d 2e 6e 65 67 gative | num.neg 00039360: 61 74 69 76 65 29 20 3d 3d 3d 20 30 29 3b 5c 6e ative) === 0);\n 00039370: 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e return this. 00039380: 69 75 6f 72 28 6e 75 6d 29 3b 5c 6e 20 20 7d 3b iuor(num);\n }; 00039390: 5c 6e 5c 6e 20 20 2f 2f 20 4f 72 20 60 6e 75 6d \n\n // Or `num 000393a0: 60 20 77 69 74 68 20 60 74 68 69 73 60 5c 6e 20 ` with `this`\n 000393b0: 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 6f 72 BN.prototype.or 000393c0: 20 3d 20 66 75 6e 63 74 69 6f 6e 20 6f 72 20 28 = function or ( 000393d0: 6e 75 6d 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 num) {\n if ( 000393e0: 74 68 69 73 2e 6c 65 6e 67 74 68 20 3e 20 6e 75 this.length > nu 000393f0: 6d 2e 6c 65 6e 67 74 68 29 20 72 65 74 75 72 6e m.length) return 00039400: 20 74 68 69 73 2e 63 6c 6f 6e 65 28 29 2e 69 6f this.clone().io 00039410: 72 28 6e 75 6d 29 3b 5c 6e 20 20 20 20 72 65 74 r(num);\n ret 00039420: 75 72 6e 20 6e 75 6d 2e 63 6c 6f 6e 65 28 29 2e urn num.clone(). 00039430: 69 6f 72 28 74 68 69 73 29 3b 5c 6e 20 20 7d 3b ior(this);\n }; 00039440: 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 \n\n BN.prototy 00039450: 70 65 2e 75 6f 72 20 3d 20 66 75 6e 63 74 69 6f pe.uor = functio 00039460: 6e 20 75 6f 72 20 28 6e 75 6d 29 20 7b 5c 6e 20 n uor (num) {\n 00039470: 20 20 20 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 if (this.leng 00039480: 74 68 20 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 th > num.length) 00039490: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f return this.clo 000394a0: 6e 65 28 29 2e 69 75 6f 72 28 6e 75 6d 29 3b 5c ne().iuor(num);\ 000394b0: 6e 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6d 2e n return num. 000394c0: 63 6c 6f 6e 65 28 29 2e 69 75 6f 72 28 74 68 69 clone().iuor(thi 000394d0: 73 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 2f s);\n };\n\n / 000394e0: 2f 20 41 6e 64 20 60 6e 75 6d 60 20 77 69 74 68 / And `num` with 000394f0: 20 60 74 68 69 73 60 20 69 6e 2d 70 6c 61 63 65 `this` in-place 00039500: 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 \n BN.prototype 00039510: 2e 69 75 61 6e 64 20 3d 20 66 75 6e 63 74 69 6f .iuand = functio 00039520: 6e 20 69 75 61 6e 64 20 28 6e 75 6d 29 20 7b 5c n iuand (num) {\ 00039530: 6e 20 20 20 20 2f 2f 20 62 20 3d 20 6d 69 6e 2d n // b = min- 00039540: 6c 65 6e 67 74 68 28 6e 75 6d 2c 20 74 68 69 73 length(num, this 00039550: 29 5c 6e 20 20 20 20 76 61 72 20 62 3b 5c 6e 20 )\n var b;\n 00039560: 20 20 20 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 if (this.leng 00039570: 74 68 20 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 th > num.length) 00039580: 20 7b 5c 6e 20 20 20 20 20 20 62 20 3d 20 6e 75 {\n b = nu 00039590: 6d 3b 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 7b m;\n } else { 000395a0: 5c 6e 20 20 20 20 20 20 62 20 3d 20 74 68 69 73 \n b = this 000395b0: 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 ;\n }\n\n 000395c0: 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 for (var i = 0; 000395d0: 69 20 3c 20 62 2e 6c 65 6e 67 74 68 3b 20 69 2b i < b.length; i+ 000395e0: 2b 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 +) {\n this 000395f0: 2e 77 6f 72 64 73 5b 69 5d 20 3d 20 74 68 69 73 .words[i] = this 00039600: 2e 77 6f 72 64 73 5b 69 5d 20 26 20 6e 75 6d 2e .words[i] & num. 00039610: 77 6f 72 64 73 5b 69 5d 3b 5c 6e 20 20 20 20 7d words[i];\n } 00039620: 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 6e \n\n this.len 00039630: 67 74 68 20 3d 20 62 2e 6c 65 6e 67 74 68 3b 5c gth = b.length;\ 00039640: 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 n\n return th 00039650: 69 73 2e 5f 73 74 72 69 70 28 29 3b 5c 6e 20 20 is._strip();\n 00039660: 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f };\n\n BN.proto 00039670: 74 79 70 65 2e 69 61 6e 64 20 3d 20 66 75 6e 63 type.iand = func 00039680: 74 69 6f 6e 20 69 61 6e 64 20 28 6e 75 6d 29 20 tion iand (num) 00039690: 7b 5c 6e 20 20 20 20 61 73 73 65 72 74 28 28 74 {\n assert((t 000396a0: 68 69 73 2e 6e 65 67 61 74 69 76 65 20 7c 20 6e his.negative | n 000396b0: 75 6d 2e 6e 65 67 61 74 69 76 65 29 20 3d 3d 3d um.negative) === 000396c0: 20 30 29 3b 5c 6e 20 20 20 20 72 65 74 75 72 6e 0);\n return 000396d0: 20 74 68 69 73 2e 69 75 61 6e 64 28 6e 75 6d 29 this.iuand(num) 000396e0: 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 2f 2f 20 ;\n };\n\n // 000396f0: 41 6e 64 20 60 6e 75 6d 60 20 77 69 74 68 20 60 And `num` with ` 00039700: 74 68 69 73 60 5c 6e 20 20 42 4e 2e 70 72 6f 74 this`\n BN.prot 00039710: 6f 74 79 70 65 2e 61 6e 64 20 3d 20 66 75 6e 63 otype.and = func 00039720: 74 69 6f 6e 20 61 6e 64 20 28 6e 75 6d 29 20 7b tion and (num) { 00039730: 5c 6e 20 20 20 20 69 66 20 28 74 68 69 73 2e 6c \n if (this.l 00039740: 65 6e 67 74 68 20 3e 20 6e 75 6d 2e 6c 65 6e 67 ength > num.leng 00039750: 74 68 29 20 72 65 74 75 72 6e 20 74 68 69 73 2e th) return this. 00039760: 63 6c 6f 6e 65 28 29 2e 69 61 6e 64 28 6e 75 6d clone().iand(num 00039770: 29 3b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6e );\n return n 00039780: 75 6d 2e 63 6c 6f 6e 65 28 29 2e 69 61 6e 64 28 um.clone().iand( 00039790: 74 68 69 73 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e this);\n };\n\n 000397a0: 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e 75 BN.prototype.u 000397b0: 61 6e 64 20 3d 20 66 75 6e 63 74 69 6f 6e 20 75 and = function u 000397c0: 61 6e 64 20 28 6e 75 6d 29 20 7b 5c 6e 20 20 20 and (num) {\n 000397d0: 20 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 74 68 if (this.length 000397e0: 20 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 20 72 > num.length) r 000397f0: 65 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f 6e 65 eturn this.clone 00039800: 28 29 2e 69 75 61 6e 64 28 6e 75 6d 29 3b 5c 6e ().iuand(num);\n 00039810: 20 20 20 20 72 65 74 75 72 6e 20 6e 75 6d 2e 63 return num.c 00039820: 6c 6f 6e 65 28 29 2e 69 75 61 6e 64 28 74 68 69 lone().iuand(thi 00039830: 73 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 2f s);\n };\n\n / 00039840: 2f 20 58 6f 72 20 60 6e 75 6d 60 20 77 69 74 68 / Xor `num` with 00039850: 20 60 74 68 69 73 60 20 69 6e 2d 70 6c 61 63 65 `this` in-place 00039860: 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 \n BN.prototype 00039870: 2e 69 75 78 6f 72 20 3d 20 66 75 6e 63 74 69 6f .iuxor = functio 00039880: 6e 20 69 75 78 6f 72 20 28 6e 75 6d 29 20 7b 5c n iuxor (num) {\ 00039890: 6e 20 20 20 20 2f 2f 20 61 2e 6c 65 6e 67 74 68 n // a.length 000398a0: 20 3e 20 62 2e 6c 65 6e 67 74 68 5c 6e 20 20 20 > b.length\n 000398b0: 20 76 61 72 20 61 3b 5c 6e 20 20 20 20 76 61 72 var a;\n var 000398c0: 20 62 3b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 b;\n if (thi 000398d0: 73 2e 6c 65 6e 67 74 68 20 3e 20 6e 75 6d 2e 6c s.length > num.l 000398e0: 65 6e 67 74 68 29 20 7b 5c 6e 20 20 20 20 20 20 ength) {\n 000398f0: 61 20 3d 20 74 68 69 73 3b 5c 6e 20 20 20 20 20 a = this;\n 00039900: 20 62 20 3d 20 6e 75 6d 3b 5c 6e 20 20 20 20 7d b = num;\n } 00039910: 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 20 20 61 else {\n a 00039920: 20 3d 20 6e 75 6d 3b 5c 6e 20 20 20 20 20 20 62 = num;\n b 00039930: 20 3d 20 74 68 69 73 3b 5c 6e 20 20 20 20 7d 5c = this;\n }\ 00039940: 6e 5c 6e 20 20 20 20 66 6f 72 20 28 76 61 72 20 n\n for (var 00039950: 69 20 3d 20 30 3b 20 69 20 3c 20 62 2e 6c 65 6e i = 0; i < b.len 00039960: 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 gth; i++) {\n 00039970: 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d this.words[i] 00039980: 20 3d 20 61 2e 77 6f 72 64 73 5b 69 5d 20 5e 20 = a.words[i] ^ 00039990: 62 2e 77 6f 72 64 73 5b 69 5d 3b 5c 6e 20 20 20 b.words[i];\n 000399a0: 20 7d 5c 6e 5c 6e 20 20 20 20 69 66 20 28 74 68 }\n\n if (th 000399b0: 69 73 20 21 3d 3d 20 61 29 20 7b 5c 6e 20 20 20 is !== a) {\n 000399c0: 20 20 20 66 6f 72 20 28 3b 20 69 20 3c 20 61 2e for (; i < a. 000399d0: 6c 65 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e length; i++) {\n 000399e0: 20 20 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 this.wor 000399f0: 64 73 5b 69 5d 20 3d 20 61 2e 77 6f 72 64 73 5b ds[i] = a.words[ 00039a00: 69 5d 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 i];\n }\n 00039a10: 20 20 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e }\n\n this. 00039a20: 6c 65 6e 67 74 68 20 3d 20 61 2e 6c 65 6e 67 74 length = a.lengt 00039a30: 68 3b 5c 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e h;\n\n return 00039a40: 20 74 68 69 73 2e 5f 73 74 72 69 70 28 29 3b 5c this._strip();\ 00039a50: 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 42 4e 2e 70 72 n };\n\n BN.pr 00039a60: 6f 74 6f 74 79 70 65 2e 69 78 6f 72 20 3d 20 66 ototype.ixor = f 00039a70: 75 6e 63 74 69 6f 6e 20 69 78 6f 72 20 28 6e 75 unction ixor (nu 00039a80: 6d 29 20 7b 5c 6e 20 20 20 20 61 73 73 65 72 74 m) {\n assert 00039a90: 28 28 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 ((this.negative 00039aa0: 7c 20 6e 75 6d 2e 6e 65 67 61 74 69 76 65 29 20 | num.negative) 00039ab0: 3d 3d 3d 20 30 29 3b 5c 6e 20 20 20 20 72 65 74 === 0);\n ret 00039ac0: 75 72 6e 20 74 68 69 73 2e 69 75 78 6f 72 28 6e urn this.iuxor(n 00039ad0: 75 6d 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 um);\n };\n\n 00039ae0: 2f 2f 20 58 6f 72 20 60 6e 75 6d 60 20 77 69 74 // Xor `num` wit 00039af0: 68 20 60 74 68 69 73 60 5c 6e 20 20 42 4e 2e 70 h `this`\n BN.p 00039b00: 72 6f 74 6f 74 79 70 65 2e 78 6f 72 20 3d 20 66 rototype.xor = f 00039b10: 75 6e 63 74 69 6f 6e 20 78 6f 72 20 28 6e 75 6d unction xor (num 00039b20: 29 20 7b 5c 6e 20 20 20 20 69 66 20 28 74 68 69 ) {\n if (thi 00039b30: 73 2e 6c 65 6e 67 74 68 20 3e 20 6e 75 6d 2e 6c s.length > num.l 00039b40: 65 6e 67 74 68 29 20 72 65 74 75 72 6e 20 74 68 ength) return th 00039b50: 69 73 2e 63 6c 6f 6e 65 28 29 2e 69 78 6f 72 28 is.clone().ixor( 00039b60: 6e 75 6d 29 3b 5c 6e 20 20 20 20 72 65 74 75 72 num);\n retur 00039b70: 6e 20 6e 75 6d 2e 63 6c 6f 6e 65 28 29 2e 69 78 n num.clone().ix 00039b80: 6f 72 28 74 68 69 73 29 3b 5c 6e 20 20 7d 3b 5c or(this);\n };\ 00039b90: 6e 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 n\n BN.prototyp 00039ba0: 65 2e 75 78 6f 72 20 3d 20 66 75 6e 63 74 69 6f e.uxor = functio 00039bb0: 6e 20 75 78 6f 72 20 28 6e 75 6d 29 20 7b 5c 6e n uxor (num) {\n 00039bc0: 20 20 20 20 69 66 20 28 74 68 69 73 2e 6c 65 6e if (this.len 00039bd0: 67 74 68 20 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 gth > num.length 00039be0: 29 20 72 65 74 75 72 6e 20 74 68 69 73 2e 63 6c ) return this.cl 00039bf0: 6f 6e 65 28 29 2e 69 75 78 6f 72 28 6e 75 6d 29 one().iuxor(num) 00039c00: 3b 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6e 75 ;\n return nu 00039c10: 6d 2e 63 6c 6f 6e 65 28 29 2e 69 75 78 6f 72 28 m.clone().iuxor( 00039c20: 74 68 69 73 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e this);\n };\n\n 00039c30: 20 20 2f 2f 20 4e 6f 74 20 60 60 74 68 69 73 60 // Not ``this` 00039c40: 60 20 77 69 74 68 20 60 60 77 69 64 74 68 60 60 ` with ``width`` 00039c50: 20 62 69 74 77 69 64 74 68 5c 6e 20 20 42 4e 2e bitwidth\n BN. 00039c60: 70 72 6f 74 6f 74 79 70 65 2e 69 6e 6f 74 6e 20 prototype.inotn 00039c70: 3d 20 66 75 6e 63 74 69 6f 6e 20 69 6e 6f 74 6e = function inotn 00039c80: 20 28 77 69 64 74 68 29 20 7b 5c 6e 20 20 20 20 (width) {\n 00039c90: 61 73 73 65 72 74 28 74 79 70 65 6f 66 20 77 69 assert(typeof wi 00039ca0: 64 74 68 20 3d 3d 3d 20 27 6e 75 6d 62 65 72 27 dth === 'number' 00039cb0: 20 26 26 20 77 69 64 74 68 20 3e 3d 20 30 29 3b && width >= 0); 00039cc0: 5c 6e 5c 6e 20 20 20 20 76 61 72 20 62 79 74 65 \n\n var byte 00039cd0: 73 4e 65 65 64 65 64 20 3d 20 4d 61 74 68 2e 63 sNeeded = Math.c 00039ce0: 65 69 6c 28 77 69 64 74 68 20 2f 20 32 36 29 20 eil(width / 26) 00039cf0: 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 62 69 | 0;\n var bi 00039d00: 74 73 4c 65 66 74 20 3d 20 77 69 64 74 68 20 25 tsLeft = width % 00039d10: 20 32 36 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 45 26;\n\n // E 00039d20: 78 74 65 6e 64 20 74 68 65 20 62 75 66 66 65 72 xtend the buffer 00039d30: 20 77 69 74 68 20 6c 65 61 64 69 6e 67 20 7a 65 with leading ze 00039d40: 72 6f 65 73 5c 6e 20 20 20 20 74 68 69 73 2e 5f roes\n this._ 00039d50: 65 78 70 61 6e 64 28 62 79 74 65 73 4e 65 65 64 expand(bytesNeed 00039d60: 65 64 29 3b 5c 6e 5c 6e 20 20 20 20 69 66 20 28 ed);\n\n if ( 00039d70: 62 69 74 73 4c 65 66 74 20 3e 20 30 29 20 7b 5c bitsLeft > 0) {\ 00039d80: 6e 20 20 20 20 20 20 62 79 74 65 73 4e 65 65 64 n bytesNeed 00039d90: 65 64 2d 2d 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e ed--;\n }\n\n 00039da0: 20 20 20 20 2f 2f 20 48 61 6e 64 6c 65 20 63 6f // Handle co 00039db0: 6d 70 6c 65 74 65 20 77 6f 72 64 73 5c 6e 20 20 mplete words\n 00039dc0: 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 for (var i = 0 00039dd0: 3b 20 69 20 3c 20 62 79 74 65 73 4e 65 65 64 65 ; i < bytesNeede 00039de0: 64 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 d; i++) {\n 00039df0: 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 3d this.words[i] = 00039e00: 20 7e 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 ~this.words[i] 00039e10: 26 20 30 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 & 0x3ffffff;\n 00039e20: 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 48 61 }\n\n // Ha 00039e30: 6e 64 6c 65 20 74 68 65 20 72 65 73 69 64 75 65 ndle the residue 00039e40: 5c 6e 20 20 20 20 69 66 20 28 62 69 74 73 4c 65 \n if (bitsLe 00039e50: 66 74 20 3e 20 30 29 20 7b 5c 6e 20 20 20 20 20 ft > 0) {\n 00039e60: 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 3d this.words[i] = 00039e70: 20 7e 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 ~this.words[i] 00039e80: 26 20 28 30 78 33 66 66 66 66 66 66 20 3e 3e 20 & (0x3ffffff >> 00039e90: 28 32 36 20 2d 20 62 69 74 73 4c 65 66 74 29 29 (26 - bitsLeft)) 00039ea0: 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 ;\n }\n\n 00039eb0: 2f 2f 20 41 6e 64 20 72 65 6d 6f 76 65 20 6c 65 // And remove le 00039ec0: 61 64 69 6e 67 20 7a 65 72 6f 65 73 5c 6e 20 20 ading zeroes\n 00039ed0: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 73 return this._s 00039ee0: 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c trip();\n };\n\ 00039ef0: 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 2e n BN.prototype. 00039f00: 6e 6f 74 6e 20 3d 20 66 75 6e 63 74 69 6f 6e 20 notn = function 00039f10: 6e 6f 74 6e 20 28 77 69 64 74 68 29 20 7b 5c 6e notn (width) {\n 00039f20: 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e return this. 00039f30: 63 6c 6f 6e 65 28 29 2e 69 6e 6f 74 6e 28 77 69 clone().inotn(wi 00039f40: 64 74 68 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 dth);\n };\n\n 00039f50: 20 2f 2f 20 53 65 74 20 60 62 69 74 60 20 6f 66 // Set `bit` of 00039f60: 20 60 74 68 69 73 60 5c 6e 20 20 42 4e 2e 70 72 `this`\n BN.pr 00039f70: 6f 74 6f 74 79 70 65 2e 73 65 74 6e 20 3d 20 66 ototype.setn = f 00039f80: 75 6e 63 74 69 6f 6e 20 73 65 74 6e 20 28 62 69 unction setn (bi 00039f90: 74 2c 20 76 61 6c 29 20 7b 5c 6e 20 20 20 20 61 t, val) {\n a 00039fa0: 73 73 65 72 74 28 74 79 70 65 6f 66 20 62 69 74 ssert(typeof bit 00039fb0: 20 3d 3d 3d 20 27 6e 75 6d 62 65 72 27 20 26 26 === 'number' && 00039fc0: 20 62 69 74 20 3e 3d 20 30 29 3b 5c 6e 5c 6e 20 bit >= 0);\n\n 00039fd0: 20 20 20 76 61 72 20 6f 66 66 20 3d 20 28 62 69 var off = (bi 00039fe0: 74 20 2f 20 32 36 29 20 7c 20 30 3b 5c 6e 20 20 t / 26) | 0;\n 00039ff0: 20 20 76 61 72 20 77 62 69 74 20 3d 20 62 69 74 var wbit = bit 0003a000: 20 25 20 32 36 3b 5c 6e 5c 6e 20 20 20 20 74 68 % 26;\n\n th 0003a010: 69 73 2e 5f 65 78 70 61 6e 64 28 6f 66 66 20 2b is._expand(off + 0003a020: 20 31 29 3b 5c 6e 5c 6e 20 20 20 20 69 66 20 28 1);\n\n if ( 0003a030: 76 61 6c 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 val) {\n th 0003a040: 69 73 2e 77 6f 72 64 73 5b 6f 66 66 5d 20 3d 20 is.words[off] = 0003a050: 74 68 69 73 2e 77 6f 72 64 73 5b 6f 66 66 5d 20 this.words[off] 0003a060: 7c 20 28 31 20 3c 3c 20 77 62 69 74 29 3b 5c 6e | (1 << wbit);\n 0003a070: 20 20 20 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 } else {\n 0003a080: 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 6f this.words[o 0003a090: 66 66 5d 20 3d 20 74 68 69 73 2e 77 6f 72 64 73 ff] = this.words 0003a0a0: 5b 6f 66 66 5d 20 26 20 7e 28 31 20 3c 3c 20 77 [off] & ~(1 << w 0003a0b0: 62 69 74 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e bit);\n }\n\n 0003a0c0: 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e return this. 0003a0d0: 5f 73 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c _strip();\n };\ 0003a0e0: 6e 5c 6e 20 20 2f 2f 20 41 64 64 20 60 6e 75 6d n\n // Add `num 0003a0f0: 60 20 74 6f 20 60 74 68 69 73 60 20 69 6e 2d 70 ` to `this` in-p 0003a100: 6c 61 63 65 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f lace\n BN.proto 0003a110: 74 79 70 65 2e 69 61 64 64 20 3d 20 66 75 6e 63 type.iadd = func 0003a120: 74 69 6f 6e 20 69 61 64 64 20 28 6e 75 6d 29 20 tion iadd (num) 0003a130: 7b 5c 6e 20 20 20 20 76 61 72 20 72 3b 5c 6e 5c {\n var r;\n\ 0003a140: 6e 20 20 20 20 2f 2f 20 6e 65 67 61 74 69 76 65 n // negative 0003a150: 20 2b 20 70 6f 73 69 74 69 76 65 5c 6e 20 20 20 + positive\n 0003a160: 20 69 66 20 28 74 68 69 73 2e 6e 65 67 61 74 69 if (this.negati 0003a170: 76 65 20 21 3d 3d 20 30 20 26 26 20 6e 75 6d 2e ve !== 0 && num. 0003a180: 6e 65 67 61 74 69 76 65 20 3d 3d 3d 20 30 29 20 negative === 0) 0003a190: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 6e 65 {\n this.ne 0003a1a0: 67 61 74 69 76 65 20 3d 20 30 3b 5c 6e 20 20 20 gative = 0;\n 0003a1b0: 20 20 20 72 20 3d 20 74 68 69 73 2e 69 73 75 62 r = this.isub 0003a1c0: 28 6e 75 6d 29 3b 5c 6e 20 20 20 20 20 20 74 68 (num);\n th 0003a1d0: 69 73 2e 6e 65 67 61 74 69 76 65 20 5e 3d 20 31 is.negative ^= 1 0003a1e0: 3b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 ;\n return 0003a1f0: 74 68 69 73 2e 5f 6e 6f 72 6d 53 69 67 6e 28 29 this._normSign() 0003a200: 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 70 6f 73 69 ;\n\n // posi 0003a210: 74 69 76 65 20 2b 20 6e 65 67 61 74 69 76 65 5c tive + negative\ 0003a220: 6e 20 20 20 20 7d 20 65 6c 73 65 20 69 66 20 28 n } else if ( 0003a230: 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 3d 3d this.negative == 0003a240: 3d 20 30 20 26 26 20 6e 75 6d 2e 6e 65 67 61 74 = 0 && num.negat 0003a250: 69 76 65 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 ive !== 0) {\n 0003a260: 20 20 20 20 6e 75 6d 2e 6e 65 67 61 74 69 76 65 num.negative 0003a270: 20 3d 20 30 3b 5c 6e 20 20 20 20 20 20 72 20 3d = 0;\n r = 0003a280: 20 74 68 69 73 2e 69 73 75 62 28 6e 75 6d 29 3b this.isub(num); 0003a290: 5c 6e 20 20 20 20 20 20 6e 75 6d 2e 6e 65 67 61 \n num.nega 0003a2a0: 74 69 76 65 20 3d 20 31 3b 5c 6e 20 20 20 20 20 tive = 1;\n 0003a2b0: 20 72 65 74 75 72 6e 20 72 2e 5f 6e 6f 72 6d 53 return r._normS 0003a2c0: 69 67 6e 28 29 3b 5c 6e 20 20 20 20 7d 5c 6e 5c ign();\n }\n\ 0003a2d0: 6e 20 20 20 20 2f 2f 20 61 2e 6c 65 6e 67 74 68 n // a.length 0003a2e0: 20 3e 20 62 2e 6c 65 6e 67 74 68 5c 6e 20 20 20 > b.length\n 0003a2f0: 20 76 61 72 20 61 2c 20 62 3b 5c 6e 20 20 20 20 var a, b;\n 0003a300: 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 74 68 20 if (this.length 0003a310: 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 20 7b 5c > num.length) {\ 0003a320: 6e 20 20 20 20 20 20 61 20 3d 20 74 68 69 73 3b n a = this; 0003a330: 5c 6e 20 20 20 20 20 20 62 20 3d 20 6e 75 6d 3b \n b = num; 0003a340: 5c 6e 20 20 20 20 7d 20 65 6c 73 65 20 7b 5c 6e \n } else {\n 0003a350: 20 20 20 20 20 20 61 20 3d 20 6e 75 6d 3b 5c 6e a = num;\n 0003a360: 20 20 20 20 20 20 62 20 3d 20 74 68 69 73 3b 5c b = this;\ 0003a370: 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 76 61 n }\n\n va 0003a380: 72 20 63 61 72 72 79 20 3d 20 30 3b 5c 6e 20 20 r carry = 0;\n 0003a390: 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 for (var i = 0 0003a3a0: 3b 20 69 20 3c 20 62 2e 6c 65 6e 67 74 68 3b 20 ; i < b.length; 0003a3b0: 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 72 20 i++) {\n r 0003a3c0: 3d 20 28 61 2e 77 6f 72 64 73 5b 69 5d 20 7c 20 = (a.words[i] | 0003a3d0: 30 29 20 2b 20 28 62 2e 77 6f 72 64 73 5b 69 5d 0) + (b.words[i] 0003a3e0: 20 7c 20 30 29 20 2b 20 63 61 72 72 79 3b 5c 6e | 0) + carry;\n 0003a3f0: 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 this.words 0003a400: 5b 69 5d 20 3d 20 72 20 26 20 30 78 33 66 66 66 [i] = r & 0x3fff 0003a410: 66 66 66 3b 5c 6e 20 20 20 20 20 20 63 61 72 72 fff;\n carr 0003a420: 79 20 3d 20 72 20 3e 3e 3e 20 32 36 3b 5c 6e 20 y = r >>> 26;\n 0003a430: 20 20 20 7d 5c 6e 20 20 20 20 66 6f 72 20 28 3b }\n for (; 0003a440: 20 63 61 72 72 79 20 21 3d 3d 20 30 20 26 26 20 carry !== 0 && 0003a450: 69 20 3c 20 61 2e 6c 65 6e 67 74 68 3b 20 69 2b i < a.length; i+ 0003a460: 2b 29 20 7b 5c 6e 20 20 20 20 20 20 72 20 3d 20 +) {\n r = 0003a470: 28 61 2e 77 6f 72 64 73 5b 69 5d 20 7c 20 30 29 (a.words[i] | 0) 0003a480: 20 2b 20 63 61 72 72 79 3b 5c 6e 20 20 20 20 20 + carry;\n 0003a490: 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 3d this.words[i] = 0003a4a0: 20 72 20 26 20 30 78 33 66 66 66 66 66 66 3b 5c r & 0x3ffffff;\ 0003a4b0: 6e 20 20 20 20 20 20 63 61 72 72 79 20 3d 20 72 n carry = r 0003a4c0: 20 3e 3e 3e 20 32 36 3b 5c 6e 20 20 20 20 7d 5c >>> 26;\n }\ 0003a4d0: 6e 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 6e 67 n\n this.leng 0003a4e0: 74 68 20 3d 20 61 2e 6c 65 6e 67 74 68 3b 5c 6e th = a.length;\n 0003a4f0: 20 20 20 20 69 66 20 28 63 61 72 72 79 20 21 3d if (carry != 0003a500: 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 74 68 = 0) {\n th 0003a510: 69 73 2e 77 6f 72 64 73 5b 74 68 69 73 2e 6c 65 is.words[this.le 0003a520: 6e 67 74 68 5d 20 3d 20 63 61 72 72 79 3b 5c 6e ngth] = carry;\n 0003a530: 20 20 20 20 20 20 74 68 69 73 2e 6c 65 6e 67 74 this.lengt 0003a540: 68 2b 2b 3b 5c 6e 20 20 20 20 2f 2f 20 43 6f 70 h++;\n // Cop 0003a550: 79 20 74 68 65 20 72 65 73 74 20 6f 66 20 74 68 y the rest of th 0003a560: 65 20 77 6f 72 64 73 5c 6e 20 20 20 20 7d 20 65 e words\n } e 0003a570: 6c 73 65 20 69 66 20 28 61 20 21 3d 3d 20 74 68 lse if (a !== th 0003a580: 69 73 29 20 7b 5c 6e 20 20 20 20 20 20 66 6f 72 is) {\n for 0003a590: 20 28 3b 20 69 20 3c 20 61 2e 6c 65 6e 67 74 68 (; i < a.length 0003a5a0: 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 ; i++) {\n 0003a5b0: 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d 20 this.words[i] 0003a5c0: 3d 20 61 2e 77 6f 72 64 73 5b 69 5d 3b 5c 6e 20 = a.words[i];\n 0003a5d0: 20 20 20 20 20 7d 5c 6e 20 20 20 20 7d 5c 6e 5c }\n }\n\ 0003a5e0: 6e 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 n return this 0003a5f0: 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 2f 2f 20 ;\n };\n\n // 0003a600: 41 64 64 20 60 6e 75 6d 60 20 74 6f 20 60 74 68 Add `num` to `th 0003a610: 69 73 60 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 is`\n BN.protot 0003a620: 79 70 65 2e 61 64 64 20 3d 20 66 75 6e 63 74 69 ype.add = functi 0003a630: 6f 6e 20 61 64 64 20 28 6e 75 6d 29 20 7b 5c 6e on add (num) {\n 0003a640: 20 20 20 20 76 61 72 20 72 65 73 3b 5c 6e 20 20 var res;\n 0003a650: 20 20 69 66 20 28 6e 75 6d 2e 6e 65 67 61 74 69 if (num.negati 0003a660: 76 65 20 21 3d 3d 20 30 20 26 26 20 74 68 69 73 ve !== 0 && this 0003a670: 2e 6e 65 67 61 74 69 76 65 20 3d 3d 3d 20 30 29 .negative === 0) 0003a680: 20 7b 5c 6e 20 20 20 20 20 20 6e 75 6d 2e 6e 65 {\n num.ne 0003a690: 67 61 74 69 76 65 20 3d 20 30 3b 5c 6e 20 20 20 gative = 0;\n 0003a6a0: 20 20 20 72 65 73 20 3d 20 74 68 69 73 2e 73 75 res = this.su 0003a6b0: 62 28 6e 75 6d 29 3b 5c 6e 20 20 20 20 20 20 6e b(num);\n n 0003a6c0: 75 6d 2e 6e 65 67 61 74 69 76 65 20 5e 3d 20 31 um.negative ^= 1 0003a6d0: 3b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 ;\n return 0003a6e0: 72 65 73 3b 5c 6e 20 20 20 20 7d 20 65 6c 73 65 res;\n } else 0003a6f0: 20 69 66 20 28 6e 75 6d 2e 6e 65 67 61 74 69 76 if (num.negativ 0003a700: 65 20 3d 3d 3d 20 30 20 26 26 20 74 68 69 73 2e e === 0 && this. 0003a710: 6e 65 67 61 74 69 76 65 20 21 3d 3d 20 30 29 20 negative !== 0) 0003a720: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 6e 65 {\n this.ne 0003a730: 67 61 74 69 76 65 20 3d 20 30 3b 5c 6e 20 20 20 gative = 0;\n 0003a740: 20 20 20 72 65 73 20 3d 20 6e 75 6d 2e 73 75 62 res = num.sub 0003a750: 28 74 68 69 73 29 3b 5c 6e 20 20 20 20 20 20 74 (this);\n t 0003a760: 68 69 73 2e 6e 65 67 61 74 69 76 65 20 3d 20 31 his.negative = 1 0003a770: 3b 5c 6e 20 20 20 20 20 20 72 65 74 75 72 6e 20 ;\n return 0003a780: 72 65 73 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 res;\n }\n\n 0003a790: 20 20 20 69 66 20 28 74 68 69 73 2e 6c 65 6e 67 if (this.leng 0003a7a0: 74 68 20 3e 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 th > num.length) 0003a7b0: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f return this.clo 0003a7c0: 6e 65 28 29 2e 69 61 64 64 28 6e 75 6d 29 3b 5c ne().iadd(num);\ 0003a7d0: 6e 5c 6e 20 20 20 20 72 65 74 75 72 6e 20 6e 75 n\n return nu 0003a7e0: 6d 2e 63 6c 6f 6e 65 28 29 2e 69 61 64 64 28 74 m.clone().iadd(t 0003a7f0: 68 69 73 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c 6e 20 his);\n };\n\n 0003a800: 20 2f 2f 20 53 75 62 74 72 61 63 74 20 60 6e 75 // Subtract `nu 0003a810: 6d 60 20 66 72 6f 6d 20 60 74 68 69 73 60 20 69 m` from `this` i 0003a820: 6e 2d 70 6c 61 63 65 5c 6e 20 20 42 4e 2e 70 72 n-place\n BN.pr 0003a830: 6f 74 6f 74 79 70 65 2e 69 73 75 62 20 3d 20 66 ototype.isub = f 0003a840: 75 6e 63 74 69 6f 6e 20 69 73 75 62 20 28 6e 75 unction isub (nu 0003a850: 6d 29 20 7b 5c 6e 20 20 20 20 2f 2f 20 74 68 69 m) {\n // thi 0003a860: 73 20 2d 20 28 2d 6e 75 6d 29 20 3d 20 74 68 69 s - (-num) = thi 0003a870: 73 20 2b 20 6e 75 6d 5c 6e 20 20 20 20 69 66 20 s + num\n if 0003a880: 28 6e 75 6d 2e 6e 65 67 61 74 69 76 65 20 21 3d (num.negative != 0003a890: 3d 20 30 29 20 7b 5c 6e 20 20 20 20 20 20 6e 75 = 0) {\n nu 0003a8a0: 6d 2e 6e 65 67 61 74 69 76 65 20 3d 20 30 3b 5c m.negative = 0;\ 0003a8b0: 6e 20 20 20 20 20 20 76 61 72 20 72 20 3d 20 74 n var r = t 0003a8c0: 68 69 73 2e 69 61 64 64 28 6e 75 6d 29 3b 5c 6e his.iadd(num);\n 0003a8d0: 20 20 20 20 20 20 6e 75 6d 2e 6e 65 67 61 74 69 num.negati 0003a8e0: 76 65 20 3d 20 31 3b 5c 6e 20 20 20 20 20 20 72 ve = 1;\n r 0003a8f0: 65 74 75 72 6e 20 72 2e 5f 6e 6f 72 6d 53 69 67 eturn r._normSig 0003a900: 6e 28 29 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 2d n();\n\n // - 0003a910: 74 68 69 73 20 2d 20 6e 75 6d 20 3d 20 2d 28 74 this - num = -(t 0003a920: 68 69 73 20 2b 20 6e 75 6d 29 5c 6e 20 20 20 20 his + num)\n 0003a930: 7d 20 65 6c 73 65 20 69 66 20 28 74 68 69 73 2e } else if (this. 0003a940: 6e 65 67 61 74 69 76 65 20 21 3d 3d 20 30 29 20 negative !== 0) 0003a950: 7b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 6e 65 {\n this.ne 0003a960: 67 61 74 69 76 65 20 3d 20 30 3b 5c 6e 20 20 20 gative = 0;\n 0003a970: 20 20 20 74 68 69 73 2e 69 61 64 64 28 6e 75 6d this.iadd(num 0003a980: 29 3b 5c 6e 20 20 20 20 20 20 74 68 69 73 2e 6e );\n this.n 0003a990: 65 67 61 74 69 76 65 20 3d 20 31 3b 5c 6e 20 20 egative = 1;\n 0003a9a0: 20 20 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e return this. 0003a9b0: 5f 6e 6f 72 6d 53 69 67 6e 28 29 3b 5c 6e 20 20 _normSign();\n 0003a9c0: 20 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 41 74 }\n\n // At 0003a9d0: 20 74 68 69 73 20 70 6f 69 6e 74 20 62 6f 74 68 this point both 0003a9e0: 20 6e 75 6d 62 65 72 73 20 61 72 65 20 70 6f 73 numbers are pos 0003a9f0: 69 74 69 76 65 5c 6e 20 20 20 20 76 61 72 20 63 itive\n var c 0003aa00: 6d 70 20 3d 20 74 68 69 73 2e 63 6d 70 28 6e 75 mp = this.cmp(nu 0003aa10: 6d 29 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 4f 70 m);\n\n // Op 0003aa20: 74 69 6d 69 7a 61 74 69 6f 6e 20 2d 20 7a 65 72 timization - zer 0003aa30: 6f 69 66 79 5c 6e 20 20 20 20 69 66 20 28 63 6d oify\n if (cm 0003aa40: 70 20 3d 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 p === 0) {\n 0003aa50: 20 20 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 this.negative 0003aa60: 3d 20 30 3b 5c 6e 20 20 20 20 20 20 74 68 69 73 = 0;\n this 0003aa70: 2e 6c 65 6e 67 74 68 20 3d 20 31 3b 5c 6e 20 20 .length = 1;\n 0003aa80: 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 30 this.words[0 0003aa90: 5d 20 3d 20 30 3b 5c 6e 20 20 20 20 20 20 72 65 ] = 0;\n re 0003aaa0: 74 75 72 6e 20 74 68 69 73 3b 5c 6e 20 20 20 20 turn this;\n 0003aab0: 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 61 20 3e 20 }\n\n // a > 0003aac0: 62 5c 6e 20 20 20 20 76 61 72 20 61 2c 20 62 3b b\n var a, b; 0003aad0: 5c 6e 20 20 20 20 69 66 20 28 63 6d 70 20 3e 20 \n if (cmp > 0003aae0: 30 29 20 7b 5c 6e 20 20 20 20 20 20 61 20 3d 20 0) {\n a = 0003aaf0: 74 68 69 73 3b 5c 6e 20 20 20 20 20 20 62 20 3d this;\n b = 0003ab00: 20 6e 75 6d 3b 5c 6e 20 20 20 20 7d 20 65 6c 73 num;\n } els 0003ab10: 65 20 7b 5c 6e 20 20 20 20 20 20 61 20 3d 20 6e e {\n a = n 0003ab20: 75 6d 3b 5c 6e 20 20 20 20 20 20 62 20 3d 20 74 um;\n b = t 0003ab30: 68 69 73 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 his;\n }\n\n 0003ab40: 20 20 20 76 61 72 20 63 61 72 72 79 20 3d 20 30 var carry = 0 0003ab50: 3b 5c 6e 20 20 20 20 66 6f 72 20 28 76 61 72 20 ;\n for (var 0003ab60: 69 20 3d 20 30 3b 20 69 20 3c 20 62 2e 6c 65 6e i = 0; i < b.len 0003ab70: 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 gth; i++) {\n 0003ab80: 20 20 20 72 20 3d 20 28 61 2e 77 6f 72 64 73 5b r = (a.words[ 0003ab90: 69 5d 20 7c 20 30 29 20 2d 20 28 62 2e 77 6f 72 i] | 0) - (b.wor 0003aba0: 64 73 5b 69 5d 20 7c 20 30 29 20 2b 20 63 61 72 ds[i] | 0) + car 0003abb0: 72 79 3b 5c 6e 20 20 20 20 20 20 63 61 72 72 79 ry;\n carry 0003abc0: 20 3d 20 72 20 3e 3e 20 32 36 3b 5c 6e 20 20 20 = r >> 26;\n 0003abd0: 20 20 20 74 68 69 73 2e 77 6f 72 64 73 5b 69 5d this.words[i] 0003abe0: 20 3d 20 72 20 26 20 30 78 33 66 66 66 66 66 66 = r & 0x3ffffff 0003abf0: 3b 5c 6e 20 20 20 20 7d 5c 6e 20 20 20 20 66 6f ;\n }\n fo 0003ac00: 72 20 28 3b 20 63 61 72 72 79 20 21 3d 3d 20 30 r (; carry !== 0 0003ac10: 20 26 26 20 69 20 3c 20 61 2e 6c 65 6e 67 74 68 && i < a.length 0003ac20: 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 ; i++) {\n 0003ac30: 72 20 3d 20 28 61 2e 77 6f 72 64 73 5b 69 5d 20 r = (a.words[i] 0003ac40: 7c 20 30 29 20 2b 20 63 61 72 72 79 3b 5c 6e 20 | 0) + carry;\n 0003ac50: 20 20 20 20 20 63 61 72 72 79 20 3d 20 72 20 3e carry = r > 0003ac60: 3e 20 32 36 3b 5c 6e 20 20 20 20 20 20 74 68 69 > 26;\n thi 0003ac70: 73 2e 77 6f 72 64 73 5b 69 5d 20 3d 20 72 20 26 s.words[i] = r & 0003ac80: 20 30 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 0x3ffffff;\n 0003ac90: 20 7d 5c 6e 5c 6e 20 20 20 20 2f 2f 20 43 6f 70 }\n\n // Cop 0003aca0: 79 20 72 65 73 74 20 6f 66 20 74 68 65 20 77 6f y rest of the wo 0003acb0: 72 64 73 5c 6e 20 20 20 20 69 66 20 28 63 61 72 rds\n if (car 0003acc0: 72 79 20 3d 3d 3d 20 30 20 26 26 20 69 20 3c 20 ry === 0 && i < 0003acd0: 61 2e 6c 65 6e 67 74 68 20 26 26 20 61 20 21 3d a.length && a != 0003ace0: 3d 20 74 68 69 73 29 20 7b 5c 6e 20 20 20 20 20 = this) {\n 0003acf0: 20 66 6f 72 20 28 3b 20 69 20 3c 20 61 2e 6c 65 for (; i < a.le 0003ad00: 6e 67 74 68 3b 20 69 2b 2b 29 20 7b 5c 6e 20 20 ngth; i++) {\n 0003ad10: 20 20 20 20 20 20 74 68 69 73 2e 77 6f 72 64 73 this.words 0003ad20: 5b 69 5d 20 3d 20 61 2e 77 6f 72 64 73 5b 69 5d [i] = a.words[i] 0003ad30: 3b 5c 6e 20 20 20 20 20 20 7d 5c 6e 20 20 20 20 ;\n }\n 0003ad40: 7d 5c 6e 5c 6e 20 20 20 20 74 68 69 73 2e 6c 65 }\n\n this.le 0003ad50: 6e 67 74 68 20 3d 20 4d 61 74 68 2e 6d 61 78 28 ngth = Math.max( 0003ad60: 74 68 69 73 2e 6c 65 6e 67 74 68 2c 20 69 29 3b this.length, i); 0003ad70: 5c 6e 5c 6e 20 20 20 20 69 66 20 28 61 20 21 3d \n\n if (a != 0003ad80: 3d 20 74 68 69 73 29 20 7b 5c 6e 20 20 20 20 20 = this) {\n 0003ad90: 20 74 68 69 73 2e 6e 65 67 61 74 69 76 65 20 3d this.negative = 0003ada0: 20 31 3b 5c 6e 20 20 20 20 7d 5c 6e 5c 6e 20 20 1;\n }\n\n 0003adb0: 20 20 72 65 74 75 72 6e 20 74 68 69 73 2e 5f 73 return this._s 0003adc0: 74 72 69 70 28 29 3b 5c 6e 20 20 7d 3b 5c 6e 5c trip();\n };\n\ 0003add0: 6e 20 20 2f 2f 20 53 75 62 74 72 61 63 74 20 60 n // Subtract ` 0003ade0: 6e 75 6d 60 20 66 72 6f 6d 20 60 74 68 69 73 60 num` from `this` 0003adf0: 5c 6e 20 20 42 4e 2e 70 72 6f 74 6f 74 79 70 65 \n BN.prototype 0003ae00: 2e 73 75 62 20 3d 20 66 75 6e 63 74 69 6f 6e 20 .sub = function 0003ae10: 73 75 62 20 28 6e 75 6d 29 20 7b 5c 6e 20 20 20 sub (num) {\n 0003ae20: 20 72 65 74 75 72 6e 20 74 68 69 73 2e 63 6c 6f return this.clo 0003ae30: 6e 65 28 29 2e 69 73 75 62 28 6e 75 6d 29 3b 5c ne().isub(num);\ 0003ae40: 6e 20 20 7d 3b 5c 6e 5c 6e 20 20 66 75 6e 63 74 n };\n\n funct 0003ae50: 69 6f 6e 20 73 6d 61 6c 6c 4d 75 6c 54 6f 20 28 ion smallMulTo ( 0003ae60: 73 65 6c 66 2c 20 6e 75 6d 2c 20 6f 75 74 29 20 self, num, out) 0003ae70: 7b 5c 6e 20 20 20 20 6f 75 74 2e 6e 65 67 61 74 {\n out.negat 0003ae80: 69 76 65 20 3d 20 6e 75 6d 2e 6e 65 67 61 74 69 ive = num.negati 0003ae90: 76 65 20 5e 20 73 65 6c 66 2e 6e 65 67 61 74 69 ve ^ self.negati 0003aea0: 76 65 3b 5c 6e 20 20 20 20 76 61 72 20 6c 65 6e ve;\n var len 0003aeb0: 20 3d 20 28 73 65 6c 66 2e 6c 65 6e 67 74 68 20 = (self.length 0003aec0: 2b 20 6e 75 6d 2e 6c 65 6e 67 74 68 29 20 7c 20 + num.length) | 0003aed0: 30 3b 5c 6e 20 20 20 20 6f 75 74 2e 6c 65 6e 67 0;\n out.leng 0003aee0: 74 68 20 3d 20 6c 65 6e 3b 5c 6e 20 20 20 20 6c th = len;\n l 0003aef0: 65 6e 20 3d 20 28 6c 65 6e 20 2d 20 31 29 20 7c en = (len - 1) | 0003af00: 20 30 3b 5c 6e 5c 6e 20 20 20 20 2f 2f 20 50 65 0;\n\n // Pe 0003af10: 65 6c 20 6f 6e 65 20 69 74 65 72 61 74 69 6f 6e el one iteration 0003af20: 20 28 63 6f 6d 70 69 6c 65 72 20 63 61 6e 27 74 (compiler can't 0003af30: 20 64 6f 20 69 74 2c 20 62 65 63 61 75 73 65 20 do it, because 0003af40: 6f 66 20 63 6f 64 65 20 63 6f 6d 70 6c 65 78 69 of code complexi 0003af50: 74 79 29 5c 6e 20 20 20 20 76 61 72 20 61 20 3d ty)\n var a = 0003af60: 20 73 65 6c 66 2e 77 6f 72 64 73 5b 30 5d 20 7c self.words[0] | 0003af70: 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 62 20 3d 0;\n var b = 0003af80: 20 6e 75 6d 2e 77 6f 72 64 73 5b 30 5d 20 7c 20 num.words[0] | 0003af90: 30 3b 5c 6e 20 20 20 20 76 61 72 20 72 20 3d 20 0;\n var r = 0003afa0: 61 20 2a 20 62 3b 5c 6e 5c 6e 20 20 20 20 76 61 a * b;\n\n va 0003afb0: 72 20 6c 6f 20 3d 20 72 20 26 20 30 78 33 66 66 r lo = r & 0x3ff 0003afc0: 66 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 63 ffff;\n var c 0003afd0: 61 72 72 79 20 3d 20 28 72 20 2f 20 30 78 34 30 arry = (r / 0x40 0003afe0: 30 30 30 30 30 29 20 7c 20 30 3b 5c 6e 20 20 20 00000) | 0;\n 0003aff0: 20 6f 75 74 2e 77 6f 72 64 73 5b 30 5d 20 3d 20 out.words[0] = 0003b000: 6c 6f 3b 5c 6e 5c 6e 20 20 20 20 66 6f 72 20 28 lo;\n\n for ( 0003b010: 76 61 72 20 6b 20 3d 20 31 3b 20 6b 20 3c 20 6c var k = 1; k < l 0003b020: 65 6e 3b 20 6b 2b 2b 29 20 7b 5c 6e 20 20 20 20 en; k++) {\n 0003b030: 20 20 2f 2f 20 53 75 6d 20 61 6c 6c 20 77 6f 72 // Sum all wor 0003b040: 64 73 20 77 69 74 68 20 74 68 65 20 73 61 6d 65 ds with the same 0003b050: 20 60 69 20 2b 20 6a 20 3d 20 6b 60 20 61 6e 64 `i + j = k` and 0003b060: 20 61 63 63 75 6d 75 6c 61 74 65 20 60 6e 63 61 accumulate `nca 0003b070: 72 72 79 60 2c 5c 6e 20 20 20 20 20 20 2f 2f 20 rry`,\n // 0003b080: 6e 6f 74 65 20 74 68 61 74 20 6e 63 61 72 72 79 note that ncarry 0003b090: 20 63 6f 75 6c 64 20 62 65 20 3e 3d 20 30 78 33 could be >= 0x3 0003b0a0: 66 66 66 66 66 66 5c 6e 20 20 20 20 20 20 76 61 ffffff\n va 0003b0b0: 72 20 6e 63 61 72 72 79 20 3d 20 63 61 72 72 79 r ncarry = carry 0003b0c0: 20 3e 3e 3e 20 32 36 3b 5c 6e 20 20 20 20 20 20 >>> 26;\n 0003b0d0: 76 61 72 20 72 77 6f 72 64 20 3d 20 63 61 72 72 var rword = carr 0003b0e0: 79 20 26 20 30 78 33 66 66 66 66 66 66 3b 5c 6e y & 0x3ffffff;\n 0003b0f0: 20 20 20 20 20 20 76 61 72 20 6d 61 78 4a 20 3d var maxJ = 0003b100: 20 4d 61 74 68 2e 6d 69 6e 28 6b 2c 20 6e 75 6d Math.min(k, num 0003b110: 2e 6c 65 6e 67 74 68 20 2d 20 31 29 3b 5c 6e 20 .length - 1);\n 0003b120: 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 6a 20 for (var j 0003b130: 3d 20 4d 61 74 68 2e 6d 61 78 28 30 2c 20 6b 20 = Math.max(0, k 0003b140: 2d 20 73 65 6c 66 2e 6c 65 6e 67 74 68 20 2b 20 - self.length + 0003b150: 31 29 3b 20 6a 20 3c 3d 20 6d 61 78 4a 3b 20 6a 1); j <= maxJ; j 0003b160: 2b 2b 29 20 7b 5c 6e 20 20 20 20 20 20 20 20 76 ++) {\n v 0003b170: 61 72 20 69 20 3d 20 28 6b 20 2d 20 6a 29 20 7c ar i = (k - j) | 0003b180: 20 30 3b 5c 6e 20 20 20 20 20 20 20 20 61 20 3d 0;\n a = 0003b190: 20 73 65 6c 66 2e 77 6f 72 64 73 5b 69 5d 20 7c self.words[i] | 0003b1a0: 20 30 3b 5c 6e 20 20 20 20 20 20 20 20 62 20 3d 0;\n b = 0003b1b0: 20 6e 75 6d 2e 77 6f 72 64 73 5b 6a 5d 20 7c 20 num.words[j] | 0003b1c0: 30 3b 5c 6e 20 20 20 20 20 20 20 20 72 20 3d 20 0;\n r = 0003b1d0: 61 20 2a 20 62 20 2b 20 72 77 6f 72 64 3b 5c 6e a * b + rword;\n 0003b1e0: 20 20 20 20 20 20 20 20 6e 63 61 72 72 79 20 2b ncarry + 0003b1f0: 3d 20 28 72 20 2f 20 30 78 34 30 30 30 30 30 30 = (r / 0x4000000 0003b200: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 20 20 20 20 ) | 0;\n 0003b210: 72 77 6f 72 64 20 3d 20 72 20 26 20 30 78 33 66 rword = r & 0x3f 0003b220: 66 66 66 66 66 3b 5c 6e 20 20 20 20 20 20 7d 5c fffff;\n }\ 0003b230: 6e 20 20 20 20 20 20 6f 75 74 2e 77 6f 72 64 73 n out.words 0003b240: 5b 6b 5d 20 3d 20 72 77 6f 72 64 20 7c 20 30 3b [k] = rword | 0; 0003b250: 5c 6e 20 20 20 20 20 20 63 61 72 72 79 20 3d 20 \n carry = 0003b260: 6e 63 61 72 72 79 20 7c 20 30 3b 5c 6e 20 20 20 ncarry | 0;\n 0003b270: 20 7d 5c 6e 20 20 20 20 69 66 20 28 63 61 72 72 }\n if (carr 0003b280: 79 20 21 3d 3d 20 30 29 20 7b 5c 6e 20 20 20 20 y !== 0) {\n 0003b290: 20 20 6f 75 74 2e 77 6f 72 64 73 5b 6b 5d 20 3d out.words[k] = 0003b2a0: 20 63 61 72 72 79 20 7c 20 30 3b 5c 6e 20 20 20 carry | 0;\n 0003b2b0: 20 7d 20 65 6c 73 65 20 7b 5c 6e 20 20 20 20 20 } else {\n 0003b2c0: 20 6f 75 74 2e 6c 65 6e 67 74 68 2d 2d 3b 5c 6e out.length--;\n 0003b2d0: 20 20 20 20 7d 5c 6e 5c 6e 20 20 20 20 72 65 74 }\n\n ret 0003b2e0: 75 72 6e 20 6f 75 74 2e 5f 73 74 72 69 70 28 29 urn out._strip() 0003b2f0: 3b 5c 6e 20 20 7d 5c 6e 5c 6e 20 20 2f 2f 20 54 ;\n }\n\n // T 0003b300: 4f 44 4f 28 69 6e 64 75 74 6e 79 29 3a 20 69 74 ODO(indutny): it 0003b310: 20 6d 61 79 20 62 65 20 72 65 61 73 6f 6e 61 62 may be reasonab 0003b320: 6c 65 20 74 6f 20 6f 6d 69 74 20 69 74 20 66 6f le to omit it fo 0003b330: 72 20 75 73 65 72 73 20 77 68 6f 20 64 6f 6e 27 r users who don' 0003b340: 74 20 6e 65 65 64 5c 6e 20 20 2f 2f 20 74 6f 20 t need\n // to 0003b350: 77 6f 72 6b 20 77 69 74 68 20 32 35 36 2d 62 69 work with 256-bi 0003b360: 74 20 6e 75 6d 62 65 72 73 2c 20 6f 74 68 65 72 t numbers, other 0003b370: 77 69 73 65 20 69 74 20 67 69 76 65 73 20 32 30 wise it gives 20 0003b380: 25 20 69 6d 70 72 6f 76 65 6d 65 6e 74 20 66 6f % improvement fo 0003b390: 72 20 32 35 36 2d 62 69 74 5c 6e 20 20 2f 2f 20 r 256-bit\n // 0003b3a0: 6d 75 6c 74 69 70 6c 69 63 61 74 69 6f 6e 20 28 multiplication ( 0003b3b0: 6c 69 6b 65 20 65 6c 6c 69 70 74 69 63 20 73 65 like elliptic se 0003b3c0: 63 70 32 35 36 6b 31 29 2e 5c 6e 20 20 76 61 72 cp256k1).\n var 0003b3d0: 20 63 6f 6d 62 31 30 4d 75 6c 54 6f 20 3d 20 66 comb10MulTo = f 0003b3e0: 75 6e 63 74 69 6f 6e 20 63 6f 6d 62 31 30 4d 75 unction comb10Mu 0003b3f0: 6c 54 6f 20 28 73 65 6c 66 2c 20 6e 75 6d 2c 20 lTo (self, num, 0003b400: 6f 75 74 29 20 7b 5c 6e 20 20 20 20 76 61 72 20 out) {\n var 0003b410: 61 20 3d 20 73 65 6c 66 2e 77 6f 72 64 73 3b 5c a = self.words;\ 0003b420: 6e 20 20 20 20 76 61 72 20 62 20 3d 20 6e 75 6d n var b = num 0003b430: 2e 77 6f 72 64 73 3b 5c 6e 20 20 20 20 76 61 72 .words;\n var 0003b440: 20 6f 20 3d 20 6f 75 74 2e 77 6f 72 64 73 3b 5c o = out.words;\ 0003b450: 6e 20 20 20 20 76 61 72 20 63 20 3d 20 30 3b 5c n var c = 0;\ 0003b460: 6e 20 20 20 20 76 61 72 20 6c 6f 3b 5c 6e 20 20 n var lo;\n 0003b470: 20 20 76 61 72 20 6d 69 64 3b 5c 6e 20 20 20 20 var mid;\n 0003b480: 76 61 72 20 68 69 3b 5c 6e 20 20 20 20 76 61 72 var hi;\n var 0003b490: 20 61 30 20 3d 20 61 5b 30 5d 20 7c 20 30 3b 5c a0 = a[0] | 0;\ 0003b4a0: 6e 20 20 20 20 76 61 72 20 61 6c 30 20 3d 20 61 n var al0 = a 0003b4b0: 30 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 0 & 0x1fff;\n 0003b4c0: 20 76 61 72 20 61 68 30 20 3d 20 61 30 20 3e 3e var ah0 = a0 >> 0003b4d0: 3e 20 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 61 > 13;\n var a 0003b4e0: 31 20 3d 20 61 5b 31 5d 20 7c 20 30 3b 5c 6e 20 1 = a[1] | 0;\n 0003b4f0: 20 20 20 76 61 72 20 61 6c 31 20 3d 20 61 31 20 var al1 = a1 0003b500: 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 & 0x1fff;\n v 0003b510: 61 72 20 61 68 31 20 3d 20 61 31 20 3e 3e 3e 20 ar ah1 = a1 >>> 0003b520: 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 61 32 20 13;\n var a2 0003b530: 3d 20 61 5b 32 5d 20 7c 20 30 3b 5c 6e 20 20 20 = a[2] | 0;\n 0003b540: 20 76 61 72 20 61 6c 32 20 3d 20 61 32 20 26 20 var al2 = a2 & 0003b550: 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 0x1fff;\n var 0003b560: 20 61 68 32 20 3d 20 61 32 20 3e 3e 3e 20 31 33 ah2 = a2 >>> 13 0003b570: 3b 5c 6e 20 20 20 20 76 61 72 20 61 33 20 3d 20 ;\n var a3 = 0003b580: 61 5b 33 5d 20 7c 20 30 3b 5c 6e 20 20 20 20 76 a[3] | 0;\n v 0003b590: 61 72 20 61 6c 33 20 3d 20 61 33 20 26 20 30 78 ar al3 = a3 & 0x 0003b5a0: 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 61 1fff;\n var a 0003b5b0: 68 33 20 3d 20 61 33 20 3e 3e 3e 20 31 33 3b 5c h3 = a3 >>> 13;\ 0003b5c0: 6e 20 20 20 20 76 61 72 20 61 34 20 3d 20 61 5b n var a4 = a[ 0003b5d0: 34 5d 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 4] | 0;\n var 0003b5e0: 20 61 6c 34 20 3d 20 61 34 20 26 20 30 78 31 66 al4 = a4 & 0x1f 0003b5f0: 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 61 68 34 ff;\n var ah4 0003b600: 20 3d 20 61 34 20 3e 3e 3e 20 31 33 3b 5c 6e 20 = a4 >>> 13;\n 0003b610: 20 20 20 76 61 72 20 61 35 20 3d 20 61 5b 35 5d var a5 = a[5] 0003b620: 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 61 | 0;\n var a 0003b630: 6c 35 20 3d 20 61 35 20 26 20 30 78 31 66 66 66 l5 = a5 & 0x1fff 0003b640: 3b 5c 6e 20 20 20 20 76 61 72 20 61 68 35 20 3d ;\n var ah5 = 0003b650: 20 61 35 20 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 a5 >>> 13;\n 0003b660: 20 76 61 72 20 61 36 20 3d 20 61 5b 36 5d 20 7c var a6 = a[6] | 0003b670: 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 61 6c 36 0;\n var al6 0003b680: 20 3d 20 61 36 20 26 20 30 78 31 66 66 66 3b 5c = a6 & 0x1fff;\ 0003b690: 6e 20 20 20 20 76 61 72 20 61 68 36 20 3d 20 61 n var ah6 = a 0003b6a0: 36 20 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 20 76 6 >>> 13;\n v 0003b6b0: 61 72 20 61 37 20 3d 20 61 5b 37 5d 20 7c 20 30 ar a7 = a[7] | 0 0003b6c0: 3b 5c 6e 20 20 20 20 76 61 72 20 61 6c 37 20 3d ;\n var al7 = 0003b6d0: 20 61 37 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 a7 & 0x1fff;\n 0003b6e0: 20 20 20 76 61 72 20 61 68 37 20 3d 20 61 37 20 var ah7 = a7 0003b6f0: 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 20 76 61 72 >>> 13;\n var 0003b700: 20 61 38 20 3d 20 61 5b 38 5d 20 7c 20 30 3b 5c a8 = a[8] | 0;\ 0003b710: 6e 20 20 20 20 76 61 72 20 61 6c 38 20 3d 20 61 n var al8 = a 0003b720: 38 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 8 & 0x1fff;\n 0003b730: 20 76 61 72 20 61 68 38 20 3d 20 61 38 20 3e 3e var ah8 = a8 >> 0003b740: 3e 20 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 61 > 13;\n var a 0003b750: 39 20 3d 20 61 5b 39 5d 20 7c 20 30 3b 5c 6e 20 9 = a[9] | 0;\n 0003b760: 20 20 20 76 61 72 20 61 6c 39 20 3d 20 61 39 20 var al9 = a9 0003b770: 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 & 0x1fff;\n v 0003b780: 61 72 20 61 68 39 20 3d 20 61 39 20 3e 3e 3e 20 ar ah9 = a9 >>> 0003b790: 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 62 30 20 13;\n var b0 0003b7a0: 3d 20 62 5b 30 5d 20 7c 20 30 3b 5c 6e 20 20 20 = b[0] | 0;\n 0003b7b0: 20 76 61 72 20 62 6c 30 20 3d 20 62 30 20 26 20 var bl0 = b0 & 0003b7c0: 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 0x1fff;\n var 0003b7d0: 20 62 68 30 20 3d 20 62 30 20 3e 3e 3e 20 31 33 bh0 = b0 >>> 13 0003b7e0: 3b 5c 6e 20 20 20 20 76 61 72 20 62 31 20 3d 20 ;\n var b1 = 0003b7f0: 62 5b 31 5d 20 7c 20 30 3b 5c 6e 20 20 20 20 76 b[1] | 0;\n v 0003b800: 61 72 20 62 6c 31 20 3d 20 62 31 20 26 20 30 78 ar bl1 = b1 & 0x 0003b810: 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 62 1fff;\n var b 0003b820: 68 31 20 3d 20 62 31 20 3e 3e 3e 20 31 33 3b 5c h1 = b1 >>> 13;\ 0003b830: 6e 20 20 20 20 76 61 72 20 62 32 20 3d 20 62 5b n var b2 = b[ 0003b840: 32 5d 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 2] | 0;\n var 0003b850: 20 62 6c 32 20 3d 20 62 32 20 26 20 30 78 31 66 bl2 = b2 & 0x1f 0003b860: 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 62 68 32 ff;\n var bh2 0003b870: 20 3d 20 62 32 20 3e 3e 3e 20 31 33 3b 5c 6e 20 = b2 >>> 13;\n 0003b880: 20 20 20 76 61 72 20 62 33 20 3d 20 62 5b 33 5d var b3 = b[3] 0003b890: 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 62 | 0;\n var b 0003b8a0: 6c 33 20 3d 20 62 33 20 26 20 30 78 31 66 66 66 l3 = b3 & 0x1fff 0003b8b0: 3b 5c 6e 20 20 20 20 76 61 72 20 62 68 33 20 3d ;\n var bh3 = 0003b8c0: 20 62 33 20 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 b3 >>> 13;\n 0003b8d0: 20 76 61 72 20 62 34 20 3d 20 62 5b 34 5d 20 7c var b4 = b[4] | 0003b8e0: 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 62 6c 34 0;\n var bl4 0003b8f0: 20 3d 20 62 34 20 26 20 30 78 31 66 66 66 3b 5c = b4 & 0x1fff;\ 0003b900: 6e 20 20 20 20 76 61 72 20 62 68 34 20 3d 20 62 n var bh4 = b 0003b910: 34 20 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 20 76 4 >>> 13;\n v 0003b920: 61 72 20 62 35 20 3d 20 62 5b 35 5d 20 7c 20 30 ar b5 = b[5] | 0 0003b930: 3b 5c 6e 20 20 20 20 76 61 72 20 62 6c 35 20 3d ;\n var bl5 = 0003b940: 20 62 35 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 b5 & 0x1fff;\n 0003b950: 20 20 20 76 61 72 20 62 68 35 20 3d 20 62 35 20 var bh5 = b5 0003b960: 3e 3e 3e 20 31 33 3b 5c 6e 20 20 20 20 76 61 72 >>> 13;\n var 0003b970: 20 62 36 20 3d 20 62 5b 36 5d 20 7c 20 30 3b 5c b6 = b[6] | 0;\ 0003b980: 6e 20 20 20 20 76 61 72 20 62 6c 36 20 3d 20 62 n var bl6 = b 0003b990: 36 20 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 6 & 0x1fff;\n 0003b9a0: 20 76 61 72 20 62 68 36 20 3d 20 62 36 20 3e 3e var bh6 = b6 >> 0003b9b0: 3e 20 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 62 > 13;\n var b 0003b9c0: 37 20 3d 20 62 5b 37 5d 20 7c 20 30 3b 5c 6e 20 7 = b[7] | 0;\n 0003b9d0: 20 20 20 76 61 72 20 62 6c 37 20 3d 20 62 37 20 var bl7 = b7 0003b9e0: 26 20 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 & 0x1fff;\n v 0003b9f0: 61 72 20 62 68 37 20 3d 20 62 37 20 3e 3e 3e 20 ar bh7 = b7 >>> 0003ba00: 31 33 3b 5c 6e 20 20 20 20 76 61 72 20 62 38 20 13;\n var b8 0003ba10: 3d 20 62 5b 38 5d 20 7c 20 30 3b 5c 6e 20 20 20 = b[8] | 0;\n 0003ba20: 20 76 61 72 20 62 6c 38 20 3d 20 62 38 20 26 20 var bl8 = b8 & 0003ba30: 30 78 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 0x1fff;\n var 0003ba40: 20 62 68 38 20 3d 20 62 38 20 3e 3e 3e 20 31 33 bh8 = b8 >>> 13 0003ba50: 3b 5c 6e 20 20 20 20 76 61 72 20 62 39 20 3d 20 ;\n var b9 = 0003ba60: 62 5b 39 5d 20 7c 20 30 3b 5c 6e 20 20 20 20 76 b[9] | 0;\n v 0003ba70: 61 72 20 62 6c 39 20 3d 20 62 39 20 26 20 30 78 ar bl9 = b9 & 0x 0003ba80: 31 66 66 66 3b 5c 6e 20 20 20 20 76 61 72 20 62 1fff;\n var b 0003ba90: 68 39 20 3d 20 62 39 20 3e 3e 3e 20 31 33 3b 5c h9 = b9 >>> 13;\ 0003baa0: 6e 5c 6e 20 20 20 20 6f 75 74 2e 6e 65 67 61 74 n\n out.negat 0003bab0: 69 76 65 20 3d 20 73 65 6c 66 2e 6e 65 67 61 74 ive = self.negat 0003bac0: 69 76 65 20 5e 20 6e 75 6d 2e 6e 65 67 61 74 69 ive ^ num.negati 0003bad0: 76 65 3b 5c 6e 20 20 20 20 6f 75 74 2e 6c 65 6e ve;\n out.len 0003bae0: 67 74 68 20 3d 20 31 39 3b 5c 6e 20 20 20 20 2f gth = 19;\n / 0003baf0: 2a 20 6b 20 3d 20 30 20 2a 2f 5c 6e 20 20 20 20 * k = 0 */\n 0003bb00: 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo = Math.imul(a 0003bb10: 6c 30 2c 20 62 6c 30 29 3b 5c 6e 20 20 20 20 6d l0, bl0);\n m 0003bb20: 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id = Math.imul(a 0003bb30: 6c 30 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 6d l0, bh0);\n m 0003bb40: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003bb50: 2e 69 6d 75 6c 28 61 68 30 2c 20 62 6c 30 29 29 .imul(ah0, bl0)) 0003bb60: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003bb70: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 2c 20 62 Math.imul(ah0, b 0003bb80: 68 30 29 3b 5c 6e 20 20 20 20 76 61 72 20 77 30 h0);\n var w0 0003bb90: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003bba0: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003bbb0: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003bbc0: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003bbd0: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003bbe0: 20 7c 20 30 29 20 2b 20 28 77 30 20 3e 3e 3e 20 | 0) + (w0 >>> 0003bbf0: 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 77 26)) | 0;\n w 0003bc00: 30 20 26 3d 20 30 78 33 66 66 66 66 66 66 3b 5c 0 &= 0x3ffffff;\ 0003bc10: 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 31 20 2a 2f n /* k = 1 */ 0003bc20: 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e \n lo = Math. 0003bc30: 69 6d 75 6c 28 61 6c 31 2c 20 62 6c 30 29 3b 5c imul(al1, bl0);\ 0003bc40: 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e n mid = Math. 0003bc50: 69 6d 75 6c 28 61 6c 31 2c 20 62 68 30 29 3b 5c imul(al1, bh0);\ 0003bc60: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003bc70: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c + Math.imul(ah1, 0003bc80: 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl0)) | 0;\n 0003bc90: 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 hi = Math.imul( 0003bca0: 61 68 31 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 ah1, bh0);\n 0003bcb0: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003bcc0: 69 6d 75 6c 28 61 6c 30 2c 20 62 6c 31 29 29 20 imul(al0, bl1)) 0003bcd0: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003bce0: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003bcf0: 28 61 6c 30 2c 20 62 68 31 29 29 20 7c 20 30 3b (al0, bh1)) | 0; 0003bd00: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003bd10: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 + Math.imul(ah0 0003bd20: 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl1)) | 0;\n 0003bd30: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003bd40: 68 2e 69 6d 75 6c 28 61 68 30 2c 20 62 68 31 29 h.imul(ah0, bh1) 0003bd50: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 ) | 0;\n var 0003bd60: 77 31 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 w1 = (((c + lo) 0003bd70: 7c 20 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 | 0) + ((mid & 0 0003bd80: 78 31 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c x1fff) << 13)) | 0003bd90: 20 30 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 0;\n c = ((( 0003bda0: 68 69 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 hi + (mid >>> 13 0003bdb0: 29 29 20 7c 20 30 29 20 2b 20 28 77 31 20 3e 3e )) | 0) + (w1 >> 0003bdc0: 3e 20 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 > 26)) | 0;\n 0003bdd0: 20 77 31 20 26 3d 20 30 78 33 66 66 66 66 66 66 w1 &= 0x3ffffff 0003bde0: 3b 5c 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 32 20 ;\n /* k = 2 0003bdf0: 2a 2f 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 */\n lo = Mat 0003be00: 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 6c 30 29 h.imul(al2, bl0) 0003be10: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 ;\n mid = Mat 0003be20: 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 30 29 h.imul(al2, bh0) 0003be30: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003be40: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 d + Math.imul(ah 0003be50: 32 2c 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 2, bl0)) | 0;\n 0003be60: 20 20 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 hi = Math.imu 0003be70: 6c 28 61 68 32 2c 20 62 68 30 29 3b 5c 6e 20 20 l(ah2, bh0);\n 0003be80: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003be90: 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c 31 29 h.imul(al1, bl1) 0003bea0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003beb0: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003bec0: 75 6c 28 61 6c 31 2c 20 62 68 31 29 29 20 7c 20 ul(al1, bh1)) | 0003bed0: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003bee0: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003bef0: 68 31 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e h1, bl1)) | 0;\n 0003bf00: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003bf10: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 68 ath.imul(ah1, bh 0003bf20: 31 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 1)) | 0;\n lo 0003bf30: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003bf40: 75 6c 28 61 6c 30 2c 20 62 6c 32 29 29 20 7c 20 ul(al0, bl2)) | 0003bf50: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003bf60: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003bf70: 6c 30 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e l0, bh2)) | 0;\n 0003bf80: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003bf90: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 2c 20 Math.imul(ah0, 0003bfa0: 62 6c 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl2)) | 0;\n 0003bfb0: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003bfc0: 69 6d 75 6c 28 61 68 30 2c 20 62 68 32 29 29 20 imul(ah0, bh2)) 0003bfd0: 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 77 32 | 0;\n var w2 0003bfe0: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003bff0: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003c000: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003c010: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003c020: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003c030: 20 7c 20 30 29 20 2b 20 28 77 32 20 3e 3e 3e 20 | 0) + (w2 >>> 0003c040: 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 77 26)) | 0;\n w 0003c050: 32 20 26 3d 20 30 78 33 66 66 66 66 66 66 3b 5c 2 &= 0x3ffffff;\ 0003c060: 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 33 20 2a 2f n /* k = 3 */ 0003c070: 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e \n lo = Math. 0003c080: 69 6d 75 6c 28 61 6c 33 2c 20 62 6c 30 29 3b 5c imul(al3, bl0);\ 0003c090: 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e n mid = Math. 0003c0a0: 69 6d 75 6c 28 61 6c 33 2c 20 62 68 30 29 3b 5c imul(al3, bh0);\ 0003c0b0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003c0c0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 33 2c + Math.imul(ah3, 0003c0d0: 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl0)) | 0;\n 0003c0e0: 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 hi = Math.imul( 0003c0f0: 61 68 33 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 ah3, bh0);\n 0003c100: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003c110: 69 6d 75 6c 28 61 6c 32 2c 20 62 6c 31 29 29 20 imul(al2, bl1)) 0003c120: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003c130: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003c140: 28 61 6c 32 2c 20 62 68 31 29 29 20 7c 20 30 3b (al2, bh1)) | 0; 0003c150: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003c160: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 + Math.imul(ah2 0003c170: 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl1)) | 0;\n 0003c180: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003c190: 68 2e 69 6d 75 6c 28 61 68 32 2c 20 62 68 31 29 h.imul(ah2, bh1) 0003c1a0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003c1b0: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003c1c0: 28 61 6c 31 2c 20 62 6c 32 29 29 20 7c 20 30 3b (al1, bl2)) | 0; 0003c1d0: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003c1e0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 31 + Math.imul(al1 0003c1f0: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003c200: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003c210: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 6c ath.imul(ah1, bl 0003c220: 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 2)) | 0;\n hi 0003c230: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003c240: 75 6c 28 61 68 31 2c 20 62 68 32 29 29 20 7c 20 ul(ah1, bh2)) | 0003c250: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003c260: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 30 + Math.imul(al0 0003c270: 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl3)) | 0;\n 0003c280: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003c290: 61 74 68 2e 69 6d 75 6c 28 61 6c 30 2c 20 62 68 ath.imul(al0, bh 0003c2a0: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 3)) | 0;\n mi 0003c2b0: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003c2c0: 69 6d 75 6c 28 61 68 30 2c 20 62 6c 33 29 29 20 imul(ah0, bl3)) 0003c2d0: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003c2e0: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003c2f0: 68 30 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c 6e h0, bh3)) | 0;\n 0003c300: 20 20 20 20 76 61 72 20 77 33 20 3d 20 28 28 28 var w3 = ((( 0003c310: 63 20 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 c + lo) | 0) + ( 0003c320: 28 6d 69 64 20 26 20 30 78 31 66 66 66 29 20 3c (mid & 0x1fff) < 0003c330: 3c 20 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 < 13)) | 0;\n 0003c340: 20 63 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 c = (((hi + (mi 0003c350: 64 20 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 d >>> 13)) | 0) 0003c360: 2b 20 28 77 33 20 3e 3e 3e 20 32 36 29 29 20 7c + (w3 >>> 26)) | 0003c370: 20 30 3b 5c 6e 20 20 20 20 77 33 20 26 3d 20 30 0;\n w3 &= 0 0003c380: 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 20 2f x3ffffff;\n / 0003c390: 2a 20 6b 20 3d 20 34 20 2a 2f 5c 6e 20 20 20 20 * k = 4 */\n 0003c3a0: 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo = Math.imul(a 0003c3b0: 6c 34 2c 20 62 6c 30 29 3b 5c 6e 20 20 20 20 6d l4, bl0);\n m 0003c3c0: 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id = Math.imul(a 0003c3d0: 6c 34 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 6d l4, bh0);\n m 0003c3e0: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003c3f0: 2e 69 6d 75 6c 28 61 68 34 2c 20 62 6c 30 29 29 .imul(ah4, bl0)) 0003c400: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003c410: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 Math.imul(ah4, b 0003c420: 68 30 29 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 h0);\n lo = ( 0003c430: 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo + Math.imul(a 0003c440: 6c 33 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e l3, bl1)) | 0;\n 0003c450: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003c460: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 Math.imul(al3, 0003c470: 62 68 31 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh1)) | 0;\n 0003c480: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003c490: 68 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c 31 29 h.imul(ah3, bl1) 0003c4a0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d ) | 0;\n hi = 0003c4b0: 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (hi + Math.imul 0003c4c0: 28 61 68 33 2c 20 62 68 31 29 29 20 7c 20 30 3b (ah3, bh1)) | 0; 0003c4d0: 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b \n lo = (lo + 0003c4e0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 Math.imul(al2, 0003c4f0: 62 6c 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl2)) | 0;\n 0003c500: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003c510: 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 32 29 h.imul(al2, bh2) 0003c520: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003c530: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003c540: 75 6c 28 61 68 32 2c 20 62 6c 32 29 29 20 7c 20 ul(ah2, bl2)) | 0003c550: 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 0;\n hi = (hi 0003c560: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 + Math.imul(ah2 0003c570: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003c580: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003c590: 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c 33 29 h.imul(al1, bl3) 0003c5a0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003c5b0: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003c5c0: 75 6c 28 61 6c 31 2c 20 62 68 33 29 29 20 7c 20 ul(al1, bh3)) | 0003c5d0: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003c5e0: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003c5f0: 68 31 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e h1, bl3)) | 0;\n 0003c600: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003c610: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 68 ath.imul(ah1, bh 0003c620: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 3)) | 0;\n lo 0003c630: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003c640: 75 6c 28 61 6c 30 2c 20 62 6c 34 29 29 20 7c 20 ul(al0, bl4)) | 0003c650: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003c660: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003c670: 6c 30 2c 20 62 68 34 29 29 20 7c 20 30 3b 5c 6e l0, bh4)) | 0;\n 0003c680: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003c690: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 2c 20 Math.imul(ah0, 0003c6a0: 62 6c 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl4)) | 0;\n 0003c6b0: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003c6c0: 69 6d 75 6c 28 61 68 30 2c 20 62 68 34 29 29 20 imul(ah0, bh4)) 0003c6d0: 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 77 34 | 0;\n var w4 0003c6e0: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003c6f0: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003c700: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003c710: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003c720: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003c730: 20 7c 20 30 29 20 2b 20 28 77 34 20 3e 3e 3e 20 | 0) + (w4 >>> 0003c740: 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 77 26)) | 0;\n w 0003c750: 34 20 26 3d 20 30 78 33 66 66 66 66 66 66 3b 5c 4 &= 0x3ffffff;\ 0003c760: 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 35 20 2a 2f n /* k = 5 */ 0003c770: 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e \n lo = Math. 0003c780: 69 6d 75 6c 28 61 6c 35 2c 20 62 6c 30 29 3b 5c imul(al5, bl0);\ 0003c790: 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e n mid = Math. 0003c7a0: 69 6d 75 6c 28 61 6c 35 2c 20 62 68 30 29 3b 5c imul(al5, bh0);\ 0003c7b0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003c7c0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c + Math.imul(ah5, 0003c7d0: 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl0)) | 0;\n 0003c7e0: 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 hi = Math.imul( 0003c7f0: 61 68 35 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 ah5, bh0);\n 0003c800: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003c810: 69 6d 75 6c 28 61 6c 34 2c 20 62 6c 31 29 29 20 imul(al4, bl1)) 0003c820: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003c830: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003c840: 28 61 6c 34 2c 20 62 68 31 29 29 20 7c 20 30 3b (al4, bh1)) | 0; 0003c850: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003c860: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 + Math.imul(ah4 0003c870: 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl1)) | 0;\n 0003c880: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003c890: 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 68 31 29 h.imul(ah4, bh1) 0003c8a0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003c8b0: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003c8c0: 28 61 6c 33 2c 20 62 6c 32 29 29 20 7c 20 30 3b (al3, bl2)) | 0; 0003c8d0: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003c8e0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 + Math.imul(al3 0003c8f0: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003c900: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003c910: 61 74 68 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c ath.imul(ah3, bl 0003c920: 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 2)) | 0;\n hi 0003c930: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003c940: 75 6c 28 61 68 33 2c 20 62 68 32 29 29 20 7c 20 ul(ah3, bh2)) | 0003c950: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003c960: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 + Math.imul(al2 0003c970: 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl3)) | 0;\n 0003c980: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003c990: 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 ath.imul(al2, bh 0003c9a0: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 3)) | 0;\n mi 0003c9b0: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003c9c0: 69 6d 75 6c 28 61 68 32 2c 20 62 6c 33 29 29 20 imul(ah2, bl3)) 0003c9d0: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003c9e0: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003c9f0: 68 32 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c 6e h2, bh3)) | 0;\n 0003ca00: 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d lo = (lo + M 0003ca10: 61 74 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c ath.imul(al1, bl 0003ca20: 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 4)) | 0;\n mi 0003ca30: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003ca40: 69 6d 75 6c 28 61 6c 31 2c 20 62 68 34 29 29 20 imul(al1, bh4)) 0003ca50: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003ca60: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003ca70: 28 61 68 31 2c 20 62 6c 34 29 29 20 7c 20 30 3b (ah1, bl4)) | 0; 0003ca80: 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b \n hi = (hi + 0003ca90: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 Math.imul(ah1, 0003caa0: 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh4)) | 0;\n 0003cab0: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003cac0: 69 6d 75 6c 28 61 6c 30 2c 20 62 6c 35 29 29 20 imul(al0, bl5)) 0003cad0: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003cae0: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003caf0: 28 61 6c 30 2c 20 62 68 35 29 29 20 7c 20 30 3b (al0, bh5)) | 0; 0003cb00: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003cb10: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 + Math.imul(ah0 0003cb20: 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl5)) | 0;\n 0003cb30: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003cb40: 68 2e 69 6d 75 6c 28 61 68 30 2c 20 62 68 35 29 h.imul(ah0, bh5) 0003cb50: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 ) | 0;\n var 0003cb60: 77 35 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 w5 = (((c + lo) 0003cb70: 7c 20 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 | 0) + ((mid & 0 0003cb80: 78 31 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c x1fff) << 13)) | 0003cb90: 20 30 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 0;\n c = ((( 0003cba0: 68 69 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 hi + (mid >>> 13 0003cbb0: 29 29 20 7c 20 30 29 20 2b 20 28 77 35 20 3e 3e )) | 0) + (w5 >> 0003cbc0: 3e 20 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 > 26)) | 0;\n 0003cbd0: 20 77 35 20 26 3d 20 30 78 33 66 66 66 66 66 66 w5 &= 0x3ffffff 0003cbe0: 3b 5c 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 36 20 ;\n /* k = 6 0003cbf0: 2a 2f 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 */\n lo = Mat 0003cc00: 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 6c 30 29 h.imul(al6, bl0) 0003cc10: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 ;\n mid = Mat 0003cc20: 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 68 30 29 h.imul(al6, bh0) 0003cc30: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003cc40: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 d + Math.imul(ah 0003cc50: 36 2c 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 6, bl0)) | 0;\n 0003cc60: 20 20 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 hi = Math.imu 0003cc70: 6c 28 61 68 36 2c 20 62 68 30 29 3b 5c 6e 20 20 l(ah6, bh0);\n 0003cc80: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003cc90: 68 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 6c 31 29 h.imul(al5, bl1) 0003cca0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003ccb0: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003ccc0: 75 6c 28 61 6c 35 2c 20 62 68 31 29 29 20 7c 20 ul(al5, bh1)) | 0003ccd0: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003cce0: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003ccf0: 68 35 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e h5, bl1)) | 0;\n 0003cd00: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003cd10: 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 62 68 ath.imul(ah5, bh 0003cd20: 31 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 1)) | 0;\n lo 0003cd30: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003cd40: 75 6c 28 61 6c 34 2c 20 62 6c 32 29 29 20 7c 20 ul(al4, bl2)) | 0003cd50: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003cd60: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003cd70: 6c 34 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e l4, bh2)) | 0;\n 0003cd80: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003cd90: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 Math.imul(ah4, 0003cda0: 62 6c 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl2)) | 0;\n 0003cdb0: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003cdc0: 69 6d 75 6c 28 61 68 34 2c 20 62 68 32 29 29 20 imul(ah4, bh2)) 0003cdd0: 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 | 0;\n lo = ( 0003cde0: 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo + Math.imul(a 0003cdf0: 6c 33 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e l3, bl3)) | 0;\n 0003ce00: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003ce10: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 Math.imul(al3, 0003ce20: 62 68 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh3)) | 0;\n 0003ce30: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003ce40: 68 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c 33 29 h.imul(ah3, bl3) 0003ce50: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d ) | 0;\n hi = 0003ce60: 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (hi + Math.imul 0003ce70: 28 61 68 33 2c 20 62 68 33 29 29 20 7c 20 30 3b (ah3, bh3)) | 0; 0003ce80: 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b \n lo = (lo + 0003ce90: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 Math.imul(al2, 0003cea0: 62 6c 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl4)) | 0;\n 0003ceb0: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003cec0: 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 34 29 h.imul(al2, bh4) 0003ced0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003cee0: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003cef0: 75 6c 28 61 68 32 2c 20 62 6c 34 29 29 20 7c 20 ul(ah2, bl4)) | 0003cf00: 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 0;\n hi = (hi 0003cf10: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 + Math.imul(ah2 0003cf20: 2c 20 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh4)) | 0;\n 0003cf30: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003cf40: 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c 35 29 h.imul(al1, bl5) 0003cf50: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003cf60: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003cf70: 75 6c 28 61 6c 31 2c 20 62 68 35 29 29 20 7c 20 ul(al1, bh5)) | 0003cf80: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003cf90: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003cfa0: 68 31 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e h1, bl5)) | 0;\n 0003cfb0: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003cfc0: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 68 ath.imul(ah1, bh 0003cfd0: 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 5)) | 0;\n lo 0003cfe0: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003cff0: 75 6c 28 61 6c 30 2c 20 62 6c 36 29 29 20 7c 20 ul(al0, bl6)) | 0003d000: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003d010: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003d020: 6c 30 2c 20 62 68 36 29 29 20 7c 20 30 3b 5c 6e l0, bh6)) | 0;\n 0003d030: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003d040: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 2c 20 Math.imul(ah0, 0003d050: 62 6c 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl6)) | 0;\n 0003d060: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003d070: 69 6d 75 6c 28 61 68 30 2c 20 62 68 36 29 29 20 imul(ah0, bh6)) 0003d080: 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 77 36 | 0;\n var w6 0003d090: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003d0a0: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003d0b0: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003d0c0: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003d0d0: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003d0e0: 20 7c 20 30 29 20 2b 20 28 77 36 20 3e 3e 3e 20 | 0) + (w6 >>> 0003d0f0: 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 77 26)) | 0;\n w 0003d100: 36 20 26 3d 20 30 78 33 66 66 66 66 66 66 3b 5c 6 &= 0x3ffffff;\ 0003d110: 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 37 20 2a 2f n /* k = 7 */ 0003d120: 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e \n lo = Math. 0003d130: 69 6d 75 6c 28 61 6c 37 2c 20 62 6c 30 29 3b 5c imul(al7, bl0);\ 0003d140: 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e n mid = Math. 0003d150: 69 6d 75 6c 28 61 6c 37 2c 20 62 68 30 29 3b 5c imul(al7, bh0);\ 0003d160: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003d170: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 37 2c + Math.imul(ah7, 0003d180: 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl0)) | 0;\n 0003d190: 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 hi = Math.imul( 0003d1a0: 61 68 37 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 ah7, bh0);\n 0003d1b0: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003d1c0: 69 6d 75 6c 28 61 6c 36 2c 20 62 6c 31 29 29 20 imul(al6, bl1)) 0003d1d0: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003d1e0: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003d1f0: 28 61 6c 36 2c 20 62 68 31 29 29 20 7c 20 30 3b (al6, bh1)) | 0; 0003d200: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003d210: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 36 + Math.imul(ah6 0003d220: 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl1)) | 0;\n 0003d230: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003d240: 68 2e 69 6d 75 6c 28 61 68 36 2c 20 62 68 31 29 h.imul(ah6, bh1) 0003d250: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003d260: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003d270: 28 61 6c 35 2c 20 62 6c 32 29 29 20 7c 20 30 3b (al5, bl2)) | 0; 0003d280: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003d290: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 35 + Math.imul(al5 0003d2a0: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003d2b0: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003d2c0: 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 62 6c ath.imul(ah5, bl 0003d2d0: 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 2)) | 0;\n hi 0003d2e0: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003d2f0: 75 6c 28 61 68 35 2c 20 62 68 32 29 29 20 7c 20 ul(ah5, bh2)) | 0003d300: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003d310: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 34 + Math.imul(al4 0003d320: 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl3)) | 0;\n 0003d330: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003d340: 61 74 68 2e 69 6d 75 6c 28 61 6c 34 2c 20 62 68 ath.imul(al4, bh 0003d350: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 3)) | 0;\n mi 0003d360: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003d370: 69 6d 75 6c 28 61 68 34 2c 20 62 6c 33 29 29 20 imul(ah4, bl3)) 0003d380: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003d390: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003d3a0: 68 34 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c 6e h4, bh3)) | 0;\n 0003d3b0: 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d lo = (lo + M 0003d3c0: 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 62 6c ath.imul(al3, bl 0003d3d0: 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 4)) | 0;\n mi 0003d3e0: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003d3f0: 69 6d 75 6c 28 61 6c 33 2c 20 62 68 34 29 29 20 imul(al3, bh4)) 0003d400: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003d410: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003d420: 28 61 68 33 2c 20 62 6c 34 29 29 20 7c 20 30 3b (ah3, bl4)) | 0; 0003d430: 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b \n hi = (hi + 0003d440: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 33 2c 20 Math.imul(ah3, 0003d450: 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh4)) | 0;\n 0003d460: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003d470: 69 6d 75 6c 28 61 6c 32 2c 20 62 6c 35 29 29 20 imul(al2, bl5)) 0003d480: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003d490: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003d4a0: 28 61 6c 32 2c 20 62 68 35 29 29 20 7c 20 30 3b (al2, bh5)) | 0; 0003d4b0: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003d4c0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 + Math.imul(ah2 0003d4d0: 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl5)) | 0;\n 0003d4e0: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003d4f0: 68 2e 69 6d 75 6c 28 61 68 32 2c 20 62 68 35 29 h.imul(ah2, bh5) 0003d500: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003d510: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003d520: 28 61 6c 31 2c 20 62 6c 36 29 29 20 7c 20 30 3b (al1, bl6)) | 0; 0003d530: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003d540: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 31 + Math.imul(al1 0003d550: 2c 20 62 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh6)) | 0;\n 0003d560: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003d570: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 6c ath.imul(ah1, bl 0003d580: 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 6)) | 0;\n hi 0003d590: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003d5a0: 75 6c 28 61 68 31 2c 20 62 68 36 29 29 20 7c 20 ul(ah1, bh6)) | 0003d5b0: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003d5c0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 30 + Math.imul(al0 0003d5d0: 2c 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl7)) | 0;\n 0003d5e0: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003d5f0: 61 74 68 2e 69 6d 75 6c 28 61 6c 30 2c 20 62 68 ath.imul(al0, bh 0003d600: 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 7)) | 0;\n mi 0003d610: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003d620: 69 6d 75 6c 28 61 68 30 2c 20 62 6c 37 29 29 20 imul(ah0, bl7)) 0003d630: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003d640: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003d650: 68 30 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c 6e h0, bh7)) | 0;\n 0003d660: 20 20 20 20 76 61 72 20 77 37 20 3d 20 28 28 28 var w7 = ((( 0003d670: 63 20 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 c + lo) | 0) + ( 0003d680: 28 6d 69 64 20 26 20 30 78 31 66 66 66 29 20 3c (mid & 0x1fff) < 0003d690: 3c 20 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 < 13)) | 0;\n 0003d6a0: 20 63 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 c = (((hi + (mi 0003d6b0: 64 20 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 d >>> 13)) | 0) 0003d6c0: 2b 20 28 77 37 20 3e 3e 3e 20 32 36 29 29 20 7c + (w7 >>> 26)) | 0003d6d0: 20 30 3b 5c 6e 20 20 20 20 77 37 20 26 3d 20 30 0;\n w7 &= 0 0003d6e0: 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 20 2f x3ffffff;\n / 0003d6f0: 2a 20 6b 20 3d 20 38 20 2a 2f 5c 6e 20 20 20 20 * k = 8 */\n 0003d700: 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo = Math.imul(a 0003d710: 6c 38 2c 20 62 6c 30 29 3b 5c 6e 20 20 20 20 6d l8, bl0);\n m 0003d720: 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id = Math.imul(a 0003d730: 6c 38 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 6d l8, bh0);\n m 0003d740: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003d750: 2e 69 6d 75 6c 28 61 68 38 2c 20 62 6c 30 29 29 .imul(ah8, bl0)) 0003d760: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003d770: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003d780: 68 30 29 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 h0);\n lo = ( 0003d790: 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo + Math.imul(a 0003d7a0: 6c 37 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e l7, bl1)) | 0;\n 0003d7b0: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003d7c0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 37 2c 20 Math.imul(al7, 0003d7d0: 62 68 31 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh1)) | 0;\n 0003d7e0: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003d7f0: 68 2e 69 6d 75 6c 28 61 68 37 2c 20 62 6c 31 29 h.imul(ah7, bl1) 0003d800: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d ) | 0;\n hi = 0003d810: 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (hi + Math.imul 0003d820: 28 61 68 37 2c 20 62 68 31 29 29 20 7c 20 30 3b (ah7, bh1)) | 0; 0003d830: 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b \n lo = (lo + 0003d840: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 Math.imul(al6, 0003d850: 62 6c 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl2)) | 0;\n 0003d860: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003d870: 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 68 32 29 h.imul(al6, bh2) 0003d880: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003d890: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003d8a0: 75 6c 28 61 68 36 2c 20 62 6c 32 29 29 20 7c 20 ul(ah6, bl2)) | 0003d8b0: 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 0;\n hi = (hi 0003d8c0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 36 + Math.imul(ah6 0003d8d0: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003d8e0: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003d8f0: 68 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 6c 33 29 h.imul(al5, bl3) 0003d900: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003d910: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003d920: 75 6c 28 61 6c 35 2c 20 62 68 33 29 29 20 7c 20 ul(al5, bh3)) | 0003d930: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003d940: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003d950: 68 35 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e h5, bl3)) | 0;\n 0003d960: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003d970: 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 62 68 ath.imul(ah5, bh 0003d980: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 3)) | 0;\n lo 0003d990: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003d9a0: 75 6c 28 61 6c 34 2c 20 62 6c 34 29 29 20 7c 20 ul(al4, bl4)) | 0003d9b0: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003d9c0: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003d9d0: 6c 34 2c 20 62 68 34 29 29 20 7c 20 30 3b 5c 6e l4, bh4)) | 0;\n 0003d9e0: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003d9f0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 Math.imul(ah4, 0003da00: 62 6c 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl4)) | 0;\n 0003da10: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003da20: 69 6d 75 6c 28 61 68 34 2c 20 62 68 34 29 29 20 imul(ah4, bh4)) 0003da30: 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 | 0;\n lo = ( 0003da40: 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 lo + Math.imul(a 0003da50: 6c 33 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e l3, bl5)) | 0;\n 0003da60: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003da70: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 Math.imul(al3, 0003da80: 62 68 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh5)) | 0;\n 0003da90: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003daa0: 68 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c 35 29 h.imul(ah3, bl5) 0003dab0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d ) | 0;\n hi = 0003dac0: 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (hi + Math.imul 0003dad0: 28 61 68 33 2c 20 62 68 35 29 29 20 7c 20 30 3b (ah3, bh5)) | 0; 0003dae0: 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b \n lo = (lo + 0003daf0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 Math.imul(al2, 0003db00: 62 6c 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl6)) | 0;\n 0003db10: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003db20: 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 36 29 h.imul(al2, bh6) 0003db30: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003db40: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003db50: 75 6c 28 61 68 32 2c 20 62 6c 36 29 29 20 7c 20 ul(ah2, bl6)) | 0003db60: 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 0;\n hi = (hi 0003db70: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 + Math.imul(ah2 0003db80: 2c 20 62 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh6)) | 0;\n 0003db90: 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 lo = (lo + Mat 0003dba0: 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c 37 29 h.imul(al1, bl7) 0003dbb0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 ) | 0;\n mid 0003dbc0: 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d = (mid + Math.im 0003dbd0: 75 6c 28 61 6c 31 2c 20 62 68 37 29 29 20 7c 20 ul(al1, bh7)) | 0003dbe0: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003dbf0: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003dc00: 68 31 2c 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e h1, bl7)) | 0;\n 0003dc10: 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d hi = (hi + M 0003dc20: 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 62 68 ath.imul(ah1, bh 0003dc30: 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 7)) | 0;\n lo 0003dc40: 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d = (lo + Math.im 0003dc50: 75 6c 28 61 6c 30 2c 20 62 6c 38 29 29 20 7c 20 ul(al0, bl8)) | 0003dc60: 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 0;\n mid = (m 0003dc70: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003dc80: 6c 30 2c 20 62 68 38 29 29 20 7c 20 30 3b 5c 6e l0, bh8)) | 0;\n 0003dc90: 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b mid = (mid + 0003dca0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 2c 20 Math.imul(ah0, 0003dcb0: 62 6c 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bl8)) | 0;\n 0003dcc0: 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e hi = (hi + Math. 0003dcd0: 69 6d 75 6c 28 61 68 30 2c 20 62 68 38 29 29 20 imul(ah0, bh8)) 0003dce0: 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 77 38 | 0;\n var w8 0003dcf0: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003dd00: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003dd10: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003dd20: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003dd30: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003dd40: 20 7c 20 30 29 20 2b 20 28 77 38 20 3e 3e 3e 20 | 0) + (w8 >>> 0003dd50: 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 77 26)) | 0;\n w 0003dd60: 38 20 26 3d 20 30 78 33 66 66 66 66 66 66 3b 5c 8 &= 0x3ffffff;\ 0003dd70: 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 39 20 2a 2f n /* k = 9 */ 0003dd80: 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e \n lo = Math. 0003dd90: 69 6d 75 6c 28 61 6c 39 2c 20 62 6c 30 29 3b 5c imul(al9, bl0);\ 0003dda0: 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e n mid = Math. 0003ddb0: 69 6d 75 6c 28 61 6c 39 2c 20 62 68 30 29 3b 5c imul(al9, bh0);\ 0003ddc0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003ddd0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 39 2c + Math.imul(ah9, 0003dde0: 20 62 6c 30 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl0)) | 0;\n 0003ddf0: 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 hi = Math.imul( 0003de00: 61 68 39 2c 20 62 68 30 29 3b 5c 6e 20 20 20 20 ah9, bh0);\n 0003de10: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003de20: 69 6d 75 6c 28 61 6c 38 2c 20 62 6c 31 29 29 20 imul(al8, bl1)) 0003de30: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003de40: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003de50: 28 61 6c 38 2c 20 62 68 31 29 29 20 7c 20 30 3b (al8, bh1)) | 0; 0003de60: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003de70: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 + Math.imul(ah8 0003de80: 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl1)) | 0;\n 0003de90: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003dea0: 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 68 31 29 h.imul(ah8, bh1) 0003deb0: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003dec0: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003ded0: 28 61 6c 37 2c 20 62 6c 32 29 29 20 7c 20 30 3b (al7, bl2)) | 0; 0003dee0: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003def0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 37 + Math.imul(al7 0003df00: 2c 20 62 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh2)) | 0;\n 0003df10: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003df20: 61 74 68 2e 69 6d 75 6c 28 61 68 37 2c 20 62 6c ath.imul(ah7, bl 0003df30: 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 2)) | 0;\n hi 0003df40: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003df50: 75 6c 28 61 68 37 2c 20 62 68 32 29 29 20 7c 20 ul(ah7, bh2)) | 0003df60: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003df70: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 + Math.imul(al6 0003df80: 2c 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl3)) | 0;\n 0003df90: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003dfa0: 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 68 ath.imul(al6, bh 0003dfb0: 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 3)) | 0;\n mi 0003dfc0: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003dfd0: 69 6d 75 6c 28 61 68 36 2c 20 62 6c 33 29 29 20 imul(ah6, bl3)) 0003dfe0: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003dff0: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003e000: 68 36 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c 6e h6, bh3)) | 0;\n 0003e010: 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d lo = (lo + M 0003e020: 61 74 68 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 6c ath.imul(al5, bl 0003e030: 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 4)) | 0;\n mi 0003e040: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003e050: 69 6d 75 6c 28 61 6c 35 2c 20 62 68 34 29 29 20 imul(al5, bh4)) 0003e060: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003e070: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003e080: 28 61 68 35 2c 20 62 6c 34 29 29 20 7c 20 30 3b (ah5, bl4)) | 0; 0003e090: 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b \n hi = (hi + 0003e0a0: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 Math.imul(ah5, 0003e0b0: 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh4)) | 0;\n 0003e0c0: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003e0d0: 69 6d 75 6c 28 61 6c 34 2c 20 62 6c 35 29 29 20 imul(al4, bl5)) 0003e0e0: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003e0f0: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003e100: 28 61 6c 34 2c 20 62 68 35 29 29 20 7c 20 30 3b (al4, bh5)) | 0; 0003e110: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003e120: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 + Math.imul(ah4 0003e130: 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl5)) | 0;\n 0003e140: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003e150: 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 68 35 29 h.imul(ah4, bh5) 0003e160: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d ) | 0;\n lo = 0003e170: 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (lo + Math.imul 0003e180: 28 61 6c 33 2c 20 62 6c 36 29 29 20 7c 20 30 3b (al3, bl6)) | 0; 0003e190: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003e1a0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 + Math.imul(al3 0003e1b0: 2c 20 62 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 , bh6)) | 0;\n 0003e1c0: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003e1d0: 61 74 68 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c ath.imul(ah3, bl 0003e1e0: 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 6)) | 0;\n hi 0003e1f0: 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d = (hi + Math.im 0003e200: 75 6c 28 61 68 33 2c 20 62 68 36 29 29 20 7c 20 ul(ah3, bh6)) | 0003e210: 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 0;\n lo = (lo 0003e220: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 + Math.imul(al2 0003e230: 2c 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl7)) | 0;\n 0003e240: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003e250: 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 ath.imul(al2, bh 0003e260: 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 7)) | 0;\n mi 0003e270: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003e280: 69 6d 75 6c 28 61 68 32 2c 20 62 6c 37 29 29 20 imul(ah2, bl7)) 0003e290: 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 | 0;\n hi = ( 0003e2a0: 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 hi + Math.imul(a 0003e2b0: 68 32 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c 6e h2, bh7)) | 0;\n 0003e2c0: 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d lo = (lo + M 0003e2d0: 61 74 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 6c ath.imul(al1, bl 0003e2e0: 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 8)) | 0;\n mi 0003e2f0: 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e d = (mid + Math. 0003e300: 69 6d 75 6c 28 61 6c 31 2c 20 62 68 38 29 29 20 imul(al1, bh8)) 0003e310: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003e320: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003e330: 28 61 68 31 2c 20 62 6c 38 29 29 20 7c 20 30 3b (ah1, bl8)) | 0; 0003e340: 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b \n hi = (hi + 0003e350: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 31 2c 20 Math.imul(ah1, 0003e360: 62 68 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 bh8)) | 0;\n 0003e370: 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e lo = (lo + Math. 0003e380: 69 6d 75 6c 28 61 6c 30 2c 20 62 6c 39 29 29 20 imul(al0, bl9)) 0003e390: 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 | 0;\n mid = 0003e3a0: 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c (mid + Math.imul 0003e3b0: 28 61 6c 30 2c 20 62 68 39 29 29 20 7c 20 30 3b (al0, bh9)) | 0; 0003e3c0: 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 \n mid = (mid 0003e3d0: 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 30 + Math.imul(ah0 0003e3e0: 2c 20 62 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 , bl9)) | 0;\n 0003e3f0: 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 hi = (hi + Mat 0003e400: 68 2e 69 6d 75 6c 28 61 68 30 2c 20 62 68 39 29 h.imul(ah0, bh9) 0003e410: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 ) | 0;\n var 0003e420: 77 39 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 w9 = (((c + lo) 0003e430: 7c 20 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 | 0) + ((mid & 0 0003e440: 78 31 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c x1fff) << 13)) | 0003e450: 20 30 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 0;\n c = ((( 0003e460: 68 69 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 hi + (mid >>> 13 0003e470: 29 29 20 7c 20 30 29 20 2b 20 28 77 39 20 3e 3e )) | 0) + (w9 >> 0003e480: 3e 20 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 > 26)) | 0;\n 0003e490: 20 77 39 20 26 3d 20 30 78 33 66 66 66 66 66 66 w9 &= 0x3ffffff 0003e4a0: 3b 5c 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 31 30 ;\n /* k = 10 0003e4b0: 20 2a 2f 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 */\n lo = Ma 0003e4c0: 74 68 2e 69 6d 75 6c 28 61 6c 39 2c 20 62 6c 31 th.imul(al9, bl1 0003e4d0: 29 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 );\n mid = Ma 0003e4e0: 74 68 2e 69 6d 75 6c 28 61 6c 39 2c 20 62 68 31 th.imul(al9, bh1 0003e4f0: 29 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d );\n mid = (m 0003e500: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003e510: 68 39 2c 20 62 6c 31 29 29 20 7c 20 30 3b 5c 6e h9, bl1)) | 0;\n 0003e520: 20 20 20 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d hi = Math.im 0003e530: 75 6c 28 61 68 39 2c 20 62 68 31 29 3b 5c 6e 20 ul(ah9, bh1);\n 0003e540: 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 lo = (lo + Ma 0003e550: 74 68 2e 69 6d 75 6c 28 61 6c 38 2c 20 62 6c 32 th.imul(al8, bl2 0003e560: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003e570: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003e580: 6d 75 6c 28 61 6c 38 2c 20 62 68 32 29 29 20 7c mul(al8, bh2)) | 0003e590: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003e5a0: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003e5b0: 61 68 38 2c 20 62 6c 32 29 29 20 7c 20 30 3b 5c ah8, bl2)) | 0;\ 0003e5c0: 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 n hi = (hi + 0003e5d0: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003e5e0: 68 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c h2)) | 0;\n l 0003e5f0: 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 o = (lo + Math.i 0003e600: 6d 75 6c 28 61 6c 37 2c 20 62 6c 33 29 29 20 7c mul(al7, bl3)) | 0003e610: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003e620: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003e630: 61 6c 37 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c al7, bh3)) | 0;\ 0003e640: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003e650: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 37 2c + Math.imul(ah7, 0003e660: 20 62 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl3)) | 0;\n 0003e670: 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 hi = (hi + Math 0003e680: 2e 69 6d 75 6c 28 61 68 37 2c 20 62 68 33 29 29 .imul(ah7, bh3)) 0003e690: 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 | 0;\n lo = 0003e6a0: 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (lo + Math.imul( 0003e6b0: 61 6c 36 2c 20 62 6c 34 29 29 20 7c 20 30 3b 5c al6, bl4)) | 0;\ 0003e6c0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003e6d0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c + Math.imul(al6, 0003e6e0: 20 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh4)) | 0;\n 0003e6f0: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003e700: 74 68 2e 69 6d 75 6c 28 61 68 36 2c 20 62 6c 34 th.imul(ah6, bl4 0003e710: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 )) | 0;\n hi 0003e720: 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 = (hi + Math.imu 0003e730: 6c 28 61 68 36 2c 20 62 68 34 29 29 20 7c 20 30 l(ah6, bh4)) | 0 0003e740: 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 ;\n lo = (lo 0003e750: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 35 2c + Math.imul(al5, 0003e760: 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl5)) | 0;\n 0003e770: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003e780: 74 68 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 68 35 th.imul(al5, bh5 0003e790: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003e7a0: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003e7b0: 6d 75 6c 28 61 68 35 2c 20 62 6c 35 29 29 20 7c mul(ah5, bl5)) | 0003e7c0: 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 0;\n hi = (h 0003e7d0: 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 i + Math.imul(ah 0003e7e0: 35 2c 20 62 68 35 29 29 20 7c 20 30 3b 5c 6e 20 5, bh5)) | 0;\n 0003e7f0: 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 lo = (lo + Ma 0003e800: 74 68 2e 69 6d 75 6c 28 61 6c 34 2c 20 62 6c 36 th.imul(al4, bl6 0003e810: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003e820: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003e830: 6d 75 6c 28 61 6c 34 2c 20 62 68 36 29 29 20 7c mul(al4, bh6)) | 0003e840: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003e850: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003e860: 61 68 34 2c 20 62 6c 36 29 29 20 7c 20 30 3b 5c ah4, bl6)) | 0;\ 0003e870: 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 n hi = (hi + 0003e880: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 Math.imul(ah4, b 0003e890: 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c h6)) | 0;\n l 0003e8a0: 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 o = (lo + Math.i 0003e8b0: 6d 75 6c 28 61 6c 33 2c 20 62 6c 37 29 29 20 7c mul(al3, bl7)) | 0003e8c0: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003e8d0: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003e8e0: 61 6c 33 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c al3, bh7)) | 0;\ 0003e8f0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003e900: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 33 2c + Math.imul(ah3, 0003e910: 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl7)) | 0;\n 0003e920: 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 hi = (hi + Math 0003e930: 2e 69 6d 75 6c 28 61 68 33 2c 20 62 68 37 29 29 .imul(ah3, bh7)) 0003e940: 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 | 0;\n lo = 0003e950: 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (lo + Math.imul( 0003e960: 61 6c 32 2c 20 62 6c 38 29 29 20 7c 20 30 3b 5c al2, bl8)) | 0;\ 0003e970: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003e980: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c + Math.imul(al2, 0003e990: 20 62 68 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh8)) | 0;\n 0003e9a0: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003e9b0: 74 68 2e 69 6d 75 6c 28 61 68 32 2c 20 62 6c 38 th.imul(ah2, bl8 0003e9c0: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 )) | 0;\n hi 0003e9d0: 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 = (hi + Math.imu 0003e9e0: 6c 28 61 68 32 2c 20 62 68 38 29 29 20 7c 20 30 l(ah2, bh8)) | 0 0003e9f0: 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 ;\n lo = (lo 0003ea00: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 31 2c + Math.imul(al1, 0003ea10: 20 62 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl9)) | 0;\n 0003ea20: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003ea30: 74 68 2e 69 6d 75 6c 28 61 6c 31 2c 20 62 68 39 th.imul(al1, bh9 0003ea40: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003ea50: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003ea60: 6d 75 6c 28 61 68 31 2c 20 62 6c 39 29 29 20 7c mul(ah1, bl9)) | 0003ea70: 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 0;\n hi = (h 0003ea80: 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 i + Math.imul(ah 0003ea90: 31 2c 20 62 68 39 29 29 20 7c 20 30 3b 5c 6e 20 1, bh9)) | 0;\n 0003eaa0: 20 20 20 76 61 72 20 77 31 30 20 3d 20 28 28 28 var w10 = ((( 0003eab0: 63 20 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 c + lo) | 0) + ( 0003eac0: 28 6d 69 64 20 26 20 30 78 31 66 66 66 29 20 3c (mid & 0x1fff) < 0003ead0: 3c 20 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 < 13)) | 0;\n 0003eae0: 20 63 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 c = (((hi + (mi 0003eaf0: 64 20 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 d >>> 13)) | 0) 0003eb00: 2b 20 28 77 31 30 20 3e 3e 3e 20 32 36 29 29 20 + (w10 >>> 26)) 0003eb10: 7c 20 30 3b 5c 6e 20 20 20 20 77 31 30 20 26 3d | 0;\n w10 &= 0003eb20: 20 30 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 0x3ffffff;\n 0003eb30: 20 2f 2a 20 6b 20 3d 20 31 31 20 2a 2f 5c 6e 20 /* k = 11 */\n 0003eb40: 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 lo = Math.imu 0003eb50: 6c 28 61 6c 39 2c 20 62 6c 32 29 3b 5c 6e 20 20 l(al9, bl2);\n 0003eb60: 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 mid = Math.imu 0003eb70: 6c 28 61 6c 39 2c 20 62 68 32 29 3b 5c 6e 20 20 l(al9, bh2);\n 0003eb80: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003eb90: 61 74 68 2e 69 6d 75 6c 28 61 68 39 2c 20 62 6c ath.imul(ah9, bl 0003eba0: 32 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 2)) | 0;\n hi 0003ebb0: 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 39 = Math.imul(ah9 0003ebc0: 2c 20 62 68 32 29 3b 5c 6e 20 20 20 20 6c 6f 20 , bh2);\n lo 0003ebd0: 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 = (lo + Math.imu 0003ebe0: 6c 28 61 6c 38 2c 20 62 6c 33 29 29 20 7c 20 30 l(al8, bl3)) | 0 0003ebf0: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003ec00: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c d + Math.imul(al 0003ec10: 38 2c 20 62 68 33 29 29 20 7c 20 30 3b 5c 6e 20 8, bh3)) | 0;\n 0003ec20: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003ec30: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003ec40: 6c 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 l3)) | 0;\n h 0003ec50: 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 i = (hi + Math.i 0003ec60: 6d 75 6c 28 61 68 38 2c 20 62 68 33 29 29 20 7c mul(ah8, bh3)) | 0003ec70: 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 0;\n lo = (l 0003ec80: 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c o + Math.imul(al 0003ec90: 37 2c 20 62 6c 34 29 29 20 7c 20 30 3b 5c 6e 20 7, bl4)) | 0;\n 0003eca0: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003ecb0: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 37 2c 20 62 Math.imul(al7, b 0003ecc0: 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d h4)) | 0;\n m 0003ecd0: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003ece0: 2e 69 6d 75 6c 28 61 68 37 2c 20 62 6c 34 29 29 .imul(ah7, bl4)) 0003ecf0: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003ed00: 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (hi + Math.imul( 0003ed10: 61 68 37 2c 20 62 68 34 29 29 20 7c 20 30 3b 5c ah7, bh4)) | 0;\ 0003ed20: 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 n lo = (lo + 0003ed30: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 Math.imul(al6, b 0003ed40: 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d l5)) | 0;\n m 0003ed50: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003ed60: 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 68 35 29 29 .imul(al6, bh5)) 0003ed70: 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d | 0;\n mid = 0003ed80: 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 (mid + Math.imu 0003ed90: 6c 28 61 68 36 2c 20 62 6c 35 29 29 20 7c 20 30 l(ah6, bl5)) | 0 0003eda0: 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 ;\n hi = (hi 0003edb0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 36 2c + Math.imul(ah6, 0003edc0: 20 62 68 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh5)) | 0;\n 0003edd0: 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 lo = (lo + Math 0003ede0: 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 6c 36 29 29 .imul(al5, bl6)) 0003edf0: 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d | 0;\n mid = 0003ee00: 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 (mid + Math.imu 0003ee10: 6c 28 61 6c 35 2c 20 62 68 36 29 29 20 7c 20 30 l(al5, bh6)) | 0 0003ee20: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003ee30: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 d + Math.imul(ah 0003ee40: 35 2c 20 62 6c 36 29 29 20 7c 20 30 3b 5c 6e 20 5, bl6)) | 0;\n 0003ee50: 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 hi = (hi + Ma 0003ee60: 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 62 68 36 th.imul(ah5, bh6 0003ee70: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 )) | 0;\n lo 0003ee80: 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 = (lo + Math.imu 0003ee90: 6c 28 61 6c 34 2c 20 62 6c 37 29 29 20 7c 20 30 l(al4, bl7)) | 0 0003eea0: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003eeb0: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c d + Math.imul(al 0003eec0: 34 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c 6e 20 4, bh7)) | 0;\n 0003eed0: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003eee0: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 Math.imul(ah4, b 0003eef0: 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 l7)) | 0;\n h 0003ef00: 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 i = (hi + Math.i 0003ef10: 6d 75 6c 28 61 68 34 2c 20 62 68 37 29 29 20 7c mul(ah4, bh7)) | 0003ef20: 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 0;\n lo = (l 0003ef30: 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c o + Math.imul(al 0003ef40: 33 2c 20 62 6c 38 29 29 20 7c 20 30 3b 5c 6e 20 3, bl8)) | 0;\n 0003ef50: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003ef60: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 62 Math.imul(al3, b 0003ef70: 68 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d h8)) | 0;\n m 0003ef80: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003ef90: 2e 69 6d 75 6c 28 61 68 33 2c 20 62 6c 38 29 29 .imul(ah3, bl8)) 0003efa0: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003efb0: 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (hi + Math.imul( 0003efc0: 61 68 33 2c 20 62 68 38 29 29 20 7c 20 30 3b 5c ah3, bh8)) | 0;\ 0003efd0: 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 n lo = (lo + 0003efe0: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 Math.imul(al2, b 0003eff0: 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d l9)) | 0;\n m 0003f000: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003f010: 2e 69 6d 75 6c 28 61 6c 32 2c 20 62 68 39 29 29 .imul(al2, bh9)) 0003f020: 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d | 0;\n mid = 0003f030: 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 (mid + Math.imu 0003f040: 6c 28 61 68 32 2c 20 62 6c 39 29 29 20 7c 20 30 l(ah2, bl9)) | 0 0003f050: 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 ;\n hi = (hi 0003f060: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 32 2c + Math.imul(ah2, 0003f070: 20 62 68 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh9)) | 0;\n 0003f080: 20 76 61 72 20 77 31 31 20 3d 20 28 28 28 63 20 var w11 = (((c 0003f090: 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 28 6d + lo) | 0) + ((m 0003f0a0: 69 64 20 26 20 30 78 31 66 66 66 29 20 3c 3c 20 id & 0x1fff) << 0003f0b0: 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 63 13)) | 0;\n c 0003f0c0: 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 64 20 = (((hi + (mid 0003f0d0: 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 2b 20 >>> 13)) | 0) + 0003f0e0: 28 77 31 31 20 3e 3e 3e 20 32 36 29 29 20 7c 20 (w11 >>> 26)) | 0003f0f0: 30 3b 5c 6e 20 20 20 20 77 31 31 20 26 3d 20 30 0;\n w11 &= 0 0003f100: 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 20 2f x3ffffff;\n / 0003f110: 2a 20 6b 20 3d 20 31 32 20 2a 2f 5c 6e 20 20 20 * k = 12 */\n 0003f120: 20 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 lo = Math.imul( 0003f130: 61 6c 39 2c 20 62 6c 33 29 3b 5c 6e 20 20 20 20 al9, bl3);\n 0003f140: 6d 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 mid = Math.imul( 0003f150: 61 6c 39 2c 20 62 68 33 29 3b 5c 6e 20 20 20 20 al9, bh3);\n 0003f160: 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 mid = (mid + Mat 0003f170: 68 2e 69 6d 75 6c 28 61 68 39 2c 20 62 6c 33 29 h.imul(ah9, bl3) 0003f180: 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d ) | 0;\n hi = 0003f190: 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 39 2c 20 Math.imul(ah9, 0003f1a0: 62 68 33 29 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 bh3);\n lo = 0003f1b0: 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (lo + Math.imul( 0003f1c0: 61 6c 38 2c 20 62 6c 34 29 29 20 7c 20 30 3b 5c al8, bl4)) | 0;\ 0003f1d0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003f1e0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 38 2c + Math.imul(al8, 0003f1f0: 20 62 68 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh4)) | 0;\n 0003f200: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003f210: 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 6c 34 th.imul(ah8, bl4 0003f220: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 )) | 0;\n hi 0003f230: 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 = (hi + Math.imu 0003f240: 6c 28 61 68 38 2c 20 62 68 34 29 29 20 7c 20 30 l(ah8, bh4)) | 0 0003f250: 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 ;\n lo = (lo 0003f260: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 37 2c + Math.imul(al7, 0003f270: 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl5)) | 0;\n 0003f280: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003f290: 74 68 2e 69 6d 75 6c 28 61 6c 37 2c 20 62 68 35 th.imul(al7, bh5 0003f2a0: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003f2b0: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003f2c0: 6d 75 6c 28 61 68 37 2c 20 62 6c 35 29 29 20 7c mul(ah7, bl5)) | 0003f2d0: 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 0;\n hi = (h 0003f2e0: 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 i + Math.imul(ah 0003f2f0: 37 2c 20 62 68 35 29 29 20 7c 20 30 3b 5c 6e 20 7, bh5)) | 0;\n 0003f300: 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 lo = (lo + Ma 0003f310: 74 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 6c 36 th.imul(al6, bl6 0003f320: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003f330: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003f340: 6d 75 6c 28 61 6c 36 2c 20 62 68 36 29 29 20 7c mul(al6, bh6)) | 0003f350: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003f360: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003f370: 61 68 36 2c 20 62 6c 36 29 29 20 7c 20 30 3b 5c ah6, bl6)) | 0;\ 0003f380: 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 n hi = (hi + 0003f390: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 36 2c 20 62 Math.imul(ah6, b 0003f3a0: 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c h6)) | 0;\n l 0003f3b0: 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 o = (lo + Math.i 0003f3c0: 6d 75 6c 28 61 6c 35 2c 20 62 6c 37 29 29 20 7c mul(al5, bl7)) | 0003f3d0: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003f3e0: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003f3f0: 61 6c 35 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c al5, bh7)) | 0;\ 0003f400: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003f410: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 35 2c + Math.imul(ah5, 0003f420: 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl7)) | 0;\n 0003f430: 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 hi = (hi + Math 0003f440: 2e 69 6d 75 6c 28 61 68 35 2c 20 62 68 37 29 29 .imul(ah5, bh7)) 0003f450: 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 | 0;\n lo = 0003f460: 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (lo + Math.imul( 0003f470: 61 6c 34 2c 20 62 6c 38 29 29 20 7c 20 30 3b 5c al4, bl8)) | 0;\ 0003f480: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003f490: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 34 2c + Math.imul(al4, 0003f4a0: 20 62 68 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh8)) | 0;\n 0003f4b0: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003f4c0: 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 6c 38 th.imul(ah4, bl8 0003f4d0: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 )) | 0;\n hi 0003f4e0: 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 = (hi + Math.imu 0003f4f0: 6c 28 61 68 34 2c 20 62 68 38 29 29 20 7c 20 30 l(ah4, bh8)) | 0 0003f500: 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 ;\n lo = (lo 0003f510: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 33 2c + Math.imul(al3, 0003f520: 20 62 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl9)) | 0;\n 0003f530: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003f540: 74 68 2e 69 6d 75 6c 28 61 6c 33 2c 20 62 68 39 th.imul(al3, bh9 0003f550: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003f560: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003f570: 6d 75 6c 28 61 68 33 2c 20 62 6c 39 29 29 20 7c mul(ah3, bl9)) | 0003f580: 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 0;\n hi = (h 0003f590: 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 i + Math.imul(ah 0003f5a0: 33 2c 20 62 68 39 29 29 20 7c 20 30 3b 5c 6e 20 3, bh9)) | 0;\n 0003f5b0: 20 20 20 76 61 72 20 77 31 32 20 3d 20 28 28 28 var w12 = ((( 0003f5c0: 63 20 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 c + lo) | 0) + ( 0003f5d0: 28 6d 69 64 20 26 20 30 78 31 66 66 66 29 20 3c (mid & 0x1fff) < 0003f5e0: 3c 20 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 < 13)) | 0;\n 0003f5f0: 20 63 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 c = (((hi + (mi 0003f600: 64 20 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 d >>> 13)) | 0) 0003f610: 2b 20 28 77 31 32 20 3e 3e 3e 20 32 36 29 29 20 + (w12 >>> 26)) 0003f620: 7c 20 30 3b 5c 6e 20 20 20 20 77 31 32 20 26 3d | 0;\n w12 &= 0003f630: 20 30 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 0x3ffffff;\n 0003f640: 20 2f 2a 20 6b 20 3d 20 31 33 20 2a 2f 5c 6e 20 /* k = 13 */\n 0003f650: 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 lo = Math.imu 0003f660: 6c 28 61 6c 39 2c 20 62 6c 34 29 3b 5c 6e 20 20 l(al9, bl4);\n 0003f670: 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 mid = Math.imu 0003f680: 6c 28 61 6c 39 2c 20 62 68 34 29 3b 5c 6e 20 20 l(al9, bh4);\n 0003f690: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003f6a0: 61 74 68 2e 69 6d 75 6c 28 61 68 39 2c 20 62 6c ath.imul(ah9, bl 0003f6b0: 34 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 4)) | 0;\n hi 0003f6c0: 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 39 = Math.imul(ah9 0003f6d0: 2c 20 62 68 34 29 3b 5c 6e 20 20 20 20 6c 6f 20 , bh4);\n lo 0003f6e0: 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 = (lo + Math.imu 0003f6f0: 6c 28 61 6c 38 2c 20 62 6c 35 29 29 20 7c 20 30 l(al8, bl5)) | 0 0003f700: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003f710: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c d + Math.imul(al 0003f720: 38 2c 20 62 68 35 29 29 20 7c 20 30 3b 5c 6e 20 8, bh5)) | 0;\n 0003f730: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003f740: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003f750: 6c 35 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 l5)) | 0;\n h 0003f760: 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 i = (hi + Math.i 0003f770: 6d 75 6c 28 61 68 38 2c 20 62 68 35 29 29 20 7c mul(ah8, bh5)) | 0003f780: 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 0;\n lo = (l 0003f790: 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c o + Math.imul(al 0003f7a0: 37 2c 20 62 6c 36 29 29 20 7c 20 30 3b 5c 6e 20 7, bl6)) | 0;\n 0003f7b0: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003f7c0: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 37 2c 20 62 Math.imul(al7, b 0003f7d0: 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d h6)) | 0;\n m 0003f7e0: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003f7f0: 2e 69 6d 75 6c 28 61 68 37 2c 20 62 6c 36 29 29 .imul(ah7, bl6)) 0003f800: 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 | 0;\n hi = 0003f810: 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (hi + Math.imul( 0003f820: 61 68 37 2c 20 62 68 36 29 29 20 7c 20 30 3b 5c ah7, bh6)) | 0;\ 0003f830: 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 n lo = (lo + 0003f840: 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 Math.imul(al6, b 0003f850: 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d l7)) | 0;\n m 0003f860: 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 id = (mid + Math 0003f870: 2e 69 6d 75 6c 28 61 6c 36 2c 20 62 68 37 29 29 .imul(al6, bh7)) 0003f880: 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d | 0;\n mid = 0003f890: 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 (mid + Math.imu 0003f8a0: 6c 28 61 68 36 2c 20 62 6c 37 29 29 20 7c 20 30 l(ah6, bl7)) | 0 0003f8b0: 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 ;\n hi = (hi 0003f8c0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 36 2c + Math.imul(ah6, 0003f8d0: 20 62 68 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh7)) | 0;\n 0003f8e0: 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 lo = (lo + Math 0003f8f0: 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 6c 38 29 29 .imul(al5, bl8)) 0003f900: 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d | 0;\n mid = 0003f910: 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 (mid + Math.imu 0003f920: 6c 28 61 6c 35 2c 20 62 68 38 29 29 20 7c 20 30 l(al5, bh8)) | 0 0003f930: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003f940: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 d + Math.imul(ah 0003f950: 35 2c 20 62 6c 38 29 29 20 7c 20 30 3b 5c 6e 20 5, bl8)) | 0;\n 0003f960: 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 hi = (hi + Ma 0003f970: 74 68 2e 69 6d 75 6c 28 61 68 35 2c 20 62 68 38 th.imul(ah5, bh8 0003f980: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 )) | 0;\n lo 0003f990: 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 = (lo + Math.imu 0003f9a0: 6c 28 61 6c 34 2c 20 62 6c 39 29 29 20 7c 20 30 l(al4, bl9)) | 0 0003f9b0: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003f9c0: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c d + Math.imul(al 0003f9d0: 34 2c 20 62 68 39 29 29 20 7c 20 30 3b 5c 6e 20 4, bh9)) | 0;\n 0003f9e0: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003f9f0: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 34 2c 20 62 Math.imul(ah4, b 0003fa00: 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 l9)) | 0;\n h 0003fa10: 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 i = (hi + Math.i 0003fa20: 6d 75 6c 28 61 68 34 2c 20 62 68 39 29 29 20 7c mul(ah4, bh9)) | 0003fa30: 20 30 3b 5c 6e 20 20 20 20 76 61 72 20 77 31 33 0;\n var w13 0003fa40: 20 3d 20 28 28 28 63 20 2b 20 6c 6f 29 20 7c 20 = (((c + lo) | 0003fa50: 30 29 20 2b 20 28 28 6d 69 64 20 26 20 30 78 31 0) + ((mid & 0x1 0003fa60: 66 66 66 29 20 3c 3c 20 31 33 29 29 20 7c 20 30 fff) << 13)) | 0 0003fa70: 3b 5c 6e 20 20 20 20 63 20 3d 20 28 28 28 68 69 ;\n c = (((hi 0003fa80: 20 2b 20 28 6d 69 64 20 3e 3e 3e 20 31 33 29 29 + (mid >>> 13)) 0003fa90: 20 7c 20 30 29 20 2b 20 28 77 31 33 20 3e 3e 3e | 0) + (w13 >>> 0003faa0: 20 32 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 26)) | 0;\n 0003fab0: 77 31 33 20 26 3d 20 30 78 33 66 66 66 66 66 66 w13 &= 0x3ffffff 0003fac0: 3b 5c 6e 20 20 20 20 2f 2a 20 6b 20 3d 20 31 34 ;\n /* k = 14 0003fad0: 20 2a 2f 5c 6e 20 20 20 20 6c 6f 20 3d 20 4d 61 */\n lo = Ma 0003fae0: 74 68 2e 69 6d 75 6c 28 61 6c 39 2c 20 62 6c 35 th.imul(al9, bl5 0003faf0: 29 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 4d 61 );\n mid = Ma 0003fb00: 74 68 2e 69 6d 75 6c 28 61 6c 39 2c 20 62 68 35 th.imul(al9, bh5 0003fb10: 29 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d );\n mid = (m 0003fb20: 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 id + Math.imul(a 0003fb30: 68 39 2c 20 62 6c 35 29 29 20 7c 20 30 3b 5c 6e h9, bl5)) | 0;\n 0003fb40: 20 20 20 20 68 69 20 3d 20 4d 61 74 68 2e 69 6d hi = Math.im 0003fb50: 75 6c 28 61 68 39 2c 20 62 68 35 29 3b 5c 6e 20 ul(ah9, bh5);\n 0003fb60: 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 lo = (lo + Ma 0003fb70: 74 68 2e 69 6d 75 6c 28 61 6c 38 2c 20 62 6c 36 th.imul(al8, bl6 0003fb80: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003fb90: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003fba0: 6d 75 6c 28 61 6c 38 2c 20 62 68 36 29 29 20 7c mul(al8, bh6)) | 0003fbb0: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003fbc0: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003fbd0: 61 68 38 2c 20 62 6c 36 29 29 20 7c 20 30 3b 5c ah8, bl6)) | 0;\ 0003fbe0: 6e 20 20 20 20 68 69 20 3d 20 28 68 69 20 2b 20 n hi = (hi + 0003fbf0: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003fc00: 68 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6c h6)) | 0;\n l 0003fc10: 6f 20 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 o = (lo + Math.i 0003fc20: 6d 75 6c 28 61 6c 37 2c 20 62 6c 37 29 29 20 7c mul(al7, bl7)) | 0003fc30: 20 30 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 0;\n mid = ( 0003fc40: 6d 69 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 mid + Math.imul( 0003fc50: 61 6c 37 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c al7, bh7)) | 0;\ 0003fc60: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003fc70: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 37 2c + Math.imul(ah7, 0003fc80: 20 62 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl7)) | 0;\n 0003fc90: 20 68 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 hi = (hi + Math 0003fca0: 2e 69 6d 75 6c 28 61 68 37 2c 20 62 68 37 29 29 .imul(ah7, bh7)) 0003fcb0: 20 7c 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 | 0;\n lo = 0003fcc0: 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 (lo + Math.imul( 0003fcd0: 61 6c 36 2c 20 62 6c 38 29 29 20 7c 20 30 3b 5c al6, bl8)) | 0;\ 0003fce0: 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 n mid = (mid 0003fcf0: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 36 2c + Math.imul(al6, 0003fd00: 20 62 68 38 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bh8)) | 0;\n 0003fd10: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003fd20: 74 68 2e 69 6d 75 6c 28 61 68 36 2c 20 62 6c 38 th.imul(ah6, bl8 0003fd30: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 20 )) | 0;\n hi 0003fd40: 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 6d 75 = (hi + Math.imu 0003fd50: 6c 28 61 68 36 2c 20 62 68 38 29 29 20 7c 20 30 l(ah6, bh8)) | 0 0003fd60: 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 6f 20 ;\n lo = (lo 0003fd70: 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c 35 2c + Math.imul(al5, 0003fd80: 20 62 6c 39 29 29 20 7c 20 30 3b 5c 6e 20 20 20 bl9)) | 0;\n 0003fd90: 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d 61 mid = (mid + Ma 0003fda0: 74 68 2e 69 6d 75 6c 28 61 6c 35 2c 20 62 68 39 th.imul(al5, bh9 0003fdb0: 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 6d 69 64 )) | 0;\n mid 0003fdc0: 20 3d 20 28 6d 69 64 20 2b 20 4d 61 74 68 2e 69 = (mid + Math.i 0003fdd0: 6d 75 6c 28 61 68 35 2c 20 62 6c 39 29 29 20 7c mul(ah5, bl9)) | 0003fde0: 20 30 3b 5c 6e 20 20 20 20 68 69 20 3d 20 28 68 0;\n hi = (h 0003fdf0: 69 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 i + Math.imul(ah 0003fe00: 35 2c 20 62 68 39 29 29 20 7c 20 30 3b 5c 6e 20 5, bh9)) | 0;\n 0003fe10: 20 20 20 76 61 72 20 77 31 34 20 3d 20 28 28 28 var w14 = ((( 0003fe20: 63 20 2b 20 6c 6f 29 20 7c 20 30 29 20 2b 20 28 c + lo) | 0) + ( 0003fe30: 28 6d 69 64 20 26 20 30 78 31 66 66 66 29 20 3c (mid & 0x1fff) < 0003fe40: 3c 20 31 33 29 29 20 7c 20 30 3b 5c 6e 20 20 20 < 13)) | 0;\n 0003fe50: 20 63 20 3d 20 28 28 28 68 69 20 2b 20 28 6d 69 c = (((hi + (mi 0003fe60: 64 20 3e 3e 3e 20 31 33 29 29 20 7c 20 30 29 20 d >>> 13)) | 0) 0003fe70: 2b 20 28 77 31 34 20 3e 3e 3e 20 32 36 29 29 20 + (w14 >>> 26)) 0003fe80: 7c 20 30 3b 5c 6e 20 20 20 20 77 31 34 20 26 3d | 0;\n w14 &= 0003fe90: 20 30 78 33 66 66 66 66 66 66 3b 5c 6e 20 20 20 0x3ffffff;\n 0003fea0: 20 2f 2a 20 6b 20 3d 20 31 35 20 2a 2f 5c 6e 20 /* k = 15 */\n 0003feb0: 20 20 20 6c 6f 20 3d 20 4d 61 74 68 2e 69 6d 75 lo = Math.imu 0003fec0: 6c 28 61 6c 39 2c 20 62 6c 36 29 3b 5c 6e 20 20 l(al9, bl6);\n 0003fed0: 20 20 6d 69 64 20 3d 20 4d 61 74 68 2e 69 6d 75 mid = Math.imu 0003fee0: 6c 28 61 6c 39 2c 20 62 68 36 29 3b 5c 6e 20 20 l(al9, bh6);\n 0003fef0: 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 4d mid = (mid + M 0003ff00: 61 74 68 2e 69 6d 75 6c 28 61 68 39 2c 20 62 6c ath.imul(ah9, bl 0003ff10: 36 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 69 6)) | 0;\n hi 0003ff20: 20 3d 20 4d 61 74 68 2e 69 6d 75 6c 28 61 68 39 = Math.imul(ah9 0003ff30: 2c 20 62 68 36 29 3b 5c 6e 20 20 20 20 6c 6f 20 , bh6);\n lo 0003ff40: 3d 20 28 6c 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 = (lo + Math.imu 0003ff50: 6c 28 61 6c 38 2c 20 62 6c 37 29 29 20 7c 20 30 l(al8, bl7)) | 0 0003ff60: 3b 5c 6e 20 20 20 20 6d 69 64 20 3d 20 28 6d 69 ;\n mid = (mi 0003ff70: 64 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c d + Math.imul(al 0003ff80: 38 2c 20 62 68 37 29 29 20 7c 20 30 3b 5c 6e 20 8, bh7)) | 0;\n 0003ff90: 20 20 20 6d 69 64 20 3d 20 28 6d 69 64 20 2b 20 mid = (mid + 0003ffa0: 4d 61 74 68 2e 69 6d 75 6c 28 61 68 38 2c 20 62 Math.imul(ah8, b 0003ffb0: 6c 37 29 29 20 7c 20 30 3b 5c 6e 20 20 20 20 68 l7)) | 0;\n h 0003ffc0: 69 20 3d 20 28 68 69 20 2b 20 4d 61 74 68 2e 69 i = (hi + Math.i 0003ffd0: 6d 75 6c 28 61 68 38 2c 20 62 68 37 29 29 20 7c mul(ah8, bh7)) | 0003ffe0: 20 30 3b 5c 6e 20 20 20 20 6c 6f 20 3d 20 28 6c 0;\n lo = (l 0003fff0: 6f 20 2b 20 4d 61 74 68 2e 69 6d 75 6c 28 61 6c o + Math.imul(al
Failure:
{
  "type": "action",
  "error": {
    "type": "functionCallError",
    "error": {
      "type": "compilationError",
      "error": {
        "type": "codeDoesNotExist",
        "accountId": "kiwikiwikiwi.near"
      }
    }
  }
}
No logs
Receipt:
Predecessor ID:
Receiver ID:
Gas Burned:
223 Ggas
Tokens Burned:
0 
Transferred 0.00361  to kiwikiwikiwi.near
Empty result
No logs