@layerzerolabs/lz-evm-sdk-v1 2.1.18 → 2.1.19

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.
Files changed (42) hide show
  1. package/artifacts/contracts/Endpoint.sol/Endpoint.json +2 -2
  2. package/artifacts/contracts/NonceContract.sol/NonceContract.json +2 -2
  3. package/artifacts/contracts/PriceFeed.sol/PriceFeed.json +2 -2
  4. package/artifacts/contracts/Relayer.sol/Relayer.json +2 -2
  5. package/artifacts/contracts/RelayerV2.sol/RelayerV2.json +2 -2
  6. package/artifacts/contracts/UltraLightNode.sol/UltraLightNode.json +2 -2
  7. package/artifacts/contracts/UltraLightNodeV2.sol/UltraLightNodeV2.json +2 -2
  8. package/artifacts/contracts/proof/FPValidator.sol/FPValidator.json +2 -2
  9. package/artifacts/contracts/proof/MPTValidator.sol/MPTValidator.json +2 -2
  10. package/artifacts/contracts/proof/MPTValidator01.sol/MPTValidator01.json +2 -2
  11. package/artifacts/contracts/proof/MPTValidatorStgV3.sol/MPTValidatorStgV3.json +2 -2
  12. package/artifacts/contracts/proof/MPTValidatorV2.sol/MPTValidatorV2.json +2 -2
  13. package/artifacts/contracts/proof/MPTValidatorV4.sol/MPTValidatorV4.json +2 -2
  14. package/artifacts/contracts/proof/MPTValidatorV5.sol/MPTValidatorV5.json +2 -2
  15. package/artifacts/contracts/proof/utility/Buffer.sol/Buffer.json +2 -2
  16. package/artifacts/contracts/proof/utility/LayerZeroPacket.sol/LayerZeroPacket.json +2 -2
  17. package/artifacts/contracts/proof/utility/RLPDecode.sol/RLPDecode.json +2 -2
  18. package/artifacts/contracts/proof/utility/UltraLightNodeEVMDecoder.sol/UltraLightNodeEVMDecoder.json +2 -2
  19. package/deployments/hedera-testnet/DefaultProxyAdmin.json +273 -0
  20. package/deployments/hedera-testnet/FPValidator.json +382 -0
  21. package/deployments/hedera-testnet/MPTValidator01.json +395 -0
  22. package/deployments/hedera-testnet/NonceContract.json +159 -0
  23. package/deployments/hedera-testnet/RelayerV2.json +1249 -0
  24. package/deployments/hedera-testnet/RelayerV2_Implementation.json +1376 -0
  25. package/deployments/hedera-testnet/RelayerV2_Proxy.json +245 -0
  26. package/deployments/hedera-testnet/TreasuryV2.json +458 -0
  27. package/deployments/hedera-testnet/UltraLightNodeV2.json +1816 -0
  28. package/dist/{index-74BGj4H4.d.mts → index-jtDJtY0J.d.mts} +30 -30
  29. package/dist/{index-74BGj4H4.d.ts → index-jtDJtY0J.d.ts} +30 -30
  30. package/dist/index.browser.cjs +30 -30
  31. package/dist/index.browser.cjs.map +1 -1
  32. package/dist/index.browser.d.mts +1 -1
  33. package/dist/index.browser.d.ts +1 -1
  34. package/dist/index.browser.mjs +30 -30
  35. package/dist/index.browser.mjs.map +1 -1
  36. package/dist/index.cjs +30 -30
  37. package/dist/index.cjs.map +1 -1
  38. package/dist/index.d.mts +1 -1
  39. package/dist/index.d.ts +1 -1
  40. package/dist/index.mjs +30 -30
  41. package/dist/index.mjs.map +1 -1
  42. package/package.json +7 -7
@@ -951,8 +951,8 @@
951
951
  "type": "function"
952
952
  }
953
953
  ],
954
- "bytecode": "0x60a06040526008805461ff001960ff19909116600117166101001790553480156200002957600080fd5b506040516200378e3803806200378e833981810160405260208110156200004f57600080fd5b505160006200005d620000bd565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060f01b6001600160f01b031916608052620000c1565b3390565b60805160f01c6136aa620000e4600039806116855280611c5952506136aa6000f3fe6080604052600436106102855760003560e01c80639c729da111610153578063ca066b35116100cb578063f2fde38b1161007f578063f5ecbdbc11610064578063f5ecbdbc14610e54578063faee093f14610f16578063fdc07c7014610f2b57610285565b8063f2fde38b14610db8578063f4abee4b14610deb57610285565b8063da1a7c9a116100b0578063da1a7c9a14610d5b578063e97a448a14610d8e578063ebfea6e014610da357610285565b8063ca066b3514610cae578063cbed8b9c14610cc357610285565b8063bd42a71311610122578063c2fa481311610107578063c2fa481314610a49578063c580310014610b48578063c7e3711714610c8057610285565b8063bd42a71314610a06578063c07f47d414610a3457610285565b80639c729da1146108a7578063a91606df146108da578063aaff5f16146108ef578063b2086499146109c957610285565b806342d65a8d1161020157806376a386dc116101b55780638da5cb5b1161019a5780638da5cb5b146107bf5780639924d33b146107d45780639a8a05921461089257610285565b806376a386dc146106765780637a1457481461076557610285565b80635d9ef01a116101e65780635d9ef01a14610619578063715018a61461062e57806371ba2fd61461064357610285565b806342d65a8d146105605780634afb422b146105e857610285565b806310ddb1371161025857806324ba3f2c1161023d57806324ba3f2c1461042f5780633408e4701461044457806340a7bb101461045957610285565b806310ddb137146103ce578063158c81ad146103fc57610285565b806307e0db171461028a578063096568f6146102ba5780630b837bb5146103045780630eaf6ea614610332575b600080fd5b34801561029657600080fd5b506102b8600480360360208110156102ad57600080fd5b503561ffff16610fb3565b005b3480156102c657600080fd5b506102ed600480360360208110156102dd57600080fd5b50356001600160a01b03166110ea565b6040805161ffff9092168252519081900360200190f35b34801561031057600080fd5b506102b86004803603602081101561032757600080fd5b503561ffff16611129565b34801561033e57600080fd5b506103ba6004803603604081101561035557600080fd5b61ffff823516919081019060408101602082013564010000000081111561037b57600080fd5b82018360208201111561038d57600080fd5b803590602001918460018302840111640100000000831117156103af57600080fd5b509092509050611309565b604080519115158252519081900360200190f35b3480156103da57600080fd5b506102b8600480360360208110156103f157600080fd5b503561ffff16611355565b34801561040857600080fd5b506102b86004803603602081101561041f57600080fd5b50356001600160a01b0316611495565b34801561043b57600080fd5b506102ed61167e565b34801561045057600080fd5b506102ed611683565b34801561046557600080fd5b50610547600480360360a081101561047c57600080fd5b61ffff823516916001600160a01b03602082013516918101906060810160408201356401000000008111156104b057600080fd5b8201836020820111156104c257600080fd5b803590602001918460018302840111640100000000831117156104e457600080fd5b91939092823515159260408101906020013564010000000081111561050857600080fd5b82018360208201111561051a57600080fd5b8035906020019184600183028401116401000000008311171561053c57600080fd5b5090925090506116a7565b6040805192835260208301919091528051918290030190f35b34801561056c57600080fd5b506102b86004803603604081101561058357600080fd5b61ffff82351691908101906040810160208201356401000000008111156105a957600080fd5b8201836020820111156105bb57600080fd5b803590602001918460018302840111640100000000831117156105dd57600080fd5b509092509050611800565b3480156105f457600080fd5b506105fd6119a0565b604080516001600160a01b039092168252519081900360200190f35b34801561062557600080fd5b506102ed6119b7565b34801561063a57600080fd5b506102b86119c1565b34801561064f57600080fd5b506105fd6004803603602081101561066657600080fd5b50356001600160a01b0316611a97565b34801561068257600080fd5b506107346004803603604081101561069957600080fd5b61ffff82351691908101906040810160208201356401000000008111156106bf57600080fd5b8201836020820111156106d157600080fd5b803590602001918460018302840111640100000000831117156106f357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611b81945050505050565b6040805167ffffffffffffffff90941684526001600160a01b03909216602084015282820152519081900360600190f35b34801561077157600080fd5b506107a26004803603604081101561078857600080fd5b50803561ffff1690602001356001600160a01b0316611bd8565b6040805167ffffffffffffffff9092168252519081900360200190f35b3480156107cb57600080fd5b506105fd611c10565b3480156107e057600080fd5b506107a2600480360360408110156107f757600080fd5b61ffff823516919081019060408101602082013564010000000081111561081d57600080fd5b82018360208201111561082f57600080fd5b8035906020019184600183028401116401000000008311171561085157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611c1f945050505050565b34801561089e57600080fd5b506102ed611c57565b3480156108b357600080fd5b506105fd600480360360208110156108ca57600080fd5b50356001600160a01b0316611c7b565b3480156108e657600080fd5b506102ed611d58565b3480156108fb57600080fd5b506102b86004803603606081101561091257600080fd5b61ffff823516919081019060408101602082013564010000000081111561093857600080fd5b82018360208201111561094a57600080fd5b8035906020019184600183028401116401000000008311171561096c57600080fd5b91939092909160208101903564010000000081111561098a57600080fd5b82018360208201111561099c57600080fd5b803590602001918460018302840111640100000000831117156109be57600080fd5b509092509050611d5e565b3480156109d557600080fd5b506107a2600480360360408110156109ec57600080fd5b50803561ffff1690602001356001600160a01b0316612143565b348015610a1257600080fd5b506102b860048036036020811015610a2957600080fd5b503561ffff1661216a565b348015610a4057600080fd5b506102ed612350565b348015610a5557600080fd5b506102b8600480360360c0811015610a6c57600080fd5b61ffff8235169190810190604081016020820135640100000000811115610a9257600080fd5b820183602082011115610aa457600080fd5b80359060200191846001830284011164010000000083111715610ac657600080fd5b919390926001600160a01b038335169267ffffffffffffffff602082013516926040820135929091608081019060600135640100000000811115610b0957600080fd5b820183602082011115610b1b57600080fd5b80359060200191846001830284011164010000000083111715610b3d57600080fd5b509092509050612372565b6102b8600480360360c0811015610b5e57600080fd5b61ffff8235169190810190604081016020820135640100000000811115610b8457600080fd5b820183602082011115610b9657600080fd5b80359060200191846001830284011164010000000083111715610bb857600080fd5b919390929091602081019035640100000000811115610bd657600080fd5b820183602082011115610be857600080fd5b80359060200191846001830284011164010000000083111715610c0a57600080fd5b919390926001600160a01b0383358116936020810135909116929190606081019060400135640100000000811115610c4157600080fd5b820183602082011115610c5357600080fd5b80359060200191846001830284011164010000000083111715610c7557600080fd5b509092509050612995565b348015610c8c57600080fd5b506105fd60048036036020811015610ca357600080fd5b503561ffff16612bf4565b348015610cba57600080fd5b506103ba612c0f565b348015610ccf57600080fd5b506102b860048036036080811015610ce657600080fd5b61ffff823581169260208101359091169160408201359190810190608081016060820135640100000000811115610d1c57600080fd5b820183602082011115610d2e57600080fd5b80359060200191846001830284011164010000000083111715610d5057600080fd5b509092509050612c20565b348015610d6757600080fd5b506102ed60048036036020811015610d7e57600080fd5b50356001600160a01b0316612e16565b348015610d9a57600080fd5b506103ba612e64565b348015610daf57600080fd5b506105fd612e70565b348015610dc457600080fd5b506102b860048036036020811015610ddb57600080fd5b50356001600160a01b0316612e7f565b348015610df757600080fd5b50610e1e60048036036020811015610e0e57600080fd5b50356001600160a01b0316612fab565b6040805161ffff95861681529390941660208401526001600160a01b039182168385015216606082015290519081900360800190f35b348015610e6057600080fd5b50610ea160048036036080811015610e7757600080fd5b5061ffff81358116916020810135909116906001600160a01b036040820135169060600135612fea565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610edb578181015183820152602001610ec3565b50505050905090810190601f168015610f085780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610f2257600080fd5b506102ed61327a565b348015610f3757600080fd5b506107a260048036036040811015610f4e57600080fd5b61ffff8235169190810190604081016020820135640100000000811115610f7457600080fd5b820183602082011115610f8657600080fd5b80359060200191846001830284011164010000000083111715610fa857600080fd5b50909250905061328a565b600054819061ffff740100000000000000000000000000000000000000009091048116908216111580610fe9575061ffff818116145b6110245760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b336000818152600460209081526040808320805461ffff88167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909116811782558085526001808552948390205494820180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b039690961695909517909455815194855291840192909252815190927ff2bc255571446a2f9b7cb2f0c75fd6a279bdb469f515d5a5c9910f713aeb32ca92908290030190a1505050565b6001600160a01b0381166000908152600460205260408120805461ffff161561111857805461ffff16611120565b60025461ffff165b9150505b919050565b6111316132d7565b6001600160a01b0316611142611c10565b6001600160a01b03161461119d576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600054819061ffff7401000000000000000000000000000000000000000090910481169082161115806111d3575061ffff818116145b61120e5760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b61ffff821661124e5760405162461bcd60e51b81526004018080602001828103825260288152602001806135f36028913960400191505060405180910390fd5b600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff848116918217808455908116600090815260016020908152604091829020547fffffffffffffffff0000000000000000000000000000000000000000ffffffff9093166001600160a01b039093166401000000000292909217909355825191825291517feb685c087d38029bbde35299b748c6b80f099c7e5c3f9fe2dbb3ace1099e3b07929181900390910190a15050565b61ffff8316600090815260076020526040808220905182919085908590808383808284379190910194855250506040519283900360200190922060010154151593505050509392505050565b600054819061ffff74010000000000000000000000000000000000000000909104811690821611158061138b575061ffff818116145b6113c65760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b33600081815260046020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffff166201000061ffff8916908102919091178083558186526001855294839020547fffffffffffffffff0000000000000000000000000000000000000000ffffffff9095166001600160a01b0390951664010000000002949094178155815194855291840192909252815190927f9c199418af68d1547d7b99c71ee6a9eb18b27990dfcfb38982f3e3fb8c7b6bef92908290030190a1505050565b61149d6132d7565b6001600160a01b03166114ae611c10565b6001600160a01b031614611509576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661154e5760405162461bcd60e51b815260040180806020018281038252602d815260200180613549602d913960400191505060405180910390fd5b60005461ffff740100000000000000000000000000000000000000009091048116106115ab5760405162461bcd60e51b815260040180806020018281038252602c81526020018061351d602c913960400191505060405180910390fd5b60008054600161ffff7401000000000000000000000000000000000000000080840482168301821681027fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff90941693909317808555839004811684526020918252604080852080546001600160a01b0388167fffffffffffffffffffffffff00000000000000000000000000000000000000009091161790559354845193900416825291517f18c7402e58a1bec57f4eb75af242f65ababbbe09d9db383e0542f00635e5b8c5929181900390910190a150565b600081565b7f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b03861660009081526004602052604081208054829190829061ffff16156116e25760018201546001600160a01b03166116f7565b60025464010000000090046001600160a01b03165b9050806001600160a01b03166340a7bb108c8c8c8c8c8c8c6040518863ffffffff1660e01b8152600401808861ffff168152602001876001600160a01b03168152602001806020018515158152602001806020018381038352888882818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f8201169050808301925050509950505050505050505050604080518083038186803b1580156117bb57600080fd5b505afa1580156117cf573d6000803e3d6000fd5b505050506040513d60408110156117e557600080fd5b508051602090910151909c909b509950505050505050505050565b61ffff831660009081526007602052604080822090518490849080838380828437919091019485525050604051928390036020019092206001810154909350151591506118969050576040805162461bcd60e51b815260206004820152601c60248201527f4c617965725a65726f3a206e6f2073746f726564207061796c6f616400000000604482015290519081900360640190fd5b80546801000000000000000090046001600160a01b03163314611900576040805162461bcd60e51b815260206004820152601960248201527f4c617965725a65726f3a20696e76616c69642063616c6c657200000000000000604482015290519081900360640190fd5b80547fffffffff00000000000000000000000000000000000000000000000000000000168155600060018201556040805161ffff86168152602081018281529181018490527f23d2684f396e92a6e2ff2d16f98e6fea00d50cb27a64b531bc0748f730211f98918691869186919060608201848480828437600083820152604051601f909101601f1916909201829003965090945050505050a150505050565b60025464010000000090046001600160a01b031681565b60025461ffff1681565b6119c96132d7565b6001600160a01b03166119da611c10565b6001600160a01b031614611a35576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6001600160a01b0381166000908152600460205260408120805461ffff62010000909104811690811415611afc5760405162461bcd60e51b815260040180806020018281038252602b81526020018061364a602b913960400191505060405180910390fd5b61ffff8116611b645760025462010000900461ffff9081161415611b515760405162461bcd60e51b81526004018080602001828103825260358152602001806133e46035913960400191505060405180910390fd5b6003546001600160a01b03169250611b7a565b815464010000000090046001600160a01b031692505b5050919050565b600760209081526000928352604090922081518083018401805192815290840192909301919091209152805460019091015467ffffffffffffffff8216916801000000000000000090046001600160a01b03169083565b61ffff821660009081526006602090815260408083206001600160a01b038516845290915290205467ffffffffffffffff1692915050565b6000546001600160a01b031690565b6005602090815260009283526040909220815180830184018051928152908401929093019190912091525467ffffffffffffffff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001600160a01b0381166000908152600460205260408120805461ffff90811690811415611cda5760405162461bcd60e51b81526004018080602001828103825260288152602001806134f56028913960400191505060405180910390fd5b61ffff8116611d445760025461ffff9081161415611d295760405162461bcd60e51b815260040180806020018281038252603281526020018061348d6032913960400191505060405180910390fd5b60025464010000000090046001600160a01b03169250611b7a565b50600101546001600160a01b031692915050565b61ffff81565b600854610100900460ff16600114611dbd576040805162461bcd60e51b815260206004820181905260248201527f4c617965725a65726f3a206e6f2072656365697665207265656e7472616e6379604482015290519081900360640190fd5b600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661020017905561ffff85166000908152600760205260408082209051869086908083838082843791909101948552505060405192839003602001909220600181015490935015159150611e7f9050576040805162461bcd60e51b815260206004820152601c60248201527f4c617965725a65726f3a206e6f2073746f726564207061796c6f616400000000604482015290519081900360640190fd5b805467ffffffffffffffff1682148015611eba5750806001015483836040518083838082843780830192505050925050506040518091039020145b611f0b576040805162461bcd60e51b815260206004820152601a60248201527f4c617965725a65726f3a20696e76616c6964207061796c6f6164000000000000604482015290519081900360640190fd5b80547fffffffff000000000000000000000000000000000000000000000000000000008116825560006001830181905561ffff88168152600560205260408082209051680100000000000000009093046001600160a01b0316928890889080838380828437919091019485525050604051928390036020018320547e1d356700000000000000000000000000000000000000000000000000000000845261ffff8c166004850190815267ffffffffffffffff90911660448501819052608060248601908152608486018c90529095506001600160a01b03871694621d356794508d93508c928c9288928d928d929091606481019060a401888880828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b15801561206657600080fd5b505af115801561207a573d6000803e3d6000fd5b505050507f612434f39581c8e7d99746c9c20c6eb0ce8c0eb99f007c5719d620841370957d8888888486604051808661ffff168152602001806020018467ffffffffffffffff168152602001836001600160a01b031681526020018281038252868682818152602001925080828437600083820152604051601f909101601f19169092018290039850909650505050505050a15050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16610100179055505050505050565b600660209081526000928352604080842090915290825290205467ffffffffffffffff1681565b6121726132d7565b6001600160a01b0316612183611c10565b6001600160a01b0316146121de576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600054819061ffff740100000000000000000000000000000000000000009091048116908216111580612214575061ffff818116145b61224f5760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b61ffff821661228f5760405162461bcd60e51b815260040180806020018281038252602b8152602001806135a5602b913960400191505060405180910390fd5b600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffff166201000061ffff8581168281029390931793849055920490911660009081526001602090815260409182902054600380546001600160a01b039092167fffffffffffffffffffffffff0000000000000000000000000000000000000000909216919091179055815192835290517f96874dbe70c8a59e7996847475489a70a1b5096ed92cdc858b63ebabd071f8199281900390910190a15050565b60005474010000000000000000000000000000000000000000900461ffff1681565b600854610100900460ff166001146123d1576040805162461bcd60e51b815260206004820181905260248201527f4c617965725a65726f3a206e6f2072656365697665207265656e7472616e6379604482015290519081900360640190fd5b600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661020017905561ffff8816600090815260056020526040908190209051889088908083838082843791909101948552505060405192839003602001909220805467ffffffffffffffff80821660010181167fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000090921682179092559087161491506124ca9050576040805162461bcd60e51b815260206004820152601660248201527f4c617965725a65726f3a2077726f6e67206e6f6e636500000000000000000000604482015290519081900360640190fd5b6001600160a01b0385166000908152600460205260409020805462010000900461ffff16612540576003546001600160a01b0316331461253b5760405162461bcd60e51b81526004018080602001828103825260228152602001806134196022913960400191505060405180910390fd5b6125a6565b805464010000000090046001600160a01b031633146125a6576040805162461bcd60e51b815260206004820152601a60248201527f4c617965725a65726f3a20696e76616c6964206c696272617279000000000000604482015290519081900360640190fd5b61ffff891660009081526007602052604080822090518a908a908083838082843791909101948552505060405192839003602001909220600181015490935015915061263b9050576040805162461bcd60e51b815260206004820152601e60248201527f4c617965725a65726f3a20696e206d65737361676520626c6f636b696e670000604482015290519081900360640190fd5b866001600160a01b0316621d3567868c8c8c8b8a8a6040518863ffffffff1660e01b8152600401808761ffff168152602001806020018567ffffffffffffffff168152602001806020018381038352888882818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600088803b1580156126f757600080fd5b5087f193505050508015612709575060015b61295d573d808015612737576040519150601f19603f3d011682016040523d82523d6000602084013e61273c565b606091505b5060405180606001604052808686905067ffffffffffffffff168152602001896001600160a01b0316815260200186866040518083838082843780830192505050925050506040518091039020815250600760008d61ffff1661ffff1681526020019081526020016000208b8b604051808383808284378083019250505092505050908152602001604051809103902060008201518160000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060208201518160000160086101000a8154816001600160a01b0302191690836001600160a01b03160217905550604082015181600101559050507f0f9e4d95b62f08222d612b5ab92039cd8fbbbea550a95e8df9f927436bbdf5db8b8b8b8b8b8a8a88604051808961ffff16815260200180602001876001600160a01b031681526020018667ffffffffffffffff168152602001806020018060200184810384528b8b82818152602001925080828437600083820152601f01601f1916909101858103845287815260200190508787808284376000838201819052601f909101601f191690920186810384528751815287516020918201939189019250908190849084905b83811015612918578181015183820152602001612900565b50505050905090810190601f1680156129455780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a1505b5050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555050505050505050565b60085460ff166001146129ef576040805162461bcd60e51b815260206004820152601d60248201527f4c617965725a65726f3a206e6f2073656e64207265656e7472616e6379000000604482015290519081900360640190fd5b6008805460027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0090911617905533600081815260046020908152604080832061ffff8e1684526006835281842094845293909152902080547fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000811667ffffffffffffffff91821660010191821617909155612a89826132db565b6001600160a01b0316634d3a0f7c3433848f8f8f8f8f8f8f8f8f6040518d63ffffffff1660e01b8152600401808c6001600160a01b031681526020018b67ffffffffffffffff1681526020018a61ffff1681526020018060200180602001876001600160a01b03168152602001866001600160a01b031681526020018060200184810384528c8c82818152602001925080828437600083820152601f01601f191690910185810384528a815260200190508a8a80828437600083820152601f01601f191690910185810383528681526020019050868680828437600081840152601f19601f8201169050808301925050509e5050505050505050505050505050506000604051808303818588803b158015612ba357600080fd5b505af1158015612bb7573d6000803e3d6000fd5b5050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555050505050505050505050505050565b6001602052600090815260409020546001600160a01b031681565b600854610100900460ff1660021490565b600054859061ffff740100000000000000000000000000000000000000009091048116908216111580612c56575061ffff818116145b612c915760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b61ffff8616612cf15760025461ffff808216620100009092041614612ce75760405162461bcd60e51b81526004018080602001828103825260368152602001806134bf6036913960400191505060405180910390fd5b60025461ffff1695505b61ffff8681161415612d345760405162461bcd60e51b815260040180806020018281038252602f81526020018061361b602f913960400191505060405180910390fd5b61ffff808716600090815260016020526040908190205490517ff8e1734c00000000000000000000000000000000000000000000000000000000815291871660048301908152336024840181905260448401889052608060648501908152608485018790526001600160a01b039093169363f8e1734c938a938a928a928a929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015612df657600080fd5b505af1158015612e0a573d6000803e3d6000fd5b50505050505050505050565b6001600160a01b0381166000908152600460205260408120805462010000900461ffff1615612e5057805462010000900461ffff16611120565b505060025462010000900461ffff16919050565b60085460ff1660021490565b6003546001600160a01b031681565b612e876132d7565b6001600160a01b0316612e98611c10565b6001600160a01b031614612ef3576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038116612f385760405162461bcd60e51b815260040180806020018281038252602681526020018061343b6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b6004602052600090815260409020805460019091015461ffff80831692620100008104909116916001600160a01b036401000000009092048216911684565b600054606090859061ffff740100000000000000000000000000000000000000009091048116908216111580613023575061ffff818116145b61305e5760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b61ffff86166130be5760025461ffff8082166201000090920416146130b45760405162461bcd60e51b815260040180806020018281038252602c815260200180613461602c913960400191505060405180910390fd5b60025461ffff1695505b61ffff86811614156131015760405162461bcd60e51b815260040180806020018281038252602f815260200180613576602f913960400191505060405180910390fd5b61ffff8087166000908152600160205260408082205481517f52d2871f00000000000000000000000000000000000000000000000000000000815293891660048501526001600160a01b0388811660248601526044850188905291519116926352d2871f926064808301939192829003018186803b15801561318257600080fd5b505afa158015613196573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156131bf57600080fd5b81019080805160405193929190846401000000008211156131df57600080fd5b9083019060208201858111156131f457600080fd5b825164010000000081118282018810171561320e57600080fd5b82525081516020918201929091019080838360005b8381101561323b578181015183820152602001613223565b50505050905090810190601f1680156132685780820380516001836020036101000a031916815260200191505b50604052505050915050949350505050565b60025462010000900461ffff1681565b61ffff831660009081526005602052604080822090518490849080838380828437919091019485525050604051928390036020019092205467ffffffffffffffff16925050509392505050565b3390565b805460009061ffff166133485760025461ffff908116141561332e5760405162461bcd60e51b81526004018080602001828103825260238152602001806135d06023913960400191505060405180910390fd5b5060025464010000000090046001600160a01b0316611124565b815461ffff90811614156133a3576040805162461bcd60e51b815260206004820152601b60248201527f4c617965725a65726f3a20696e20424c4f434b5f56455253494f4e0000000000604482015290519081900360640190fd5b5060018101546001600160a01b031661112456fe4c617965725a65726f3a20696e76616c6964206d6573736167696e67206c6962726172792076657273696f6e4c617965725a65726f3a20726563656976652076657273696f6e202864656661756c742920697320424c4f434b5f56455253494f4e4c617965725a65726f3a20696e76616c69642064656661756c74206c6962726172794f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734c617965725a65726f3a206e6f2044454641554c5420636f6e666967207768696c65206d6967726174696f6e4c617965725a65726f3a2073656e642076657273696f6e202864656661756c742920697320424c4f434b5f56455253494f4e4c617965725a65726f3a2063616e206e6f742073657420436f6e66696720647572696e672044454641554c54206d6967726174696f6e4c617965725a65726f3a2073656e642076657273696f6e20697320424c4f434b5f56455253494f4e4c617965725a65726f3a2063616e206e6f7420616464206e6577206d6573736167696e67206c6962726172794c617965725a65726f3a206e65772076657273696f6e2063616e6e6f74206265207a65726f20616464726573734c617965725a65726f3a2063616e206e6f742067657420636f6e66696720666f7220424c4f434b5f56455253494f4e4c617965725a65726f3a2064656661756c7420726563656976652076657273696f6e206d757374203e20304c617965725a65726f3a2064656661756c7420696e20424c4f434b5f56455253494f4e4c617965725a65726f3a2064656661756c742073656e642076657273696f6e206d757374203e20304c617965725a65726f3a2063616e206e6f742073657420636f6e66696720666f7220424c4f434b5f56455253494f4e4c617965725a65726f3a20726563656976652076657273696f6e20697320424c4f434b5f56455253494f4ea26469706673582212208ed5abf804b10b0f71da77c570eb372ab4e36974c6a955e66c94b397fe506a9e64736f6c63430007060033",
955
- "deployedBytecode": "0x6080604052600436106102855760003560e01c80639c729da111610153578063ca066b35116100cb578063f2fde38b1161007f578063f5ecbdbc11610064578063f5ecbdbc14610e54578063faee093f14610f16578063fdc07c7014610f2b57610285565b8063f2fde38b14610db8578063f4abee4b14610deb57610285565b8063da1a7c9a116100b0578063da1a7c9a14610d5b578063e97a448a14610d8e578063ebfea6e014610da357610285565b8063ca066b3514610cae578063cbed8b9c14610cc357610285565b8063bd42a71311610122578063c2fa481311610107578063c2fa481314610a49578063c580310014610b48578063c7e3711714610c8057610285565b8063bd42a71314610a06578063c07f47d414610a3457610285565b80639c729da1146108a7578063a91606df146108da578063aaff5f16146108ef578063b2086499146109c957610285565b806342d65a8d1161020157806376a386dc116101b55780638da5cb5b1161019a5780638da5cb5b146107bf5780639924d33b146107d45780639a8a05921461089257610285565b806376a386dc146106765780637a1457481461076557610285565b80635d9ef01a116101e65780635d9ef01a14610619578063715018a61461062e57806371ba2fd61461064357610285565b806342d65a8d146105605780634afb422b146105e857610285565b806310ddb1371161025857806324ba3f2c1161023d57806324ba3f2c1461042f5780633408e4701461044457806340a7bb101461045957610285565b806310ddb137146103ce578063158c81ad146103fc57610285565b806307e0db171461028a578063096568f6146102ba5780630b837bb5146103045780630eaf6ea614610332575b600080fd5b34801561029657600080fd5b506102b8600480360360208110156102ad57600080fd5b503561ffff16610fb3565b005b3480156102c657600080fd5b506102ed600480360360208110156102dd57600080fd5b50356001600160a01b03166110ea565b6040805161ffff9092168252519081900360200190f35b34801561031057600080fd5b506102b86004803603602081101561032757600080fd5b503561ffff16611129565b34801561033e57600080fd5b506103ba6004803603604081101561035557600080fd5b61ffff823516919081019060408101602082013564010000000081111561037b57600080fd5b82018360208201111561038d57600080fd5b803590602001918460018302840111640100000000831117156103af57600080fd5b509092509050611309565b604080519115158252519081900360200190f35b3480156103da57600080fd5b506102b8600480360360208110156103f157600080fd5b503561ffff16611355565b34801561040857600080fd5b506102b86004803603602081101561041f57600080fd5b50356001600160a01b0316611495565b34801561043b57600080fd5b506102ed61167e565b34801561045057600080fd5b506102ed611683565b34801561046557600080fd5b50610547600480360360a081101561047c57600080fd5b61ffff823516916001600160a01b03602082013516918101906060810160408201356401000000008111156104b057600080fd5b8201836020820111156104c257600080fd5b803590602001918460018302840111640100000000831117156104e457600080fd5b91939092823515159260408101906020013564010000000081111561050857600080fd5b82018360208201111561051a57600080fd5b8035906020019184600183028401116401000000008311171561053c57600080fd5b5090925090506116a7565b6040805192835260208301919091528051918290030190f35b34801561056c57600080fd5b506102b86004803603604081101561058357600080fd5b61ffff82351691908101906040810160208201356401000000008111156105a957600080fd5b8201836020820111156105bb57600080fd5b803590602001918460018302840111640100000000831117156105dd57600080fd5b509092509050611800565b3480156105f457600080fd5b506105fd6119a0565b604080516001600160a01b039092168252519081900360200190f35b34801561062557600080fd5b506102ed6119b7565b34801561063a57600080fd5b506102b86119c1565b34801561064f57600080fd5b506105fd6004803603602081101561066657600080fd5b50356001600160a01b0316611a97565b34801561068257600080fd5b506107346004803603604081101561069957600080fd5b61ffff82351691908101906040810160208201356401000000008111156106bf57600080fd5b8201836020820111156106d157600080fd5b803590602001918460018302840111640100000000831117156106f357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611b81945050505050565b6040805167ffffffffffffffff90941684526001600160a01b03909216602084015282820152519081900360600190f35b34801561077157600080fd5b506107a26004803603604081101561078857600080fd5b50803561ffff1690602001356001600160a01b0316611bd8565b6040805167ffffffffffffffff9092168252519081900360200190f35b3480156107cb57600080fd5b506105fd611c10565b3480156107e057600080fd5b506107a2600480360360408110156107f757600080fd5b61ffff823516919081019060408101602082013564010000000081111561081d57600080fd5b82018360208201111561082f57600080fd5b8035906020019184600183028401116401000000008311171561085157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611c1f945050505050565b34801561089e57600080fd5b506102ed611c57565b3480156108b357600080fd5b506105fd600480360360208110156108ca57600080fd5b50356001600160a01b0316611c7b565b3480156108e657600080fd5b506102ed611d58565b3480156108fb57600080fd5b506102b86004803603606081101561091257600080fd5b61ffff823516919081019060408101602082013564010000000081111561093857600080fd5b82018360208201111561094a57600080fd5b8035906020019184600183028401116401000000008311171561096c57600080fd5b91939092909160208101903564010000000081111561098a57600080fd5b82018360208201111561099c57600080fd5b803590602001918460018302840111640100000000831117156109be57600080fd5b509092509050611d5e565b3480156109d557600080fd5b506107a2600480360360408110156109ec57600080fd5b50803561ffff1690602001356001600160a01b0316612143565b348015610a1257600080fd5b506102b860048036036020811015610a2957600080fd5b503561ffff1661216a565b348015610a4057600080fd5b506102ed612350565b348015610a5557600080fd5b506102b8600480360360c0811015610a6c57600080fd5b61ffff8235169190810190604081016020820135640100000000811115610a9257600080fd5b820183602082011115610aa457600080fd5b80359060200191846001830284011164010000000083111715610ac657600080fd5b919390926001600160a01b038335169267ffffffffffffffff602082013516926040820135929091608081019060600135640100000000811115610b0957600080fd5b820183602082011115610b1b57600080fd5b80359060200191846001830284011164010000000083111715610b3d57600080fd5b509092509050612372565b6102b8600480360360c0811015610b5e57600080fd5b61ffff8235169190810190604081016020820135640100000000811115610b8457600080fd5b820183602082011115610b9657600080fd5b80359060200191846001830284011164010000000083111715610bb857600080fd5b919390929091602081019035640100000000811115610bd657600080fd5b820183602082011115610be857600080fd5b80359060200191846001830284011164010000000083111715610c0a57600080fd5b919390926001600160a01b0383358116936020810135909116929190606081019060400135640100000000811115610c4157600080fd5b820183602082011115610c5357600080fd5b80359060200191846001830284011164010000000083111715610c7557600080fd5b509092509050612995565b348015610c8c57600080fd5b506105fd60048036036020811015610ca357600080fd5b503561ffff16612bf4565b348015610cba57600080fd5b506103ba612c0f565b348015610ccf57600080fd5b506102b860048036036080811015610ce657600080fd5b61ffff823581169260208101359091169160408201359190810190608081016060820135640100000000811115610d1c57600080fd5b820183602082011115610d2e57600080fd5b80359060200191846001830284011164010000000083111715610d5057600080fd5b509092509050612c20565b348015610d6757600080fd5b506102ed60048036036020811015610d7e57600080fd5b50356001600160a01b0316612e16565b348015610d9a57600080fd5b506103ba612e64565b348015610daf57600080fd5b506105fd612e70565b348015610dc457600080fd5b506102b860048036036020811015610ddb57600080fd5b50356001600160a01b0316612e7f565b348015610df757600080fd5b50610e1e60048036036020811015610e0e57600080fd5b50356001600160a01b0316612fab565b6040805161ffff95861681529390941660208401526001600160a01b039182168385015216606082015290519081900360800190f35b348015610e6057600080fd5b50610ea160048036036080811015610e7757600080fd5b5061ffff81358116916020810135909116906001600160a01b036040820135169060600135612fea565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610edb578181015183820152602001610ec3565b50505050905090810190601f168015610f085780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610f2257600080fd5b506102ed61327a565b348015610f3757600080fd5b506107a260048036036040811015610f4e57600080fd5b61ffff8235169190810190604081016020820135640100000000811115610f7457600080fd5b820183602082011115610f8657600080fd5b80359060200191846001830284011164010000000083111715610fa857600080fd5b50909250905061328a565b600054819061ffff740100000000000000000000000000000000000000009091048116908216111580610fe9575061ffff818116145b6110245760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b336000818152600460209081526040808320805461ffff88167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909116811782558085526001808552948390205494820180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b039690961695909517909455815194855291840192909252815190927ff2bc255571446a2f9b7cb2f0c75fd6a279bdb469f515d5a5c9910f713aeb32ca92908290030190a1505050565b6001600160a01b0381166000908152600460205260408120805461ffff161561111857805461ffff16611120565b60025461ffff165b9150505b919050565b6111316132d7565b6001600160a01b0316611142611c10565b6001600160a01b03161461119d576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600054819061ffff7401000000000000000000000000000000000000000090910481169082161115806111d3575061ffff818116145b61120e5760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b61ffff821661124e5760405162461bcd60e51b81526004018080602001828103825260288152602001806135f36028913960400191505060405180910390fd5b600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff848116918217808455908116600090815260016020908152604091829020547fffffffffffffffff0000000000000000000000000000000000000000ffffffff9093166001600160a01b039093166401000000000292909217909355825191825291517feb685c087d38029bbde35299b748c6b80f099c7e5c3f9fe2dbb3ace1099e3b07929181900390910190a15050565b61ffff8316600090815260076020526040808220905182919085908590808383808284379190910194855250506040519283900360200190922060010154151593505050509392505050565b600054819061ffff74010000000000000000000000000000000000000000909104811690821611158061138b575061ffff818116145b6113c65760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b33600081815260046020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffff166201000061ffff8916908102919091178083558186526001855294839020547fffffffffffffffff0000000000000000000000000000000000000000ffffffff9095166001600160a01b0390951664010000000002949094178155815194855291840192909252815190927f9c199418af68d1547d7b99c71ee6a9eb18b27990dfcfb38982f3e3fb8c7b6bef92908290030190a1505050565b61149d6132d7565b6001600160a01b03166114ae611c10565b6001600160a01b031614611509576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661154e5760405162461bcd60e51b815260040180806020018281038252602d815260200180613549602d913960400191505060405180910390fd5b60005461ffff740100000000000000000000000000000000000000009091048116106115ab5760405162461bcd60e51b815260040180806020018281038252602c81526020018061351d602c913960400191505060405180910390fd5b60008054600161ffff7401000000000000000000000000000000000000000080840482168301821681027fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff90941693909317808555839004811684526020918252604080852080546001600160a01b0388167fffffffffffffffffffffffff00000000000000000000000000000000000000009091161790559354845193900416825291517f18c7402e58a1bec57f4eb75af242f65ababbbe09d9db383e0542f00635e5b8c5929181900390910190a150565b600081565b7f000000000000000000000000000000000000000000000000000000000000000090565b6001600160a01b03861660009081526004602052604081208054829190829061ffff16156116e25760018201546001600160a01b03166116f7565b60025464010000000090046001600160a01b03165b9050806001600160a01b03166340a7bb108c8c8c8c8c8c8c6040518863ffffffff1660e01b8152600401808861ffff168152602001876001600160a01b03168152602001806020018515158152602001806020018381038352888882818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f8201169050808301925050509950505050505050505050604080518083038186803b1580156117bb57600080fd5b505afa1580156117cf573d6000803e3d6000fd5b505050506040513d60408110156117e557600080fd5b508051602090910151909c909b509950505050505050505050565b61ffff831660009081526007602052604080822090518490849080838380828437919091019485525050604051928390036020019092206001810154909350151591506118969050576040805162461bcd60e51b815260206004820152601c60248201527f4c617965725a65726f3a206e6f2073746f726564207061796c6f616400000000604482015290519081900360640190fd5b80546801000000000000000090046001600160a01b03163314611900576040805162461bcd60e51b815260206004820152601960248201527f4c617965725a65726f3a20696e76616c69642063616c6c657200000000000000604482015290519081900360640190fd5b80547fffffffff00000000000000000000000000000000000000000000000000000000168155600060018201556040805161ffff86168152602081018281529181018490527f23d2684f396e92a6e2ff2d16f98e6fea00d50cb27a64b531bc0748f730211f98918691869186919060608201848480828437600083820152604051601f909101601f1916909201829003965090945050505050a150505050565b60025464010000000090046001600160a01b031681565b60025461ffff1681565b6119c96132d7565b6001600160a01b03166119da611c10565b6001600160a01b031614611a35576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6001600160a01b0381166000908152600460205260408120805461ffff62010000909104811690811415611afc5760405162461bcd60e51b815260040180806020018281038252602b81526020018061364a602b913960400191505060405180910390fd5b61ffff8116611b645760025462010000900461ffff9081161415611b515760405162461bcd60e51b81526004018080602001828103825260358152602001806133e46035913960400191505060405180910390fd5b6003546001600160a01b03169250611b7a565b815464010000000090046001600160a01b031692505b5050919050565b600760209081526000928352604090922081518083018401805192815290840192909301919091209152805460019091015467ffffffffffffffff8216916801000000000000000090046001600160a01b03169083565b61ffff821660009081526006602090815260408083206001600160a01b038516845290915290205467ffffffffffffffff1692915050565b6000546001600160a01b031690565b6005602090815260009283526040909220815180830184018051928152908401929093019190912091525467ffffffffffffffff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001600160a01b0381166000908152600460205260408120805461ffff90811690811415611cda5760405162461bcd60e51b81526004018080602001828103825260288152602001806134f56028913960400191505060405180910390fd5b61ffff8116611d445760025461ffff9081161415611d295760405162461bcd60e51b815260040180806020018281038252603281526020018061348d6032913960400191505060405180910390fd5b60025464010000000090046001600160a01b03169250611b7a565b50600101546001600160a01b031692915050565b61ffff81565b600854610100900460ff16600114611dbd576040805162461bcd60e51b815260206004820181905260248201527f4c617965725a65726f3a206e6f2072656365697665207265656e7472616e6379604482015290519081900360640190fd5b600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661020017905561ffff85166000908152600760205260408082209051869086908083838082843791909101948552505060405192839003602001909220600181015490935015159150611e7f9050576040805162461bcd60e51b815260206004820152601c60248201527f4c617965725a65726f3a206e6f2073746f726564207061796c6f616400000000604482015290519081900360640190fd5b805467ffffffffffffffff1682148015611eba5750806001015483836040518083838082843780830192505050925050506040518091039020145b611f0b576040805162461bcd60e51b815260206004820152601a60248201527f4c617965725a65726f3a20696e76616c6964207061796c6f6164000000000000604482015290519081900360640190fd5b80547fffffffff000000000000000000000000000000000000000000000000000000008116825560006001830181905561ffff88168152600560205260408082209051680100000000000000009093046001600160a01b0316928890889080838380828437919091019485525050604051928390036020018320547e1d356700000000000000000000000000000000000000000000000000000000845261ffff8c166004850190815267ffffffffffffffff90911660448501819052608060248601908152608486018c90529095506001600160a01b03871694621d356794508d93508c928c9288928d928d929091606481019060a401888880828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b15801561206657600080fd5b505af115801561207a573d6000803e3d6000fd5b505050507f612434f39581c8e7d99746c9c20c6eb0ce8c0eb99f007c5719d620841370957d8888888486604051808661ffff168152602001806020018467ffffffffffffffff168152602001836001600160a01b031681526020018281038252868682818152602001925080828437600083820152604051601f909101601f19169092018290039850909650505050505050a15050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16610100179055505050505050565b600660209081526000928352604080842090915290825290205467ffffffffffffffff1681565b6121726132d7565b6001600160a01b0316612183611c10565b6001600160a01b0316146121de576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600054819061ffff740100000000000000000000000000000000000000009091048116908216111580612214575061ffff818116145b61224f5760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b61ffff821661228f5760405162461bcd60e51b815260040180806020018281038252602b8152602001806135a5602b913960400191505060405180910390fd5b600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffff166201000061ffff8581168281029390931793849055920490911660009081526001602090815260409182902054600380546001600160a01b039092167fffffffffffffffffffffffff0000000000000000000000000000000000000000909216919091179055815192835290517f96874dbe70c8a59e7996847475489a70a1b5096ed92cdc858b63ebabd071f8199281900390910190a15050565b60005474010000000000000000000000000000000000000000900461ffff1681565b600854610100900460ff166001146123d1576040805162461bcd60e51b815260206004820181905260248201527f4c617965725a65726f3a206e6f2072656365697665207265656e7472616e6379604482015290519081900360640190fd5b600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661020017905561ffff8816600090815260056020526040908190209051889088908083838082843791909101948552505060405192839003602001909220805467ffffffffffffffff80821660010181167fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000090921682179092559087161491506124ca9050576040805162461bcd60e51b815260206004820152601660248201527f4c617965725a65726f3a2077726f6e67206e6f6e636500000000000000000000604482015290519081900360640190fd5b6001600160a01b0385166000908152600460205260409020805462010000900461ffff16612540576003546001600160a01b0316331461253b5760405162461bcd60e51b81526004018080602001828103825260228152602001806134196022913960400191505060405180910390fd5b6125a6565b805464010000000090046001600160a01b031633146125a6576040805162461bcd60e51b815260206004820152601a60248201527f4c617965725a65726f3a20696e76616c6964206c696272617279000000000000604482015290519081900360640190fd5b61ffff891660009081526007602052604080822090518a908a908083838082843791909101948552505060405192839003602001909220600181015490935015915061263b9050576040805162461bcd60e51b815260206004820152601e60248201527f4c617965725a65726f3a20696e206d65737361676520626c6f636b696e670000604482015290519081900360640190fd5b866001600160a01b0316621d3567868c8c8c8b8a8a6040518863ffffffff1660e01b8152600401808761ffff168152602001806020018567ffffffffffffffff168152602001806020018381038352888882818152602001925080828437600083820152601f01601f191690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600088803b1580156126f757600080fd5b5087f193505050508015612709575060015b61295d573d808015612737576040519150601f19603f3d011682016040523d82523d6000602084013e61273c565b606091505b5060405180606001604052808686905067ffffffffffffffff168152602001896001600160a01b0316815260200186866040518083838082843780830192505050925050506040518091039020815250600760008d61ffff1661ffff1681526020019081526020016000208b8b604051808383808284378083019250505092505050908152602001604051809103902060008201518160000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060208201518160000160086101000a8154816001600160a01b0302191690836001600160a01b03160217905550604082015181600101559050507f0f9e4d95b62f08222d612b5ab92039cd8fbbbea550a95e8df9f927436bbdf5db8b8b8b8b8b8a8a88604051808961ffff16815260200180602001876001600160a01b031681526020018667ffffffffffffffff168152602001806020018060200184810384528b8b82818152602001925080828437600083820152601f01601f1916909101858103845287815260200190508787808284376000838201819052601f909101601f191690920186810384528751815287516020918201939189019250908190849084905b83811015612918578181015183820152602001612900565b50505050905090810190601f1680156129455780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a1505b5050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555050505050505050565b60085460ff166001146129ef576040805162461bcd60e51b815260206004820152601d60248201527f4c617965725a65726f3a206e6f2073656e64207265656e7472616e6379000000604482015290519081900360640190fd5b6008805460027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0090911617905533600081815260046020908152604080832061ffff8e1684526006835281842094845293909152902080547fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000811667ffffffffffffffff91821660010191821617909155612a89826132db565b6001600160a01b0316634d3a0f7c3433848f8f8f8f8f8f8f8f8f6040518d63ffffffff1660e01b8152600401808c6001600160a01b031681526020018b67ffffffffffffffff1681526020018a61ffff1681526020018060200180602001876001600160a01b03168152602001866001600160a01b031681526020018060200184810384528c8c82818152602001925080828437600083820152601f01601f191690910185810384528a815260200190508a8a80828437600083820152601f01601f191690910185810383528681526020019050868680828437600081840152601f19601f8201169050808301925050509e5050505050505050505050505050506000604051808303818588803b158015612ba357600080fd5b505af1158015612bb7573d6000803e3d6000fd5b5050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555050505050505050505050505050565b6001602052600090815260409020546001600160a01b031681565b600854610100900460ff1660021490565b600054859061ffff740100000000000000000000000000000000000000009091048116908216111580612c56575061ffff818116145b612c915760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b61ffff8616612cf15760025461ffff808216620100009092041614612ce75760405162461bcd60e51b81526004018080602001828103825260368152602001806134bf6036913960400191505060405180910390fd5b60025461ffff1695505b61ffff8681161415612d345760405162461bcd60e51b815260040180806020018281038252602f81526020018061361b602f913960400191505060405180910390fd5b61ffff808716600090815260016020526040908190205490517ff8e1734c00000000000000000000000000000000000000000000000000000000815291871660048301908152336024840181905260448401889052608060648501908152608485018790526001600160a01b039093169363f8e1734c938a938a928a928a929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b158015612df657600080fd5b505af1158015612e0a573d6000803e3d6000fd5b50505050505050505050565b6001600160a01b0381166000908152600460205260408120805462010000900461ffff1615612e5057805462010000900461ffff16611120565b505060025462010000900461ffff16919050565b60085460ff1660021490565b6003546001600160a01b031681565b612e876132d7565b6001600160a01b0316612e98611c10565b6001600160a01b031614612ef3576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038116612f385760405162461bcd60e51b815260040180806020018281038252602681526020018061343b6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b6004602052600090815260409020805460019091015461ffff80831692620100008104909116916001600160a01b036401000000009092048216911684565b600054606090859061ffff740100000000000000000000000000000000000000009091048116908216111580613023575061ffff818116145b61305e5760405162461bcd60e51b815260040180806020018281038252602c8152602001806133b8602c913960400191505060405180910390fd5b61ffff86166130be5760025461ffff8082166201000090920416146130b45760405162461bcd60e51b815260040180806020018281038252602c815260200180613461602c913960400191505060405180910390fd5b60025461ffff1695505b61ffff86811614156131015760405162461bcd60e51b815260040180806020018281038252602f815260200180613576602f913960400191505060405180910390fd5b61ffff8087166000908152600160205260408082205481517f52d2871f00000000000000000000000000000000000000000000000000000000815293891660048501526001600160a01b0388811660248601526044850188905291519116926352d2871f926064808301939192829003018186803b15801561318257600080fd5b505afa158015613196573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156131bf57600080fd5b81019080805160405193929190846401000000008211156131df57600080fd5b9083019060208201858111156131f457600080fd5b825164010000000081118282018810171561320e57600080fd5b82525081516020918201929091019080838360005b8381101561323b578181015183820152602001613223565b50505050905090810190601f1680156132685780820380516001836020036101000a031916815260200191505b50604052505050915050949350505050565b60025462010000900461ffff1681565b61ffff831660009081526005602052604080822090518490849080838380828437919091019485525050604051928390036020019092205467ffffffffffffffff16925050509392505050565b3390565b805460009061ffff166133485760025461ffff908116141561332e5760405162461bcd60e51b81526004018080602001828103825260238152602001806135d06023913960400191505060405180910390fd5b5060025464010000000090046001600160a01b0316611124565b815461ffff90811614156133a3576040805162461bcd60e51b815260206004820152601b60248201527f4c617965725a65726f3a20696e20424c4f434b5f56455253494f4e0000000000604482015290519081900360640190fd5b5060018101546001600160a01b031661112456fe4c617965725a65726f3a20696e76616c6964206d6573736167696e67206c6962726172792076657273696f6e4c617965725a65726f3a20726563656976652076657273696f6e202864656661756c742920697320424c4f434b5f56455253494f4e4c617965725a65726f3a20696e76616c69642064656661756c74206c6962726172794f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734c617965725a65726f3a206e6f2044454641554c5420636f6e666967207768696c65206d6967726174696f6e4c617965725a65726f3a2073656e642076657273696f6e202864656661756c742920697320424c4f434b5f56455253494f4e4c617965725a65726f3a2063616e206e6f742073657420436f6e66696720647572696e672044454641554c54206d6967726174696f6e4c617965725a65726f3a2073656e642076657273696f6e20697320424c4f434b5f56455253494f4e4c617965725a65726f3a2063616e206e6f7420616464206e6577206d6573736167696e67206c6962726172794c617965725a65726f3a206e65772076657273696f6e2063616e6e6f74206265207a65726f20616464726573734c617965725a65726f3a2063616e206e6f742067657420636f6e66696720666f7220424c4f434b5f56455253494f4e4c617965725a65726f3a2064656661756c7420726563656976652076657273696f6e206d757374203e20304c617965725a65726f3a2064656661756c7420696e20424c4f434b5f56455253494f4e4c617965725a65726f3a2064656661756c742073656e642076657273696f6e206d757374203e20304c617965725a65726f3a2063616e206e6f742073657420636f6e66696720666f7220424c4f434b5f56455253494f4e4c617965725a65726f3a20726563656976652076657273696f6e20697320424c4f434b5f56455253494f4ea26469706673582212208ed5abf804b10b0f71da77c570eb372ab4e36974c6a955e66c94b397fe506a9e64736f6c63430007060033",
954
+ "bytecode": "0x60a06040526008805461ff001960ff19909116600117166101001790553480156200002957600080fd5b5060405162003c9638038062003c96833981810160405260208110156200004f57600080fd5b505160006200005d620000bd565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060f01b6001600160f01b031916608052620000c1565b3390565b60805160f01c613bb2620000e4600039806117d75280611eb75250613bb26000f3fe6080604052600436106102855760003560e01c80639c729da111610153578063ca066b35116100cb578063f2fde38b1161007f578063f5ecbdbc11610064578063f5ecbdbc14610f17578063faee093f14610fe6578063fdc07c7014610ffb57610285565b8063f2fde38b14610e54578063f4abee4b14610e9457610285565b8063da1a7c9a116100b0578063da1a7c9a14610dea578063e97a448a14610e2a578063ebfea6e014610e3f57610285565b8063ca066b3514610d3d578063cbed8b9c14610d5257610285565b8063bd42a71311610122578063c2fa481311610107578063c2fa481314610abe578063c580310014610bca578063c7e3711714610d0f57610285565b8063bd42a71314610a7b578063c07f47d414610aa957610285565b80639c729da114610902578063a91606df14610942578063aaff5f1614610957578063b208649914610a3157610285565b806342d65a8d1161020157806376a386dc116101b55780638da5cb5b1161019a5780638da5cb5b1461081a5780639924d33b1461082f5780639a8a0592146108ed57610285565b806376a386dc146106b75780637a145748146107b357610285565b80635d9ef01a116101e65780635d9ef01a1461064d578063715018a61461066257806371ba2fd61461067757610285565b806342d65a8d146105875780634afb422b1461060f57610285565b806310ddb1371161025857806324ba3f2c1161023d57806324ba3f2c146104495780633408e4701461045e57806340a7bb101461047357610285565b806310ddb137146103db578063158c81ad1461040957610285565b806307e0db171461028a578063096568f6146102ba5780630b837bb5146103115780630eaf6ea61461033f575b600080fd5b34801561029657600080fd5b506102b8600480360360208110156102ad57600080fd5b503561ffff16611083565b005b3480156102c657600080fd5b506102fa600480360360208110156102dd57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166111c7565b6040805161ffff9092168252519081900360200190f35b34801561031d57600080fd5b506102b86004803603602081101561033457600080fd5b503561ffff16611213565b34801561034b57600080fd5b506103c76004803603604081101561036257600080fd5b61ffff823516919081019060408101602082013564010000000081111561038857600080fd5b82018360208201111561039a57600080fd5b803590602001918460018302840111640100000000831117156103bc57600080fd5b50909250905061141a565b604080519115158252519081900360200190f35b3480156103e757600080fd5b506102b8600480360360208110156103fe57600080fd5b503561ffff16611466565b34801561041557600080fd5b506102b86004803603602081101561042c57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166115b3565b34801561045557600080fd5b506102fa6117d0565b34801561046a57600080fd5b506102fa6117d5565b34801561047f57600080fd5b5061056e600480360360a081101561049657600080fd5b61ffff8235169173ffffffffffffffffffffffffffffffffffffffff602082013516918101906060810160408201356401000000008111156104d757600080fd5b8201836020820111156104e957600080fd5b8035906020019184600183028401116401000000008311171561050b57600080fd5b91939092823515159260408101906020013564010000000081111561052f57600080fd5b82018360208201111561054157600080fd5b8035906020019184600183028401116401000000008311171561056357600080fd5b5090925090506117f9565b6040805192835260208301919091528051918290030190f35b34801561059357600080fd5b506102b8600480360360408110156105aa57600080fd5b61ffff82351691908101906040810160208201356401000000008111156105d057600080fd5b8201836020820111156105e257600080fd5b8035906020019184600183028401116401000000008311171561060457600080fd5b5090925090506119b1565b34801561061b57600080fd5b50610624611b7c565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b34801561065957600080fd5b506102fa611ba0565b34801561066e57600080fd5b506102b8611baa565b34801561068357600080fd5b506106246004803603602081101561069a57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16611ca7565b3480156106c357600080fd5b50610775600480360360408110156106da57600080fd5b61ffff823516919081019060408101602082013564010000000081111561070057600080fd5b82018360208201111561071257600080fd5b8035906020019184600183028401116401000000008311171561073457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611db8945050505050565b6040805167ffffffffffffffff909416845273ffffffffffffffffffffffffffffffffffffffff909216602084015282820152519081900360600190f35b3480156107bf57600080fd5b506107fd600480360360408110156107d657600080fd5b50803561ffff16906020013573ffffffffffffffffffffffffffffffffffffffff16611e1c565b6040805167ffffffffffffffff9092168252519081900360200190f35b34801561082657600080fd5b50610624611e61565b34801561083b57600080fd5b506107fd6004803603604081101561085257600080fd5b61ffff823516919081019060408101602082013564010000000081111561087857600080fd5b82018360208201111561088a57600080fd5b803590602001918460018302840111640100000000831117156108ac57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611e7d945050505050565b3480156108f957600080fd5b506102fa611eb5565b34801561090e57600080fd5b506106246004803603602081101561092557600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16611ed9565b34801561094e57600080fd5b506102fa611fdd565b34801561096357600080fd5b506102b86004803603606081101561097a57600080fd5b61ffff82351691908101906040810160208201356401000000008111156109a057600080fd5b8201836020820111156109b257600080fd5b803590602001918460018302840111640100000000831117156109d457600080fd5b9193909290916020810190356401000000008111156109f257600080fd5b820183602082011115610a0457600080fd5b80359060200191846001830284011164010000000083111715610a2657600080fd5b509092509050611fe3565b348015610a3d57600080fd5b506107fd60048036036040811015610a5457600080fd5b50803561ffff16906020013573ffffffffffffffffffffffffffffffffffffffff1661242b565b348015610a8757600080fd5b506102b860048036036020811015610a9e57600080fd5b503561ffff16612452565b348015610ab557600080fd5b506102fa61265f565b348015610aca57600080fd5b506102b8600480360360c0811015610ae157600080fd5b61ffff8235169190810190604081016020820135640100000000811115610b0757600080fd5b820183602082011115610b1957600080fd5b80359060200191846001830284011164010000000083111715610b3b57600080fd5b9193909273ffffffffffffffffffffffffffffffffffffffff8335169267ffffffffffffffff602082013516926040820135929091608081019060600135640100000000811115610b8b57600080fd5b820183602082011115610b9d57600080fd5b80359060200191846001830284011164010000000083111715610bbf57600080fd5b509092509050612681565b6102b8600480360360c0811015610be057600080fd5b61ffff8235169190810190604081016020820135640100000000811115610c0657600080fd5b820183602082011115610c1857600080fd5b80359060200191846001830284011164010000000083111715610c3a57600080fd5b919390929091602081019035640100000000811115610c5857600080fd5b820183602082011115610c6a57600080fd5b80359060200191846001830284011164010000000083111715610c8c57600080fd5b9193909273ffffffffffffffffffffffffffffffffffffffff83358116936020810135909116929190606081019060400135640100000000811115610cd057600080fd5b820183602082011115610ce257600080fd5b80359060200191846001830284011164010000000083111715610d0457600080fd5b509092509050612d66565b348015610d1b57600080fd5b5061062460048036036020811015610d3257600080fd5b503561ffff16613035565b348015610d4957600080fd5b506103c761305d565b348015610d5e57600080fd5b506102b860048036036080811015610d7557600080fd5b61ffff823581169260208101359091169160408201359190810190608081016060820135640100000000811115610dab57600080fd5b820183602082011115610dbd57600080fd5b80359060200191846001830284011164010000000083111715610ddf57600080fd5b50909250905061306e565b348015610df657600080fd5b506102fa60048036036020811015610e0d57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16613271565b348015610e3657600080fd5b506103c76132cc565b348015610e4b57600080fd5b506106246132d8565b348015610e6057600080fd5b506102b860048036036020811015610e7757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166132f4565b348015610ea057600080fd5b50610ed460048036036020811015610eb757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16613461565b6040805161ffff958616815293909416602084015273ffffffffffffffffffffffffffffffffffffffff9182168385015216606082015290519081900360800190f35b348015610f2357600080fd5b50610f7160048036036080811015610f3a57600080fd5b5061ffff813581169160208101359091169073ffffffffffffffffffffffffffffffffffffffff60408201351690606001356134ad565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610fab578181015183820152602001610f93565b50505050905090810190601f168015610fd85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610ff257600080fd5b506102fa613768565b34801561100757600080fd5b506107fd6004803603604081101561101e57600080fd5b61ffff823516919081019060408101602082013564010000000081111561104457600080fd5b82018360208201111561105657600080fd5b8035906020019184600183028401116401000000008311171561107857600080fd5b509092509050613778565b600054819061ffff7401000000000000000000000000000000000000000090910481169082161115806110b9575061ffff818116145b6110f45760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b336000818152600460209081526040808320805461ffff88167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909116811782558085526001808552948390205494820180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9690961695909517909455815194855291840192909252815190927ff2bc255571446a2f9b7cb2f0c75fd6a279bdb469f515d5a5c9910f713aeb32ca92908290030190a1505050565b73ffffffffffffffffffffffffffffffffffffffff81166000908152600460205260408120805461ffff161561120257805461ffff1661120a565b60025461ffff165b9150505b919050565b61121b6137c5565b73ffffffffffffffffffffffffffffffffffffffff16611239611e61565b73ffffffffffffffffffffffffffffffffffffffff16146112a1576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600054819061ffff7401000000000000000000000000000000000000000090910481169082161115806112d7575061ffff818116145b6113125760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b61ffff82166113525760405162461bcd60e51b8152600401808060200182810382526028815260200180613afb6028913960400191505060405180910390fd5b600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff848116918217808455908116600090815260016020908152604091829020547fffffffffffffffff0000000000000000000000000000000000000000ffffffff90931673ffffffffffffffffffffffffffffffffffffffff9093166401000000000292909217909355825191825291517feb685c087d38029bbde35299b748c6b80f099c7e5c3f9fe2dbb3ace1099e3b07929181900390910190a15050565b61ffff8316600090815260076020526040808220905182919085908590808383808284379190910194855250506040519283900360200190922060010154151593505050509392505050565b600054819061ffff74010000000000000000000000000000000000000000909104811690821611158061149c575061ffff818116145b6114d75760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b33600081815260046020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffff166201000061ffff8916908102919091178083558186526001855294839020547fffffffffffffffff0000000000000000000000000000000000000000ffffffff90951673ffffffffffffffffffffffffffffffffffffffff90951664010000000002949094178155815194855291840192909252815190927f9c199418af68d1547d7b99c71ee6a9eb18b27990dfcfb38982f3e3fb8c7b6bef92908290030190a1505050565b6115bb6137c5565b73ffffffffffffffffffffffffffffffffffffffff166115d9611e61565b73ffffffffffffffffffffffffffffffffffffffff1614611641576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff81166116935760405162461bcd60e51b815260040180806020018281038252602d815260200180613a51602d913960400191505060405180910390fd5b60005461ffff740100000000000000000000000000000000000000009091048116106116f05760405162461bcd60e51b815260040180806020018281038252602c815260200180613a25602c913960400191505060405180910390fd5b60008054600161ffff7401000000000000000000000000000000000000000080840482168301821681027fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff909416939093178085558390048116845260209182526040808520805473ffffffffffffffffffffffffffffffffffffffff88167fffffffffffffffffffffffff00000000000000000000000000000000000000009091161790559354845193900416825291517f18c7402e58a1bec57f4eb75af242f65ababbbe09d9db383e0542f00635e5b8c5929181900390910190a150565b600081565b7f000000000000000000000000000000000000000000000000000000000000000090565b73ffffffffffffffffffffffffffffffffffffffff861660009081526004602052604081208054829190829061ffff161561184e57600182015473ffffffffffffffffffffffffffffffffffffffff16611870565b600254640100000000900473ffffffffffffffffffffffffffffffffffffffff165b90508073ffffffffffffffffffffffffffffffffffffffff166340a7bb108c8c8c8c8c8c8c6040518863ffffffff1660e01b8152600401808861ffff1681526020018773ffffffffffffffffffffffffffffffffffffffff168152602001806020018515158152602001806020018381038352888882818152602001925080828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690910184810383528581526020019050858580828437600081840152601f19601f8201169050808301925050509950505050505050505050604080518083038186803b15801561196c57600080fd5b505afa158015611980573d6000803e3d6000fd5b505050506040513d604081101561199657600080fd5b508051602090910151909c909b509950505050505050505050565b61ffff83166000908152600760205260408082209051849084908083838082843791909101948552505060405192839003602001909220600181015490935015159150611a479050576040805162461bcd60e51b815260206004820152601c60248201527f4c617965725a65726f3a206e6f2073746f726564207061796c6f616400000000604482015290519081900360640190fd5b805468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff163314611abe576040805162461bcd60e51b815260206004820152601960248201527f4c617965725a65726f3a20696e76616c69642063616c6c657200000000000000604482015290519081900360640190fd5b80547fffffffff00000000000000000000000000000000000000000000000000000000168155600060018201556040805161ffff86168152602081018281529181018490527f23d2684f396e92a6e2ff2d16f98e6fea00d50cb27a64b531bc0748f730211f98918691869186919060608201848480828437600083820152604051601f9091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016909201829003965090945050505050a150505050565b600254640100000000900473ffffffffffffffffffffffffffffffffffffffff1681565b60025461ffff1681565b611bb26137c5565b73ffffffffffffffffffffffffffffffffffffffff16611bd0611e61565b73ffffffffffffffffffffffffffffffffffffffff1614611c38576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6000805460405173ffffffffffffffffffffffffffffffffffffffff909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b73ffffffffffffffffffffffffffffffffffffffff81166000908152600460205260408120805461ffff62010000909104811690811415611d195760405162461bcd60e51b815260040180806020018281038252602b815260200180613b52602b913960400191505060405180910390fd5b61ffff8116611d8e5760025462010000900461ffff9081161415611d6e5760405162461bcd60e51b81526004018080602001828103825260358152602001806138ec6035913960400191505060405180910390fd5b60035473ffffffffffffffffffffffffffffffffffffffff169250611db1565b8154640100000000900473ffffffffffffffffffffffffffffffffffffffff1692505b5050919050565b600760209081526000928352604090922081518083018401805192815290840192909301919091209152805460019091015467ffffffffffffffff82169168010000000000000000900473ffffffffffffffffffffffffffffffffffffffff169083565b61ffff8216600090815260066020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205467ffffffffffffffff1692915050565b60005473ffffffffffffffffffffffffffffffffffffffff1690565b6005602090815260009283526040909220815180830184018051928152908401929093019190912091525467ffffffffffffffff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b73ffffffffffffffffffffffffffffffffffffffff81166000908152600460205260408120805461ffff90811690811415611f455760405162461bcd60e51b81526004018080602001828103825260288152602001806139fd6028913960400191505060405180910390fd5b61ffff8116611fbc5760025461ffff9081161415611f945760405162461bcd60e51b81526004018080602001828103825260328152602001806139956032913960400191505060405180910390fd5b600254640100000000900473ffffffffffffffffffffffffffffffffffffffff169250611db1565b506001015473ffffffffffffffffffffffffffffffffffffffff1692915050565b61ffff81565b600854610100900460ff16600114612042576040805162461bcd60e51b815260206004820181905260248201527f4c617965725a65726f3a206e6f2072656365697665207265656e7472616e6379604482015290519081900360640190fd5b600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661020017905561ffff851660009081526007602052604080822090518690869080838380828437919091019485525050604051928390036020019092206001810154909350151591506121049050576040805162461bcd60e51b815260206004820152601c60248201527f4c617965725a65726f3a206e6f2073746f726564207061796c6f616400000000604482015290519081900360640190fd5b805467ffffffffffffffff168214801561213f5750806001015483836040518083838082843780830192505050925050506040518091039020145b612190576040805162461bcd60e51b815260206004820152601a60248201527f4c617965725a65726f3a20696e76616c6964207061796c6f6164000000000000604482015290519081900360640190fd5b80547fffffffff000000000000000000000000000000000000000000000000000000008116825560006001830181905561ffff881681526005602052604080822090516801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16928890889080838380828437919091019485525050604051928390036020018320547e1d356700000000000000000000000000000000000000000000000000000000845261ffff8c166004850190815267ffffffffffffffff90911660448501819052608060248601908152608486018c905290955073ffffffffffffffffffffffffffffffffffffffff871694621d356794508d93508c928c9288928d928d929091606481019060a401888880828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b15801561232357600080fd5b505af1158015612337573d6000803e3d6000fd5b505050507f612434f39581c8e7d99746c9c20c6eb0ce8c0eb99f007c5719d620841370957d8888888486604051808661ffff168152602001806020018467ffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018281038252868682818152602001925080828437600083820152604051601f9091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169092018290039850909650505050505050a15050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16610100179055505050505050565b600660209081526000928352604080842090915290825290205467ffffffffffffffff1681565b61245a6137c5565b73ffffffffffffffffffffffffffffffffffffffff16612478611e61565b73ffffffffffffffffffffffffffffffffffffffff16146124e0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600054819061ffff740100000000000000000000000000000000000000009091048116908216111580612516575061ffff818116145b6125515760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b61ffff82166125915760405162461bcd60e51b815260040180806020018281038252602b815260200180613aad602b913960400191505060405180910390fd5b600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffff166201000061ffff85811682810293909317938490559204909116600090815260016020908152604091829020546003805473ffffffffffffffffffffffffffffffffffffffff9092167fffffffffffffffffffffffff0000000000000000000000000000000000000000909216919091179055815192835290517f96874dbe70c8a59e7996847475489a70a1b5096ed92cdc858b63ebabd071f8199281900390910190a15050565b60005474010000000000000000000000000000000000000000900461ffff1681565b600854610100900460ff166001146126e0576040805162461bcd60e51b815260206004820181905260248201527f4c617965725a65726f3a206e6f2072656365697665207265656e7472616e6379604482015290519081900360640190fd5b600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661020017905561ffff8816600090815260056020526040908190209051889088908083838082843791909101948552505060405192839003602001909220805467ffffffffffffffff80821660010181167fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000090921682179092559087161491506127d99050576040805162461bcd60e51b815260206004820152601660248201527f4c617965725a65726f3a2077726f6e67206e6f6e636500000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff85166000908152600460205260409020805462010000900461ffff166128695760035473ffffffffffffffffffffffffffffffffffffffff1633146128645760405162461bcd60e51b81526004018080602001828103825260228152602001806139216022913960400191505060405180910390fd5b6128dc565b8054640100000000900473ffffffffffffffffffffffffffffffffffffffff1633146128dc576040805162461bcd60e51b815260206004820152601a60248201527f4c617965725a65726f3a20696e76616c6964206c696272617279000000000000604482015290519081900360640190fd5b61ffff891660009081526007602052604080822090518a908a90808383808284379190910194855250506040519283900360200190922060018101549093501591506129719050576040805162461bcd60e51b815260206004820152601e60248201527f4c617965725a65726f3a20696e206d65737361676520626c6f636b696e670000604482015290519081900360640190fd5b8673ffffffffffffffffffffffffffffffffffffffff16621d3567868c8c8c8b8a8a6040518863ffffffff1660e01b8152600401808761ffff168152602001806020018567ffffffffffffffff168152602001806020018381038352888882818152602001925080828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600088803b158015612a5857600080fd5b5087f193505050508015612a6a575060015b612d2e573d808015612a98576040519150601f19603f3d011682016040523d82523d6000602084013e612a9d565b606091505b5060405180606001604052808686905067ffffffffffffffff1681526020018973ffffffffffffffffffffffffffffffffffffffff16815260200186866040518083838082843780830192505050925050506040518091039020815250600760008d61ffff1661ffff1681526020019081526020016000208b8b604051808383808284378083019250505092505050908152602001604051809103902060008201518160000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060208201518160000160086101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550604082015181600101559050507f0f9e4d95b62f08222d612b5ab92039cd8fbbbea550a95e8df9f927436bbdf5db8b8b8b8b8b8a8a88604051808961ffff168152602001806020018773ffffffffffffffffffffffffffffffffffffffff1681526020018667ffffffffffffffff168152602001806020018060200184810384528b8b82818152602001925080828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016909101858103845287815260200190508787808284376000838201819052601f9091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690920186810384528751815287516020918201939189019250908190849084905b83811015612ce9578181015183820152602001612cd1565b50505050905090810190601f168015612d165780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a1505b5050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555050505050505050565b60085460ff16600114612dc0576040805162461bcd60e51b815260206004820152601d60248201527f4c617965725a65726f3a206e6f2073656e64207265656e7472616e6379000000604482015290519081900360640190fd5b6008805460027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0090911617905533600081815260046020908152604080832061ffff8e1684526006835281842094845293909152902080547fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000811667ffffffffffffffff91821660010191821617909155612e5a826137c9565b73ffffffffffffffffffffffffffffffffffffffff16634d3a0f7c3433848f8f8f8f8f8f8f8f8f6040518d63ffffffff1660e01b8152600401808c73ffffffffffffffffffffffffffffffffffffffff1681526020018b67ffffffffffffffff1681526020018a61ffff16815260200180602001806020018773ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184810384528c8c82818152602001925080828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690910185810384528a815260200190508a8a80828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690910185810383528681526020019050868680828437600081840152601f19601f8201169050808301925050509e5050505050505050505050505050506000604051808303818588803b158015612fe457600080fd5b505af1158015612ff8573d6000803e3d6000fd5b5050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555050505050505050505050505050565b60016020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600854610100900460ff1660021490565b600054859061ffff7401000000000000000000000000000000000000000090910481169082161115806130a4575061ffff818116145b6130df5760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b61ffff861661313f5760025461ffff8082166201000090920416146131355760405162461bcd60e51b81526004018080602001828103825260368152602001806139c76036913960400191505060405180910390fd5b60025461ffff1695505b61ffff86811614156131825760405162461bcd60e51b815260040180806020018281038252602f815260200180613b23602f913960400191505060405180910390fd5b61ffff808716600090815260016020526040908190205490517ff8e1734c000000000000000000000000000000000000000000000000000000008152918716600483019081523360248401819052604484018890526080606485019081526084850187905273ffffffffffffffffffffffffffffffffffffffff9093169363f8e1734c938a938a928a928a929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b15801561325157600080fd5b505af1158015613265573d6000803e3d6000fd5b50505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81166000908152600460205260408120805462010000900461ffff16156132b857805462010000900461ffff1661120a565b505060025462010000900461ffff16919050565b60085460ff1660021490565b60035473ffffffffffffffffffffffffffffffffffffffff1681565b6132fc6137c5565b73ffffffffffffffffffffffffffffffffffffffff1661331a611e61565b73ffffffffffffffffffffffffffffffffffffffff1614613382576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff81166133d45760405162461bcd60e51b81526004018080602001828103825260268152602001806139436026913960400191505060405180910390fd5b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6004602052600090815260409020805460019091015461ffff808316926201000081049091169173ffffffffffffffffffffffffffffffffffffffff6401000000009092048216911684565b600054606090859061ffff7401000000000000000000000000000000000000000090910481169082161115806134e6575061ffff818116145b6135215760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b61ffff86166135815760025461ffff8082166201000090920416146135775760405162461bcd60e51b815260040180806020018281038252602c815260200180613969602c913960400191505060405180910390fd5b60025461ffff1695505b61ffff86811614156135c45760405162461bcd60e51b815260040180806020018281038252602f815260200180613a7e602f913960400191505060405180910390fd5b61ffff8087166000908152600160205260408082205481517f52d2871f000000000000000000000000000000000000000000000000000000008152938916600485015273ffffffffffffffffffffffffffffffffffffffff88811660248601526044850188905291519116926352d2871f926064808301939192829003018186803b15801561365257600080fd5b505afa158015613666573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405260208110156136ad57600080fd5b81019080805160405193929190846401000000008211156136cd57600080fd5b9083019060208201858111156136e257600080fd5b82516401000000008111828201881017156136fc57600080fd5b82525081516020918201929091019080838360005b83811015613729578181015183820152602001613711565b50505050905090810190601f1680156137565780820380516001836020036101000a031916815260200191505b50604052505050915050949350505050565b60025462010000900461ffff1681565b61ffff831660009081526005602052604080822090518490849080838380828437919091019485525050604051928390036020019092205467ffffffffffffffff16925050509392505050565b3390565b805460009061ffff166138435760025461ffff908116141561381c5760405162461bcd60e51b8152600401808060200182810382526023815260200180613ad86023913960400191505060405180910390fd5b50600254640100000000900473ffffffffffffffffffffffffffffffffffffffff1661120e565b815461ffff908116141561389e576040805162461bcd60e51b815260206004820152601b60248201527f4c617965725a65726f3a20696e20424c4f434b5f56455253494f4e0000000000604482015290519081900360640190fd5b50600181015473ffffffffffffffffffffffffffffffffffffffff1661120e56fe4c617965725a65726f3a20696e76616c6964206d6573736167696e67206c6962726172792076657273696f6e4c617965725a65726f3a20726563656976652076657273696f6e202864656661756c742920697320424c4f434b5f56455253494f4e4c617965725a65726f3a20696e76616c69642064656661756c74206c6962726172794f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734c617965725a65726f3a206e6f2044454641554c5420636f6e666967207768696c65206d6967726174696f6e4c617965725a65726f3a2073656e642076657273696f6e202864656661756c742920697320424c4f434b5f56455253494f4e4c617965725a65726f3a2063616e206e6f742073657420436f6e66696720647572696e672044454641554c54206d6967726174696f6e4c617965725a65726f3a2073656e642076657273696f6e20697320424c4f434b5f56455253494f4e4c617965725a65726f3a2063616e206e6f7420616464206e6577206d6573736167696e67206c6962726172794c617965725a65726f3a206e65772076657273696f6e2063616e6e6f74206265207a65726f20616464726573734c617965725a65726f3a2063616e206e6f742067657420636f6e66696720666f7220424c4f434b5f56455253494f4e4c617965725a65726f3a2064656661756c7420726563656976652076657273696f6e206d757374203e20304c617965725a65726f3a2064656661756c7420696e20424c4f434b5f56455253494f4e4c617965725a65726f3a2064656661756c742073656e642076657273696f6e206d757374203e20304c617965725a65726f3a2063616e206e6f742073657420636f6e66696720666f7220424c4f434b5f56455253494f4e4c617965725a65726f3a20726563656976652076657273696f6e20697320424c4f434b5f56455253494f4ea264697066735822122043e6eac7b517b796501f47bc71b7a43add5851a30c90cd931b98a7809437503e64736f6c63430007060033",
955
+ "deployedBytecode": "0x6080604052600436106102855760003560e01c80639c729da111610153578063ca066b35116100cb578063f2fde38b1161007f578063f5ecbdbc11610064578063f5ecbdbc14610f17578063faee093f14610fe6578063fdc07c7014610ffb57610285565b8063f2fde38b14610e54578063f4abee4b14610e9457610285565b8063da1a7c9a116100b0578063da1a7c9a14610dea578063e97a448a14610e2a578063ebfea6e014610e3f57610285565b8063ca066b3514610d3d578063cbed8b9c14610d5257610285565b8063bd42a71311610122578063c2fa481311610107578063c2fa481314610abe578063c580310014610bca578063c7e3711714610d0f57610285565b8063bd42a71314610a7b578063c07f47d414610aa957610285565b80639c729da114610902578063a91606df14610942578063aaff5f1614610957578063b208649914610a3157610285565b806342d65a8d1161020157806376a386dc116101b55780638da5cb5b1161019a5780638da5cb5b1461081a5780639924d33b1461082f5780639a8a0592146108ed57610285565b806376a386dc146106b75780637a145748146107b357610285565b80635d9ef01a116101e65780635d9ef01a1461064d578063715018a61461066257806371ba2fd61461067757610285565b806342d65a8d146105875780634afb422b1461060f57610285565b806310ddb1371161025857806324ba3f2c1161023d57806324ba3f2c146104495780633408e4701461045e57806340a7bb101461047357610285565b806310ddb137146103db578063158c81ad1461040957610285565b806307e0db171461028a578063096568f6146102ba5780630b837bb5146103115780630eaf6ea61461033f575b600080fd5b34801561029657600080fd5b506102b8600480360360208110156102ad57600080fd5b503561ffff16611083565b005b3480156102c657600080fd5b506102fa600480360360208110156102dd57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166111c7565b6040805161ffff9092168252519081900360200190f35b34801561031d57600080fd5b506102b86004803603602081101561033457600080fd5b503561ffff16611213565b34801561034b57600080fd5b506103c76004803603604081101561036257600080fd5b61ffff823516919081019060408101602082013564010000000081111561038857600080fd5b82018360208201111561039a57600080fd5b803590602001918460018302840111640100000000831117156103bc57600080fd5b50909250905061141a565b604080519115158252519081900360200190f35b3480156103e757600080fd5b506102b8600480360360208110156103fe57600080fd5b503561ffff16611466565b34801561041557600080fd5b506102b86004803603602081101561042c57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166115b3565b34801561045557600080fd5b506102fa6117d0565b34801561046a57600080fd5b506102fa6117d5565b34801561047f57600080fd5b5061056e600480360360a081101561049657600080fd5b61ffff8235169173ffffffffffffffffffffffffffffffffffffffff602082013516918101906060810160408201356401000000008111156104d757600080fd5b8201836020820111156104e957600080fd5b8035906020019184600183028401116401000000008311171561050b57600080fd5b91939092823515159260408101906020013564010000000081111561052f57600080fd5b82018360208201111561054157600080fd5b8035906020019184600183028401116401000000008311171561056357600080fd5b5090925090506117f9565b6040805192835260208301919091528051918290030190f35b34801561059357600080fd5b506102b8600480360360408110156105aa57600080fd5b61ffff82351691908101906040810160208201356401000000008111156105d057600080fd5b8201836020820111156105e257600080fd5b8035906020019184600183028401116401000000008311171561060457600080fd5b5090925090506119b1565b34801561061b57600080fd5b50610624611b7c565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b34801561065957600080fd5b506102fa611ba0565b34801561066e57600080fd5b506102b8611baa565b34801561068357600080fd5b506106246004803603602081101561069a57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16611ca7565b3480156106c357600080fd5b50610775600480360360408110156106da57600080fd5b61ffff823516919081019060408101602082013564010000000081111561070057600080fd5b82018360208201111561071257600080fd5b8035906020019184600183028401116401000000008311171561073457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611db8945050505050565b6040805167ffffffffffffffff909416845273ffffffffffffffffffffffffffffffffffffffff909216602084015282820152519081900360600190f35b3480156107bf57600080fd5b506107fd600480360360408110156107d657600080fd5b50803561ffff16906020013573ffffffffffffffffffffffffffffffffffffffff16611e1c565b6040805167ffffffffffffffff9092168252519081900360200190f35b34801561082657600080fd5b50610624611e61565b34801561083b57600080fd5b506107fd6004803603604081101561085257600080fd5b61ffff823516919081019060408101602082013564010000000081111561087857600080fd5b82018360208201111561088a57600080fd5b803590602001918460018302840111640100000000831117156108ac57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611e7d945050505050565b3480156108f957600080fd5b506102fa611eb5565b34801561090e57600080fd5b506106246004803603602081101561092557600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16611ed9565b34801561094e57600080fd5b506102fa611fdd565b34801561096357600080fd5b506102b86004803603606081101561097a57600080fd5b61ffff82351691908101906040810160208201356401000000008111156109a057600080fd5b8201836020820111156109b257600080fd5b803590602001918460018302840111640100000000831117156109d457600080fd5b9193909290916020810190356401000000008111156109f257600080fd5b820183602082011115610a0457600080fd5b80359060200191846001830284011164010000000083111715610a2657600080fd5b509092509050611fe3565b348015610a3d57600080fd5b506107fd60048036036040811015610a5457600080fd5b50803561ffff16906020013573ffffffffffffffffffffffffffffffffffffffff1661242b565b348015610a8757600080fd5b506102b860048036036020811015610a9e57600080fd5b503561ffff16612452565b348015610ab557600080fd5b506102fa61265f565b348015610aca57600080fd5b506102b8600480360360c0811015610ae157600080fd5b61ffff8235169190810190604081016020820135640100000000811115610b0757600080fd5b820183602082011115610b1957600080fd5b80359060200191846001830284011164010000000083111715610b3b57600080fd5b9193909273ffffffffffffffffffffffffffffffffffffffff8335169267ffffffffffffffff602082013516926040820135929091608081019060600135640100000000811115610b8b57600080fd5b820183602082011115610b9d57600080fd5b80359060200191846001830284011164010000000083111715610bbf57600080fd5b509092509050612681565b6102b8600480360360c0811015610be057600080fd5b61ffff8235169190810190604081016020820135640100000000811115610c0657600080fd5b820183602082011115610c1857600080fd5b80359060200191846001830284011164010000000083111715610c3a57600080fd5b919390929091602081019035640100000000811115610c5857600080fd5b820183602082011115610c6a57600080fd5b80359060200191846001830284011164010000000083111715610c8c57600080fd5b9193909273ffffffffffffffffffffffffffffffffffffffff83358116936020810135909116929190606081019060400135640100000000811115610cd057600080fd5b820183602082011115610ce257600080fd5b80359060200191846001830284011164010000000083111715610d0457600080fd5b509092509050612d66565b348015610d1b57600080fd5b5061062460048036036020811015610d3257600080fd5b503561ffff16613035565b348015610d4957600080fd5b506103c761305d565b348015610d5e57600080fd5b506102b860048036036080811015610d7557600080fd5b61ffff823581169260208101359091169160408201359190810190608081016060820135640100000000811115610dab57600080fd5b820183602082011115610dbd57600080fd5b80359060200191846001830284011164010000000083111715610ddf57600080fd5b50909250905061306e565b348015610df657600080fd5b506102fa60048036036020811015610e0d57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16613271565b348015610e3657600080fd5b506103c76132cc565b348015610e4b57600080fd5b506106246132d8565b348015610e6057600080fd5b506102b860048036036020811015610e7757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166132f4565b348015610ea057600080fd5b50610ed460048036036020811015610eb757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16613461565b6040805161ffff958616815293909416602084015273ffffffffffffffffffffffffffffffffffffffff9182168385015216606082015290519081900360800190f35b348015610f2357600080fd5b50610f7160048036036080811015610f3a57600080fd5b5061ffff813581169160208101359091169073ffffffffffffffffffffffffffffffffffffffff60408201351690606001356134ad565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610fab578181015183820152602001610f93565b50505050905090810190601f168015610fd85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610ff257600080fd5b506102fa613768565b34801561100757600080fd5b506107fd6004803603604081101561101e57600080fd5b61ffff823516919081019060408101602082013564010000000081111561104457600080fd5b82018360208201111561105657600080fd5b8035906020019184600183028401116401000000008311171561107857600080fd5b509092509050613778565b600054819061ffff7401000000000000000000000000000000000000000090910481169082161115806110b9575061ffff818116145b6110f45760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b336000818152600460209081526040808320805461ffff88167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000909116811782558085526001808552948390205494820180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9690961695909517909455815194855291840192909252815190927ff2bc255571446a2f9b7cb2f0c75fd6a279bdb469f515d5a5c9910f713aeb32ca92908290030190a1505050565b73ffffffffffffffffffffffffffffffffffffffff81166000908152600460205260408120805461ffff161561120257805461ffff1661120a565b60025461ffff165b9150505b919050565b61121b6137c5565b73ffffffffffffffffffffffffffffffffffffffff16611239611e61565b73ffffffffffffffffffffffffffffffffffffffff16146112a1576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600054819061ffff7401000000000000000000000000000000000000000090910481169082161115806112d7575061ffff818116145b6113125760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b61ffff82166113525760405162461bcd60e51b8152600401808060200182810382526028815260200180613afb6028913960400191505060405180910390fd5b600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff848116918217808455908116600090815260016020908152604091829020547fffffffffffffffff0000000000000000000000000000000000000000ffffffff90931673ffffffffffffffffffffffffffffffffffffffff9093166401000000000292909217909355825191825291517feb685c087d38029bbde35299b748c6b80f099c7e5c3f9fe2dbb3ace1099e3b07929181900390910190a15050565b61ffff8316600090815260076020526040808220905182919085908590808383808284379190910194855250506040519283900360200190922060010154151593505050509392505050565b600054819061ffff74010000000000000000000000000000000000000000909104811690821611158061149c575061ffff818116145b6114d75760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b33600081815260046020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffff166201000061ffff8916908102919091178083558186526001855294839020547fffffffffffffffff0000000000000000000000000000000000000000ffffffff90951673ffffffffffffffffffffffffffffffffffffffff90951664010000000002949094178155815194855291840192909252815190927f9c199418af68d1547d7b99c71ee6a9eb18b27990dfcfb38982f3e3fb8c7b6bef92908290030190a1505050565b6115bb6137c5565b73ffffffffffffffffffffffffffffffffffffffff166115d9611e61565b73ffffffffffffffffffffffffffffffffffffffff1614611641576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff81166116935760405162461bcd60e51b815260040180806020018281038252602d815260200180613a51602d913960400191505060405180910390fd5b60005461ffff740100000000000000000000000000000000000000009091048116106116f05760405162461bcd60e51b815260040180806020018281038252602c815260200180613a25602c913960400191505060405180910390fd5b60008054600161ffff7401000000000000000000000000000000000000000080840482168301821681027fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff909416939093178085558390048116845260209182526040808520805473ffffffffffffffffffffffffffffffffffffffff88167fffffffffffffffffffffffff00000000000000000000000000000000000000009091161790559354845193900416825291517f18c7402e58a1bec57f4eb75af242f65ababbbe09d9db383e0542f00635e5b8c5929181900390910190a150565b600081565b7f000000000000000000000000000000000000000000000000000000000000000090565b73ffffffffffffffffffffffffffffffffffffffff861660009081526004602052604081208054829190829061ffff161561184e57600182015473ffffffffffffffffffffffffffffffffffffffff16611870565b600254640100000000900473ffffffffffffffffffffffffffffffffffffffff165b90508073ffffffffffffffffffffffffffffffffffffffff166340a7bb108c8c8c8c8c8c8c6040518863ffffffff1660e01b8152600401808861ffff1681526020018773ffffffffffffffffffffffffffffffffffffffff168152602001806020018515158152602001806020018381038352888882818152602001925080828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690910184810383528581526020019050858580828437600081840152601f19601f8201169050808301925050509950505050505050505050604080518083038186803b15801561196c57600080fd5b505afa158015611980573d6000803e3d6000fd5b505050506040513d604081101561199657600080fd5b508051602090910151909c909b509950505050505050505050565b61ffff83166000908152600760205260408082209051849084908083838082843791909101948552505060405192839003602001909220600181015490935015159150611a479050576040805162461bcd60e51b815260206004820152601c60248201527f4c617965725a65726f3a206e6f2073746f726564207061796c6f616400000000604482015290519081900360640190fd5b805468010000000000000000900473ffffffffffffffffffffffffffffffffffffffff163314611abe576040805162461bcd60e51b815260206004820152601960248201527f4c617965725a65726f3a20696e76616c69642063616c6c657200000000000000604482015290519081900360640190fd5b80547fffffffff00000000000000000000000000000000000000000000000000000000168155600060018201556040805161ffff86168152602081018281529181018490527f23d2684f396e92a6e2ff2d16f98e6fea00d50cb27a64b531bc0748f730211f98918691869186919060608201848480828437600083820152604051601f9091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016909201829003965090945050505050a150505050565b600254640100000000900473ffffffffffffffffffffffffffffffffffffffff1681565b60025461ffff1681565b611bb26137c5565b73ffffffffffffffffffffffffffffffffffffffff16611bd0611e61565b73ffffffffffffffffffffffffffffffffffffffff1614611c38576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6000805460405173ffffffffffffffffffffffffffffffffffffffff909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b73ffffffffffffffffffffffffffffffffffffffff81166000908152600460205260408120805461ffff62010000909104811690811415611d195760405162461bcd60e51b815260040180806020018281038252602b815260200180613b52602b913960400191505060405180910390fd5b61ffff8116611d8e5760025462010000900461ffff9081161415611d6e5760405162461bcd60e51b81526004018080602001828103825260358152602001806138ec6035913960400191505060405180910390fd5b60035473ffffffffffffffffffffffffffffffffffffffff169250611db1565b8154640100000000900473ffffffffffffffffffffffffffffffffffffffff1692505b5050919050565b600760209081526000928352604090922081518083018401805192815290840192909301919091209152805460019091015467ffffffffffffffff82169168010000000000000000900473ffffffffffffffffffffffffffffffffffffffff169083565b61ffff8216600090815260066020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205467ffffffffffffffff1692915050565b60005473ffffffffffffffffffffffffffffffffffffffff1690565b6005602090815260009283526040909220815180830184018051928152908401929093019190912091525467ffffffffffffffff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b73ffffffffffffffffffffffffffffffffffffffff81166000908152600460205260408120805461ffff90811690811415611f455760405162461bcd60e51b81526004018080602001828103825260288152602001806139fd6028913960400191505060405180910390fd5b61ffff8116611fbc5760025461ffff9081161415611f945760405162461bcd60e51b81526004018080602001828103825260328152602001806139956032913960400191505060405180910390fd5b600254640100000000900473ffffffffffffffffffffffffffffffffffffffff169250611db1565b506001015473ffffffffffffffffffffffffffffffffffffffff1692915050565b61ffff81565b600854610100900460ff16600114612042576040805162461bcd60e51b815260206004820181905260248201527f4c617965725a65726f3a206e6f2072656365697665207265656e7472616e6379604482015290519081900360640190fd5b600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661020017905561ffff851660009081526007602052604080822090518690869080838380828437919091019485525050604051928390036020019092206001810154909350151591506121049050576040805162461bcd60e51b815260206004820152601c60248201527f4c617965725a65726f3a206e6f2073746f726564207061796c6f616400000000604482015290519081900360640190fd5b805467ffffffffffffffff168214801561213f5750806001015483836040518083838082843780830192505050925050506040518091039020145b612190576040805162461bcd60e51b815260206004820152601a60248201527f4c617965725a65726f3a20696e76616c6964207061796c6f6164000000000000604482015290519081900360640190fd5b80547fffffffff000000000000000000000000000000000000000000000000000000008116825560006001830181905561ffff881681526005602052604080822090516801000000000000000090930473ffffffffffffffffffffffffffffffffffffffff16928890889080838380828437919091019485525050604051928390036020018320547e1d356700000000000000000000000000000000000000000000000000000000845261ffff8c166004850190815267ffffffffffffffff90911660448501819052608060248601908152608486018c905290955073ffffffffffffffffffffffffffffffffffffffff871694621d356794508d93508c928c9288928d928d929091606481019060a401888880828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600087803b15801561232357600080fd5b505af1158015612337573d6000803e3d6000fd5b505050507f612434f39581c8e7d99746c9c20c6eb0ce8c0eb99f007c5719d620841370957d8888888486604051808661ffff168152602001806020018467ffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018281038252868682818152602001925080828437600083820152604051601f9091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169092018290039850909650505050505050a15050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16610100179055505050505050565b600660209081526000928352604080842090915290825290205467ffffffffffffffff1681565b61245a6137c5565b73ffffffffffffffffffffffffffffffffffffffff16612478611e61565b73ffffffffffffffffffffffffffffffffffffffff16146124e0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600054819061ffff740100000000000000000000000000000000000000009091048116908216111580612516575061ffff818116145b6125515760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b61ffff82166125915760405162461bcd60e51b815260040180806020018281038252602b815260200180613aad602b913960400191505060405180910390fd5b600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000ffff166201000061ffff85811682810293909317938490559204909116600090815260016020908152604091829020546003805473ffffffffffffffffffffffffffffffffffffffff9092167fffffffffffffffffffffffff0000000000000000000000000000000000000000909216919091179055815192835290517f96874dbe70c8a59e7996847475489a70a1b5096ed92cdc858b63ebabd071f8199281900390910190a15050565b60005474010000000000000000000000000000000000000000900461ffff1681565b600854610100900460ff166001146126e0576040805162461bcd60e51b815260206004820181905260248201527f4c617965725a65726f3a206e6f2072656365697665207265656e7472616e6379604482015290519081900360640190fd5b600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1661020017905561ffff8816600090815260056020526040908190209051889088908083838082843791909101948552505060405192839003602001909220805467ffffffffffffffff80821660010181167fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000090921682179092559087161491506127d99050576040805162461bcd60e51b815260206004820152601660248201527f4c617965725a65726f3a2077726f6e67206e6f6e636500000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff85166000908152600460205260409020805462010000900461ffff166128695760035473ffffffffffffffffffffffffffffffffffffffff1633146128645760405162461bcd60e51b81526004018080602001828103825260228152602001806139216022913960400191505060405180910390fd5b6128dc565b8054640100000000900473ffffffffffffffffffffffffffffffffffffffff1633146128dc576040805162461bcd60e51b815260206004820152601a60248201527f4c617965725a65726f3a20696e76616c6964206c696272617279000000000000604482015290519081900360640190fd5b61ffff891660009081526007602052604080822090518a908a90808383808284379190910194855250506040519283900360200190922060018101549093501591506129719050576040805162461bcd60e51b815260206004820152601e60248201527f4c617965725a65726f3a20696e206d65737361676520626c6f636b696e670000604482015290519081900360640190fd5b8673ffffffffffffffffffffffffffffffffffffffff16621d3567868c8c8c8b8a8a6040518863ffffffff1660e01b8152600401808761ffff168152602001806020018567ffffffffffffffff168152602001806020018381038352888882818152602001925080828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690910184810383528581526020019050858580828437600081840152601f19601f82011690508083019250505098505050505050505050600060405180830381600088803b158015612a5857600080fd5b5087f193505050508015612a6a575060015b612d2e573d808015612a98576040519150601f19603f3d011682016040523d82523d6000602084013e612a9d565b606091505b5060405180606001604052808686905067ffffffffffffffff1681526020018973ffffffffffffffffffffffffffffffffffffffff16815260200186866040518083838082843780830192505050925050506040518091039020815250600760008d61ffff1661ffff1681526020019081526020016000208b8b604051808383808284378083019250505092505050908152602001604051809103902060008201518160000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060208201518160000160086101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550604082015181600101559050507f0f9e4d95b62f08222d612b5ab92039cd8fbbbea550a95e8df9f927436bbdf5db8b8b8b8b8b8a8a88604051808961ffff168152602001806020018773ffffffffffffffffffffffffffffffffffffffff1681526020018667ffffffffffffffff168152602001806020018060200184810384528b8b82818152602001925080828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016909101858103845287815260200190508787808284376000838201819052601f9091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690920186810384528751815287516020918201939189019250908190849084905b83811015612ce9578181015183820152602001612cd1565b50505050905090810190601f168015612d165780820380516001836020036101000a031916815260200191505b509b50505050505050505050505060405180910390a1505b5050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555050505050505050565b60085460ff16600114612dc0576040805162461bcd60e51b815260206004820152601d60248201527f4c617965725a65726f3a206e6f2073656e64207265656e7472616e6379000000604482015290519081900360640190fd5b6008805460027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0090911617905533600081815260046020908152604080832061ffff8e1684526006835281842094845293909152902080547fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000811667ffffffffffffffff91821660010191821617909155612e5a826137c9565b73ffffffffffffffffffffffffffffffffffffffff16634d3a0f7c3433848f8f8f8f8f8f8f8f8f6040518d63ffffffff1660e01b8152600401808c73ffffffffffffffffffffffffffffffffffffffff1681526020018b67ffffffffffffffff1681526020018a61ffff16815260200180602001806020018773ffffffffffffffffffffffffffffffffffffffff1681526020018673ffffffffffffffffffffffffffffffffffffffff1681526020018060200184810384528c8c82818152602001925080828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690910185810384528a815260200190508a8a80828437600083820152601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01690910185810383528681526020019050868680828437600081840152601f19601f8201169050808301925050509e5050505050505050505050505050506000604051808303818588803b158015612fe457600080fd5b505af1158015612ff8573d6000803e3d6000fd5b5050600880547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555050505050505050505050505050565b60016020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600854610100900460ff1660021490565b600054859061ffff7401000000000000000000000000000000000000000090910481169082161115806130a4575061ffff818116145b6130df5760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b61ffff861661313f5760025461ffff8082166201000090920416146131355760405162461bcd60e51b81526004018080602001828103825260368152602001806139c76036913960400191505060405180910390fd5b60025461ffff1695505b61ffff86811614156131825760405162461bcd60e51b815260040180806020018281038252602f815260200180613b23602f913960400191505060405180910390fd5b61ffff808716600090815260016020526040908190205490517ff8e1734c000000000000000000000000000000000000000000000000000000008152918716600483019081523360248401819052604484018890526080606485019081526084850187905273ffffffffffffffffffffffffffffffffffffffff9093169363f8e1734c938a938a928a928a929160a401848480828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b15801561325157600080fd5b505af1158015613265573d6000803e3d6000fd5b50505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff81166000908152600460205260408120805462010000900461ffff16156132b857805462010000900461ffff1661120a565b505060025462010000900461ffff16919050565b60085460ff1660021490565b60035473ffffffffffffffffffffffffffffffffffffffff1681565b6132fc6137c5565b73ffffffffffffffffffffffffffffffffffffffff1661331a611e61565b73ffffffffffffffffffffffffffffffffffffffff1614613382576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff81166133d45760405162461bcd60e51b81526004018080602001828103825260268152602001806139436026913960400191505060405180910390fd5b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b6004602052600090815260409020805460019091015461ffff808316926201000081049091169173ffffffffffffffffffffffffffffffffffffffff6401000000009092048216911684565b600054606090859061ffff7401000000000000000000000000000000000000000090910481169082161115806134e6575061ffff818116145b6135215760405162461bcd60e51b815260040180806020018281038252602c8152602001806138c0602c913960400191505060405180910390fd5b61ffff86166135815760025461ffff8082166201000090920416146135775760405162461bcd60e51b815260040180806020018281038252602c815260200180613969602c913960400191505060405180910390fd5b60025461ffff1695505b61ffff86811614156135c45760405162461bcd60e51b815260040180806020018281038252602f815260200180613a7e602f913960400191505060405180910390fd5b61ffff8087166000908152600160205260408082205481517f52d2871f000000000000000000000000000000000000000000000000000000008152938916600485015273ffffffffffffffffffffffffffffffffffffffff88811660248601526044850188905291519116926352d2871f926064808301939192829003018186803b15801561365257600080fd5b505afa158015613666573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405260208110156136ad57600080fd5b81019080805160405193929190846401000000008211156136cd57600080fd5b9083019060208201858111156136e257600080fd5b82516401000000008111828201881017156136fc57600080fd5b82525081516020918201929091019080838360005b83811015613729578181015183820152602001613711565b50505050905090810190601f1680156137565780820380516001836020036101000a031916815260200191505b50604052505050915050949350505050565b60025462010000900461ffff1681565b61ffff831660009081526005602052604080822090518490849080838380828437919091019485525050604051928390036020019092205467ffffffffffffffff16925050509392505050565b3390565b805460009061ffff166138435760025461ffff908116141561381c5760405162461bcd60e51b8152600401808060200182810382526023815260200180613ad86023913960400191505060405180910390fd5b50600254640100000000900473ffffffffffffffffffffffffffffffffffffffff1661120e565b815461ffff908116141561389e576040805162461bcd60e51b815260206004820152601b60248201527f4c617965725a65726f3a20696e20424c4f434b5f56455253494f4e0000000000604482015290519081900360640190fd5b50600181015473ffffffffffffffffffffffffffffffffffffffff1661120e56fe4c617965725a65726f3a20696e76616c6964206d6573736167696e67206c6962726172792076657273696f6e4c617965725a65726f3a20726563656976652076657273696f6e202864656661756c742920697320424c4f434b5f56455253494f4e4c617965725a65726f3a20696e76616c69642064656661756c74206c6962726172794f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734c617965725a65726f3a206e6f2044454641554c5420636f6e666967207768696c65206d6967726174696f6e4c617965725a65726f3a2073656e642076657273696f6e202864656661756c742920697320424c4f434b5f56455253494f4e4c617965725a65726f3a2063616e206e6f742073657420436f6e66696720647572696e672044454641554c54206d6967726174696f6e4c617965725a65726f3a2073656e642076657273696f6e20697320424c4f434b5f56455253494f4e4c617965725a65726f3a2063616e206e6f7420616464206e6577206d6573736167696e67206c6962726172794c617965725a65726f3a206e65772076657273696f6e2063616e6e6f74206265207a65726f20616464726573734c617965725a65726f3a2063616e206e6f742067657420636f6e66696720666f7220424c4f434b5f56455253494f4e4c617965725a65726f3a2064656661756c7420726563656976652076657273696f6e206d757374203e20304c617965725a65726f3a2064656661756c7420696e20424c4f434b5f56455253494f4e4c617965725a65726f3a2064656661756c742073656e642076657273696f6e206d757374203e20304c617965725a65726f3a2063616e206e6f742073657420636f6e66696720666f7220424c4f434b5f56455253494f4e4c617965725a65726f3a20726563656976652076657273696f6e20697320424c4f434b5f56455253494f4ea264697066735822122043e6eac7b517b796501f47bc71b7a43add5851a30c90cd931b98a7809437503e64736f6c63430007060033",
956
956
  "linkReferences": {},
957
957
  "deployedLinkReferences": {}
958
958
  }
@@ -81,8 +81,8 @@
81
81
  "type": "function"
82
82
  }
83
83
  ],
84
- "bytecode": "0x60a060405234801561001057600080fd5b506040516104c53803806104c58339818101604052602081101561003357600080fd5b5051606081901b6001600160601b0319166080526001600160a01b031661045961006c600039806101dd528061021a52506104596000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80635e280f11146100465780636fe7b67314610077578063c533338f1461012a575b600080fd5b61004e6101db565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61010d6004803603606081101561008d57600080fd5b61ffff8235169173ffffffffffffffffffffffffffffffffffffffff602082013516918101906060810160408201356401000000008111156100ce57600080fd5b8201836020820111156100e057600080fd5b8035906020019184600183028401116401000000008311171561010257600080fd5b5090925090506101ff565b6040805167ffffffffffffffff9092168252519081900360200190f35b61010d6004803603604081101561014057600080fd5b61ffff823516919081019060408101602082013564010000000081111561016657600080fd5b82018360208201111561017857600080fd5b8035906020019184600183028401116401000000008311171561019a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103bc945050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60003373ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16639c729da1866040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561029f57600080fd5b505afa1580156102b3573d6000803e3d6000fd5b505050506040513d60208110156102c957600080fd5b505173ffffffffffffffffffffffffffffffffffffffff1614610337576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806103f26032913960400191505060405180910390fd5b6000808661ffff1661ffff1681526020019081526020016000208383604051808383808284379190910194855250506040516020938190039390930190922080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000008116600167ffffffffffffffff9283160191821617909155979650505050505050565b6000602081815292815260409020815180830184018051928152908401929093019190912091525467ffffffffffffffff168156fe4e6f6e6365436f6e74726163743a206d73672e73656e646572206973206e6f742076616c69642073656e646c696272617279a2646970667358221220c1bfb2490cbea6bde5984d565ddc2a5410b5e6cba68523297196b3324e05319f64736f6c63430007060033",
85
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c80635e280f11146100465780636fe7b67314610077578063c533338f1461012a575b600080fd5b61004e6101db565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61010d6004803603606081101561008d57600080fd5b61ffff8235169173ffffffffffffffffffffffffffffffffffffffff602082013516918101906060810160408201356401000000008111156100ce57600080fd5b8201836020820111156100e057600080fd5b8035906020019184600183028401116401000000008311171561010257600080fd5b5090925090506101ff565b6040805167ffffffffffffffff9092168252519081900360200190f35b61010d6004803603604081101561014057600080fd5b61ffff823516919081019060408101602082013564010000000081111561016657600080fd5b82018360208201111561017857600080fd5b8035906020019184600183028401116401000000008311171561019a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103bc945050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60003373ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16639c729da1866040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561029f57600080fd5b505afa1580156102b3573d6000803e3d6000fd5b505050506040513d60208110156102c957600080fd5b505173ffffffffffffffffffffffffffffffffffffffff1614610337576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806103f26032913960400191505060405180910390fd5b6000808661ffff1661ffff1681526020019081526020016000208383604051808383808284379190910194855250506040516020938190039390930190922080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000008116600167ffffffffffffffff9283160191821617909155979650505050505050565b6000602081815292815260409020815180830184018051928152908401929093019190912091525467ffffffffffffffff168156fe4e6f6e6365436f6e74726163743a206d73672e73656e646572206973206e6f742076616c69642073656e646c696272617279a2646970667358221220c1bfb2490cbea6bde5984d565ddc2a5410b5e6cba68523297196b3324e05319f64736f6c63430007060033",
84
+ "bytecode": "0x60a060405234801561001057600080fd5b506040516104c53803806104c58339818101604052602081101561003357600080fd5b5051606081901b6001600160601b0319166080526001600160a01b031661045961006c600039806101dd528061021a52506104596000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80635e280f11146100465780636fe7b67314610077578063c533338f1461012a575b600080fd5b61004e6101db565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61010d6004803603606081101561008d57600080fd5b61ffff8235169173ffffffffffffffffffffffffffffffffffffffff602082013516918101906060810160408201356401000000008111156100ce57600080fd5b8201836020820111156100e057600080fd5b8035906020019184600183028401116401000000008311171561010257600080fd5b5090925090506101ff565b6040805167ffffffffffffffff9092168252519081900360200190f35b61010d6004803603604081101561014057600080fd5b61ffff823516919081019060408101602082013564010000000081111561016657600080fd5b82018360208201111561017857600080fd5b8035906020019184600183028401116401000000008311171561019a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103bc945050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60003373ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16639c729da1866040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561029f57600080fd5b505afa1580156102b3573d6000803e3d6000fd5b505050506040513d60208110156102c957600080fd5b505173ffffffffffffffffffffffffffffffffffffffff1614610337576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806103f26032913960400191505060405180910390fd5b6000808661ffff1661ffff1681526020019081526020016000208383604051808383808284379190910194855250506040516020938190039390930190922080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000008116600167ffffffffffffffff9283160191821617909155979650505050505050565b6000602081815292815260409020815180830184018051928152908401929093019190912091525467ffffffffffffffff168156fe4e6f6e6365436f6e74726163743a206d73672e73656e646572206973206e6f742076616c69642073656e646c696272617279a2646970667358221220afafcc3ab7d18f838c9c0f24cbad3ff228610acf8df48ce2767e0ec2e6c6a1b164736f6c63430007060033",
85
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c80635e280f11146100465780636fe7b67314610077578063c533338f1461012a575b600080fd5b61004e6101db565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61010d6004803603606081101561008d57600080fd5b61ffff8235169173ffffffffffffffffffffffffffffffffffffffff602082013516918101906060810160408201356401000000008111156100ce57600080fd5b8201836020820111156100e057600080fd5b8035906020019184600183028401116401000000008311171561010257600080fd5b5090925090506101ff565b6040805167ffffffffffffffff9092168252519081900360200190f35b61010d6004803603604081101561014057600080fd5b61ffff823516919081019060408101602082013564010000000081111561016657600080fd5b82018360208201111561017857600080fd5b8035906020019184600183028401116401000000008311171561019a57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506103bc945050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60003373ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16639c729da1866040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561029f57600080fd5b505afa1580156102b3573d6000803e3d6000fd5b505050506040513d60208110156102c957600080fd5b505173ffffffffffffffffffffffffffffffffffffffff1614610337576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806103f26032913960400191505060405180910390fd5b6000808661ffff1661ffff1681526020019081526020016000208383604051808383808284379190910194855250506040516020938190039390930190922080547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000008116600167ffffffffffffffff9283160191821617909155979650505050505050565b6000602081815292815260409020815180830184018051928152908401929093019190912091525467ffffffffffffffff168156fe4e6f6e6365436f6e74726163743a206d73672e73656e646572206973206e6f742076616c69642073656e646c696272617279a2646970667358221220afafcc3ab7d18f838c9c0f24cbad3ff228610acf8df48ce2767e0ec2e6c6a1b164736f6c63430007060033",
86
86
  "linkReferences": {},
87
87
  "deployedLinkReferences": {}
88
88
  }
@@ -524,8 +524,8 @@
524
524
  "type": "function"
525
525
  }
526
526
  ],
527
- "bytecode": "0x608060405234801561001057600080fd5b50611d88806100206000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638da5cb5b116100e3578063cd68b79b1161008c578063e15d16e811610066578063e15d16e814610320578063f2fde38b14610333578063ff37b496146103465761018d565b8063cd68b79b146102e5578063d350ad25146102ed578063e0ad121a146103005761018d565b8063ab1518ab116100bd578063ab1518ab146102b7578063c1840327146102ca578063c4d66de8146102d25761018d565b80638da5cb5b146102785780638f7002d21461028d57806392807f58146102af5761018d565b806352a7251011610145578063715018a61161011f578063715018a61461022f5780637bc3c9ab146102375780638ca2fb08146102585761018d565b806352a72510146101f65780635d6d7ccb14610209578063711746e21461021c5761018d565b80632f7cb0b4116101765780632f7cb0b4146101af57806336a5beba146101c25780633c04741e146101e15761018d565b806315527af6146101925780631824a46b146101a7575b600080fd5b6101a56101a036600461199c565b610359565b005b6101a56104a8565b6101a56101bd366004611acf565b61058c565b6101ca61064f565b6040516101d8929190611cbd565b60405180910390f35b6101e9610673565b6040516101d89190611c46565b6101a5610204366004611962565b61068b565b6101a5610217366004611acf565b610751565b6101a561022a366004611a0c565b6107e7565b6101a5610876565b61024a610245366004611b03565b610973565b6040516101d8929190611c9d565b61026b610266366004611941565b610a02565b6040516101d89190611b8a565b610280610a17565b6040516101d89190611b69565b6102a061029b366004611ae9565b610a33565b6040516101d893929190611c63565b6101e9610a9a565b61024a6102c5366004611b03565b610ab2565b6101e9610c6c565b6101a56102e0366004611941565b610c84565b6101e9610e41565b6101a56102fb366004611acf565b610e6d565b61031361030e366004611ae9565b610f3e565b6040516101d89190611c03565b61024a61032e366004611b03565b610fce565b6101a5610341366004611941565b61109e565b61024a610354366004611b03565b61120c565b33610362610a17565b73ffffffffffffffffffffffffffffffffffffffff16146103b5573360009081526066602052604090205460ff166103b55760405162461bcd60e51b81526004016103ac90611b95565b60405180910390fd5b60005b818110156104a357368383838181106103cd57fe5b60c0029190910191506103ff90506103e86020830183611ae9565b6103fa36849003840160208501611a6a565b61134e565b600061041160a0830160808401611b4f565b9050600061042560c0840160a08501611b35565b6068805463ffffffff90921668010000000000000000027fffffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffff67ffffffffffffffff9095167fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000090931692909217939093161790915550506001016103b8565b505050565b60006104b261146a565b905073ffffffffffffffffffffffffffffffffffffffff811661050b5773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035561052d565b3373ffffffffffffffffffffffffffffffffffffffff82161461052d57600080fd5b50606580546402540be4007fffffffffffffffffffffffffffffffff00000000000000000000000000000000909116179055606980546fffffffffffffffffffffffffffffffff16702f00000000000000000000000000000000179055565b61059461148f565b73ffffffffffffffffffffffffffffffffffffffff166105b2610a17565b73ffffffffffffffffffffffffffffffffffffffff161461061a576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b606980546fffffffffffffffffffffffffffffffff928316700100000000000000000000000000000000029216919091179055565b60685467ffffffffffffffff81169068010000000000000000900463ffffffff1682565b6065546fffffffffffffffffffffffffffffffff1681565b61069361148f565b73ffffffffffffffffffffffffffffffffffffffff166106b1610a17565b73ffffffffffffffffffffffffffffffffffffffff1614610719576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff919091166000908152606660205260409020805460ff1916911515919091179055565b3361075a610a17565b73ffffffffffffffffffffffffffffffffffffffff16146107a4573360009081526066602052604090205460ff166107a45760405162461bcd60e51b81526004016103ac90611b95565b606980547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b336107f0610a17565b73ffffffffffffffffffffffffffffffffffffffff161461083a573360009081526066602052604090205460ff1661083a5760405162461bcd60e51b81526004016103ac90611b95565b60005b818110156104a3573683838381811061085257fe5b60800291909101915061086d90506103e86020830183611ae9565b5060010161083d565b61087e61148f565b73ffffffffffffffffffffffffffffffffffffffff1661089c610a17565b73ffffffffffffffffffffffffffffffffffffffff1614610904576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60335460405160009173ffffffffffffffffffffffffffffffffffffffff16907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6000808461ffff16606e148061098e57508461ffff1661279f145b8061099e57508461ffff16614eaf145b156109b7576109ae85858561120c565b915091506109fa565b8461ffff16606f14806109cf57508461ffff16612794145b806109df57508461ffff16614ea4145b156109ef576109ae858585610ab2565b6109ae858585610fce565b935093915050565b60666020526000908152604090205460ff1681565b60335473ffffffffffffffffffffffffffffffffffffffff1690565b6067602052600090815260409020546fffffffffffffffffffffffffffffffff811690700100000000000000000000000000000000810467ffffffffffffffff16907801000000000000000000000000000000000000000000000000900463ffffffff1683565b6069546fffffffffffffffffffffffffffffffff1681565b6000806000610ac086611493565b61ffff81166000908152606760205260408120805492935091610b1890610c7490610b12908a9063ffffffff78010000000000000000000000000000000000000000000000009091048116906114f516565b90611557565b8254909150600090610b49908390700100000000000000000000000000000000900467ffffffffffffffff166114f5565b61ffff8a166000908152606760205260408120805492935091610b93908b9063ffffffff78010000000000000000000000000000000000000000000000009091048116906114f516565b8254909150600090610bcd90700100000000000000000000000000000000900467ffffffffffffffff16610bc7848d611557565b906114f5565b6065548754919250600091610c03916fffffffffffffffffffffffffffffffff90811691610bfd918991166114f5565b906115b1565b6065548554919250600091610c33916fffffffffffffffffffffffffffffffff90811691610bfd918791166114f5565b90506000610c418383611557565b9554959f6fffffffffffffffffffffffffffffffff9096169e50949c50505050505050505050505050565b6065546fffffffffffffffffffffffffffffffff1690565b6000610c8e61146a565b905073ffffffffffffffffffffffffffffffffffffffff8116610ce75773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355610d09565b3373ffffffffffffffffffffffffffffffffffffffff821614610d0957600080fd5b600054610100900460ff1680610d225750610d22611618565b80610d30575060005460ff16155b610d6b5760405162461bcd60e51b815260040180806020018281038252602e815260200180611d04602e913960400191505060405180910390fd5b600054610100900460ff16158015610d96576000805460ff1961ff0019909116610100171660011790555b610d9e611629565b73ffffffffffffffffffffffffffffffffffffffff83166000908152606660205260409020805460ff19166001179055606580547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166402540be40017905560698054702f000000000000000000000000000000006fffffffffffffffffffffffffffffffff9190911617905580156104a3576000805461ff0019169055505050565b60695470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1681565b610e7561148f565b73ffffffffffffffffffffffffffffffffffffffff16610e93610a17565b73ffffffffffffffffffffffffffffffffffffffff1614610efb576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b606580547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b610f4661189f565b5061ffff16600090815260676020908152604091829020825160608101845290546fffffffffffffffffffffffffffffffff81168252700100000000000000000000000000000000810467ffffffffffffffff1692820192909252780100000000000000000000000000000000000000000000000090910463ffffffff169181019190915290565b61ffff831660009081526067602052604081208054829190829061101990879063ffffffff78010000000000000000000000000000000000000000000000009091048116906114f516565b825490915060009061104d90700100000000000000000000000000000000900467ffffffffffffffff16610bc78489611557565b606554845491925061107a916fffffffffffffffffffffffffffffffff91821691610bfd918591166114f5565b925492986fffffffffffffffffffffffffffffffff90931697509195505050505050565b6110a661148f565b73ffffffffffffffffffffffffffffffffffffffff166110c4610a17565b73ffffffffffffffffffffffffffffffffffffffff161461112c576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff811661117e5760405162461bcd60e51b8152600401808060200182810382526026815260200180611cde6026913960400191505060405180910390fd5b60335460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b61ffff83166000908152606760205260408120606854606954839291839161127d9168010000000000000000900463ffffffff90811691610bc791606491610bfd918c9170010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff16906114f516565b82549091506000906112b690889063ffffffff78010000000000000000000000000000000000000000000000009091048116906114f516565b83546068549192506000916112fc9167ffffffffffffffff700100000000000000000000000000000000909104811691610bc7918691610b1291899183918f9116611557565b6065548554919250611329916fffffffffffffffffffffffffffffffff91821691610bfd918591166114f5565b935493996fffffffffffffffffffffffffffffffff9094169850929650505050505050565b805160208083015160409384015184516060810186526fffffffffffffffffffffffffffffffff948516815267ffffffffffffffff92831681850190815263ffffffff92831682880190815261ffff909816600090815260679095529590932092518354955196519091167801000000000000000000000000000000000000000000000000027fffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff96909216700100000000000000000000000000000000027fffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffff919094167fffffffffffffffffffffffffffffffff0000000000000000000000000000000090951694909417939093169190911792909216179055565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b3390565b60008161ffff16606f14156114aa575060656114f0565b8161ffff1661279414156114c157506127896114f0565b8161ffff16614ea414156114d85750614e996114f0565b60405162461bcd60e51b81526004016103ac90611bcc565b919050565b60008261150457506000611551565b8282028284828161151157fe5b041461154e5760405162461bcd60e51b8152600401808060200182810382526021815260200180611d326021913960400191505060405180910390fd5b90505b92915050565b60008282018381101561154e576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000808211611607576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161161057fe5b049392505050565b6000611623306116db565b15905090565b600054610100900460ff16806116425750611642611618565b80611650575060005460ff16155b61168b5760405162461bcd60e51b815260040180806020018281038252602e815260200180611d04602e913960400191505060405180910390fd5b600054610100900460ff161580156116b6576000805460ff1961ff0019909116610100171660011790555b6116be6116e1565b6116c6611781565b80156116d8576000805461ff00191690555b50565b3b151590565b600054610100900460ff16806116fa57506116fa611618565b80611708575060005460ff16155b6117435760405162461bcd60e51b815260040180806020018281038252602e815260200180611d04602e913960400191505060405180910390fd5b600054610100900460ff161580156116c6576000805460ff1961ff00199091166101001716600117905580156116d8576000805461ff001916905550565b600054610100900460ff168061179a575061179a611618565b806117a8575060005460ff16155b6117e35760405162461bcd60e51b815260040180806020018281038252602e815260200180611d04602e913960400191505060405180910390fd5b600054610100900460ff1615801561180e576000805460ff1961ff0019909116610100171660011790555b600061181861148f565b603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156116d8576000805461ff001916905550565b604080516060810182526000808252602082018190529181019190915290565b803573ffffffffffffffffffffffffffffffffffffffff811681146114f057600080fd5b80356fffffffffffffffffffffffffffffffff811681146114f057600080fd5b803561ffff811681146114f057600080fd5b803563ffffffff811681146114f057600080fd5b803567ffffffffffffffff811681146114f057600080fd5b600060208284031215611952578081fd5b61195b826118bf565b9392505050565b60008060408385031215611974578081fd5b61197d836118bf565b915060208301358015158114611991578182fd5b809150509250929050565b600080602083850312156119ae578182fd5b823567ffffffffffffffff808211156119c5578384fd5b818501915085601f8301126119d8578384fd5b8135818111156119e6578485fd5b86602060c0830285010111156119fa578485fd5b60209290920196919550909350505050565b60008060208385031215611a1e578182fd5b823567ffffffffffffffff80821115611a35578384fd5b818501915085601f830112611a48578384fd5b813581811115611a56578485fd5b8660206080830285010111156119fa578485fd5b600060608284031215611a7b578081fd5b6040516060810181811067ffffffffffffffff82111715611a9857fe5b604052611aa4836118e3565b8152611ab260208401611929565b6020820152611ac360408401611915565b60408201529392505050565b600060208284031215611ae0578081fd5b61195b826118e3565b600060208284031215611afa578081fd5b61195b82611903565b600080600060608486031215611b17578081fd5b611b2084611903565b95602085013595506040909401359392505050565b600060208284031215611b46578081fd5b61195b82611915565b600060208284031215611b60578081fd5b61195b82611929565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b901515815260200190565b6020808252601c908201527f5072696365466565643a206e6f74207072696365207570646174657200000000604082015260600190565b6020808252601e908201527f5072696365466565643a20756e6b6e6f776e206c3220636861696e2069640000604082015260600190565b81516fffffffffffffffffffffffffffffffff16815260208083015167ffffffffffffffff169082015260409182015163ffffffff169181019190915260600190565b6fffffffffffffffffffffffffffffffff91909116815260200190565b6fffffffffffffffffffffffffffffffff93909316835267ffffffffffffffff91909116602083015263ffffffff16604082015260600190565b9182526fffffffffffffffffffffffffffffffff16602082015260400190565b67ffffffffffffffff92909216825263ffffffff1660208201526040019056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122084d19d33e46396ac413d8a3748b5f0e89c0cc00faac0761f74a448ad28c3daa964736f6c63430007060033",
528
- "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061018d5760003560e01c80638da5cb5b116100e3578063cd68b79b1161008c578063e15d16e811610066578063e15d16e814610320578063f2fde38b14610333578063ff37b496146103465761018d565b8063cd68b79b146102e5578063d350ad25146102ed578063e0ad121a146103005761018d565b8063ab1518ab116100bd578063ab1518ab146102b7578063c1840327146102ca578063c4d66de8146102d25761018d565b80638da5cb5b146102785780638f7002d21461028d57806392807f58146102af5761018d565b806352a7251011610145578063715018a61161011f578063715018a61461022f5780637bc3c9ab146102375780638ca2fb08146102585761018d565b806352a72510146101f65780635d6d7ccb14610209578063711746e21461021c5761018d565b80632f7cb0b4116101765780632f7cb0b4146101af57806336a5beba146101c25780633c04741e146101e15761018d565b806315527af6146101925780631824a46b146101a7575b600080fd5b6101a56101a036600461199c565b610359565b005b6101a56104a8565b6101a56101bd366004611acf565b61058c565b6101ca61064f565b6040516101d8929190611cbd565b60405180910390f35b6101e9610673565b6040516101d89190611c46565b6101a5610204366004611962565b61068b565b6101a5610217366004611acf565b610751565b6101a561022a366004611a0c565b6107e7565b6101a5610876565b61024a610245366004611b03565b610973565b6040516101d8929190611c9d565b61026b610266366004611941565b610a02565b6040516101d89190611b8a565b610280610a17565b6040516101d89190611b69565b6102a061029b366004611ae9565b610a33565b6040516101d893929190611c63565b6101e9610a9a565b61024a6102c5366004611b03565b610ab2565b6101e9610c6c565b6101a56102e0366004611941565b610c84565b6101e9610e41565b6101a56102fb366004611acf565b610e6d565b61031361030e366004611ae9565b610f3e565b6040516101d89190611c03565b61024a61032e366004611b03565b610fce565b6101a5610341366004611941565b61109e565b61024a610354366004611b03565b61120c565b33610362610a17565b73ffffffffffffffffffffffffffffffffffffffff16146103b5573360009081526066602052604090205460ff166103b55760405162461bcd60e51b81526004016103ac90611b95565b60405180910390fd5b60005b818110156104a357368383838181106103cd57fe5b60c0029190910191506103ff90506103e86020830183611ae9565b6103fa36849003840160208501611a6a565b61134e565b600061041160a0830160808401611b4f565b9050600061042560c0840160a08501611b35565b6068805463ffffffff90921668010000000000000000027fffffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffff67ffffffffffffffff9095167fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000090931692909217939093161790915550506001016103b8565b505050565b60006104b261146a565b905073ffffffffffffffffffffffffffffffffffffffff811661050b5773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035561052d565b3373ffffffffffffffffffffffffffffffffffffffff82161461052d57600080fd5b50606580546402540be4007fffffffffffffffffffffffffffffffff00000000000000000000000000000000909116179055606980546fffffffffffffffffffffffffffffffff16702f00000000000000000000000000000000179055565b61059461148f565b73ffffffffffffffffffffffffffffffffffffffff166105b2610a17565b73ffffffffffffffffffffffffffffffffffffffff161461061a576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b606980546fffffffffffffffffffffffffffffffff928316700100000000000000000000000000000000029216919091179055565b60685467ffffffffffffffff81169068010000000000000000900463ffffffff1682565b6065546fffffffffffffffffffffffffffffffff1681565b61069361148f565b73ffffffffffffffffffffffffffffffffffffffff166106b1610a17565b73ffffffffffffffffffffffffffffffffffffffff1614610719576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff919091166000908152606660205260409020805460ff1916911515919091179055565b3361075a610a17565b73ffffffffffffffffffffffffffffffffffffffff16146107a4573360009081526066602052604090205460ff166107a45760405162461bcd60e51b81526004016103ac90611b95565b606980547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b336107f0610a17565b73ffffffffffffffffffffffffffffffffffffffff161461083a573360009081526066602052604090205460ff1661083a5760405162461bcd60e51b81526004016103ac90611b95565b60005b818110156104a3573683838381811061085257fe5b60800291909101915061086d90506103e86020830183611ae9565b5060010161083d565b61087e61148f565b73ffffffffffffffffffffffffffffffffffffffff1661089c610a17565b73ffffffffffffffffffffffffffffffffffffffff1614610904576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60335460405160009173ffffffffffffffffffffffffffffffffffffffff16907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6000808461ffff16606e148061098e57508461ffff1661279f145b8061099e57508461ffff16614eaf145b156109b7576109ae85858561120c565b915091506109fa565b8461ffff16606f14806109cf57508461ffff16612794145b806109df57508461ffff16614ea4145b156109ef576109ae858585610ab2565b6109ae858585610fce565b935093915050565b60666020526000908152604090205460ff1681565b60335473ffffffffffffffffffffffffffffffffffffffff1690565b6067602052600090815260409020546fffffffffffffffffffffffffffffffff811690700100000000000000000000000000000000810467ffffffffffffffff16907801000000000000000000000000000000000000000000000000900463ffffffff1683565b6069546fffffffffffffffffffffffffffffffff1681565b6000806000610ac086611493565b61ffff81166000908152606760205260408120805492935091610b1890610c7490610b12908a9063ffffffff78010000000000000000000000000000000000000000000000009091048116906114f516565b90611557565b8254909150600090610b49908390700100000000000000000000000000000000900467ffffffffffffffff166114f5565b61ffff8a166000908152606760205260408120805492935091610b93908b9063ffffffff78010000000000000000000000000000000000000000000000009091048116906114f516565b8254909150600090610bcd90700100000000000000000000000000000000900467ffffffffffffffff16610bc7848d611557565b906114f5565b6065548754919250600091610c03916fffffffffffffffffffffffffffffffff90811691610bfd918991166114f5565b906115b1565b6065548554919250600091610c33916fffffffffffffffffffffffffffffffff90811691610bfd918791166114f5565b90506000610c418383611557565b9554959f6fffffffffffffffffffffffffffffffff9096169e50949c50505050505050505050505050565b6065546fffffffffffffffffffffffffffffffff1690565b6000610c8e61146a565b905073ffffffffffffffffffffffffffffffffffffffff8116610ce75773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355610d09565b3373ffffffffffffffffffffffffffffffffffffffff821614610d0957600080fd5b600054610100900460ff1680610d225750610d22611618565b80610d30575060005460ff16155b610d6b5760405162461bcd60e51b815260040180806020018281038252602e815260200180611d04602e913960400191505060405180910390fd5b600054610100900460ff16158015610d96576000805460ff1961ff0019909116610100171660011790555b610d9e611629565b73ffffffffffffffffffffffffffffffffffffffff83166000908152606660205260409020805460ff19166001179055606580547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166402540be40017905560698054702f000000000000000000000000000000006fffffffffffffffffffffffffffffffff9190911617905580156104a3576000805461ff0019169055505050565b60695470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1681565b610e7561148f565b73ffffffffffffffffffffffffffffffffffffffff16610e93610a17565b73ffffffffffffffffffffffffffffffffffffffff1614610efb576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b606580547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b610f4661189f565b5061ffff16600090815260676020908152604091829020825160608101845290546fffffffffffffffffffffffffffffffff81168252700100000000000000000000000000000000810467ffffffffffffffff1692820192909252780100000000000000000000000000000000000000000000000090910463ffffffff169181019190915290565b61ffff831660009081526067602052604081208054829190829061101990879063ffffffff78010000000000000000000000000000000000000000000000009091048116906114f516565b825490915060009061104d90700100000000000000000000000000000000900467ffffffffffffffff16610bc78489611557565b606554845491925061107a916fffffffffffffffffffffffffffffffff91821691610bfd918591166114f5565b925492986fffffffffffffffffffffffffffffffff90931697509195505050505050565b6110a661148f565b73ffffffffffffffffffffffffffffffffffffffff166110c4610a17565b73ffffffffffffffffffffffffffffffffffffffff161461112c576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff811661117e5760405162461bcd60e51b8152600401808060200182810382526026815260200180611cde6026913960400191505060405180910390fd5b60335460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b61ffff83166000908152606760205260408120606854606954839291839161127d9168010000000000000000900463ffffffff90811691610bc791606491610bfd918c9170010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff16906114f516565b82549091506000906112b690889063ffffffff78010000000000000000000000000000000000000000000000009091048116906114f516565b83546068549192506000916112fc9167ffffffffffffffff700100000000000000000000000000000000909104811691610bc7918691610b1291899183918f9116611557565b6065548554919250611329916fffffffffffffffffffffffffffffffff91821691610bfd918591166114f5565b935493996fffffffffffffffffffffffffffffffff9094169850929650505050505050565b805160208083015160409384015184516060810186526fffffffffffffffffffffffffffffffff948516815267ffffffffffffffff92831681850190815263ffffffff92831682880190815261ffff909816600090815260679095529590932092518354955196519091167801000000000000000000000000000000000000000000000000027fffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff96909216700100000000000000000000000000000000027fffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffff919094167fffffffffffffffffffffffffffffffff0000000000000000000000000000000090951694909417939093169190911792909216179055565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b3390565b60008161ffff16606f14156114aa575060656114f0565b8161ffff1661279414156114c157506127896114f0565b8161ffff16614ea414156114d85750614e996114f0565b60405162461bcd60e51b81526004016103ac90611bcc565b919050565b60008261150457506000611551565b8282028284828161151157fe5b041461154e5760405162461bcd60e51b8152600401808060200182810382526021815260200180611d326021913960400191505060405180910390fd5b90505b92915050565b60008282018381101561154e576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000808211611607576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161161057fe5b049392505050565b6000611623306116db565b15905090565b600054610100900460ff16806116425750611642611618565b80611650575060005460ff16155b61168b5760405162461bcd60e51b815260040180806020018281038252602e815260200180611d04602e913960400191505060405180910390fd5b600054610100900460ff161580156116b6576000805460ff1961ff0019909116610100171660011790555b6116be6116e1565b6116c6611781565b80156116d8576000805461ff00191690555b50565b3b151590565b600054610100900460ff16806116fa57506116fa611618565b80611708575060005460ff16155b6117435760405162461bcd60e51b815260040180806020018281038252602e815260200180611d04602e913960400191505060405180910390fd5b600054610100900460ff161580156116c6576000805460ff1961ff00199091166101001716600117905580156116d8576000805461ff001916905550565b600054610100900460ff168061179a575061179a611618565b806117a8575060005460ff16155b6117e35760405162461bcd60e51b815260040180806020018281038252602e815260200180611d04602e913960400191505060405180910390fd5b600054610100900460ff1615801561180e576000805460ff1961ff0019909116610100171660011790555b600061181861148f565b603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35080156116d8576000805461ff001916905550565b604080516060810182526000808252602082018190529181019190915290565b803573ffffffffffffffffffffffffffffffffffffffff811681146114f057600080fd5b80356fffffffffffffffffffffffffffffffff811681146114f057600080fd5b803561ffff811681146114f057600080fd5b803563ffffffff811681146114f057600080fd5b803567ffffffffffffffff811681146114f057600080fd5b600060208284031215611952578081fd5b61195b826118bf565b9392505050565b60008060408385031215611974578081fd5b61197d836118bf565b915060208301358015158114611991578182fd5b809150509250929050565b600080602083850312156119ae578182fd5b823567ffffffffffffffff808211156119c5578384fd5b818501915085601f8301126119d8578384fd5b8135818111156119e6578485fd5b86602060c0830285010111156119fa578485fd5b60209290920196919550909350505050565b60008060208385031215611a1e578182fd5b823567ffffffffffffffff80821115611a35578384fd5b818501915085601f830112611a48578384fd5b813581811115611a56578485fd5b8660206080830285010111156119fa578485fd5b600060608284031215611a7b578081fd5b6040516060810181811067ffffffffffffffff82111715611a9857fe5b604052611aa4836118e3565b8152611ab260208401611929565b6020820152611ac360408401611915565b60408201529392505050565b600060208284031215611ae0578081fd5b61195b826118e3565b600060208284031215611afa578081fd5b61195b82611903565b600080600060608486031215611b17578081fd5b611b2084611903565b95602085013595506040909401359392505050565b600060208284031215611b46578081fd5b61195b82611915565b600060208284031215611b60578081fd5b61195b82611929565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b901515815260200190565b6020808252601c908201527f5072696365466565643a206e6f74207072696365207570646174657200000000604082015260600190565b6020808252601e908201527f5072696365466565643a20756e6b6e6f776e206c3220636861696e2069640000604082015260600190565b81516fffffffffffffffffffffffffffffffff16815260208083015167ffffffffffffffff169082015260409182015163ffffffff169181019190915260600190565b6fffffffffffffffffffffffffffffffff91909116815260200190565b6fffffffffffffffffffffffffffffffff93909316835267ffffffffffffffff91909116602083015263ffffffff16604082015260600190565b9182526fffffffffffffffffffffffffffffffff16602082015260400190565b67ffffffffffffffff92909216825263ffffffff1660208201526040019056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122084d19d33e46396ac413d8a3748b5f0e89c0cc00faac0761f74a448ad28c3daa964736f6c63430007060033",
527
+ "bytecode": "0x608060405234801561001057600080fd5b506120de806100206000396000f3fe608060405234801561001057600080fd5b506004361061018d5760003560e01c80638da5cb5b116100e3578063cd68b79b1161008c578063e15d16e811610066578063e15d16e814610320578063f2fde38b14610333578063ff37b496146103465761018d565b8063cd68b79b146102e5578063d350ad25146102ed578063e0ad121a146103005761018d565b8063ab1518ab116100bd578063ab1518ab146102b7578063c1840327146102ca578063c4d66de8146102d25761018d565b80638da5cb5b146102785780638f7002d21461028d57806392807f58146102af5761018d565b806352a7251011610145578063715018a61161011f578063715018a61461022f5780637bc3c9ab146102375780638ca2fb08146102585761018d565b806352a72510146101f65780635d6d7ccb14610209578063711746e21461021c5761018d565b80632f7cb0b4116101765780632f7cb0b4146101af57806336a5beba146101c25780633c04741e146101e15761018d565b806315527af6146101925780631824a46b146101a7575b600080fd5b6101a56101a0366004611cf2565b610359565b005b6101a56104c2565b6101a56101bd366004611e25565b6105a6565b6101ca610683565b6040516101d8929190612013565b60405180910390f35b6101e96106a7565b6040516101d89190611f9c565b6101a5610204366004611cb8565b6106bf565b6101a5610217366004611e25565b6107bd565b6101a561022a366004611d62565b61086d565b6101a5610916565b61024a610245366004611e59565b610a2d565b6040516101d8929190611ff3565b61026b610266366004611c97565b610abc565b6040516101d89190611ee0565b610280610ad1565b6040516101d89190611ebf565b6102a061029b366004611e3f565b610aed565b6040516101d893929190611fb9565b6101e9610b54565b61024a6102c5366004611e59565b610b6c565b6101e9610d26565b6101a56102e0366004611c97565b610d3e565b6101e9610f8b565b6101a56102fb366004611e25565b610fb7565b61031361030e366004611e3f565b6110a2565b6040516101d89190611f59565b61024a61032e366004611e59565b611132565b6101a5610341366004611c97565b611202565b61024a610354366004611e59565b6113a4565b33610362610ad1565b73ffffffffffffffffffffffffffffffffffffffff16146103cf573360009081526066602052604090205460ff166103cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c690611eeb565b60405180910390fd5b60005b818110156104bd57368383838181106103e757fe5b60c00291909101915061041990506104026020830183611e3f565b61041436849003840160208501611dc0565b6114e6565b600061042b60a0830160808401611ea5565b9050600061043f60c0840160a08501611e8b565b6068805463ffffffff90921668010000000000000000027fffffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffff67ffffffffffffffff9095167fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000090931692909217939093161790915550506001016103d2565b505050565b60006104cc611602565b905073ffffffffffffffffffffffffffffffffffffffff81166105255773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355610547565b3373ffffffffffffffffffffffffffffffffffffffff82161461054757600080fd5b50606580546402540be4007fffffffffffffffffffffffffffffffff00000000000000000000000000000000909116179055606980546fffffffffffffffffffffffffffffffff16702f00000000000000000000000000000000179055565b6105ae611627565b73ffffffffffffffffffffffffffffffffffffffff166105cc610ad1565b73ffffffffffffffffffffffffffffffffffffffff161461064e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b606980546fffffffffffffffffffffffffffffffff928316700100000000000000000000000000000000029216919091179055565b60685467ffffffffffffffff81169068010000000000000000900463ffffffff1682565b6065546fffffffffffffffffffffffffffffffff1681565b6106c7611627565b73ffffffffffffffffffffffffffffffffffffffff166106e5610ad1565b73ffffffffffffffffffffffffffffffffffffffff161461076757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff91909116600090815260666020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b336107c6610ad1565b73ffffffffffffffffffffffffffffffffffffffff161461082a573360009081526066602052604090205460ff1661082a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c690611eeb565b606980547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b33610876610ad1565b73ffffffffffffffffffffffffffffffffffffffff16146108da573360009081526066602052604090205460ff166108da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c690611eeb565b60005b818110156104bd57368383838181106108f257fe5b60800291909101915061090d90506104026020830183611e3f565b506001016108dd565b61091e611627565b73ffffffffffffffffffffffffffffffffffffffff1661093c610ad1565b73ffffffffffffffffffffffffffffffffffffffff16146109be57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60335460405160009173ffffffffffffffffffffffffffffffffffffffff16907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6000808461ffff16606e1480610a4857508461ffff1661279f145b80610a5857508461ffff16614eaf145b15610a7157610a688585856113a4565b91509150610ab4565b8461ffff16606f1480610a8957508461ffff16612794145b80610a9957508461ffff16614ea4145b15610aa957610a68858585610b6c565b610a68858585611132565b935093915050565b60666020526000908152604090205460ff1681565b60335473ffffffffffffffffffffffffffffffffffffffff1690565b6067602052600090815260409020546fffffffffffffffffffffffffffffffff811690700100000000000000000000000000000000810467ffffffffffffffff16907801000000000000000000000000000000000000000000000000900463ffffffff1683565b6069546fffffffffffffffffffffffffffffffff1681565b6000806000610b7a8661162b565b61ffff81166000908152606760205260408120805492935091610bd290610c7490610bcc908a9063ffffffff78010000000000000000000000000000000000000000000000009091048116906116a716565b90611723565b8254909150600090610c03908390700100000000000000000000000000000000900467ffffffffffffffff166116a7565b61ffff8a166000908152606760205260408120805492935091610c4d908b9063ffffffff78010000000000000000000000000000000000000000000000009091048116906116a716565b8254909150600090610c8790700100000000000000000000000000000000900467ffffffffffffffff16610c81848d611723565b906116a7565b6065548754919250600091610cbd916fffffffffffffffffffffffffffffffff90811691610cb7918991166116a7565b90611797565b6065548554919250600091610ced916fffffffffffffffffffffffffffffffff90811691610cb7918791166116a7565b90506000610cfb8383611723565b9554959f6fffffffffffffffffffffffffffffffff9096169e50949c50505050505050505050505050565b6065546fffffffffffffffffffffffffffffffff1690565b6000610d48611602565b905073ffffffffffffffffffffffffffffffffffffffff8116610da15773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355610dc3565b3373ffffffffffffffffffffffffffffffffffffffff821614610dc357600080fd5b600054610100900460ff1680610ddc5750610ddc611818565b80610dea575060005460ff16155b610e3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e81526020018061205a602e913960400191505060405180910390fd5b600054610100900460ff16158015610ea557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b610ead611829565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260666020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055606580547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166402540be40017905560698054702f000000000000000000000000000000006fffffffffffffffffffffffffffffffff9190911617905580156104bd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055505050565b60695470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1681565b610fbf611627565b73ffffffffffffffffffffffffffffffffffffffff16610fdd610ad1565b73ffffffffffffffffffffffffffffffffffffffff161461105f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b606580547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b6110aa611bf5565b5061ffff16600090815260676020908152604091829020825160608101845290546fffffffffffffffffffffffffffffffff81168252700100000000000000000000000000000000810467ffffffffffffffff1692820192909252780100000000000000000000000000000000000000000000000090910463ffffffff169181019190915290565b61ffff831660009081526067602052604081208054829190829061117d90879063ffffffff78010000000000000000000000000000000000000000000000009091048116906116a716565b82549091506000906111b190700100000000000000000000000000000000900467ffffffffffffffff16610c818489611723565b60655484549192506111de916fffffffffffffffffffffffffffffffff91821691610cb7918591166116a7565b925492986fffffffffffffffffffffffffffffffff90931697509195505050505050565b61120a611627565b73ffffffffffffffffffffffffffffffffffffffff16611228610ad1565b73ffffffffffffffffffffffffffffffffffffffff16146112aa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8116611316576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806120346026913960400191505060405180910390fd5b60335460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b61ffff8316600090815260676020526040812060685460695483929183916114159168010000000000000000900463ffffffff90811691610c8191606491610cb7918c9170010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff16906116a716565b825490915060009061144e90889063ffffffff78010000000000000000000000000000000000000000000000009091048116906116a716565b83546068549192506000916114949167ffffffffffffffff700100000000000000000000000000000000909104811691610c81918691610bcc91899183918f9116611723565b60655485549192506114c1916fffffffffffffffffffffffffffffffff91821691610cb7918591166116a7565b935493996fffffffffffffffffffffffffffffffff9094169850929650505050505050565b805160208083015160409384015184516060810186526fffffffffffffffffffffffffffffffff948516815267ffffffffffffffff92831681850190815263ffffffff92831682880190815261ffff909816600090815260679095529590932092518354955196519091167801000000000000000000000000000000000000000000000000027fffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff96909216700100000000000000000000000000000000027fffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffff919094167fffffffffffffffffffffffffffffffff0000000000000000000000000000000090951694909417939093169190911792909216179055565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b3390565b60008161ffff16606f1415611642575060656116a2565b8161ffff16612794141561165957506127896116a2565b8161ffff16614ea414156116705750614e996116a2565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c690611f22565b919050565b6000826116b65750600061171d565b828202828482816116c357fe5b041461171a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806120886021913960400191505060405180910390fd5b90505b92915050565b60008282018381101561171a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080821161180757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161181057fe5b049392505050565b60006118233061194d565b15905090565b600054610100900460ff16806118425750611842611818565b80611850575060005460ff16155b6118a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e81526020018061205a602e913960400191505060405180910390fd5b600054610100900460ff1615801561190b57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b611913611953565b61191b611a65565b801561194a57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1690555b50565b3b151590565b600054610100900460ff168061196c575061196c611818565b8061197a575060005460ff16155b6119cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e81526020018061205a602e913960400191505060405180910390fd5b600054610100900460ff1615801561191b57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff90911661010017166001179055801561194a57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905550565b600054610100900460ff1680611a7e5750611a7e611818565b80611a8c575060005460ff16155b611ae1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e81526020018061205a602e913960400191505060405180910390fd5b600054610100900460ff16158015611b4757600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b6000611b51611627565b603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561194a57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905550565b604080516060810182526000808252602082018190529181019190915290565b803573ffffffffffffffffffffffffffffffffffffffff811681146116a257600080fd5b80356fffffffffffffffffffffffffffffffff811681146116a257600080fd5b803561ffff811681146116a257600080fd5b803563ffffffff811681146116a257600080fd5b803567ffffffffffffffff811681146116a257600080fd5b600060208284031215611ca8578081fd5b611cb182611c15565b9392505050565b60008060408385031215611cca578081fd5b611cd383611c15565b915060208301358015158114611ce7578182fd5b809150509250929050565b60008060208385031215611d04578182fd5b823567ffffffffffffffff80821115611d1b578384fd5b818501915085601f830112611d2e578384fd5b813581811115611d3c578485fd5b86602060c083028501011115611d50578485fd5b60209290920196919550909350505050565b60008060208385031215611d74578182fd5b823567ffffffffffffffff80821115611d8b578384fd5b818501915085601f830112611d9e578384fd5b813581811115611dac578485fd5b866020608083028501011115611d50578485fd5b600060608284031215611dd1578081fd5b6040516060810181811067ffffffffffffffff82111715611dee57fe5b604052611dfa83611c39565b8152611e0860208401611c7f565b6020820152611e1960408401611c6b565b60408201529392505050565b600060208284031215611e36578081fd5b611cb182611c39565b600060208284031215611e50578081fd5b611cb182611c59565b600080600060608486031215611e6d578081fd5b611e7684611c59565b95602085013595506040909401359392505050565b600060208284031215611e9c578081fd5b611cb182611c6b565b600060208284031215611eb6578081fd5b611cb182611c7f565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b901515815260200190565b6020808252601c908201527f5072696365466565643a206e6f74207072696365207570646174657200000000604082015260600190565b6020808252601e908201527f5072696365466565643a20756e6b6e6f776e206c3220636861696e2069640000604082015260600190565b81516fffffffffffffffffffffffffffffffff16815260208083015167ffffffffffffffff169082015260409182015163ffffffff169181019190915260600190565b6fffffffffffffffffffffffffffffffff91909116815260200190565b6fffffffffffffffffffffffffffffffff93909316835267ffffffffffffffff91909116602083015263ffffffff16604082015260600190565b9182526fffffffffffffffffffffffffffffffff16602082015260400190565b67ffffffffffffffff92909216825263ffffffff1660208201526040019056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212201bba41ce48954cd9229eed28300edb68da5cf31270516a04c9d358203f2f224264736f6c63430007060033",
528
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061018d5760003560e01c80638da5cb5b116100e3578063cd68b79b1161008c578063e15d16e811610066578063e15d16e814610320578063f2fde38b14610333578063ff37b496146103465761018d565b8063cd68b79b146102e5578063d350ad25146102ed578063e0ad121a146103005761018d565b8063ab1518ab116100bd578063ab1518ab146102b7578063c1840327146102ca578063c4d66de8146102d25761018d565b80638da5cb5b146102785780638f7002d21461028d57806392807f58146102af5761018d565b806352a7251011610145578063715018a61161011f578063715018a61461022f5780637bc3c9ab146102375780638ca2fb08146102585761018d565b806352a72510146101f65780635d6d7ccb14610209578063711746e21461021c5761018d565b80632f7cb0b4116101765780632f7cb0b4146101af57806336a5beba146101c25780633c04741e146101e15761018d565b806315527af6146101925780631824a46b146101a7575b600080fd5b6101a56101a0366004611cf2565b610359565b005b6101a56104c2565b6101a56101bd366004611e25565b6105a6565b6101ca610683565b6040516101d8929190612013565b60405180910390f35b6101e96106a7565b6040516101d89190611f9c565b6101a5610204366004611cb8565b6106bf565b6101a5610217366004611e25565b6107bd565b6101a561022a366004611d62565b61086d565b6101a5610916565b61024a610245366004611e59565b610a2d565b6040516101d8929190611ff3565b61026b610266366004611c97565b610abc565b6040516101d89190611ee0565b610280610ad1565b6040516101d89190611ebf565b6102a061029b366004611e3f565b610aed565b6040516101d893929190611fb9565b6101e9610b54565b61024a6102c5366004611e59565b610b6c565b6101e9610d26565b6101a56102e0366004611c97565b610d3e565b6101e9610f8b565b6101a56102fb366004611e25565b610fb7565b61031361030e366004611e3f565b6110a2565b6040516101d89190611f59565b61024a61032e366004611e59565b611132565b6101a5610341366004611c97565b611202565b61024a610354366004611e59565b6113a4565b33610362610ad1565b73ffffffffffffffffffffffffffffffffffffffff16146103cf573360009081526066602052604090205460ff166103cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c690611eeb565b60405180910390fd5b60005b818110156104bd57368383838181106103e757fe5b60c00291909101915061041990506104026020830183611e3f565b61041436849003840160208501611dc0565b6114e6565b600061042b60a0830160808401611ea5565b9050600061043f60c0840160a08501611e8b565b6068805463ffffffff90921668010000000000000000027fffffffffffffffffffffffffffffffffffffffff00000000ffffffffffffffff67ffffffffffffffff9095167fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000090931692909217939093161790915550506001016103d2565b505050565b60006104cc611602565b905073ffffffffffffffffffffffffffffffffffffffff81166105255773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355610547565b3373ffffffffffffffffffffffffffffffffffffffff82161461054757600080fd5b50606580546402540be4007fffffffffffffffffffffffffffffffff00000000000000000000000000000000909116179055606980546fffffffffffffffffffffffffffffffff16702f00000000000000000000000000000000179055565b6105ae611627565b73ffffffffffffffffffffffffffffffffffffffff166105cc610ad1565b73ffffffffffffffffffffffffffffffffffffffff161461064e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b606980546fffffffffffffffffffffffffffffffff928316700100000000000000000000000000000000029216919091179055565b60685467ffffffffffffffff81169068010000000000000000900463ffffffff1682565b6065546fffffffffffffffffffffffffffffffff1681565b6106c7611627565b73ffffffffffffffffffffffffffffffffffffffff166106e5610ad1565b73ffffffffffffffffffffffffffffffffffffffff161461076757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff91909116600090815260666020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b336107c6610ad1565b73ffffffffffffffffffffffffffffffffffffffff161461082a573360009081526066602052604090205460ff1661082a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c690611eeb565b606980547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b33610876610ad1565b73ffffffffffffffffffffffffffffffffffffffff16146108da573360009081526066602052604090205460ff166108da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c690611eeb565b60005b818110156104bd57368383838181106108f257fe5b60800291909101915061090d90506104026020830183611e3f565b506001016108dd565b61091e611627565b73ffffffffffffffffffffffffffffffffffffffff1661093c610ad1565b73ffffffffffffffffffffffffffffffffffffffff16146109be57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60335460405160009173ffffffffffffffffffffffffffffffffffffffff16907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6000808461ffff16606e1480610a4857508461ffff1661279f145b80610a5857508461ffff16614eaf145b15610a7157610a688585856113a4565b91509150610ab4565b8461ffff16606f1480610a8957508461ffff16612794145b80610a9957508461ffff16614ea4145b15610aa957610a68858585610b6c565b610a68858585611132565b935093915050565b60666020526000908152604090205460ff1681565b60335473ffffffffffffffffffffffffffffffffffffffff1690565b6067602052600090815260409020546fffffffffffffffffffffffffffffffff811690700100000000000000000000000000000000810467ffffffffffffffff16907801000000000000000000000000000000000000000000000000900463ffffffff1683565b6069546fffffffffffffffffffffffffffffffff1681565b6000806000610b7a8661162b565b61ffff81166000908152606760205260408120805492935091610bd290610c7490610bcc908a9063ffffffff78010000000000000000000000000000000000000000000000009091048116906116a716565b90611723565b8254909150600090610c03908390700100000000000000000000000000000000900467ffffffffffffffff166116a7565b61ffff8a166000908152606760205260408120805492935091610c4d908b9063ffffffff78010000000000000000000000000000000000000000000000009091048116906116a716565b8254909150600090610c8790700100000000000000000000000000000000900467ffffffffffffffff16610c81848d611723565b906116a7565b6065548754919250600091610cbd916fffffffffffffffffffffffffffffffff90811691610cb7918991166116a7565b90611797565b6065548554919250600091610ced916fffffffffffffffffffffffffffffffff90811691610cb7918791166116a7565b90506000610cfb8383611723565b9554959f6fffffffffffffffffffffffffffffffff9096169e50949c50505050505050505050505050565b6065546fffffffffffffffffffffffffffffffff1690565b6000610d48611602565b905073ffffffffffffffffffffffffffffffffffffffff8116610da15773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355610dc3565b3373ffffffffffffffffffffffffffffffffffffffff821614610dc357600080fd5b600054610100900460ff1680610ddc5750610ddc611818565b80610dea575060005460ff16155b610e3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e81526020018061205a602e913960400191505060405180910390fd5b600054610100900460ff16158015610ea557600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b610ead611829565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260666020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055606580547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166402540be40017905560698054702f000000000000000000000000000000006fffffffffffffffffffffffffffffffff9190911617905580156104bd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055505050565b60695470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1681565b610fbf611627565b73ffffffffffffffffffffffffffffffffffffffff16610fdd610ad1565b73ffffffffffffffffffffffffffffffffffffffff161461105f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b606580547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b6110aa611bf5565b5061ffff16600090815260676020908152604091829020825160608101845290546fffffffffffffffffffffffffffffffff81168252700100000000000000000000000000000000810467ffffffffffffffff1692820192909252780100000000000000000000000000000000000000000000000090910463ffffffff169181019190915290565b61ffff831660009081526067602052604081208054829190829061117d90879063ffffffff78010000000000000000000000000000000000000000000000009091048116906116a716565b82549091506000906111b190700100000000000000000000000000000000900467ffffffffffffffff16610c818489611723565b60655484549192506111de916fffffffffffffffffffffffffffffffff91821691610cb7918591166116a7565b925492986fffffffffffffffffffffffffffffffff90931697509195505050505050565b61120a611627565b73ffffffffffffffffffffffffffffffffffffffff16611228610ad1565b73ffffffffffffffffffffffffffffffffffffffff16146112aa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8116611316576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806120346026913960400191505060405180910390fd5b60335460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b61ffff8316600090815260676020526040812060685460695483929183916114159168010000000000000000900463ffffffff90811691610c8191606491610cb7918c9170010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff16906116a716565b825490915060009061144e90889063ffffffff78010000000000000000000000000000000000000000000000009091048116906116a716565b83546068549192506000916114949167ffffffffffffffff700100000000000000000000000000000000909104811691610c81918691610bcc91899183918f9116611723565b60655485549192506114c1916fffffffffffffffffffffffffffffffff91821691610cb7918591166116a7565b935493996fffffffffffffffffffffffffffffffff9094169850929650505050505050565b805160208083015160409384015184516060810186526fffffffffffffffffffffffffffffffff948516815267ffffffffffffffff92831681850190815263ffffffff92831682880190815261ffff909816600090815260679095529590932092518354955196519091167801000000000000000000000000000000000000000000000000027fffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff96909216700100000000000000000000000000000000027fffffffffffffffff0000000000000000ffffffffffffffffffffffffffffffff919094167fffffffffffffffffffffffffffffffff0000000000000000000000000000000090951694909417939093169190911792909216179055565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b3390565b60008161ffff16606f1415611642575060656116a2565b8161ffff16612794141561165957506127896116a2565b8161ffff16614ea414156116705750614e996116a2565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103c690611f22565b919050565b6000826116b65750600061171d565b828202828482816116c357fe5b041461171a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806120886021913960400191505060405180910390fd5b90505b92915050565b60008282018381101561171a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080821161180757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b81838161181057fe5b049392505050565b60006118233061194d565b15905090565b600054610100900460ff16806118425750611842611818565b80611850575060005460ff16155b6118a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e81526020018061205a602e913960400191505060405180910390fd5b600054610100900460ff1615801561190b57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b611913611953565b61191b611a65565b801561194a57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1690555b50565b3b151590565b600054610100900460ff168061196c575061196c611818565b8061197a575060005460ff16155b6119cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e81526020018061205a602e913960400191505060405180910390fd5b600054610100900460ff1615801561191b57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff90911661010017166001179055801561194a57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905550565b600054610100900460ff1680611a7e5750611a7e611818565b80611a8c575060005460ff16155b611ae1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602e81526020018061205a602e913960400191505060405180910390fd5b600054610100900460ff16158015611b4757600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff909116610100171660011790555b6000611b51611627565b603380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350801561194a57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905550565b604080516060810182526000808252602082018190529181019190915290565b803573ffffffffffffffffffffffffffffffffffffffff811681146116a257600080fd5b80356fffffffffffffffffffffffffffffffff811681146116a257600080fd5b803561ffff811681146116a257600080fd5b803563ffffffff811681146116a257600080fd5b803567ffffffffffffffff811681146116a257600080fd5b600060208284031215611ca8578081fd5b611cb182611c15565b9392505050565b60008060408385031215611cca578081fd5b611cd383611c15565b915060208301358015158114611ce7578182fd5b809150509250929050565b60008060208385031215611d04578182fd5b823567ffffffffffffffff80821115611d1b578384fd5b818501915085601f830112611d2e578384fd5b813581811115611d3c578485fd5b86602060c083028501011115611d50578485fd5b60209290920196919550909350505050565b60008060208385031215611d74578182fd5b823567ffffffffffffffff80821115611d8b578384fd5b818501915085601f830112611d9e578384fd5b813581811115611dac578485fd5b866020608083028501011115611d50578485fd5b600060608284031215611dd1578081fd5b6040516060810181811067ffffffffffffffff82111715611dee57fe5b604052611dfa83611c39565b8152611e0860208401611c7f565b6020820152611e1960408401611c6b565b60408201529392505050565b600060208284031215611e36578081fd5b611cb182611c39565b600060208284031215611e50578081fd5b611cb182611c59565b600080600060608486031215611e6d578081fd5b611e7684611c59565b95602085013595506040909401359392505050565b600060208284031215611e9c578081fd5b611cb182611c6b565b600060208284031215611eb6578081fd5b611cb182611c7f565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b901515815260200190565b6020808252601c908201527f5072696365466565643a206e6f74207072696365207570646174657200000000604082015260600190565b6020808252601e908201527f5072696365466565643a20756e6b6e6f776e206c3220636861696e2069640000604082015260600190565b81516fffffffffffffffffffffffffffffffff16815260208083015167ffffffffffffffff169082015260409182015163ffffffff169181019190915260600190565b6fffffffffffffffffffffffffffffffff91909116815260200190565b6fffffffffffffffffffffffffffffffff93909316835267ffffffffffffffff91909116602083015263ffffffff16604082015260600190565b9182526fffffffffffffffffffffffffffffffff16602082015260400190565b67ffffffffffffffff92909216825263ffffffff1660208201526040019056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212201bba41ce48954cd9229eed28300edb68da5cf31270516a04c9d358203f2f224264736f6c63430007060033",
529
529
  "linkReferences": {},
530
530
  "deployedLinkReferences": {}
531
531
  }