{
  "_format": "hh-sol-artifact-1",
  "contractName": "EnglishOwnerAdder",
  "sourceName": "contracts/EnglishOwnerAdder.sol",
  "abi": [
    {
      "inputs": [],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [],
      "name": "STATEMENT",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_safe",
          "type": "address"
        },
        {
          "components": [
            {
              "internalType": "address",
              "name": "owner",
              "type": "address"
            },
            {
              "internalType": "address",
              "name": "device",
              "type": "address"
            },
            {
              "internalType": "uint256",
              "name": "issuedAt",
              "type": "uint256"
            }
          ],
          "internalType": "struct TokenAuthenticated.TokenRequest",
          "name": "request",
          "type": "tuple"
        },
        {
          "internalType": "bytes",
          "name": "signature",
          "type": "bytes"
        }
      ],
      "name": "addOwner",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "device",
          "type": "address"
        }
      ],
      "name": "createTokenRequest",
      "outputs": [
        {
          "components": [
            {
              "internalType": "address",
              "name": "owner",
              "type": "address"
            },
            {
              "internalType": "address",
              "name": "device",
              "type": "address"
            },
            {
              "internalType": "uint256",
              "name": "issuedAt",
              "type": "uint256"
            }
          ],
          "internalType": "struct TokenAuthenticated.TokenRequest",
          "name": "request",
          "type": "tuple"
        },
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "lengthOfToken",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x6080604052600f6001553480156200001657600080fd5b506040518060600160405280603a815260200162002208603a91398060009081620000429190620002c4565b5050620003ab565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620000cc57607f821691505b602082108103620000e257620000e162000084565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200014c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200010d565b6200015886836200010d565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620001a56200019f620001998462000170565b6200017a565b62000170565b9050919050565b6000819050919050565b620001c18362000184565b620001d9620001d082620001ac565b8484546200011a565b825550505050565b600090565b620001f0620001e1565b620001fd818484620001b6565b505050565b5b81811015620002255762000219600082620001e6565b60018101905062000203565b5050565b601f82111562000274576200023e81620000e8565b6200024984620000fd565b8101602085101562000259578190505b620002716200026885620000fd565b83018262000202565b50505b505050565b600082821c905092915050565b6000620002996000198460080262000279565b1980831691505092915050565b6000620002b4838362000286565b9150826002028217905092915050565b620002cf826200004a565b67ffffffffffffffff811115620002eb57620002ea62000055565b5b620002f78254620000b3565b6200030482828562000229565b600060209050601f8311600181146200033c576000841562000327578287015190505b620003338582620002a6565b865550620003a3565b601f1984166200034c86620000e8565b60005b8281101562000376578489015182556001820191506020850194506020810190506200034f565b8683101562000396578489015162000392601f89168262000286565b8355505b6001600288020188555050505b505050505050565b611e4d80620003bb6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063724e59c314610051578063b6ad16a81461006d578063bebc479c1461009e578063cb2e6043146100bc575b600080fd5b61006b60048036038101906100669190610f3d565b6100da565b005b61008760048036038101906100829190610fb1565b6103a9565b6040516100959291906110eb565b60405180910390f35b6100a661041d565b6040516100b3919061111b565b60405180910390f35b6100c46104ab565b6040516100d1919061114c565b60405180910390f35b6100e58383836104b1565b6100ee57600080fd5b600084905060008173ffffffffffffffffffffffffffffffffffffffff1663e75235b86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610140573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101649190611193565b9050600181146101a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101a090611232565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff16632f54bf6e8660000160208101906101d89190611252565b6040518263ffffffff1660e01b81526004016101f4919061128e565b602060405180830381865afa158015610211573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023591906112e1565b610274576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161026b9061135a565b60405180910390fd5b50600084602001602081019061028a9190611252565b600160405160240161029d9291906113cc565b6040516020818303038152906040527f0d582f13000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090508573ffffffffffffffffffffffffffffffffffffffff1663468721a78760008460006040518563ffffffff1660e01b815260040161035d94939291906114fc565b6020604051808303816000875af115801561037c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a091906112e1565b50505050505050565b6103b1610df5565b606060405180606001604052808573ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1681526020016001436104039190611577565b815250915081610412836105f2565b915091509250929050565b6000805461042a906115da565b80601f0160208091040260200160405190810160405280929190818152602001828054610456906115da565b80156104a35780601f10610478576101008083540402835291602001916104a3565b820191906000526020600020905b81548152906001019060200180831161048657829003601f168201915b505050505081565b60015481565b6000806104bd85610646565b9050600061050f8286868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610670565b90508560000160208101906105249190611252565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610591576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161058890611657565b60405180910390fd5b6001544361059f9190611577565b866040013510156105e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105dc906116c3565b60405180910390fd5b6001925050509392505050565b606060006106038360000151610697565b6106108460200151610697565b61061d85604001516106c4565b604051602001610630949392919061189b565b6040516020818303038152906040529050919050565b60006106696106648380360381019061065f91906119f3565b6105f2565b610792565b9050919050565b600080600061067f85856107cd565b9150915061068c8161081e565b819250505092915050565b60606106bd8273ffffffffffffffffffffffffffffffffffffffff16601460ff16610984565b9050919050565b6060600060016106d384610bc0565b01905060008167ffffffffffffffff8111156106f2576106f16118ff565b5b6040519080825280601f01601f1916602001820160405280156107245781602001600182028036833780820191505090505b509050600082602001820190505b600115610787578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a858161077b5761077a611a20565b5b04945060008503610732575b819350505050919050565b600061079e82516106c4565b826040516020016107b0929190611ad7565b604051602081830303815290604052805190602001209050919050565b600080604183510361080e5760008060006020860151925060408601519150606086015160001a905061080287828585610d13565b94509450505050610817565b60006002915091505b9250929050565b6000600481111561083257610831611485565b5b81600481111561084557610844611485565b5b0315610981576001600481111561085f5761085e611485565b5b81600481111561087257610871611485565b5b036108b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a990611b52565b60405180910390fd5b600260048111156108c6576108c5611485565b5b8160048111156108d9576108d8611485565b5b03610919576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091090611bbe565b60405180910390fd5b6003600481111561092d5761092c611485565b5b8160048111156109405761093f611485565b5b03610980576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097790611c50565b60405180910390fd5b5b50565b6060600060028360026109979190611c70565b6109a19190611cb2565b67ffffffffffffffff8111156109ba576109b96118ff565b5b6040519080825280601f01601f1916602001820160405280156109ec5781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110610a2457610a23611ce6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110610a8857610a87611ce6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002610ac89190611c70565b610ad29190611cb2565b90505b6001811115610b72577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110610b1457610b13611ce6565b5b1a60f81b828281518110610b2b57610b2a611ce6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c945080610b6b90611d15565b9050610ad5565b5060008414610bb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bad90611d8a565b60405180910390fd5b8091505092915050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310610c1e577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381610c1457610c13611a20565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310610c5b576d04ee2d6d415b85acef81000000008381610c5157610c50611a20565b5b0492506020810190505b662386f26fc100008310610c8a57662386f26fc100008381610c8057610c7f611a20565b5b0492506010810190505b6305f5e1008310610cb3576305f5e1008381610ca957610ca8611a20565b5b0492506008810190505b6127108310610cd8576127108381610cce57610ccd611a20565b5b0492506004810190505b60648310610cfb5760648381610cf157610cf0611a20565b5b0492506002810190505b600a8310610d0a576001810190505b80915050919050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115610d4e576000600391509150610dec565b600060018787878760405160008152602001604052604051610d739493929190611dd2565b6020604051602081039080840390855afa158015610d95573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610de357600060019250925050610dec565b80600092509250505b94509492505050565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600081525090565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610e8182610e56565b9050919050565b610e9181610e76565b8114610e9c57600080fd5b50565b600081359050610eae81610e88565b92915050565b600080fd5b600060608284031215610ecf57610ece610eb4565b5b81905092915050565b600080fd5b600080fd5b600080fd5b60008083601f840112610efd57610efc610ed8565b5b8235905067ffffffffffffffff811115610f1a57610f19610edd565b5b602083019150836001820283011115610f3657610f35610ee2565b5b9250929050565b60008060008060a08587031215610f5757610f56610e4c565b5b6000610f6587828801610e9f565b9450506020610f7687828801610eb9565b935050608085013567ffffffffffffffff811115610f9757610f96610e51565b5b610fa387828801610ee7565b925092505092959194509250565b60008060408385031215610fc857610fc7610e4c565b5b6000610fd685828601610e9f565b9250506020610fe785828601610e9f565b9150509250929050565b610ffa81610e76565b82525050565b6000819050919050565b61101381611000565b82525050565b60608201600082015161102f6000850182610ff1565b5060208201516110426020850182610ff1565b506040820151611055604085018261100a565b50505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561109557808201518184015260208101905061107a565b60008484015250505050565b6000601f19601f8301169050919050565b60006110bd8261105b565b6110c78185611066565b93506110d7818560208601611077565b6110e0816110a1565b840191505092915050565b60006080820190506111006000830185611019565b818103606083015261111281846110b2565b90509392505050565b6000602082019050818103600083015261113581846110b2565b905092915050565b61114681611000565b82525050565b6000602082019050611161600083018461113d565b92915050565b61117081611000565b811461117b57600080fd5b50565b60008151905061118d81611167565b92915050565b6000602082840312156111a9576111a8610e4c565b5b60006111b78482850161117e565b91505092915050565b7f4f6e6c792073616665277320776974682061207468726573686f6c64206f662060008201527f6f6e652061726520737570706f72746564000000000000000000000000000000602082015250565b600061121c603183611066565b9150611227826111c0565b604082019050919050565b6000602082019050818103600083015261124b8161120f565b9050919050565b60006020828403121561126857611267610e4c565b5b600061127684828501610e9f565b91505092915050565b61128881610e76565b82525050565b60006020820190506112a3600083018461127f565b92915050565b60008115159050919050565b6112be816112a9565b81146112c957600080fd5b50565b6000815190506112db816112b5565b92915050565b6000602082840312156112f7576112f6610e4c565b5b6000611305848285016112cc565b91505092915050565b7f4f776e6572206973206e6f7420612073616665206f776e657200000000000000600082015250565b6000611344601983611066565b915061134f8261130e565b602082019050919050565b6000602082019050818103600083015261137381611337565b9050919050565b6000819050919050565b600060ff82169050919050565b6000819050919050565b60006113b66113b16113ac8461137a565b611391565b611384565b9050919050565b6113c68161139b565b82525050565b60006040820190506113e1600083018561127f565b6113ee60208301846113bd565b9392505050565b6000819050919050565b600061141a611415611410846113f5565b611391565b611000565b9050919050565b61142a816113ff565b82525050565b600081519050919050565b600082825260208201905092915050565b600061145782611430565b611461818561143b565b9350611471818560208601611077565b61147a816110a1565b840191505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600281106114c5576114c4611485565b5b50565b60008190506114d6826114b4565b919050565b60006114e6826114c8565b9050919050565b6114f6816114db565b82525050565b6000608082019050611511600083018761127f565b61151e6020830186611421565b8181036040830152611530818561144c565b905061153f60608301846114ed565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061158282611000565b915061158d83611000565b92508282039050818111156115a5576115a4611548565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806115f257607f821691505b602082108103611605576116046115ab565b5b50919050565b7f696e76616c6964207369676e6174757265000000000000000000000000000000600082015250565b6000611641601183611066565b915061164c8261160b565b602082019050919050565b6000602082019050818103600083015261167081611634565b9050919050565b7f5265717565737420697320746f6f206f6c640000000000000000000000000000600082015250565b60006116ad601283611066565b91506116b882611677565b602082019050919050565b600060208201905081810360008301526116dc816116a0565b9050919050565b600081905092915050565b60008190508160005260206000209050919050565b60008154611710816115da565b61171a81866116e3565b94506001821660008114611735576001811461174a5761177d565b60ff198316865281151582028601935061177d565b611753856116ee565b60005b8381101561177557815481890152600182019150602081019050611756565b838801955050505b50505092915050565b7f0a0a4d653a200000000000000000000000000000000000000000000000000000600082015250565b60006117bc6006836116e3565b91506117c782611786565b600682019050919050565b60006117dd8261105b565b6117e781856116e3565b93506117f7818560208601611077565b80840191505092915050565b7f0a4465766963653a200000000000000000000000000000000000000000000000600082015250565b60006118396009836116e3565b915061184482611803565b600982019050919050565b7f0a4973737565642061743a200000000000000000000000000000000000000000600082015250565b6000611885600c836116e3565b91506118908261184f565b600c82019050919050565b60006118a78287611703565b91506118b2826117af565b91506118be82866117d2565b91506118c98261182c565b91506118d582856117d2565b91506118e082611878565b91506118ec82846117d2565b915081905095945050505050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611937826110a1565b810181811067ffffffffffffffff82111715611956576119556118ff565b5b80604052505050565b6000611969610e42565b9050611975828261192e565b919050565b60008135905061198981611167565b92915050565b6000606082840312156119a5576119a46118fa565b5b6119af606061195f565b905060006119bf84828501610e9f565b60008301525060206119d384828501610e9f565b60208301525060406119e78482850161197a565b60408301525092915050565b600060608284031215611a0957611a08610e4c565b5b6000611a178482850161198f565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f19457468657265756d205369676e6564204d6573736167653a0a000000000000600082015250565b6000611a85601a836116e3565b9150611a9082611a4f565b601a82019050919050565b600081905092915050565b6000611ab182611430565b611abb8185611a9b565b9350611acb818560208601611077565b80840191505092915050565b6000611ae282611a78565b9150611aee82856117d2565b9150611afa8284611aa6565b91508190509392505050565b7f45434453413a20696e76616c6964207369676e61747572650000000000000000600082015250565b6000611b3c601883611066565b9150611b4782611b06565b602082019050919050565b60006020820190508181036000830152611b6b81611b2f565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800600082015250565b6000611ba8601f83611066565b9150611bb382611b72565b602082019050919050565b60006020820190508181036000830152611bd781611b9b565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b6000611c3a602283611066565b9150611c4582611bde565b604082019050919050565b60006020820190508181036000830152611c6981611c2d565b9050919050565b6000611c7b82611000565b9150611c8683611000565b9250828202611c9481611000565b91508282048414831517611cab57611caa611548565b5b5092915050565b6000611cbd82611000565b9150611cc883611000565b9250828201905080821115611ce057611cdf611548565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000611d2082611000565b915060008203611d3357611d32611548565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000611d74602083611066565b9150611d7f82611d3e565b602082019050919050565b60006020820190508181036000830152611da381611d67565b9050919050565b6000819050919050565b611dbd81611daa565b82525050565b611dcc81611384565b82525050565b6000608082019050611de76000830187611db4565b611df46020830186611dc3565b611e016040830185611db4565b611e0e6060830184611db4565b9594505050505056fea264697066735822122073146140d700070a800a2692f075c8faecada30ec28d850cb0126c91d9ac541d64736f6c634300081300334920617574686f72697a6520746869732064657669636520746f2073656e64207472616e73616374696f6e73206f6e206d7920626568616c662e",
  "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c8063724e59c314610051578063b6ad16a81461006d578063bebc479c1461009e578063cb2e6043146100bc575b600080fd5b61006b60048036038101906100669190610f3d565b6100da565b005b61008760048036038101906100829190610fb1565b6103a9565b6040516100959291906110eb565b60405180910390f35b6100a661041d565b6040516100b3919061111b565b60405180910390f35b6100c46104ab565b6040516100d1919061114c565b60405180910390f35b6100e58383836104b1565b6100ee57600080fd5b600084905060008173ffffffffffffffffffffffffffffffffffffffff1663e75235b86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610140573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101649190611193565b9050600181146101a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101a090611232565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff16632f54bf6e8660000160208101906101d89190611252565b6040518263ffffffff1660e01b81526004016101f4919061128e565b602060405180830381865afa158015610211573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023591906112e1565b610274576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161026b9061135a565b60405180910390fd5b50600084602001602081019061028a9190611252565b600160405160240161029d9291906113cc565b6040516020818303038152906040527f0d582f13000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090508573ffffffffffffffffffffffffffffffffffffffff1663468721a78760008460006040518563ffffffff1660e01b815260040161035d94939291906114fc565b6020604051808303816000875af115801561037c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a091906112e1565b50505050505050565b6103b1610df5565b606060405180606001604052808573ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1681526020016001436104039190611577565b815250915081610412836105f2565b915091509250929050565b6000805461042a906115da565b80601f0160208091040260200160405190810160405280929190818152602001828054610456906115da565b80156104a35780601f10610478576101008083540402835291602001916104a3565b820191906000526020600020905b81548152906001019060200180831161048657829003601f168201915b505050505081565b60015481565b6000806104bd85610646565b9050600061050f8286868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610670565b90508560000160208101906105249190611252565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610591576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161058890611657565b60405180910390fd5b6001544361059f9190611577565b866040013510156105e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105dc906116c3565b60405180910390fd5b6001925050509392505050565b606060006106038360000151610697565b6106108460200151610697565b61061d85604001516106c4565b604051602001610630949392919061189b565b6040516020818303038152906040529050919050565b60006106696106648380360381019061065f91906119f3565b6105f2565b610792565b9050919050565b600080600061067f85856107cd565b9150915061068c8161081e565b819250505092915050565b60606106bd8273ffffffffffffffffffffffffffffffffffffffff16601460ff16610984565b9050919050565b6060600060016106d384610bc0565b01905060008167ffffffffffffffff8111156106f2576106f16118ff565b5b6040519080825280601f01601f1916602001820160405280156107245781602001600182028036833780820191505090505b509050600082602001820190505b600115610787578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a858161077b5761077a611a20565b5b04945060008503610732575b819350505050919050565b600061079e82516106c4565b826040516020016107b0929190611ad7565b604051602081830303815290604052805190602001209050919050565b600080604183510361080e5760008060006020860151925060408601519150606086015160001a905061080287828585610d13565b94509450505050610817565b60006002915091505b9250929050565b6000600481111561083257610831611485565b5b81600481111561084557610844611485565b5b0315610981576001600481111561085f5761085e611485565b5b81600481111561087257610871611485565b5b036108b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a990611b52565b60405180910390fd5b600260048111156108c6576108c5611485565b5b8160048111156108d9576108d8611485565b5b03610919576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091090611bbe565b60405180910390fd5b6003600481111561092d5761092c611485565b5b8160048111156109405761093f611485565b5b03610980576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097790611c50565b60405180910390fd5b5b50565b6060600060028360026109979190611c70565b6109a19190611cb2565b67ffffffffffffffff8111156109ba576109b96118ff565b5b6040519080825280601f01601f1916602001820160405280156109ec5781602001600182028036833780820191505090505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110610a2457610a23611ce6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110610a8857610a87611ce6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060006001846002610ac89190611c70565b610ad29190611cb2565b90505b6001811115610b72577f3031323334353637383961626364656600000000000000000000000000000000600f861660108110610b1457610b13611ce6565b5b1a60f81b828281518110610b2b57610b2a611ce6565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c945080610b6b90611d15565b9050610ad5565b5060008414610bb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bad90611d8a565b60405180910390fd5b8091505092915050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310610c1e577a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008381610c1457610c13611a20565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310610c5b576d04ee2d6d415b85acef81000000008381610c5157610c50611a20565b5b0492506020810190505b662386f26fc100008310610c8a57662386f26fc100008381610c8057610c7f611a20565b5b0492506010810190505b6305f5e1008310610cb3576305f5e1008381610ca957610ca8611a20565b5b0492506008810190505b6127108310610cd8576127108381610cce57610ccd611a20565b5b0492506004810190505b60648310610cfb5760648381610cf157610cf0611a20565b5b0492506002810190505b600a8310610d0a576001810190505b80915050919050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115610d4e576000600391509150610dec565b600060018787878760405160008152602001604052604051610d739493929190611dd2565b6020604051602081039080840390855afa158015610d95573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610de357600060019250925050610dec565b80600092509250505b94509492505050565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600081525090565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610e8182610e56565b9050919050565b610e9181610e76565b8114610e9c57600080fd5b50565b600081359050610eae81610e88565b92915050565b600080fd5b600060608284031215610ecf57610ece610eb4565b5b81905092915050565b600080fd5b600080fd5b600080fd5b60008083601f840112610efd57610efc610ed8565b5b8235905067ffffffffffffffff811115610f1a57610f19610edd565b5b602083019150836001820283011115610f3657610f35610ee2565b5b9250929050565b60008060008060a08587031215610f5757610f56610e4c565b5b6000610f6587828801610e9f565b9450506020610f7687828801610eb9565b935050608085013567ffffffffffffffff811115610f9757610f96610e51565b5b610fa387828801610ee7565b925092505092959194509250565b60008060408385031215610fc857610fc7610e4c565b5b6000610fd685828601610e9f565b9250506020610fe785828601610e9f565b9150509250929050565b610ffa81610e76565b82525050565b6000819050919050565b61101381611000565b82525050565b60608201600082015161102f6000850182610ff1565b5060208201516110426020850182610ff1565b506040820151611055604085018261100a565b50505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561109557808201518184015260208101905061107a565b60008484015250505050565b6000601f19601f8301169050919050565b60006110bd8261105b565b6110c78185611066565b93506110d7818560208601611077565b6110e0816110a1565b840191505092915050565b60006080820190506111006000830185611019565b818103606083015261111281846110b2565b90509392505050565b6000602082019050818103600083015261113581846110b2565b905092915050565b61114681611000565b82525050565b6000602082019050611161600083018461113d565b92915050565b61117081611000565b811461117b57600080fd5b50565b60008151905061118d81611167565b92915050565b6000602082840312156111a9576111a8610e4c565b5b60006111b78482850161117e565b91505092915050565b7f4f6e6c792073616665277320776974682061207468726573686f6c64206f662060008201527f6f6e652061726520737570706f72746564000000000000000000000000000000602082015250565b600061121c603183611066565b9150611227826111c0565b604082019050919050565b6000602082019050818103600083015261124b8161120f565b9050919050565b60006020828403121561126857611267610e4c565b5b600061127684828501610e9f565b91505092915050565b61128881610e76565b82525050565b60006020820190506112a3600083018461127f565b92915050565b60008115159050919050565b6112be816112a9565b81146112c957600080fd5b50565b6000815190506112db816112b5565b92915050565b6000602082840312156112f7576112f6610e4c565b5b6000611305848285016112cc565b91505092915050565b7f4f776e6572206973206e6f7420612073616665206f776e657200000000000000600082015250565b6000611344601983611066565b915061134f8261130e565b602082019050919050565b6000602082019050818103600083015261137381611337565b9050919050565b6000819050919050565b600060ff82169050919050565b6000819050919050565b60006113b66113b16113ac8461137a565b611391565b611384565b9050919050565b6113c68161139b565b82525050565b60006040820190506113e1600083018561127f565b6113ee60208301846113bd565b9392505050565b6000819050919050565b600061141a611415611410846113f5565b611391565b611000565b9050919050565b61142a816113ff565b82525050565b600081519050919050565b600082825260208201905092915050565b600061145782611430565b611461818561143b565b9350611471818560208601611077565b61147a816110a1565b840191505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600281106114c5576114c4611485565b5b50565b60008190506114d6826114b4565b919050565b60006114e6826114c8565b9050919050565b6114f6816114db565b82525050565b6000608082019050611511600083018761127f565b61151e6020830186611421565b8181036040830152611530818561144c565b905061153f60608301846114ed565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061158282611000565b915061158d83611000565b92508282039050818111156115a5576115a4611548565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806115f257607f821691505b602082108103611605576116046115ab565b5b50919050565b7f696e76616c6964207369676e6174757265000000000000000000000000000000600082015250565b6000611641601183611066565b915061164c8261160b565b602082019050919050565b6000602082019050818103600083015261167081611634565b9050919050565b7f5265717565737420697320746f6f206f6c640000000000000000000000000000600082015250565b60006116ad601283611066565b91506116b882611677565b602082019050919050565b600060208201905081810360008301526116dc816116a0565b9050919050565b600081905092915050565b60008190508160005260206000209050919050565b60008154611710816115da565b61171a81866116e3565b94506001821660008114611735576001811461174a5761177d565b60ff198316865281151582028601935061177d565b611753856116ee565b60005b8381101561177557815481890152600182019150602081019050611756565b838801955050505b50505092915050565b7f0a0a4d653a200000000000000000000000000000000000000000000000000000600082015250565b60006117bc6006836116e3565b91506117c782611786565b600682019050919050565b60006117dd8261105b565b6117e781856116e3565b93506117f7818560208601611077565b80840191505092915050565b7f0a4465766963653a200000000000000000000000000000000000000000000000600082015250565b60006118396009836116e3565b915061184482611803565b600982019050919050565b7f0a4973737565642061743a200000000000000000000000000000000000000000600082015250565b6000611885600c836116e3565b91506118908261184f565b600c82019050919050565b60006118a78287611703565b91506118b2826117af565b91506118be82866117d2565b91506118c98261182c565b91506118d582856117d2565b91506118e082611878565b91506118ec82846117d2565b915081905095945050505050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b611937826110a1565b810181811067ffffffffffffffff82111715611956576119556118ff565b5b80604052505050565b6000611969610e42565b9050611975828261192e565b919050565b60008135905061198981611167565b92915050565b6000606082840312156119a5576119a46118fa565b5b6119af606061195f565b905060006119bf84828501610e9f565b60008301525060206119d384828501610e9f565b60208301525060406119e78482850161197a565b60408301525092915050565b600060608284031215611a0957611a08610e4c565b5b6000611a178482850161198f565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f19457468657265756d205369676e6564204d6573736167653a0a000000000000600082015250565b6000611a85601a836116e3565b9150611a9082611a4f565b601a82019050919050565b600081905092915050565b6000611ab182611430565b611abb8185611a9b565b9350611acb818560208601611077565b80840191505092915050565b6000611ae282611a78565b9150611aee82856117d2565b9150611afa8284611aa6565b91508190509392505050565b7f45434453413a20696e76616c6964207369676e61747572650000000000000000600082015250565b6000611b3c601883611066565b9150611b4782611b06565b602082019050919050565b60006020820190508181036000830152611b6b81611b2f565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800600082015250565b6000611ba8601f83611066565b9150611bb382611b72565b602082019050919050565b60006020820190508181036000830152611bd781611b9b565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b6000611c3a602283611066565b9150611c4582611bde565b604082019050919050565b60006020820190508181036000830152611c6981611c2d565b9050919050565b6000611c7b82611000565b9150611c8683611000565b9250828202611c9481611000565b91508282048414831517611cab57611caa611548565b5b5092915050565b6000611cbd82611000565b9150611cc883611000565b9250828201905080821115611ce057611cdf611548565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000611d2082611000565b915060008203611d3357611d32611548565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b6000611d74602083611066565b9150611d7f82611d3e565b602082019050919050565b60006020820190508181036000830152611da381611d67565b9050919050565b6000819050919050565b611dbd81611daa565b82525050565b611dcc81611384565b82525050565b6000608082019050611de76000830187611db4565b611df46020830186611dc3565b611e016040830185611db4565b611e0e6060830184611db4565b9594505050505056fea264697066735822122073146140d700070a800a2692f075c8faecada30ec28d850cb0126c91d9ac541d64736f6c63430008130033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
