{
  "_format": "hh-sol-artifact-1",
  "contractName": "TRC7913WebAuthnVerifier",
  "sourceName": "contracts/utils/cryptography/verifiers/TRC7913WebAuthnVerifier.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "bytes",
          "name": "key",
          "type": "bytes"
        },
        {
          "internalType": "bytes32",
          "name": "hash",
          "type": "bytes32"
        },
        {
          "internalType": "bytes",
          "name": "signature",
          "type": "bytes"
        }
      ],
      "name": "verify",
      "outputs": [
        {
          "internalType": "bytes4",
          "name": "",
          "type": "bytes4"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x60808060405234601d57d3601d57d2601d5761110190816100228239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c63024ad31814610024575f80fd5b3461046457d361046457d26104645760603660031901126104645760043567ffffffffffffffff81116104645761005f903690600401610487565b9060443567ffffffffffffffff811161046457610083610089913690600401610487565b9061059a565b90928361047c575b836100cd575b5050505f146100bd57602062495a6360e31b5b6040516001600160e01b03199091168152f35b60206001600160e01b03196100aa565b90919250604051926024356020850152602084526100ec6040856104d1565b816020116104645780359160401161046457602001359060c0833603126104645760405160c0810181811067ffffffffffffffff8211176104685760405283358152602081019360208101358552604082019060408101358252606083019660608201358852608082013567ffffffffffffffff811161046457820136601f8201121561046457610184903690602081359101610543565b916080850192835260a08101359067ffffffffffffffff8211610464570136601f82011215610464576101be903690602081359101610543565b60a0850193818552602484515111998a610422575b5089610330575b5050508661030f575b866102ee575b866102a1575b86610203575b5050505050505f8080610097565b602080929394959697505f91519351604051918183925191829101835e8101838152039060025afa15610296575f6020918151610260848060405180948280830197805191829101895e82019083820152030180845201826104d1565b604051918291518091835e8101838152039060025afa156102965761028b935f519151905191610687565b5f80808080806101f5565b6040513d5f823e3d90fd5b809650518051602010156102da5760400151600160fb1b808216149081156102cb575b50956101ef565b600160fc1b161590505f6102c4565b634e487b7160e01b5f52603260045260245ffd5b809650518051602010156102da5760400151600160fa1b90811614956101e9565b809650518051602010156102da5760400151600160f81b90811614956101e3565b519298509061033e90610b02565b90604051906103896001602d846020808201976c1131b430b63632b733b2911d1160991b89528051918291018484015e8101601160f91b838201520301601e198101855201836104d1565b815184018481101590815f199102180281519081815f19181090825f199118180218938480821091180284189060206103c28387610579565b92806103e66103d086610527565b956103de60405197886104d1565b808752610527565b8584019890601f1901368a3703920101855e519051908181149384610413575b50505050955f80806101da565b2091201490505f808080610406565b90995051601474113a3cb832911d113bb2b130baba34371733b2ba1160591b6affffffffffffffffffffff19602084860101511614910182511116985f6101d3565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b604081149350610091565b9181601f840112156104645782359167ffffffffffffffff8311610464576020838186019501011161046457565b6060810190811067ffffffffffffffff82111761046857604052565b90601f8019910116810190811067ffffffffffffffff82111761046857604052565b90939293848311610464578411610464578101920390565b359060208110610519575090565b5f199060200360031b1b1690565b67ffffffffffffffff811161046857601f01601f191660200190565b92919261054f82610527565b9161055d60405193846104d1565b829481845281830111610464578281602093845f960137010152565b9190820391821161058657565b634e487b7160e01b5f52601160045260245ffd5b91908260c0821061067f5781608011610464576105be607f1983016080830161050b565b908260a011610464576105d8609f19840160a0830161050b565b90601f1984018481116105865782848210918215610675575b505061066c5761062561061e610612868581610618610612828b818b6104f3565b9061050b565b966104f3565b9385610579565b601f198101908111610586571092831561064c575b5050506106475760019190565b5f9190565b610657929350610579565b601f19810190811161058657105f808061063a565b505050505f9190565b109050825f6105f1565b9250505f9190565b9190939284151580610adc575b80610ad3575b80610aa9575b158015610a2c575b610a2357604051936102006106bd81876104d1565b5f5b818110610a0e5750506020926108595f9360c0936040516106df816104b5565b86815286888201528660408201528952604051916106fc836104b5565b825286820152600160408201528588019081528761084a60405161071f816104b5565b7f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29681527f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f589820152600160408201526080830190815261083b61082c6107858651610c2f565b92604086019384526107978151610c2f565b9061010087019182526107ad8851865190610c6c565b96606081019788526107c28951835190610c6c565b60a08201526107d48651835190610c6c565b8c8201526107e58851835190610c6c565b60e08201526107f78951845190610c6c565b61012082015261080a8651845190610c6c565b6101408201526101606108208951855190610c6c565b91015251905190610c6c565b6101808d018181529551610c6c565b6101a08c015251835190610c6c565b6101c08a015251905190610c6c565b6101e087015260405190848252848083015284604083015260608201527fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f60808201527bffffffff00000000000000004319055258e8617b0c46353d039cdaae1960a082015260055afa5f5190156109fc57807bffffffff00000000000000004319055258e8617b0c46353d039cdaae19809286959495099309905f905f925f945f915b60808310610938575050505091610932917bffffffff00000000000000004319055258e8617b0c46353d039cdaae1993611008565b50061490565b866109da575b8160fe1c600c8260fc1c161760406109568287610c1e565b510151610972575b5060019060021b9160021b920191906108fd565b9691959094826109b6575050506109898583610c1e565b515193600160406109a9602061099f8a88610c1e565b5101519886610c1e565b5101519695945b9061095e565b906109cf92916109c96001989987610c1e565b51610d8a565b9691959095946109b0565b93956109eb91956109f19397610c8b565b91610c8b565b95919490949361093e565b634e487b715f5260126020526024601cfd5b602090610a19610c00565b81890152016106bf565b50505050505f90565b50600160601b63ffffffff60c01b03197f5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b8183816003600160601b0363ffffffff60c01b031981838009080908600160601b63ffffffff60c01b031985800914600160601b63ffffffff60c01b03198086109083101616156106a8565b507f7fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a88211156106a0565b5081151561069a565b507bffffffff00000000000000004319055258e8617b0c46353d039cdaae198510610694565b90815115610bea578151600281901b906001600160fe1b038116036105865760028101809111610586576003900490604051917f4142434445464748494a4b4c4d4e4f505152535455565758595a616263646566601f526106707f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f18603f5260208301938080510160208101908151925f83525b818110610bb0575050528083528201602001604052909150565b60036004910197603f8951818160121c165183538181600c1c16516001840153818160061c16516002840153165160038201530196610b96565b9050604051610bfa6020826104d1565b5f815290565b60405190610c0d826104b5565b5f6040838281528260208201520152565b9060108110156102da5760051b0190565b610c4f90610c3b610c00565b508051906040602082015191015191610c8b565b9060405192610c5d846104b5565b83526020830152604082015290565b610c4f91610c78610c00565b5080516040602083015192015192610d8a565b929091600160601b63ffffffff60c01b0319838009600160601b63ffffffff60c01b0319828009600160601b63ffffffff60c01b0319908190819080096003600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319808880096003090894600160601b63ffffffff60c01b031990819083900960040994600160601b63ffffffff60c01b03198087600209600160601b63ffffffff60c01b0319908103908380090895600160601b63ffffffff60c01b031992839081908009600809600160601b63ffffffff60c01b03199081039290918290898203900890090892600160601b63ffffffff60c01b03199182910960020990565b9193905f945f945f94604081015190600163ffffffff60601b0360601b19828009600160601b63ffffffff60c01b031984800992600160601b63ffffffff60c01b03198086860960208501510991600160601b63ffffffff60c01b031983810381808585098a09089351600160601b63ffffffff60c01b03199086900990600160601b63ffffffff60c01b0319908282039082908b090890811585151694855f14610f3d575050505050600114610e42575b50505050565b929650909450919250600160601b63ffffffff60c01b031984800990600160601b63ffffffff60c01b0319908190819080096003600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319808880096003090894600160601b63ffffffff60c01b031990819083900960040994600160601b63ffffffff60c01b03198087600209600160601b63ffffffff60c01b0319908103908380090895600160601b63ffffffff60c01b031992839081908009600809600160601b63ffffffff60c01b03199081039290918290898203900890090892600160601b63ffffffff60c01b031991829109600209905f808080610e3c565b96999a5096509650985098505050600163ffffffff60601b0360601b1983800991600160601b63ffffffff60c01b03199083900991600160601b63ffffffff60c01b031990840991600160601b63ffffffff60c01b03198082600209600160601b63ffffffff60c01b03199081039085810381868009080897600160601b63ffffffff60c01b031993849109600160601b63ffffffff60c01b031990810392909182908a8203900890090893600160601b63ffffffff60c01b0319928391099009905f808080610e3c565b929180156110b3575f60c060209260405190848252848083015284604083015260608201527fffffffff00000001000000000000000000000000fffffffffffffffffffffffd6080820152600163ffffffff60601b0360601b1960a082015260055afa905f5191156109fc57600160601b63ffffffff60c01b031982800993600160601b63ffffffff60c01b03199085900993600160601b63ffffffff60c01b031992839109900990565b505090505f905f9056fea36474726f6e58221220aeebf2197829540d528200e8c76a01126043b9c22863bbb27a9679bcdba7f3d66c6578706572696d656e74616cf564736f6c634300081a0041",
  "deployedBytecode": "0x60806040526004361015610011575f80fd5b5f3560e01c63024ad31814610024575f80fd5b3461046457d361046457d26104645760603660031901126104645760043567ffffffffffffffff81116104645761005f903690600401610487565b9060443567ffffffffffffffff811161046457610083610089913690600401610487565b9061059a565b90928361047c575b836100cd575b5050505f146100bd57602062495a6360e31b5b6040516001600160e01b03199091168152f35b60206001600160e01b03196100aa565b90919250604051926024356020850152602084526100ec6040856104d1565b816020116104645780359160401161046457602001359060c0833603126104645760405160c0810181811067ffffffffffffffff8211176104685760405283358152602081019360208101358552604082019060408101358252606083019660608201358852608082013567ffffffffffffffff811161046457820136601f8201121561046457610184903690602081359101610543565b916080850192835260a08101359067ffffffffffffffff8211610464570136601f82011215610464576101be903690602081359101610543565b60a0850193818552602484515111998a610422575b5089610330575b5050508661030f575b866102ee575b866102a1575b86610203575b5050505050505f8080610097565b602080929394959697505f91519351604051918183925191829101835e8101838152039060025afa15610296575f6020918151610260848060405180948280830197805191829101895e82019083820152030180845201826104d1565b604051918291518091835e8101838152039060025afa156102965761028b935f519151905191610687565b5f80808080806101f5565b6040513d5f823e3d90fd5b809650518051602010156102da5760400151600160fb1b808216149081156102cb575b50956101ef565b600160fc1b161590505f6102c4565b634e487b7160e01b5f52603260045260245ffd5b809650518051602010156102da5760400151600160fa1b90811614956101e9565b809650518051602010156102da5760400151600160f81b90811614956101e3565b519298509061033e90610b02565b90604051906103896001602d846020808201976c1131b430b63632b733b2911d1160991b89528051918291018484015e8101601160f91b838201520301601e198101855201836104d1565b815184018481101590815f199102180281519081815f19181090825f199118180218938480821091180284189060206103c28387610579565b92806103e66103d086610527565b956103de60405197886104d1565b808752610527565b8584019890601f1901368a3703920101855e519051908181149384610413575b50505050955f80806101da565b2091201490505f808080610406565b90995051601474113a3cb832911d113bb2b130baba34371733b2ba1160591b6affffffffffffffffffffff19602084860101511614910182511116985f6101d3565b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b604081149350610091565b9181601f840112156104645782359167ffffffffffffffff8311610464576020838186019501011161046457565b6060810190811067ffffffffffffffff82111761046857604052565b90601f8019910116810190811067ffffffffffffffff82111761046857604052565b90939293848311610464578411610464578101920390565b359060208110610519575090565b5f199060200360031b1b1690565b67ffffffffffffffff811161046857601f01601f191660200190565b92919261054f82610527565b9161055d60405193846104d1565b829481845281830111610464578281602093845f960137010152565b9190820391821161058657565b634e487b7160e01b5f52601160045260245ffd5b91908260c0821061067f5781608011610464576105be607f1983016080830161050b565b908260a011610464576105d8609f19840160a0830161050b565b90601f1984018481116105865782848210918215610675575b505061066c5761062561061e610612868581610618610612828b818b6104f3565b9061050b565b966104f3565b9385610579565b601f198101908111610586571092831561064c575b5050506106475760019190565b5f9190565b610657929350610579565b601f19810190811161058657105f808061063a565b505050505f9190565b109050825f6105f1565b9250505f9190565b9190939284151580610adc575b80610ad3575b80610aa9575b158015610a2c575b610a2357604051936102006106bd81876104d1565b5f5b818110610a0e5750506020926108595f9360c0936040516106df816104b5565b86815286888201528660408201528952604051916106fc836104b5565b825286820152600160408201528588019081528761084a60405161071f816104b5565b7f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29681527f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f589820152600160408201526080830190815261083b61082c6107858651610c2f565b92604086019384526107978151610c2f565b9061010087019182526107ad8851865190610c6c565b96606081019788526107c28951835190610c6c565b60a08201526107d48651835190610c6c565b8c8201526107e58851835190610c6c565b60e08201526107f78951845190610c6c565b61012082015261080a8651845190610c6c565b6101408201526101606108208951855190610c6c565b91015251905190610c6c565b6101808d018181529551610c6c565b6101a08c015251835190610c6c565b6101c08a015251905190610c6c565b6101e087015260405190848252848083015284604083015260608201527fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f60808201527bffffffff00000000000000004319055258e8617b0c46353d039cdaae1960a082015260055afa5f5190156109fc57807bffffffff00000000000000004319055258e8617b0c46353d039cdaae19809286959495099309905f905f925f945f915b60808310610938575050505091610932917bffffffff00000000000000004319055258e8617b0c46353d039cdaae1993611008565b50061490565b866109da575b8160fe1c600c8260fc1c161760406109568287610c1e565b510151610972575b5060019060021b9160021b920191906108fd565b9691959094826109b6575050506109898583610c1e565b515193600160406109a9602061099f8a88610c1e565b5101519886610c1e565b5101519695945b9061095e565b906109cf92916109c96001989987610c1e565b51610d8a565b9691959095946109b0565b93956109eb91956109f19397610c8b565b91610c8b565b95919490949361093e565b634e487b715f5260126020526024601cfd5b602090610a19610c00565b81890152016106bf565b50505050505f90565b50600160601b63ffffffff60c01b03197f5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b8183816003600160601b0363ffffffff60c01b031981838009080908600160601b63ffffffff60c01b031985800914600160601b63ffffffff60c01b03198086109083101616156106a8565b507f7fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a88211156106a0565b5081151561069a565b507bffffffff00000000000000004319055258e8617b0c46353d039cdaae198510610694565b90815115610bea578151600281901b906001600160fe1b038116036105865760028101809111610586576003900490604051917f4142434445464748494a4b4c4d4e4f505152535455565758595a616263646566601f526106707f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2f18603f5260208301938080510160208101908151925f83525b818110610bb0575050528083528201602001604052909150565b60036004910197603f8951818160121c165183538181600c1c16516001840153818160061c16516002840153165160038201530196610b96565b9050604051610bfa6020826104d1565b5f815290565b60405190610c0d826104b5565b5f6040838281528260208201520152565b9060108110156102da5760051b0190565b610c4f90610c3b610c00565b508051906040602082015191015191610c8b565b9060405192610c5d846104b5565b83526020830152604082015290565b610c4f91610c78610c00565b5080516040602083015192015192610d8a565b929091600160601b63ffffffff60c01b0319838009600160601b63ffffffff60c01b0319828009600160601b63ffffffff60c01b0319908190819080096003600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319808880096003090894600160601b63ffffffff60c01b031990819083900960040994600160601b63ffffffff60c01b03198087600209600160601b63ffffffff60c01b0319908103908380090895600160601b63ffffffff60c01b031992839081908009600809600160601b63ffffffff60c01b03199081039290918290898203900890090892600160601b63ffffffff60c01b03199182910960020990565b9193905f945f945f94604081015190600163ffffffff60601b0360601b19828009600160601b63ffffffff60c01b031984800992600160601b63ffffffff60c01b03198086860960208501510991600160601b63ffffffff60c01b031983810381808585098a09089351600160601b63ffffffff60c01b03199086900990600160601b63ffffffff60c01b0319908282039082908b090890811585151694855f14610f3d575050505050600114610e42575b50505050565b929650909450919250600160601b63ffffffff60c01b031984800990600160601b63ffffffff60c01b0319908190819080096003600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319808880096003090894600160601b63ffffffff60c01b031990819083900960040994600160601b63ffffffff60c01b03198087600209600160601b63ffffffff60c01b0319908103908380090895600160601b63ffffffff60c01b031992839081908009600809600160601b63ffffffff60c01b03199081039290918290898203900890090892600160601b63ffffffff60c01b031991829109600209905f808080610e3c565b96999a5096509650985098505050600163ffffffff60601b0360601b1983800991600160601b63ffffffff60c01b03199083900991600160601b63ffffffff60c01b031990840991600160601b63ffffffff60c01b03198082600209600160601b63ffffffff60c01b03199081039085810381868009080897600160601b63ffffffff60c01b031993849109600160601b63ffffffff60c01b031990810392909182908a8203900890090893600160601b63ffffffff60c01b0319928391099009905f808080610e3c565b929180156110b3575f60c060209260405190848252848083015284604083015260608201527fffffffff00000001000000000000000000000000fffffffffffffffffffffffd6080820152600163ffffffff60601b0360601b1960a082015260055afa905f5191156109fc57600160601b63ffffffff60c01b031982800993600160601b63ffffffff60c01b03199085900993600160601b63ffffffff60c01b031992839109900990565b505090505f905f9056fea36474726f6e58221220aeebf2197829540d528200e8c76a01126043b9c22863bbb27a9679bcdba7f3d66c6578706572696d656e74616cf564736f6c634300081a0041",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
