VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0x3d12bF…eFCD
Summary
Transactions
Transfers
Address
0x3d12bF87846160174F614Fc7C38d9665aB53eFCD
VET
0.00
VET
VTHO
0.00
VTHO
Master
0xbc0D8b56F4C621e1B83ca6AaC0755B6C39F01d8c
Deployer
0xbc0D8b56F4C621e1B83ca6AaC0755B6C39F01d8c
Code
0x60806040526004361061027d5760003560e01c8063758b1ce31161014f578063a6fb2bc7116100c1578063d936547e1161007a578063d936547e1461095d578063e985e9c51461099a578063eb91d37e146109d7578063f2c4ce1e14610a02578063f2fde38b14610a2b578063f851a44014610a545761027d565b8063a6fb2bc714610875578063b66a0e5d146108a0578063b88d4fde146108b7578063bf234202146108e0578063c87b56dd14610909578063d0c433d3146109465761027d565b806395d89b411161011357806395d89b41146107845780639a0d4f40146107af5780639cf9fd73146107da578063a0712d6814610805578063a22cb46514610821578063a2309ff81461084a5761027d565b8063758b1ce3146106af5780637d4cb964146106d85780638da5cb5b1461070357806391cca3db1461072e578063934aa023146107595761027d565b806342842e0e116101f35780635c474f9e116101ac5780635c474f9e1461059d5780635c975abb146105c85780636352211e146105f357806370a0823114610630578063715018a61461066d57806372402378146106845761027d565b806342842e0e1461048d57806348b15166146104b657806348cd4cb1146104e15780634d4c4e991461050c5780634f6ccce71461053757806355f804b3146105745761027d565b806318160ddd1161024557806318160ddd1461037b57806319cc02aa146103a657806323b872dd146103d15780632f745c59146103fa57806332a2aecf146104375780633fb24b63146104625761027d565b806301ffc9a71461028257806306fdde03146102bf578063081812fc146102ea578063081c8c4414610327578063095ea7b314610352575b600080fd5b34801561028e57600080fd5b506102a960048036038101906102a4919061368d565b610a7f565b6040516102b691906136d5565b60405180910390f35b3480156102cb57600080fd5b506102d4610af9565b6040516102e19190613789565b60405180910390f35b3480156102f657600080fd5b50610311600480360381019061030c91906137e1565b610b8b565b60405161031e919061384f565b60405180910390f35b34801561033357600080fd5b5061033c610c10565b6040516103499190613789565b60405180910390f35b34801561035e57600080fd5b5061037960048036038101906103749190613896565b610c9e565b005b34801561038757600080fd5b50610390610db6565b60405161039d91906138e5565b60405180910390f35b3480156103b257600080fd5b506103bb610dc3565b6040516103c891906136d5565b60405180910390f35b3480156103dd57600080fd5b506103f860048036038101906103f39190613900565b610dd7565b005b34801561040657600080fd5b50610421600480360381019061041c9190613896565b610e37565b60405161042e91906138e5565b60405180910390f35b34801561044357600080fd5b5061044c610edc565b60405161045991906138e5565b60405180910390f35b34801561046e57600080fd5b50610477610ee1565b60405161048491906138e5565b60405180910390f35b34801561049957600080fd5b506104b460048036038101906104af9190613900565b610ee6565b005b3480156104c257600080fd5b506104cb610f06565b6040516104d891906138e5565b60405180910390f35b3480156104ed57600080fd5b506104f6610f0c565b60405161050391906138e5565b60405180910390f35b34801561051857600080fd5b50610521610f12565b60405161052e91906138e5565b60405180910390f35b34801561054357600080fd5b5061055e600480360381019061055991906137e1565b610f17565b60405161056b91906138e5565b60405180910390f35b34801561058057600080fd5b5061059b60048036038101906105969190613a88565b610f88565b005b3480156105a957600080fd5b506105b261101e565b6040516105bf91906136d5565b60405180910390f35b3480156105d457600080fd5b506105dd611032565b6040516105ea91906136d5565b60405180910390f35b3480156105ff57600080fd5b5061061a600480360381019061061591906137e1565b611049565b604051610627919061384f565b60405180910390f35b34801561063c57600080fd5b5061065760048036038101906106529190613ad1565b6110fb565b60405161066491906138e5565b60405180910390f35b34801561067957600080fd5b506106826111b3565b005b34801561069057600080fd5b5061069961123b565b6040516106a691906138e5565b60405180910390f35b3480156106bb57600080fd5b506106d660048036038101906106d191906137e1565b611240565b005b3480156106e457600080fd5b506106ed6112c6565b6040516106fa91906138e5565b60405180910390f35b34801561070f57600080fd5b506107186112cc565b604051610725919061384f565b60405180910390f35b34801561073a57600080fd5b506107436112f6565b604051610750919061384f565b60405180910390f35b34801561076557600080fd5b5061076e61131c565b60405161077b919061384f565b60405180910390f35b34801561079057600080fd5b50610799611342565b6040516107a69190613789565b60405180910390f35b3480156107bb57600080fd5b506107c46113d4565b6040516107d191906138e5565b60405180910390f35b3480156107e657600080fd5b506107ef6113db565b6040516107fc91906138e5565b60405180910390f35b61081f600480360381019061081a91906137e1565b6113e1565b005b34801561082d57600080fd5b5061084860048036038101906108439190613b2a565b61194d565b005b34801561085657600080fd5b5061085f611963565b60405161086c91906138e5565b60405180910390f35b34801561088157600080fd5b5061088a611969565b604051610897919061384f565b60405180910390f35b3480156108ac57600080fd5b506108b561198f565b005b3480156108c357600080fd5b506108de60048036038101906108d99190613c0b565b611a30565b005b3480156108ec57600080fd5b5061090760048036038101906109029190613cee565b611a92565b005b34801561091557600080fd5b50610930600480360381019061092b91906137e1565b611c9c565b60405161093d9190613789565b60405180910390f35b34801561095257600080fd5b5061095b611df0565b005b34801561096957600080fd5b50610984600480360381019061097f9190613ad1565b611eae565b60405161099191906136d5565b60405180910390f35b3480156109a657600080fd5b506109c160048036038101906109bc9190613d3b565b611ece565b6040516109ce91906136d5565b60405180910390f35b3480156109e357600080fd5b506109ec611f62565b6040516109f991906138e5565b60405180910390f35b348015610a0e57600080fd5b50610a296004803603810190610a249190613a88565b612061565b005b348015610a3757600080fd5b50610a526004803603810190610a4d9190613ad1565b6120f7565b005b348015610a6057600080fd5b50610a696121ef565b604051610a76919061384f565b60405180910390f35b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610af25750610af182612215565b5b9050919050565b606060008054610b0890613daa565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3490613daa565b8015610b815780601f10610b5657610100808354040283529160200191610b81565b820191906000526020600020905b815481529060010190602001808311610b6457829003601f168201915b5050505050905090565b6000610b96826122f7565b610bd5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bcc90613e4e565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600c8054610c1d90613daa565b80601f0160208091040260200160405190810160405280929190818152602001828054610c4990613daa565b8015610c965780601f10610c6b57610100808354040283529160200191610c96565b820191906000526020600020905b815481529060010190602001808311610c7957829003601f168201915b505050505081565b6000610ca982611049565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d1a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d1190613ee0565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610d39612363565b73ffffffffffffffffffffffffffffffffffffffff161480610d685750610d6781610d62612363565b611ece565b5b610da7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9e90613f72565b60405180910390fd5b610db1838361236b565b505050565b6000600880549050905090565b61040160019054906101000a900460ff1681565b610de8610de2612363565b82612424565b610e27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1e90614004565b60405180910390fd5b610e32838383612502565b505050565b6000610e42836110fb565b8210610e83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7a90614096565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b609681565b606481565b610f0183838360405180602001604052806000815250611a30565b505050565b60165481565b60175481565b600381565b6000610f21610db6565b8210610f62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f5990614128565b60405180910390fd5b60088281548110610f7657610f75614148565b5b90600052602060002001549050919050565b610f90612363565b73ffffffffffffffffffffffffffffffffffffffff16610fae6112cc565b73ffffffffffffffffffffffffffffffffffffffff1614611004576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ffb906141c3565b60405180910390fd5b80600b908051906020019061101a92919061357e565b5050565b61040160009054906101000a900460ff1681565b6000600a60149054906101000a900460ff16905090565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156110f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e990614255565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561116c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611163906142e7565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6111bb612363565b73ffffffffffffffffffffffffffffffffffffffff166111d96112cc565b73ffffffffffffffffffffffffffffffffffffffff161461122f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611226906141c3565b60405180910390fd5b6112396000612769565b565b606381565b611248612363565b73ffffffffffffffffffffffffffffffffffffffff166112666112cc565b73ffffffffffffffffffffffffffffffffffffffff16146112bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112b3906141c3565b60405180910390fd5b8060168190555050565b6103e781565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606001805461135190613daa565b80601f016020809104026020016040519081016040528092919081815260200182805461137d90613daa565b80156113ca5780601f1061139f576101008083540402835291602001916113ca565b820191906000526020600020905b8154815290600101906020018083116113ad57829003601f168201915b5050505050905090565b6201518081565b60155481565b6001151561040160009054906101000a900460ff16151514611438576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142f90614353565b60405180910390fd5b6103e76014548261144991906143a2565b111561148a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148190614444565b60405180910390fd5b600062015180601654601754436114a19190614464565b6114ab9190614498565b10156115ea57601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661153d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161153490614564565b60405180910390fd5b6003826103ff60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158b91906143a2565b11156115cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c3906145d0565b60405180910390fd5b60116000600281106115e1576115e0614148565b5b01549050611604565b60116001600281106115ff576115fe614148565b5b015490505b600082826116129190614498565b905080341015611657576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164e9061463c565b60405180910390fd5b60005b8381101561167c5761166b3361282f565b806116759061465c565b905061165a565b5060006064605f8361168e9190614498565b61169891906146d4565b9050600060646002846116ab9190614498565b6116b591906146d4565b905060006064846116c691906146d4565b90506000818385876116d89190614464565b6116e29190614464565b6116ec9190614464565b9050601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611756573d6000803e3d6000fd5b50600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc859081150290604051600060405180830381858888f193505050501580156117bf573d6000803e3d6000fd5b50600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015611828573d6000803e3d6000fd5b50600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015611891573d6000803e3d6000fd5b50843411156118ed573373ffffffffffffffffffffffffffffffffffffffff166108fc86346118c09190614464565b9081150290604051600060405180830381858888f193505050501580156118eb573d6000803e3d6000fd5b505b866103ff60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461193d91906143a2565b9250508190555050505050505050565b61195f611958612363565b8383612878565b5050565b60145481565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611997612363565b73ffffffffffffffffffffffffffffffffffffffff166119b56112cc565b73ffffffffffffffffffffffffffffffffffffffff1614611a0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a02906141c3565b60405180910390fd5b600161040160006101000a81548160ff02191690831515021790555043601781905550565b611a41611a3b612363565b83612424565b611a80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7790614004565b60405180910390fd5b611a8c848484846129e5565b50505050565b611a9a612363565b73ffffffffffffffffffffffffffffffffffffffff16611ab86112cc565b73ffffffffffffffffffffffffffffffffffffffff1614611b0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b05906141c3565b60405180910390fd5b609682829050601554611b2191906143a2565b1115611b62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b5990614751565b60405180910390fd5b60005b82829050811015611c97576000151560136000858585818110611b8b57611b8a614148565b5b9050602002016020810190611ba09190613ad1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415611c8657600160136000858585818110611c0957611c08614148565b5b9050602002016020810190611c1e9190613ad1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550601560008154611c7e9061465c565b919050819055505b80611c909061465c565b9050611b65565b505050565b6060611ca7826122f7565b611ce6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cdd906147bd565b60405180910390fd5b6103e76014541480611d2657506064601454611d0291906146d4565b6064610400600085815260200190815260200160002054611d2391906146d4565b14155b15611d5d57600b611d3683612a41565b604051602001611d479291906148ad565b6040516020818303038152906040529050611deb565b600c8054611d6a90613daa565b80601f0160208091040260200160405190810160405280929190818152602001828054611d9690613daa565b8015611de35780601f10611db857610100808354040283529160200191611de3565b820191906000526020600020905b815481529060010190602001808311611dc657829003601f168201915b505050505090505b919050565b6000151561040160019054906101000a900460ff16151514611e47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3e9061491d565b60405180910390fd5b60005b6063811015611e8f57611e7e600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661282f565b80611e889061465c565b9050611e4a565b50600161040160016101000a81548160ff021916908315150217905550565b60136020528060005260406000206000915054906101000a900460ff1681565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60006001151561040160009054906101000a900460ff16151514611fbb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fb290614353565b60405180910390fd5b6103e760145410612001576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ff890614989565b60405180910390fd5b62015180601654601754436120169190614464565b6120209190614498565b101561204457601160006002811061203b5761203a614148565b5b0154905061205e565b601160016002811061205957612058614148565b5b015490505b90565b612069612363565b73ffffffffffffffffffffffffffffffffffffffff166120876112cc565b73ffffffffffffffffffffffffffffffffffffffff16146120dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120d4906141c3565b60405180910390fd5b80600c90805190602001906120f392919061357e565b5050565b6120ff612363565b73ffffffffffffffffffffffffffffffffffffffff1661211d6112cc565b73ffffffffffffffffffffffffffffffffffffffff1614612173576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161216a906141c3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156121e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121da90614a1b565b60405180910390fd5b6121ec81612769565b50565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806122e057507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806122f057506122ef82612ba2565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166123de83611049565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600061242f826122f7565b61246e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161246590614aad565b60405180910390fd5b600061247983611049565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806124e857508373ffffffffffffffffffffffffffffffffffffffff166124d084610b8b565b73ffffffffffffffffffffffffffffffffffffffff16145b806124f957506124f88185611ece565b5b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff1661252282611049565b73ffffffffffffffffffffffffffffffffffffffff1614612578576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161256f90614b3f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156125e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125df90614bd1565b60405180910390fd5b6125f3838383612c0c565b6125fe60008261236b565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461264e9190614464565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546126a591906143a2565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612764838383612d20565b505050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000612839612d25565b90506128458282612e66565b601460008154809291906128589061465c565b919050556104006000838152602001908152602001600020819055505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156128e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128de90614c3d565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516129d891906136d5565b60405180910390a3505050565b6129f0848484612502565b6129fc84848484612e84565b612a3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a3290614ccf565b60405180910390fd5b50505050565b60606000821415612a89576040518060400160405280600181526020017f30000000000000000000000000000000000000000000000000000000000000008152509050612b9d565b600082905060005b60008214612abb578080612aa49061465c565b915050600a82612ab491906146d4565b9150612a91565b60008167ffffffffffffffff811115612ad757612ad661395d565b5b6040519080825280601f01601f191660200182016040528015612b095781602001600182028036833780820191505090505b5090505b60008514612b9657600182612b229190614464565b9150600a85612b319190614cef565b6030612b3d91906143a2565b60f81b818381518110612b5357612b52614148565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a85612b8f91906146d4565b9450612b0d565b8093505050505b919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b612c1783838361301b565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612c5a57612c5581613020565b612c99565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612c9857612c978382613069565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612cdc57612cd7816131d6565b612d1b565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614612d1a57612d1982826132a7565b5b5b505050565b505050565b6000806014546103e7612d389190614464565b905060008133444285604051602001612d549493929190614d89565b6040516020818303038152906040528051906020012060001c612d779190614cef565b90506000925060006018826103e78110612d9457612d93614148565b5b015414612db9576018816103e78110612db057612daf614148565b5b01549250612dbd565b8092505b60006018600184612dce9190614464565b6103e78110612de057612ddf614148565b5b01541415612e1457600182612df59190614464565b6018826103e78110612e0a57612e09614148565b5b0181905550612e52565b6018600183612e239190614464565b6103e78110612e3557612e34614148565b5b01546018826103e78110612e4c57612e4b614148565b5b01819055505b600183612e5f91906143a2565b9250505090565b612e80828260405180602001604052806000815250613326565b5050565b6000612ea58473ffffffffffffffffffffffffffffffffffffffff16613381565b1561300e578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612ece612363565b8786866040518563ffffffff1660e01b8152600401612ef09493929190614e2c565b602060405180830381600087803b158015612f0a57600080fd5b505af1925050508015612f3b57506040513d601f19601f82011682018060405250810190612f389190614e8d565b60015b612fbe573d8060008114612f6b576040519150601f19603f3d011682016040523d82523d6000602084013e612f70565b606091505b50600081511415612fb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fad90614ccf565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050613013565b600190505b949350505050565b505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b60006001613076846110fb565b6130809190614464565b9050600060076000848152602001908152602001600020549050818114613165576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b600060016008805490506131ea9190614464565b905060006009600084815260200190815260200160002054905060006008838154811061321a57613219614148565b5b90600052602060002001549050806008838154811061323c5761323b614148565b5b90600052602060002001819055508160096000838152602001908152602001600020819055506009600085815260200190815260200160002060009055600880548061328b5761328a614eba565b5b6001900381819060005260206000200160009055905550505050565b60006132b2836110fb565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b61333083836133a4565b61333d6000848484612e84565b61337c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161337390614ccf565b60405180910390fd5b505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415613414576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161340b90614f35565b60405180910390fd5b61341d816122f7565b1561345d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161345490614fa1565b60405180910390fd5b61346960008383612c0c565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546134b991906143a2565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461357a60008383612d20565b5050565b82805461358a90613daa565b90600052602060002090601f0160209004810192826135ac57600085556135f3565b82601f106135c557805160ff19168380011785556135f3565b828001600101855582156135f3579182015b828111156135f25782518255916020019190600101906135d7565b5b5090506136009190613604565b5090565b5b8082111561361d576000816000905550600101613605565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61366a81613635565b811461367557600080fd5b50565b60008135905061368781613661565b92915050565b6000602082840312156136a3576136a261362b565b5b60006136b184828501613678565b91505092915050565b60008115159050919050565b6136cf816136ba565b82525050565b60006020820190506136ea60008301846136c6565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561372a57808201518184015260208101905061370f565b83811115613739576000848401525b50505050565b6000601f19601f8301169050919050565b600061375b826136f0565b61376581856136fb565b935061377581856020860161370c565b61377e8161373f565b840191505092915050565b600060208201905081810360008301526137a38184613750565b905092915050565b6000819050919050565b6137be816137ab565b81146137c957600080fd5b50565b6000813590506137db816137b5565b92915050565b6000602082840312156137f7576137f661362b565b5b6000613805848285016137cc565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006138398261380e565b9050919050565b6138498161382e565b82525050565b60006020820190506138646000830184613840565b92915050565b6138738161382e565b811461387e57600080fd5b50565b6000813590506138908161386a565b92915050565b600080604083850312156138ad576138ac61362b565b5b60006138bb85828601613881565b92505060206138cc858286016137cc565b9150509250929050565b6138df816137ab565b82525050565b60006020820190506138fa60008301846138d6565b92915050565b6000806000606084860312156139195761391861362b565b5b600061392786828701613881565b935050602061393886828701613881565b9250506040613949868287016137cc565b9150509250925092565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6139958261373f565b810181811067ffffffffffffffff821117156139b4576139b361395d565b5b80604052505050565b60006139c7613621565b90506139d3828261398c565b919050565b600067ffffffffffffffff8211156139f3576139f261395d565b5b6139fc8261373f565b9050602081019050919050565b82818337600083830152505050565b6000613a2b613a26846139d8565b6139bd565b905082815260208101848484011115613a4757613a46613958565b5b613a52848285613a09565b509392505050565b600082601f830112613a6f57613a6e613953565b5b8135613a7f848260208601613a18565b91505092915050565b600060208284031215613a9e57613a9d61362b565b5b600082013567ffffffffffffffff811115613abc57613abb613630565b5b613ac884828501613a5a565b91505092915050565b600060208284031215613ae757613ae661362b565b5b6000613af584828501613881565b91505092915050565b613b07816136ba565b8114613b1257600080fd5b50565b600081359050613b2481613afe565b92915050565b60008060408385031215613b4157613b4061362b565b5b6000613b4f85828601613881565b9250506020613b6085828601613b15565b9150509250929050565b600067ffffffffffffffff821115613b8557613b8461395d565b5b613b8e8261373f565b9050602081019050919050565b6000613bae613ba984613b6a565b6139bd565b905082815260208101848484011115613bca57613bc9613958565b5b613bd5848285613a09565b509392505050565b600082601f830112613bf257613bf1613953565b5b8135613c02848260208601613b9b565b91505092915050565b60008060008060808587031215613c2557613c2461362b565b5b6000613c3387828801613881565b9450506020613c4487828801613881565b9350506040613c55878288016137cc565b925050606085013567ffffffffffffffff811115613c7657613c75613630565b5b613c8287828801613bdd565b91505092959194509250565b600080fd5b600080fd5b60008083601f840112613cae57613cad613953565b5b8235905067ffffffffffffffff811115613ccb57613cca613c8e565b5b602083019150836020820283011115613ce757613ce6613c93565b5b9250929050565b60008060208385031215613d0557613d0461362b565b5b600083013567ffffffffffffffff811115613d2357613d22613630565b5b613d2f85828601613c98565b92509250509250929050565b60008060408385031215613d5257613d5161362b565b5b6000613d6085828601613881565b9250506020613d7185828601613881565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680613dc257607f821691505b60208210811415613dd657613dd5613d7b565b5b50919050565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000613e38602c836136fb565b9150613e4382613ddc565b604082019050919050565b60006020820190508181036000830152613e6781613e2b565b9050919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000613eca6021836136fb565b9150613ed582613e6e565b604082019050919050565b60006020820190508181036000830152613ef981613ebd565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b6000613f5c6038836136fb565b9150613f6782613f00565b604082019050919050565b60006020820190508181036000830152613f8b81613f4f565b9050919050565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b6000613fee6031836136fb565b9150613ff982613f92565b604082019050919050565b6000602082019050818103600083015261401d81613fe1565b9050919050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b6000614080602b836136fb565b915061408b82614024565b604082019050919050565b600060208201905081810360008301526140af81614073565b9050919050565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b6000614112602c836136fb565b915061411d826140b6565b604082019050919050565b6000602082019050818103600083015261414181614105565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006141ad6020836136fb565b91506141b882614177565b602082019050919050565b600060208201905081810360008301526141dc816141a0565b9050919050565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b600061423f6029836136fb565b915061424a826141e3565b604082019050919050565b6000602082019050818103600083015261426e81614232565b9050919050565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b60006142d1602a836136fb565b91506142dc82614275565b604082019050919050565b60006020820190508181036000830152614300816142c4565b9050919050565b7f53616c6520686173206e6f742073746172746564000000000000000000000000600082015250565b600061433d6014836136fb565b915061434882614307565b602082019050919050565b6000602082019050818103600083015261436c81614330565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006143ad826137ab565b91506143b8836137ab565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156143ed576143ec614373565b5b828201905092915050565b7f416d6f756e742065786365656400000000000000000000000000000000000000600082015250565b600061442e600d836136fb565b9150614439826143f8565b602082019050919050565b6000602082019050818103600083015261445d81614421565b9050919050565b600061446f826137ab565b915061447a836137ab565b92508282101561448d5761448c614373565b5b828203905092915050565b60006144a3826137ab565b91506144ae836137ab565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156144e7576144e6614373565b5b828202905092915050565b7f4f6e6c792077686974656c697374656420616464726573732063616e206d696e60008201527f7420696e207468652070726573616c6500000000000000000000000000000000602082015250565b600061454e6030836136fb565b9150614559826144f2565b604082019050919050565b6000602082019050818103600083015261457d81614541565b9050919050565b7f42555941424c45204c494d495420455843454544000000000000000000000000600082015250565b60006145ba6014836136fb565b91506145c582614584565b602082019050919050565b600060208201905081810360008301526145e9816145ad565b9050919050565b7f496e73756666696369656e742046756e64730000000000000000000000000000600082015250565b60006146266012836136fb565b9150614631826145f0565b602082019050919050565b6000602082019050818103600083015261465581614619565b9050919050565b6000614667826137ab565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561469a57614699614373565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006146df826137ab565b91506146ea836137ab565b9250826146fa576146f96146a5565b5b828204905092915050565b7f57686974656c69737420616d6f756e7420657863656564000000000000000000600082015250565b600061473b6017836136fb565b915061474682614705565b602082019050919050565b6000602082019050818103600083015261476a8161472e565b9050919050565b7f5468697320746f6b656e20646f6573206e6f7420657869737400000000000000600082015250565b60006147a76019836136fb565b91506147b282614771565b602082019050919050565b600060208201905081810360008301526147d68161479a565b9050919050565b600081905092915050565b60008190508160005260206000209050919050565b6000815461480a81613daa565b61481481866147dd565b9450600182166000811461482f576001811461484057614873565b60ff19831686528186019350614873565b614849856147e8565b60005b8381101561486b5781548189015260018201915060208101905061484c565b838801955050505b50505092915050565b6000614887826136f0565b61489181856147dd565b93506148a181856020860161370c565b80840191505092915050565b60006148b982856147fd565b91506148c5828461487c565b91508190509392505050565b7f676976654177617920616d6f756e742065786365656400000000000000000000600082015250565b60006149076016836136fb565b9150614912826148d1565b602082019050919050565b60006020820190508181036000830152614936816148fa565b9050919050565b7f416c7265616479206d696e74656420616c6c0000000000000000000000000000600082015250565b60006149736012836136fb565b915061497e8261493d565b602082019050919050565b600060208201905081810360008301526149a281614966565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614a056026836136fb565b9150614a10826149a9565b604082019050919050565b60006020820190508181036000830152614a34816149f8565b9050919050565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000614a97602c836136fb565b9150614aa282614a3b565b604082019050919050565b60006020820190508181036000830152614ac681614a8a565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000614b296025836136fb565b9150614b3482614acd565b604082019050919050565b60006020820190508181036000830152614b5881614b1c565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000614bbb6024836136fb565b9150614bc682614b5f565b604082019050919050565b60006020820190508181036000830152614bea81614bae565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000614c276019836136fb565b9150614c3282614bf1565b602082019050919050565b60006020820190508181036000830152614c5681614c1a565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000614cb96032836136fb565b9150614cc482614c5d565b604082019050919050565b60006020820190508181036000830152614ce881614cac565b9050919050565b6000614cfa826137ab565b9150614d05836137ab565b925082614d1557614d146146a5565b5b828206905092915050565b60008160601b9050919050565b6000614d3882614d20565b9050919050565b6000614d4a82614d2d565b9050919050565b614d62614d5d8261382e565b614d3f565b82525050565b6000819050919050565b614d83614d7e826137ab565b614d68565b82525050565b6000614d958287614d51565b601482019150614da58286614d72565b602082019150614db58285614d72565b602082019150614dc58284614d72565b60208201915081905095945050505050565b600081519050919050565b600082825260208201905092915050565b6000614dfe82614dd7565b614e088185614de2565b9350614e1881856020860161370c565b614e218161373f565b840191505092915050565b6000608082019050614e416000830187613840565b614e4e6020830186613840565b614e5b60408301856138d6565b8181036060830152614e6d8184614df3565b905095945050505050565b600081519050614e8781613661565b92915050565b600060208284031215614ea357614ea261362b565b5b6000614eb184828501614e78565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b6000614f1f6020836136fb565b9150614f2a82614ee9565b602082019050919050565b60006020820190508181036000830152614f4e81614f12565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000614f8b601c836136fb565b9150614f9682614f55565b602082019050919050565b60006020820190508181036000830152614fba81614f7e565b905091905056fea2646970667358221220a9fbb49ba2243a3976ef750fcc96e0a7c01f094fb99f3ba224793d3271f486c964736f6c63430008090033