@stake-dao/reader 0.2.19 → 0.2.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/bytecodes/strategies/batches/batchBalancerStrats.js +1 -1
- package/dist/esm/bytecodes/strategies/batches/batchBalancerStrats.js.map +1 -1
- package/dist/esm/bytecodes/strategies/batches/batchCurveStrats.js +2 -3
- package/dist/esm/bytecodes/strategies/batches/batchCurveStrats.js.map +1 -1
- package/dist/esm/lockers/utils/getCherriesLeaderBoard.js +2 -2
- package/dist/esm/lockers/utils/getCherriesLeaderBoard.js.map +1 -1
- package/dist/esm/strategies/curve/fetch/curveApiData/getCurveApiData.js +6 -6
- package/dist/esm/strategies/curve/fetch/curveApiData/getCurveApiData.js.map +1 -1
- package/dist/esm/strategies/curve/fetch/index.js +9 -9
- package/dist/esm/strategies/curve/fetch/index.js.map +1 -1
- package/dist/esm/strategies/yearn/fetch/index.js +2 -2
- package/dist/esm/strategies/yearn/fetch/index.js.map +1 -1
- package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/bytecodes/strategies/batches/batchCurveStrats.d.ts.map +1 -1
- package/dist/types/strategies/types.d.ts +0 -1
- package/dist/types/strategies/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/bytecodes/strategies/batches/batchBalancerStrats.ts +1 -1
- package/src/bytecodes/strategies/batches/batchCurveStrats.ts +2 -3
- package/src/lockers/utils/getCherriesLeaderBoard.ts +2 -2
- package/src/strategies/curve/fetch/curveApiData/getCurveApiData.ts +6 -6
- package/src/strategies/curve/fetch/index.ts +9 -9
- package/src/strategies/types.ts +0 -1
- package/src/strategies/yearn/fetch/index.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batchCurveStrats.d.ts","sourceRoot":"","sources":["../../../../../src/bytecodes/strategies/batches/batchCurveStrats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAEnD,QAAA,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"batchCurveStrats.d.ts","sourceRoot":"","sources":["../../../../../src/bytecodes/strategies/batches/batchCurveStrats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAEnD,QAAA,MAAM,gBAAgB,EAAE,aA8JvB,CAAA;AAED,eAAe,gBAAgB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/strategies/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG,aAAa,GAAG,aAAa,CAAA;AAC1E,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AAEzC,MAAM,MAAM,IAAI,GAAG;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,EAAE,CAAA;KAChB,EAAE,CAAA;CACJ,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE;QACT,SAAS,EAAE,MAAM,CAAA;KAClB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;IACD,SAAS,CAAC,EAAE;QACV,KAAK,EAAE,MAAM,CAAA;QACb,SAAS,EAAE,MAAM,CAAA;KAClB,EAAE,CAAA;CACJ,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,eAAe,EAAE;QACf,GAAG,EAAE,MAAM,CAAA;QACX,OAAO,EAAE,MAAM,CAAA;KAChB,EAAE,CAAA;IACH,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,qBAAqB,CAAA;IAC/B,MAAM,EAAE,qBAAqB,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,IAAI,GAAG;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,MAAM,GAAG;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,IAAI,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,uBAAuB,EAAE,MAAM,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,IAAI,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,IAAI,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IACvC,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,eAAe,CAAC,EAAE,IAAI,EAAE,CAAA;IACxB,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,kBAAkB,CAAC,EAAE,GAAG,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE;QACX,EAAE,EAAE,MAAM,CAAA;QACV,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;QAClB,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,OAAO,CAAA;QACjB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE;QACH,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,SAAS,CAAA;QAClB,SAAS,EAAE,SAAS,CAAA;QACpB,SAAS,CAAC,EAAE;YACV,MAAM,EAAE,kBAAkB,CAAA;YAC1B,OAAO,EAAE,kBAAkB,CAAA;SAC5B,CAAA;KACF,CAAA;IACD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,CAAC,EAAE,aAAa,GAAG;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAA;CAChD,CAAA;AAID,MAAM,MAAM,eAAe,GAAG;IAC5B,iBAAiB,EAAE,MAAM,CAAA;IACzB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/strategies/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG,aAAa,GAAG,aAAa,CAAA;AAC1E,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;AAEzC,MAAM,MAAM,IAAI,GAAG;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,EAAE,CAAA;KAChB,EAAE,CAAA;CACJ,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE;QACT,SAAS,EAAE,MAAM,CAAA;KAClB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;IACD,SAAS,CAAC,EAAE;QACV,KAAK,EAAE,MAAM,CAAA;QACb,SAAS,EAAE,MAAM,CAAA;KAClB,EAAE,CAAA;CACJ,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,eAAe,EAAE;QACf,GAAG,EAAE,MAAM,CAAA;QACX,OAAO,EAAE,MAAM,CAAA;KAChB,EAAE,CAAA;IACH,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,qBAAqB,CAAA;IAC/B,MAAM,EAAE,qBAAqB,CAAA;CAC9B,CAAA;AAED,MAAM,MAAM,OAAO,GAAG;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,IAAI,GAAG;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,MAAM,GAAG;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,IAAI,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,uBAAuB,EAAE,MAAM,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,IAAI,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,IAAI,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IACvC,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,eAAe,CAAC,EAAE,IAAI,EAAE,CAAA;IACxB,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,kBAAkB,CAAC,EAAE,GAAG,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE;QACX,EAAE,EAAE,MAAM,CAAA;QACV,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,UAAU,EAAE,MAAM,CAAA;QAClB,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,OAAO,CAAA;QACjB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE;QACH,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,SAAS,CAAA;QAClB,SAAS,EAAE,SAAS,CAAA;QACpB,SAAS,CAAC,EAAE;YACV,MAAM,EAAE,kBAAkB,CAAA;YAC1B,OAAO,EAAE,kBAAkB,CAAA;SAC5B,CAAA;KACF,CAAA;IACD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,CAAC,EAAE,aAAa,GAAG;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAA;CAChD,CAAA;AAID,MAAM,MAAM,eAAe,GAAG;IAC5B,iBAAiB,EAAE,MAAM,CAAA;IACzB,cAAc,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,iBAAiB,EAAE,MAAM,CAAA;IACzB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,iBAAiB,EAAE,MAAM,CAAA;IACzB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,MAAM,MAAM,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,kBAAkB,GAAG,qBAAqB,CAAA;AAEnG,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,QAAQ,EAAE,CAAA;IACpB,WAAW,EAAE,GAAG,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,IAAI,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,IAAI,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IACvC,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,eAAe,CAAC,EAAE,IAAI,EAAE,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,IAAI,EAAE,CAAA;IACf,gBAAgB,CAAC,EAAE,IAAI,CAAA;CACxB,CAAA"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@ import type { BatchMetaData } from '../../types.js'
|
|
|
2
2
|
|
|
3
3
|
const batchCurveStrats: BatchMetaData = {
|
|
4
4
|
bytecode: {
|
|
5
|
-
1: '0x60806040527352f541764e6e90eebc5c21ff570de0e2d63766b65f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073989aeb4d175e16225e39e87d0d97a3360524ad8060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550734e3fbd56cd56c3e72c1403e103b45db9da5b9d2b60025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550735f3b5dfeb7b28cdbd7faba78963ee202a494e2a260035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550738e0c00ed546602fd9927df742bbabf726d5b0d1660045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503480156101b2575f80fd5b50604051612e7e380380612e7e83398181016040528101906101d491906124c1565b5f815190506101e16120d0565b8167ffffffffffffffff8111156101fb576101fa61230c565b5b60405190808252806020026020018201604052801561023457816020015b61022161210e565b8152602001906001900390816102195790505b508160e001819052505f8490505f8690508173ffffffffffffffffffffffffffffffffffffffff16636977ff926040518163ffffffff1660e01b8152600401602060405180830381865afa15801561028e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b29190612574565b8360800181815250508173ffffffffffffffffffffffffffffffffffffffff1663513872bd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610304573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103289190612574565b8360a001818152505060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561039b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103bf9190612574565b835f01818152505060035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610431573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104559190612574565b83602001818152505060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bbf7408a5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b81526004016104d791906125ae565b602060405180830381865afa1580156104f2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105169190612574565b83604001818152505060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bbf7408a60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b815260040161059a91906125ae565b602060405180830381865afa1580156105b5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d99190612574565b8360600181815250508073ffffffffffffffffffffffffffffffffffffffff1663fbbb2b106040518163ffffffff1660e01b8152600401602060405180830381865afa15801561062b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061064f9190612574565b8360c00181815250505f5b8481101561123e575f868281518110610676576106756125c7565b5b602002602001015190505f815f015190505f826040015190505f83606001519050835f01518860e0015186815181106106b2576106b16125c7565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050836020015173ffffffffffffffffffffffffffffffffffffffff166370a08231855f01516040518263ffffffff1660e01b815260040161072f91906125ae565b602060405180830381865afa15801561074a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061076e9190612574565b8860e001518681518110610785576107846125c7565b5b602002602001015160200181815250506107a48361126d60201b60201c565b8960e0015187815181106107bb576107ba6125c7565b5b60200260200101516060018a60e0015188815181106107dd576107dc6125c7565b5b6020026020010151608001828152508281525050508273ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561083b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061085f9190612574565b8860e001518681518110610876576108756125c7565b5b602002602001015160400181815250508173ffffffffffffffffffffffffffffffffffffffff166370a082315f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b81526004016108de91906125ae565b602060405180830381865afa1580156108f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091d9190612574565b8860e001518681518110610934576109336125c7565b5b602002602001015160a00181815250508173ffffffffffffffffffffffffffffffffffffffff166313ecb1ca5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b815260040161099c91906125ae565b602060405180830381865afa1580156109b7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109db9190612574565b8860e0015186815181106109f2576109f16125c7565b5b602002602001015160c00181815250508173ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a4b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a6f9190612574565b8860e001518681518110610a8657610a856125c7565b5b602002602001015160e00181815250508173ffffffffffffffffffffffffffffffffffffffff1663331345835f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401610aee91906125ae565b6020604051808303815f875af1158015610b0a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b2e9190612574565b8860e001518681518110610b4557610b446125c7565b5b60200260200101516101000181815250508673ffffffffffffffffffffffffffffffffffffffff16636207d86685606001516040518263ffffffff1660e01b8152600401610b9391906125ae565b602060405180830381865afa158015610bae573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bd29190612574565b8860e001518681518110610be957610be86125c7565b5b60200260200101516101200181815250508673ffffffffffffffffffffffffffffffffffffffff16634e791a3a85606001516040518263ffffffff1660e01b8152600401610c3791906125ae565b602060405180830381865afa158015610c52573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c769190612574565b8860e001518681518110610c8d57610c8c6125c7565b5b60200260200101516101400181815250508073ffffffffffffffffffffffffffffffffffffffff166317e280896040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ce7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d0b9190612574565b8860e001518681518110610d2257610d216125c7565b5b60200260200101516101600181815250508073ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d7c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da09190612574565b8860e001518681518110610db757610db66125c7565b5b60200260200101516101800181815250505f8173ffffffffffffffffffffffffffffffffffffffff1663963c94b96040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e369190612574565b90508067ffffffffffffffff811115610e5257610e5161230c565b5b604051908082528060200260200182016040528015610e805781602001602082028036833780820191505090505b508960e001518781518110610e9857610e976125c7565b5b60200260200101516101a001819052508067ffffffffffffffff811115610ec257610ec161230c565b5b604051908082528060200260200182016040528015610efb57816020015b610ee86121a1565b815260200190600190039081610ee05790505b508960e001518781518110610f1357610f126125c7565b5b60200260200101516101c001819052505f5b818110156110e0575f8373ffffffffffffffffffffffffffffffffffffffff166354c49fe9836040518263ffffffff1660e01b8152600401610f679190612603565b602060405180830381865afa158015610f82573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa6919061261c565b9050808b60e001518981518110610fc057610fbf6125c7565b5b60200260200101516101a001518381518110610fdf57610fde6125c7565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508373ffffffffffffffffffffffffffffffffffffffff166348e9c65e826040518263ffffffff1660e01b815260040161105291906125ae565b60c060405180830381865afa15801561106d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061109191906126e4565b8b60e0015189815181106110a8576110a76125c7565b5b60200260200101516101c0015183815181106110c7576110c66125c7565b5b6020026020010181905250508080600101915050610f25565b506110f08361143e60201b60201c565b8960e001518781518110611107576111066125c7565b5b60200260200101516101e001819052506112058e8873ffffffffffffffffffffffffffffffffffffffff166398cf47156040518163ffffffff1660e01b8152600401602060405180830381865afa158015611164573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611188919061261c565b87604001518773ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111fa9190612574565b6116bc60201b60201c565b8960e00151878151811061121c5761121b6125c7565b5b602002602001015161020001819052505050505050808060010191505061065a565b505f836040516020016112519190612da3565b6040516020818303038152906040529050602081018059038082f35b5f808273ffffffffffffffffffffffffffffffffffffffff1663f8ce31646040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156112d757506040513d601f19601f820116820180604052508101906112d49190612574565b60015b61134f578273ffffffffffffffffffffffffffffffffffffffff16633f71410a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611324573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113489190612574565b9150611354565b809250505b8273ffffffffffffffffffffffffffffffffffffffff1663422ede426040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156113bc57506040513d601f19601f820116820180604052508101906113b99190612574565b60015b611434578273ffffffffffffffffffffffffffffffffffffffff16637118035d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611409573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061142d9190612574565b9050611439565b809150505b915091565b60605f8290505f8173ffffffffffffffffffffffffffffffffffffffff1663963c94b96040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156114ad57506040513d601f19601f820116820180604052508101906114aa9190612574565b60015b6114b9575f90506114be565b809150505b8067ffffffffffffffff8111156114d8576114d761230c565b5b60405190808252806020026020018201604052801561151157816020015b6114fe6121fd565b8152602001906001900390816114f65790505b5092505f5b818110156116b4575f8373ffffffffffffffffffffffffffffffffffffffff166354c49fe9836040518263ffffffff1660e01b81526004016115589190612603565b602060405180830381865afa158015611573573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611597919061261c565b9050808583815181106115ad576115ac6125c7565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508373ffffffffffffffffffffffffffffffffffffffff166333fd6f745f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401611644929190612dc3565b602060405180830381865afa15801561165f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116839190612574565b858381518110611696576116956125c7565b5b60200260200101516020018181525050508080600101915050611516565b505050919050565b6116c461222b565b5f8590505f8490505f8273ffffffffffffffffffffffffffffffffffffffff166326256c0b876040518263ffffffff1660e01b815260040161170691906125ae565b602060405180830381865afa158015611721573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611745919061261c565b90505f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141590505f8060608315611ed0575f8590505f8173ffffffffffffffffffffffffffffffffffffffff1663475a91d16040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117f6919061261c565b90508173ffffffffffffffffffffffffffffffffffffffff166370a082315f6040518263ffffffff1660e01b815260040161183191906125ae565b602060405180830381865afa15801561184c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118709190612574565b94508c73ffffffffffffffffffffffffffffffffffffffff1663f7bbd4ec8d6040518263ffffffff1660e01b81526004016118ab91906125ae565b602060405180830381865afa1580156118c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118ea9190612574565b93505f8173ffffffffffffffffffffffffffffffffffffffff1663d55a23f46040518163ffffffff1660e01b8152600401602060405180830381865afa158015611936573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061195a9190612574565b90506001816119699190612e17565b67ffffffffffffffff8111156119825761198161230c565b5b6040519080825280602002602001820160405280156119bb57816020015b6119a86121fd565b8152602001906001900390816119a05790505b5093508173ffffffffffffffffffffffffffffffffffffffff1663f7c618c16040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a07573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a2b919061261c565b845f81518110611a3e57611a3d6125c7565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508173ffffffffffffffffffffffffffffffffffffffff16628cc262896040518263ffffffff1660e01b8152600401611ab391906125ae565b602060405180830381865afa158015611ace573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611af29190612574565b845f81518110611b0557611b046125c7565b5b602002602001015160200181815250505f5b81811015611ecb575f8373ffffffffffffffffffffffffffffffffffffffff166340c35446836040518263ffffffff1660e01b8152600401611b599190612603565b602060405180830381865afa158015611b74573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b98919061261c565b90508073ffffffffffffffffffffffffffffffffffffffff16628cc2628b6040518263ffffffff1660e01b8152600401611bd291906125ae565b602060405180830381865afa158015611bed573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c119190612574565b86600184611c1f9190612e17565b81518110611c3057611c2f6125c7565b5b6020026020010151602001818152505060978473ffffffffffffffffffffffffffffffffffffffff1663f10684546040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c8b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611caf9190612574565b10611df3575f8173ffffffffffffffffffffffffffffffffffffffff1663f7c618c16040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cfe573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d22919061261c565b90508073ffffffffffffffffffffffffffffffffffffffff1663fc0c546a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d6d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d91919061261c565b87600185611d9f9190612e17565b81518110611db057611daf6125c7565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505050611ebd565b8073ffffffffffffffffffffffffffffffffffffffff1663f7c618c16040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e3c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e60919061261c565b86600184611e6e9190612e17565b81518110611e7f57611e7e6125c7565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b508080600101915050611b17565b505050505b5f828a11611ede5789611ee0565b825b905084895f01901515908115158152505085896020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505089896040018181525050838a611f3f9190612e4a565b896060018181525050838960800181815250508673ffffffffffffffffffffffffffffffffffffffff166370a0823160015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401611fac91906125ae565b602060405180830381865afa158015611fc7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611feb9190612574565b8960a00181815250508673ffffffffffffffffffffffffffffffffffffffff166313ecb1ca60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b815260040161204e91906125ae565b602060405180830381865afa158015612069573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061208d9190612574565b8960c001818152505081896101200181905250808960e0018181525050808a6120b69190612e4a565b896101000181815250505050505050505050949350505050565b6040518061010001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f8152602001606081525090565b6040518061022001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f815260200160608152602001606081526020016060815260200161219b61222b565b81525090565b6040518060c001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81526020015f81526020015f81526020015f81525090565b60405180604001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81525090565b6040518061014001604052805f151581526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f8152602001606081525090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6122c78261229e565b9050919050565b6122d7816122bd565b81146122e1575f80fd5b50565b5f815190506122f2816122ce565b92915050565b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612342826122fc565b810181811067ffffffffffffffff821117156123615761236061230c565b5b80604052505050565b5f61237361228d565b905061237f8282612339565b919050565b5f67ffffffffffffffff82111561239e5761239d61230c565b5b602082029050602081019050919050565b5f80fd5b5f80fd5b5f608082840312156123cc576123cb6123b3565b5b6123d6608061236a565b90505f6123e5848285016122e4565b5f8301525060206123f8848285016122e4565b602083015250604061240c848285016122e4565b6040830152506060612420848285016122e4565b60608301525092915050565b5f61243e61243984612384565b61236a565b90508083825260208201905060808402830185811115612461576124606123af565b5b835b8181101561248a578061247688826123b7565b845260208401935050608081019050612463565b5050509392505050565b5f82601f8301126124a8576124a76122f8565b5b81516124b884826020860161242c565b91505092915050565b5f805f80608085870312156124d9576124d8612296565b5b5f6124e6878288016122e4565b94505060206124f7878288016122e4565b9350506040612508878288016122e4565b925050606085015167ffffffffffffffff8111156125295761252861229a565b5b61253587828801612494565b91505092959194509250565b5f819050919050565b61255381612541565b811461255d575f80fd5b50565b5f8151905061256e8161254a565b92915050565b5f6020828403121561258957612588612296565b5b5f61259684828501612560565b91505092915050565b6125a8816122bd565b82525050565b5f6020820190506125c15f83018461259f565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b6125fd81612541565b82525050565b5f6020820190506126165f8301846125f4565b92915050565b5f6020828403121561263157612630612296565b5b5f61263e848285016122e4565b91505092915050565b5f60c0828403121561265c5761265b6123b3565b5b61266660c061236a565b90505f612675848285016122e4565b5f830152506020612688848285016122e4565b602083015250604061269c84828501612560565b60408301525060606126b084828501612560565b60608301525060806126c484828501612560565b60808301525060a06126d884828501612560565b60a08301525092915050565b5f60c082840312156126f9576126f8612296565b5b5f61270684828501612647565b91505092915050565b61271881612541565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612750816122bd565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f61278a8383612747565b60208301905092915050565b5f602082019050919050565b5f6127ac82612756565b6127b68185612760565b93506127c183612770565b805f5b838110156127f15781516127d8888261277f565b97506127e383612796565b9250506001810190506127c4565b5085935050505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b60c082015f82015161283b5f850182612747565b50602082015161284e6020850182612747565b506040820151612861604085018261270f565b506060820151612874606085018261270f565b506080820151612887608085018261270f565b5060a082015161289a60a085018261270f565b50505050565b5f6128ab8383612827565b60c08301905092915050565b5f602082019050919050565b5f6128cd826127fe565b6128d78185612808565b93506128e283612818565b805f5b838110156129125781516128f988826128a0565b9750612904836128b7565b9250506001810190506128e5565b5085935050505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b604082015f82015161295c5f850182612747565b50602082015161296f602085018261270f565b50505050565b5f6129808383612948565b60408301905092915050565b5f602082019050919050565b5f6129a28261291f565b6129ac8185612929565b93506129b783612939565b805f5b838110156129e75781516129ce8882612975565b97506129d98361298c565b9250506001810190506129ba565b5085935050505092915050565b5f8115159050919050565b612a08816129f4565b82525050565b5f61014083015f830151612a245f8601826129ff565b506020830151612a376020860182612747565b506040830151612a4a604086018261270f565b506060830151612a5d606086018261270f565b506080830151612a70608086018261270f565b5060a0830151612a8360a086018261270f565b5060c0830151612a9660c086018261270f565b5060e0830151612aa960e086018261270f565b50610100830151612abe61010086018261270f565b50610120830151848203610120860152612ad88282612998565b9150508091505092915050565b5f61022083015f830151612afb5f860182612747565b506020830151612b0e602086018261270f565b506040830151612b21604086018261270f565b506060830151612b34606086018261270f565b506080830151612b47608086018261270f565b5060a0830151612b5a60a086018261270f565b5060c0830151612b6d60c086018261270f565b5060e0830151612b8060e086018261270f565b50610100830151612b9561010086018261270f565b50610120830151612baa61012086018261270f565b50610140830151612bbf61014086018261270f565b50610160830151612bd461016086018261270f565b50610180830151612be961018086018261270f565b506101a08301518482036101a0860152612c0382826127a2565b9150506101c08301518482036101c0860152612c1f82826128c3565b9150506101e08301518482036101e0860152612c3b8282612998565b915050610200830151848203610200860152612c578282612a0e565b9150508091505092915050565b5f612c6f8383612ae5565b905092915050565b5f602082019050919050565b5f612c8d8261271e565b612c978185612728565b935083602082028501612ca985612738565b805f5b85811015612ce45784840389528151612cc58582612c64565b9450612cd083612c77565b925060208a01995050600181019050612cac565b50829750879550505050505092915050565b5f61010083015f830151612d0c5f86018261270f565b506020830151612d1f602086018261270f565b506040830151612d32604086018261270f565b506060830151612d45606086018261270f565b506080830151612d58608086018261270f565b5060a0830151612d6b60a086018261270f565b5060c0830151612d7e60c086018261270f565b5060e083015184820360e0860152612d968282612c83565b9150508091505092915050565b5f6020820190508181035f830152612dbb8184612cf6565b905092915050565b5f604082019050612dd65f83018561259f565b612de3602083018461259f565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612e2182612541565b9150612e2c83612541565b9250828201905080821115612e4457612e43612dea565b5b92915050565b5f612e5482612541565b9150612e5f83612541565b9250828203905081811115612e7757612e76612dea565b5b9291505056fe',
|
|
5
|
+
1: '0x60806040527352f541764e6e90eebc5c21ff570de0e2d63766b65f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073989aeb4d175e16225e39e87d0d97a3360524ad8060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550734e3fbd56cd56c3e72c1403e103b45db9da5b9d2b60025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550735f3b5dfeb7b28cdbd7faba78963ee202a494e2a260035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550738e0c00ed546602fd9927df742bbabf726d5b0d1660045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503480156101b2575f80fd5b50604051612ded380380612ded83398181016040528101906101d49190612444565b5f815190506101e161205a565b8167ffffffffffffffff8111156101fb576101fa61228f565b5b60405190808252806020026020018201604052801561023457816020015b610221612091565b8152602001906001900390816102195790505b508160c001819052505f8490505f8690508173ffffffffffffffffffffffffffffffffffffffff16636977ff926040518163ffffffff1660e01b8152600401602060405180830381865afa15801561028e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b291906124f7565b83608001818152505060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610325573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061034991906124f7565b835f01818152505060035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103df91906124f7565b83602001818152505060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bbf7408a5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b81526004016104619190612531565b602060405180830381865afa15801561047c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104a091906124f7565b83604001818152505060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bbf7408a60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b81526004016105249190612531565b602060405180830381865afa15801561053f573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061056391906124f7565b8360600181815250508073ffffffffffffffffffffffffffffffffffffffff1663fbbb2b106040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105b5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d991906124f7565b8360a00181815250505f5b848110156111c8575f868281518110610600576105ff61254a565b5b602002602001015190505f815f015190505f826040015190505f83606001519050835f01518860c00151868151811061063c5761063b61254a565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050836020015173ffffffffffffffffffffffffffffffffffffffff166370a08231855f01516040518263ffffffff1660e01b81526004016106b99190612531565b602060405180830381865afa1580156106d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106f891906124f7565b8860c00151868151811061070f5761070e61254a565b5b6020026020010151602001818152505061072e836111f760201b60201c565b8960c0015187815181106107455761074461254a565b5b60200260200101516060018a60c0015188815181106107675761076661254a565b5b6020026020010151608001828152508281525050508273ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107c5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e991906124f7565b8860c001518681518110610800576107ff61254a565b5b602002602001015160400181815250508173ffffffffffffffffffffffffffffffffffffffff166370a082315f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b81526004016108689190612531565b602060405180830381865afa158015610883573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108a791906124f7565b8860c0015186815181106108be576108bd61254a565b5b602002602001015160a00181815250508173ffffffffffffffffffffffffffffffffffffffff166313ecb1ca5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b81526004016109269190612531565b602060405180830381865afa158015610941573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061096591906124f7565b8860c00151868151811061097c5761097b61254a565b5b602002602001015160c00181815250508173ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109d5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109f991906124f7565b8860c001518681518110610a1057610a0f61254a565b5b602002602001015160e00181815250508173ffffffffffffffffffffffffffffffffffffffff1663331345835f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401610a789190612531565b6020604051808303815f875af1158015610a94573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ab891906124f7565b8860c001518681518110610acf57610ace61254a565b5b60200260200101516101000181815250508673ffffffffffffffffffffffffffffffffffffffff16636207d86685606001516040518263ffffffff1660e01b8152600401610b1d9190612531565b602060405180830381865afa158015610b38573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b5c91906124f7565b8860c001518681518110610b7357610b7261254a565b5b60200260200101516101200181815250508673ffffffffffffffffffffffffffffffffffffffff16634e791a3a85606001516040518263ffffffff1660e01b8152600401610bc19190612531565b602060405180830381865afa158015610bdc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c0091906124f7565b8860c001518681518110610c1757610c1661254a565b5b60200260200101516101400181815250508073ffffffffffffffffffffffffffffffffffffffff166317e280896040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c71573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c9591906124f7565b8860c001518681518110610cac57610cab61254a565b5b60200260200101516101600181815250508073ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d06573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d2a91906124f7565b8860c001518681518110610d4157610d4061254a565b5b60200260200101516101800181815250505f8173ffffffffffffffffffffffffffffffffffffffff1663963c94b96040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d9c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dc091906124f7565b90508067ffffffffffffffff811115610ddc57610ddb61228f565b5b604051908082528060200260200182016040528015610e0a5781602001602082028036833780820191505090505b508960c001518781518110610e2257610e2161254a565b5b60200260200101516101a001819052508067ffffffffffffffff811115610e4c57610e4b61228f565b5b604051908082528060200260200182016040528015610e8557816020015b610e72612124565b815260200190600190039081610e6a5790505b508960c001518781518110610e9d57610e9c61254a565b5b60200260200101516101c001819052505f5b8181101561106a575f8373ffffffffffffffffffffffffffffffffffffffff166354c49fe9836040518263ffffffff1660e01b8152600401610ef19190612586565b602060405180830381865afa158015610f0c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f30919061259f565b9050808b60c001518981518110610f4a57610f4961254a565b5b60200260200101516101a001518381518110610f6957610f6861254a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508373ffffffffffffffffffffffffffffffffffffffff166348e9c65e826040518263ffffffff1660e01b8152600401610fdc9190612531565b60c060405180830381865afa158015610ff7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061101b9190612667565b8b60c0015189815181106110325761103161254a565b5b60200260200101516101c0015183815181106110515761105061254a565b5b6020026020010181905250508080600101915050610eaf565b5061107a836113c860201b60201c565b8960c0015187815181106110915761109061254a565b5b60200260200101516101e0018190525061118f8e8873ffffffffffffffffffffffffffffffffffffffff166398cf47156040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110ee573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611112919061259f565b87604001518773ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611160573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061118491906124f7565b61164660201b60201c565b8960c0015187815181106111a6576111a561254a565b5b60200260200101516102000181905250505050505080806001019150506105e4565b505f836040516020016111db9190612d12565b6040516020818303038152906040529050602081018059038082f35b5f808273ffffffffffffffffffffffffffffffffffffffff1663f8ce31646040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561126157506040513d601f19601f8201168201806040525081019061125e91906124f7565b60015b6112d9578273ffffffffffffffffffffffffffffffffffffffff16633f71410a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112ae573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112d291906124f7565b91506112de565b809250505b8273ffffffffffffffffffffffffffffffffffffffff1663422ede426040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561134657506040513d601f19601f8201168201806040525081019061134391906124f7565b60015b6113be578273ffffffffffffffffffffffffffffffffffffffff16637118035d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611393573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113b791906124f7565b90506113c3565b809150505b915091565b60605f8290505f8173ffffffffffffffffffffffffffffffffffffffff1663963c94b96040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561143757506040513d601f19601f8201168201806040525081019061143491906124f7565b60015b611443575f9050611448565b809150505b8067ffffffffffffffff8111156114625761146161228f565b5b60405190808252806020026020018201604052801561149b57816020015b611488612180565b8152602001906001900390816114805790505b5092505f5b8181101561163e575f8373ffffffffffffffffffffffffffffffffffffffff166354c49fe9836040518263ffffffff1660e01b81526004016114e29190612586565b602060405180830381865afa1580156114fd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611521919061259f565b9050808583815181106115375761153661254a565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508373ffffffffffffffffffffffffffffffffffffffff166333fd6f745f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b81526004016115ce929190612d32565b602060405180830381865afa1580156115e9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061160d91906124f7565b8583815181106116205761161f61254a565b5b602002602001015160200181815250505080806001019150506114a0565b505050919050565b61164e6121ae565b5f8590505f8490505f8273ffffffffffffffffffffffffffffffffffffffff166326256c0b876040518263ffffffff1660e01b81526004016116909190612531565b602060405180830381865afa1580156116ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116cf919061259f565b90505f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141590505f8060608315611e5a575f8590505f8173ffffffffffffffffffffffffffffffffffffffff1663475a91d16040518163ffffffff1660e01b8152600401602060405180830381865afa15801561175c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611780919061259f565b90508173ffffffffffffffffffffffffffffffffffffffff166370a082315f6040518263ffffffff1660e01b81526004016117bb9190612531565b602060405180830381865afa1580156117d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117fa91906124f7565b94508c73ffffffffffffffffffffffffffffffffffffffff1663f7bbd4ec8d6040518263ffffffff1660e01b81526004016118359190612531565b602060405180830381865afa158015611850573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061187491906124f7565b93505f8173ffffffffffffffffffffffffffffffffffffffff1663d55a23f46040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118c0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118e491906124f7565b90506001816118f39190612d86565b67ffffffffffffffff81111561190c5761190b61228f565b5b60405190808252806020026020018201604052801561194557816020015b611932612180565b81526020019060019003908161192a5790505b5093508173ffffffffffffffffffffffffffffffffffffffff1663f7c618c16040518163ffffffff1660e01b8152600401602060405180830381865afa158015611991573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119b5919061259f565b845f815181106119c8576119c761254a565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508173ffffffffffffffffffffffffffffffffffffffff16628cc262896040518263ffffffff1660e01b8152600401611a3d9190612531565b602060405180830381865afa158015611a58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a7c91906124f7565b845f81518110611a8f57611a8e61254a565b5b602002602001015160200181815250505f5b81811015611e55575f8373ffffffffffffffffffffffffffffffffffffffff166340c35446836040518263ffffffff1660e01b8152600401611ae39190612586565b602060405180830381865afa158015611afe573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b22919061259f565b90508073ffffffffffffffffffffffffffffffffffffffff16628cc2628b6040518263ffffffff1660e01b8152600401611b5c9190612531565b602060405180830381865afa158015611b77573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b9b91906124f7565b86600184611ba99190612d86565b81518110611bba57611bb961254a565b5b6020026020010151602001818152505060978473ffffffffffffffffffffffffffffffffffffffff1663f10684546040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c15573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c3991906124f7565b10611d7d575f8173ffffffffffffffffffffffffffffffffffffffff1663f7c618c16040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c88573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cac919061259f565b90508073ffffffffffffffffffffffffffffffffffffffff1663fc0c546a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cf7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d1b919061259f565b87600185611d299190612d86565b81518110611d3a57611d3961254a565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505050611e47565b8073ffffffffffffffffffffffffffffffffffffffff1663f7c618c16040518163ffffffff1660e01b8152600401602060405180830381865afa158015611dc6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dea919061259f565b86600184611df89190612d86565b81518110611e0957611e0861254a565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b508080600101915050611aa1565b505050505b5f828a11611e685789611e6a565b825b905084895f01901515908115158152505085896020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505089896040018181525050838a611ec99190612db9565b896060018181525050838960800181815250508673ffffffffffffffffffffffffffffffffffffffff166370a0823160015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401611f369190612531565b602060405180830381865afa158015611f51573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f7591906124f7565b8960a00181815250508673ffffffffffffffffffffffffffffffffffffffff166313ecb1ca60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b8152600401611fd89190612531565b602060405180830381865afa158015611ff3573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061201791906124f7565b8960c001818152505081896101200181905250808960e0018181525050808a6120409190612db9565b896101000181815250505050505050505050949350505050565b6040518060e001604052805f81526020015f81526020015f81526020015f81526020015f81526020015f8152602001606081525090565b6040518061022001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f815260200160608152602001606081526020016060815260200161211e6121ae565b81525090565b6040518060c001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81526020015f81526020015f81526020015f81525090565b60405180604001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81525090565b6040518061014001604052805f151581526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f8152602001606081525090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61224a82612221565b9050919050565b61225a81612240565b8114612264575f80fd5b50565b5f8151905061227581612251565b92915050565b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6122c58261227f565b810181811067ffffffffffffffff821117156122e4576122e361228f565b5b80604052505050565b5f6122f6612210565b905061230282826122bc565b919050565b5f67ffffffffffffffff8211156123215761232061228f565b5b602082029050602081019050919050565b5f80fd5b5f80fd5b5f6080828403121561234f5761234e612336565b5b61235960806122ed565b90505f61236884828501612267565b5f83015250602061237b84828501612267565b602083015250604061238f84828501612267565b60408301525060606123a384828501612267565b60608301525092915050565b5f6123c16123bc84612307565b6122ed565b905080838252602082019050608084028301858111156123e4576123e3612332565b5b835b8181101561240d57806123f9888261233a565b8452602084019350506080810190506123e6565b5050509392505050565b5f82601f83011261242b5761242a61227b565b5b815161243b8482602086016123af565b91505092915050565b5f805f806080858703121561245c5761245b612219565b5b5f61246987828801612267565b945050602061247a87828801612267565b935050604061248b87828801612267565b925050606085015167ffffffffffffffff8111156124ac576124ab61221d565b5b6124b887828801612417565b91505092959194509250565b5f819050919050565b6124d6816124c4565b81146124e0575f80fd5b50565b5f815190506124f1816124cd565b92915050565b5f6020828403121561250c5761250b612219565b5b5f612519848285016124e3565b91505092915050565b61252b81612240565b82525050565b5f6020820190506125445f830184612522565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b612580816124c4565b82525050565b5f6020820190506125995f830184612577565b92915050565b5f602082840312156125b4576125b3612219565b5b5f6125c184828501612267565b91505092915050565b5f60c082840312156125df576125de612336565b5b6125e960c06122ed565b90505f6125f884828501612267565b5f83015250602061260b84828501612267565b602083015250604061261f848285016124e3565b6040830152506060612633848285016124e3565b6060830152506080612647848285016124e3565b60808301525060a061265b848285016124e3565b60a08301525092915050565b5f60c0828403121561267c5761267b612219565b5b5f612689848285016125ca565b91505092915050565b61269b816124c4565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6126d381612240565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f61270d83836126ca565b60208301905092915050565b5f602082019050919050565b5f61272f826126d9565b61273981856126e3565b9350612744836126f3565b805f5b8381101561277457815161275b8882612702565b975061276683612719565b925050600181019050612747565b5085935050505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b60c082015f8201516127be5f8501826126ca565b5060208201516127d160208501826126ca565b5060408201516127e46040850182612692565b5060608201516127f76060850182612692565b50608082015161280a6080850182612692565b5060a082015161281d60a0850182612692565b50505050565b5f61282e83836127aa565b60c08301905092915050565b5f602082019050919050565b5f61285082612781565b61285a818561278b565b93506128658361279b565b805f5b8381101561289557815161287c8882612823565b97506128878361283a565b925050600181019050612868565b5085935050505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b604082015f8201516128df5f8501826126ca565b5060208201516128f26020850182612692565b50505050565b5f61290383836128cb565b60408301905092915050565b5f602082019050919050565b5f612925826128a2565b61292f81856128ac565b935061293a836128bc565b805f5b8381101561296a57815161295188826128f8565b975061295c8361290f565b92505060018101905061293d565b5085935050505092915050565b5f8115159050919050565b61298b81612977565b82525050565b5f61014083015f8301516129a75f860182612982565b5060208301516129ba60208601826126ca565b5060408301516129cd6040860182612692565b5060608301516129e06060860182612692565b5060808301516129f36080860182612692565b5060a0830151612a0660a0860182612692565b5060c0830151612a1960c0860182612692565b5060e0830151612a2c60e0860182612692565b50610100830151612a41610100860182612692565b50610120830151848203610120860152612a5b828261291b565b9150508091505092915050565b5f61022083015f830151612a7e5f8601826126ca565b506020830151612a916020860182612692565b506040830151612aa46040860182612692565b506060830151612ab76060860182612692565b506080830151612aca6080860182612692565b5060a0830151612add60a0860182612692565b5060c0830151612af060c0860182612692565b5060e0830151612b0360e0860182612692565b50610100830151612b18610100860182612692565b50610120830151612b2d610120860182612692565b50610140830151612b42610140860182612692565b50610160830151612b57610160860182612692565b50610180830151612b6c610180860182612692565b506101a08301518482036101a0860152612b868282612725565b9150506101c08301518482036101c0860152612ba28282612846565b9150506101e08301518482036101e0860152612bbe828261291b565b915050610200830151848203610200860152612bda8282612991565b9150508091505092915050565b5f612bf28383612a68565b905092915050565b5f602082019050919050565b5f612c10826126a1565b612c1a81856126ab565b935083602082028501612c2c856126bb565b805f5b85811015612c675784840389528151612c488582612be7565b9450612c5383612bfa565b925060208a01995050600181019050612c2f565b50829750879550505050505092915050565b5f60e083015f830151612c8e5f860182612692565b506020830151612ca16020860182612692565b506040830151612cb46040860182612692565b506060830151612cc76060860182612692565b506080830151612cda6080860182612692565b5060a0830151612ced60a0860182612692565b5060c083015184820360c0860152612d058282612c06565b9150508091505092915050565b5f6020820190508181035f830152612d2a8184612c79565b905092915050565b5f604082019050612d455f830185612522565b612d526020830184612522565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612d90826124c4565b9150612d9b836124c4565b9250828201905080821115612db357612db2612d59565b5b92915050565b5f612dc3826124c4565b9150612dce836124c4565b9250828203905081811115612de657612de5612d59565b5b9291505056fe',
|
|
6
6
|
42161:
|
|
7
7
|
'0x60806040527311cdb42b0eb46d95f990bedd4695a6e3fa0349785f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507352f541764e6e90eebc5c21ff570de0e2d63766b660015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503480156100b6575f80fd5b5060405161199338038061199383398181016040528101906100d8919061124c565b5f815190506100e5610f01565b8167ffffffffffffffff8111156100ff576100fe611097565b5b60405190808252806020026020018201604052801561013857816020015b610125610f14565b81526020019060019003908161011d5790505b50815f01819052505f8490505f5b83811015610c52575f858281518110610162576101616112a6565b5b602002602001015190505f815f015190505f826040015190505f83606001519050835f0151875f0151868151811061019d5761019c6112a6565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050836020015173ffffffffffffffffffffffffffffffffffffffff166370a08231855f01516040518263ffffffff1660e01b815260040161021a91906112e2565b602060405180830381865afa158015610235573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610259919061132e565b875f0151868151811061026f5761026e6112a6565b5b602002602001015160200181815250508273ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102ec919061132e565b875f01518681518110610302576103016112a6565b5b602002602001015160400181815250508573ffffffffffffffffffffffffffffffffffffffff166360e3d57385604001515f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff1660e01b8152600401610370929190611359565b602060405180830381865afa15801561038b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103af919061132e565b875f015186815181106103c5576103c46112a6565b5b602002602001015160600181815250508573ffffffffffffffffffffffffffffffffffffffff16635ef1e4b185604001515f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff1660e01b8152600401610433929190611359565b602060405180830381865afa15801561044e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610472919061132e565b875f01518681518110610488576104876112a6565b5b602002602001015160800181815250508573ffffffffffffffffffffffffffffffffffffffff1663bcd53d7b85604001515f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff1660e01b81526004016104f6929190611359565b602060405180830381865afa158015610511573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610535919061132e565b875f0151868151811061054b5761054a6112a6565b5b602002602001015160a00181815250508573ffffffffffffffffffffffffffffffffffffffff166343fde00885604001515f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff1660e01b81526004016105b9929190611359565b602060405180830381865afa1580156105d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105f8919061132e565b875f0151868151811061060e5761060d6112a6565b5b602002602001015160c00181815250508173ffffffffffffffffffffffffffffffffffffffff166370a0823160015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b815260040161067891906112e2565b602060405180830381865afa158015610693573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106b7919061132e565b875f015186815181106106cd576106cc6112a6565b5b602002602001015160e00181815250508173ffffffffffffffffffffffffffffffffffffffff166313ecb1ca60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b815260040161073791906112e2565b602060405180830381865afa158015610752573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610776919061132e565b875f0151868151811061078c5761078b6112a6565b5b60200260200101516101000181815250508173ffffffffffffffffffffffffffffffffffffffff16633313458360015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b81526004016107f791906112e2565b6020604051808303815f875af1158015610813573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610837919061132e565b875f0151868151811061084d5761084c6112a6565b5b60200260200101516101200181815250508073ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108a7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cb919061132e565b875f015186815181106108e1576108e06112a6565b5b60200260200101516101400181815250505f8173ffffffffffffffffffffffffffffffffffffffff1663963c94b96040518163ffffffff1660e01b8152600401602060405180830381865afa15801561093c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610960919061132e565b90508067ffffffffffffffff81111561097c5761097b611097565b5b6040519080825280602002602001820160405280156109aa5781602001602082028036833780820191505090505b50885f015187815181106109c1576109c06112a6565b5b602002602001015161016001819052508067ffffffffffffffff8111156109eb576109ea611097565b5b604051908082528060200260200182016040528015610a2457816020015b610a11610f8e565b815260200190600190039081610a095790505b50885f01518781518110610a3b57610a3a6112a6565b5b602002602001015161018001819052505f5b81811015610c06575f8373ffffffffffffffffffffffffffffffffffffffff166354c49fe9836040518263ffffffff1660e01b8152600401610a8f919061138f565b602060405180830381865afa158015610aaa573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ace91906113a8565b9050808a5f01518981518110610ae757610ae66112a6565b5b602002602001015161016001518381518110610b0657610b056112a6565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508373ffffffffffffffffffffffffffffffffffffffff166348e9c65e826040518263ffffffff1660e01b8152600401610b7991906112e2565b60c060405180830381865afa158015610b94573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bb89190611470565b8a5f01518981518110610bce57610bcd6112a6565b5b602002602001015161018001518381518110610bed57610bec6112a6565b5b6020026020010181905250508080600101915050610a4d565b50610c1a8560400151610c8160201b60201c565b885f01518781518110610c3057610c2f6112a6565b5b60200260200101516101a0018190525050505050508080600101915050610146565b505f82604051602001610c659190611972565b6040516020818303038152906040529050602081018059038082f35b60605f8290505f8173ffffffffffffffffffffffffffffffffffffffff1663963c94b96040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610cf057506040513d601f19601f82011682018060405250810190610ced919061132e565b60015b610cfc575f9050610d01565b809150505b8067ffffffffffffffff811115610d1b57610d1a611097565b5b604051908082528060200260200182016040528015610d5457816020015b610d41610fea565b815260200190600190039081610d395790505b5092505f5b81811015610ef9575f8373ffffffffffffffffffffffffffffffffffffffff166354c49fe9836040518263ffffffff1660e01b8152600401610d9b919061138f565b602060405180830381865afa158015610db6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dda91906113a8565b905080858381518110610df057610def6112a6565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508373ffffffffffffffffffffffffffffffffffffffff166333fd6f7460015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401610e89929190611359565b602060405180830381865afa158015610ea4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ec8919061132e565b858381518110610edb57610eda6112a6565b5b60200260200101516020018181525050508080600101915050610d59565b505050919050565b6040518060200160405280606081525090565b604051806101c001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020016060815260200160608152602001606081525090565b6040518060c001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81526020015f81526020015f81526020015f81525090565b60405180604001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81525090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61105282611029565b9050919050565b61106281611048565b811461106c575f80fd5b50565b5f8151905061107d81611059565b92915050565b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6110cd82611087565b810181811067ffffffffffffffff821117156110ec576110eb611097565b5b80604052505050565b5f6110fe611018565b905061110a82826110c4565b919050565b5f67ffffffffffffffff82111561112957611128611097565b5b602082029050602081019050919050565b5f80fd5b5f80fd5b5f608082840312156111575761115661113e565b5b61116160806110f5565b90505f6111708482850161106f565b5f8301525060206111838482850161106f565b60208301525060406111978482850161106f565b60408301525060606111ab8482850161106f565b60608301525092915050565b5f6111c96111c48461110f565b6110f5565b905080838252602082019050608084028301858111156111ec576111eb61113a565b5b835b8181101561121557806112018882611142565b8452602084019350506080810190506111ee565b5050509392505050565b5f82601f83011261123357611232611083565b5b81516112438482602086016111b7565b91505092915050565b5f806040838503121561126257611261611021565b5b5f61126f8582860161106f565b925050602083015167ffffffffffffffff8111156112905761128f611025565b5b61129c8582860161121f565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b6112dc81611048565b82525050565b5f6020820190506112f55f8301846112d3565b92915050565b5f819050919050565b61130d816112fb565b8114611317575f80fd5b50565b5f8151905061132881611304565b92915050565b5f6020828403121561134357611342611021565b5b5f6113508482850161131a565b91505092915050565b5f60408201905061136c5f8301856112d3565b61137960208301846112d3565b9392505050565b611389816112fb565b82525050565b5f6020820190506113a25f830184611380565b92915050565b5f602082840312156113bd576113bc611021565b5b5f6113ca8482850161106f565b91505092915050565b5f60c082840312156113e8576113e761113e565b5b6113f260c06110f5565b90505f6114018482850161106f565b5f8301525060206114148482850161106f565b60208301525060406114288482850161131a565b604083015250606061143c8482850161131a565b60608301525060806114508482850161131a565b60808301525060a06114648482850161131a565b60a08301525092915050565b5f60c0828403121561148557611484611021565b5b5f611492848285016113d3565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6114cd81611048565b82525050565b6114dc816112fb565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f61151683836114c4565b60208301905092915050565b5f602082019050919050565b5f611538826114e2565b61154281856114ec565b935061154d836114fc565b805f5b8381101561157d578151611564888261150b565b975061156f83611522565b925050600181019050611550565b5085935050505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b60c082015f8201516115c75f8501826114c4565b5060208201516115da60208501826114c4565b5060408201516115ed60408501826114d3565b50606082015161160060608501826114d3565b50608082015161161360808501826114d3565b5060a082015161162660a08501826114d3565b50505050565b5f61163783836115b3565b60c08301905092915050565b5f602082019050919050565b5f6116598261158a565b6116638185611594565b935061166e836115a4565b805f5b8381101561169e578151611685888261162c565b975061169083611643565b925050600181019050611671565b5085935050505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b604082015f8201516116e85f8501826114c4565b5060208201516116fb60208501826114d3565b50505050565b5f61170c83836116d4565b60408301905092915050565b5f602082019050919050565b5f61172e826116ab565b61173881856116b5565b9350611743836116c5565b805f5b8381101561177357815161175a8882611701565b975061176583611718565b925050600181019050611746565b5085935050505092915050565b5f6101c083015f8301516117965f8601826114c4565b5060208301516117a960208601826114d3565b5060408301516117bc60408601826114d3565b5060608301516117cf60608601826114d3565b5060808301516117e260808601826114d3565b5060a08301516117f560a08601826114d3565b5060c083015161180860c08601826114d3565b5060e083015161181b60e08601826114d3565b506101008301516118306101008601826114d3565b506101208301516118456101208601826114d3565b5061014083015161185a6101408601826114d3565b50610160830151848203610160860152611874828261152e565b915050610180830151848203610180860152611890828261164f565b9150506101a08301518482036101a08601526118ac8282611724565b9150508091505092915050565b5f6118c48383611780565b905092915050565b5f602082019050919050565b5f6118e28261149b565b6118ec81856114a5565b9350836020820285016118fe856114b5565b805f5b85811015611939578484038952815161191a85826118b9565b9450611925836118cc565b925060208a01995050600181019050611901565b50829750879550505050505092915050565b5f602083015f8301518482035f86015261196582826118d8565b9150508091505092915050565b5f6020820190508181035f83015261198a818461194b565b90509291505056fe',
|
|
8
8
|
},
|
|
@@ -19,7 +19,7 @@ const batchCurveStrats: BatchMetaData = {
|
|
|
19
19
|
outputTypeHr: {
|
|
20
20
|
1: [
|
|
21
21
|
'CurveReturnData returnData',
|
|
22
|
-
'struct CurveReturnData { uint256 cvxTotalSupply; uint256 veCrvTotalSupply; uint256 stakeDaoVeBoost; uint256 convexVeBoost; uint256 totalGaugeWeights; uint256
|
|
22
|
+
'struct CurveReturnData { uint256 cvxTotalSupply; uint256 veCrvTotalSupply; uint256 stakeDaoVeBoost; uint256 convexVeBoost; uint256 totalGaugeWeights; uint256 claimerFee; CurveStratsData[] curveStratsData; }',
|
|
23
23
|
'struct CurveRewardToken { address token; uint256 claimable; }',
|
|
24
24
|
'struct Onlyboost { bool active; address convexImpl; uint256 totalSupply; uint256 stakeDaoSupply; uint256 convexSupply; uint256 convexStrategyHoldings; uint256 convexWorkingBalance; uint256 stakeDaoOptSupply; uint256 convexOptSupply; CurveRewardToken[] claimableData; }',
|
|
25
25
|
'struct CurveStratsData { address vault; uint256 vaultHoldings; uint256 totalSupply; uint256 accumulatedFees; uint256 keeperFee; uint256 strategyHoldings; uint256 workingBalance; uint256 curveGaugeTotalSupply; uint256 claimablePendingRewards; uint256 gaugeRelativeWeight; uint256 gaugeWeight; uint256 sdWorkingSupply; uint256 sdGaugeTotalSupply; address[] rewardsTokens; RewardData[] rewardsData; CurveRewardToken[] claimableData; Onlyboost onlyboost; }',
|
|
@@ -44,7 +44,6 @@ const batchCurveStrats: BatchMetaData = {
|
|
|
44
44
|
{ type: 'uint256', name: 'stakeDaoVeBoost' },
|
|
45
45
|
{ type: 'uint256', name: 'convexVeBoost' },
|
|
46
46
|
{ type: 'uint256', name: 'totalGaugeWeights' },
|
|
47
|
-
{ type: 'uint256', name: 'nextEffectiveTimestamp' },
|
|
48
47
|
{ type: 'uint256', name: 'claimerFee' },
|
|
49
48
|
{
|
|
50
49
|
type: 'tuple[]',
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { formatUnits } from 'viem'
|
|
2
2
|
|
|
3
3
|
import { graphql } from '../../utils.js'
|
|
4
4
|
import { SDCAKE_AIRDROP_GLOBAL_QUERY, SDCAKE_AIRDROP_GRAPH_URL } from './endpoints.js'
|
|
@@ -23,7 +23,7 @@ export const getCherriesLeaderBoard = async () => {
|
|
|
23
23
|
)
|
|
24
24
|
return {
|
|
25
25
|
...user,
|
|
26
|
-
currentPoints: Number(
|
|
26
|
+
currentPoints: Number(formatUnits(currentPoints, 18)),
|
|
27
27
|
}
|
|
28
28
|
})
|
|
29
29
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ONE_YEAR, tokenWithId } from '@stake-dao/constants'
|
|
2
2
|
import { chunk, uniqBy } from 'lodash-es'
|
|
3
|
-
import { encodeAbiParameters,
|
|
3
|
+
import { encodeAbiParameters, formatUnits, parseAbiParameters, zeroAddress } from 'viem'
|
|
4
4
|
import { mainnet } from 'viem/chains'
|
|
5
5
|
import { LLAMA_API_URL } from '../../../../endpoints.js'
|
|
6
6
|
import { getLlamaTokenPrefix, getPricesFromCurve } from '../../../../prices.js'
|
|
@@ -125,7 +125,7 @@ export const getCurveApiData = async (rpc: string, chainId: number, gaugesWeight
|
|
|
125
125
|
})
|
|
126
126
|
|
|
127
127
|
const usdTotal = coinsWithUsdBalance.reduce((total: number, x) => (total += x.usdBalance), 0)
|
|
128
|
-
const lpPriceInUsd = p.totalSupply > BigInt(0) ? usdTotal / Number(
|
|
128
|
+
const lpPriceInUsd = p.totalSupply > BigInt(0) ? usdTotal / Number(formatUnits(p.totalSupply, 18)) : 0
|
|
129
129
|
|
|
130
130
|
let gaugeFromPool = CUSTOM_GAUGES[p.lp] ? CUSTOM_GAUGES[p.lp] : p.gauge
|
|
131
131
|
const gaugeData = gauges.find((g) => equalTlc(g.gauge, gaugeFromPool) || equalTlc(g.lpToken, p.lp))
|
|
@@ -139,9 +139,9 @@ export const getCurveApiData = async (rpc: string, chainId: number, gaugesWeight
|
|
|
139
139
|
const active = gaugeData && gaugeWeightData && !gaugeData.isKilled
|
|
140
140
|
|
|
141
141
|
if (active) {
|
|
142
|
-
const inflationRate = Number(
|
|
143
|
-
const relativeWeight = Number(
|
|
144
|
-
const workingSupply = Number(
|
|
142
|
+
const inflationRate = Number(formatUnits(BigInt(gaugeWeightData.inflationRate), 18))
|
|
143
|
+
const relativeWeight = Number(formatUnits(BigInt(gaugeWeightData.relativeWeight), 18))
|
|
144
|
+
const workingSupply = Number(formatUnits(gaugeData.workingSupply, 18))
|
|
145
145
|
|
|
146
146
|
if (lpPriceInUsd && lpPriceInUsd > 0 && workingSupply > 0) {
|
|
147
147
|
minCrvApr =
|
|
@@ -185,7 +185,7 @@ export const getCurveApiData = async (rpc: string, chainId: number, gaugesWeight
|
|
|
185
185
|
isLending,
|
|
186
186
|
lp: p.lp,
|
|
187
187
|
pool: p.pool,
|
|
188
|
-
totalSupply:
|
|
188
|
+
totalSupply: formatUnits(p.totalSupply, 18),
|
|
189
189
|
coins: coinsWithUsdBalance,
|
|
190
190
|
underlyingCoins: p.underlyingCoins,
|
|
191
191
|
usdTotal,
|
|
@@ -72,7 +72,6 @@ export const fetchCurve = async ({
|
|
|
72
72
|
|
|
73
73
|
const global: CurveGlobalData = {
|
|
74
74
|
totalGaugeWeights: '0',
|
|
75
|
-
nextEffectiveTimestamp: '0',
|
|
76
75
|
cvxTotalSupply: '0',
|
|
77
76
|
veCrvTotalSupply: '0',
|
|
78
77
|
stakeDaoVeBoost: '0',
|
|
@@ -91,19 +90,20 @@ export const fetchCurve = async ({
|
|
|
91
90
|
|
|
92
91
|
const crv = tokenWithId('crv', chainId)
|
|
93
92
|
decodedPromise.forEach((d: any, index: number) => {
|
|
94
|
-
if (index === 0
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
93
|
+
if (index === 0) {
|
|
94
|
+
if (chainId === mainnet.id) {
|
|
95
|
+
global.totalGaugeWeights = formatUnits(d.totalGaugeWeights, 0)
|
|
96
|
+
global.cvxTotalSupply = formatUnits(d.cvxTotalSupply, 0)
|
|
97
|
+
global.veCrvTotalSupply = formatUnits(d.veCrvTotalSupply, 0)
|
|
98
|
+
global.stakeDaoVeBoost = formatUnits(d.stakeDaoVeBoost, 0)
|
|
99
|
+
global.convexVeBoost = formatUnits(d.convexVeBoost, 0)
|
|
100
|
+
}
|
|
101
101
|
|
|
102
102
|
global.fees = {
|
|
103
103
|
veSdt: 5,
|
|
104
104
|
perf: 2,
|
|
105
105
|
accumulator: 8,
|
|
106
|
-
claimer: Number(d.claimerFee) / 100,
|
|
106
|
+
claimer: Number(d.claimerFee) / 100 || 0,
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
const parsedData = d.curveStratsData.map((v: any) => {
|
package/src/strategies/types.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { chunk } from 'lodash-es'
|
|
2
|
-
import {
|
|
2
|
+
import { formatUnits } from 'viem'
|
|
3
3
|
|
|
4
4
|
import { ONE_YEAR, yearnStrats } from '@stake-dao/constants'
|
|
5
5
|
import multicallYearnStratsAbi from '../../../abis/yearnVaultsMulticall.js'
|
|
@@ -163,7 +163,7 @@ export const fetchYearn = async ({
|
|
|
163
163
|
]
|
|
164
164
|
|
|
165
165
|
const sdGaugeTotalSupply = chunkedRawData[index][10].result
|
|
166
|
-
const tvl = Number(
|
|
166
|
+
const tvl = Number(formatUnits(sdGaugeTotalSupply, s.lpToken.decimals)) * lpPriceInUsd
|
|
167
167
|
|
|
168
168
|
const rewardsData: RewardsData[] = s.rewards.map((rewardToken: any) => {
|
|
169
169
|
const fetchedRewardData = rewardsRawData.shift().result
|