{"abi":[{"type":"constructor","inputs":[{"name":"_pyth","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"BTC_USD_FEED","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_PRICE_AGE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"PRICE_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPayouts","inputs":[{"name":"marketId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"uint256[]","internalType":"uint256[]"}],"stateMutability":"view"},{"type":"function","name":"isResolved","inputs":[{"name":"marketId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"pyth","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IPyth"}],"stateMutability":"view"},{"type":"function","name":"resolutions","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"resolved","type":"bool","internalType":"bool"},{"name":"yesWins","type":"bool","internalType":"bool"},{"name":"settlePrice","type":"int64","internalType":"int64"},{"name":"settleTime","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"resolve","inputs":[{"name":"marketId","type":"bytes32","internalType":"bytes32"},{"name":"expiryTimestamp","type":"uint256","internalType":"uint256"},{"name":"strikePrice","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"resolveWithUpdate","inputs":[{"name":"marketId","type":"bytes32","internalType":"bytes32"},{"name":"expiryTimestamp","type":"uint256","internalType":"uint256"},{"name":"strikePrice","type":"uint256","internalType":"uint256"},{"name":"updateData","type":"bytes[]","internalType":"bytes[]"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"MarketResolved","inputs":[{"name":"marketId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"yesWins","type":"bool","indexed":false,"internalType":"bool"},{"name":"settlePrice","type":"int64","indexed":false,"internalType":"int64"},{"name":"strikePrice","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"MarketAlreadyResolved","inputs":[]},{"type":"error","name":"MarketNotExpired","inputs":[]},{"type":"error","name":"PriceUnavailable","inputs":[]}],"bytecode":{"object":"0x60a03461007957601f610b2438819003918201601f19168301916001600160401b0383118484101761007d5780849260209460405283398101031261007957516001600160a01b0381169081900361007957608052604051610a929081610092823960805181818160980152818161030501526106960152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080604081815260049182361015610015575f80fd5b5f925f3560e01c9182637e8bf08e146108a1575081639d7f7e8614610885578163b05f011e14610635578163b1b190361461028b578163c33f59d31461026d578163d4b06fb81461021a578163d54a70e8146100fb578163de61ece1146100cb575063f98d06f014610085575f80fd5b346100c757816003193601126100c757517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b5080fd5b9050346100f75760203660031901126100f7578160209360ff9235815280855220541690519015158152f35b8280fd5b839150346100c7576020806003193601126100f75781358352828152838320549260ff8416156101e857845192606084019084821067ffffffffffffffff8311176101d5575085526002835260ff828401948636873760081c16156101b357620f424061016784610a2b565b528061017284610a4c565b52909392915b83519485948186019282875251809352850193925b82811061019c57505050500390f35b83518552869550938101939281019260010161018d565b806101bd84610a2b565b52620f42406101cb84610a4c565b5290939291610178565b604190634e487b7160e01b5f525260245ffd5b845162461bcd60e51b8152808401839052600c60248201526b1b9bdd081c995cdbdb1d995960a21b6044820152606490fd5b9050346100f75760203660031901126100f7576080928291358152806020522090600182549201549080519260ff81161515845260ff8160081c161515602085015260101c60070b908301526060820152f35b5050346100c757816003193601126100c75760209051620f42408152f35b9050346100f75760603660031901126100f7578035916024906044359184865260209086825260ff8388205416610625578035421061061557825163052571af60e51b81527fe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b438682015261012c82820152946080866044817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa95861561060b578896610580575b5085519188600793840b131561057157868501805190919060030b8a811261044d57508751840b9263ffffffff8093511660060192831161043c57505091856103b660609795936103b07fe76d5296aa15458b12b8bcdd564f9d1ae191aa5fba77eedc064ea339c0e003719a98966109e1565b90610a09565b1215948051820b60018a8c8751936103cd85610901565b83855288888601928c84528187019283528d8701944286528152808a5220945115159160ff61ff0087549251151560081b16925160101b69ffffffffffffffff00001693169069ffffffffffffffffffff191617171783555191015551900b908251948552840152820152a280f35b634e487b7160e01b8b526011905289fd5b909150637fffffff19811461055f578903906006600383900b136104d0578751840b9263ffffffff9283166006039283116104bf57505091856104ba60609795936103b07fe76d5296aa15458b12b8bcdd564f9d1ae191aa5fba77eedc064ea339c0e003719a98966109e1565b6103b6565b601190634e487b7160e01b5f52525ffd5b8751840b9163ffffffff9081166005190190811161054c576104f1906109e1565b92831561053b57600160ff1b83145f1985141661043c575050918560609694927fe76d5296aa15458b12b8bcdd564f9d1ae191aa5fba77eedc064ea339c0e00371989694056103b6565b634e487b7160e01b8b526012905289fd5b50634e487b7160e01b5f90815260118452fd5b50634e487b7160e01b89526011825288fd5b50835163cb08be8160e01b8152fd5b9095506080813d608011610603575b8161059c6080938361091d565b810103126105ff578351906105b082610901565b80518060070b81036105fb5782528381015167ffffffffffffffff811681036105fb578483015284810151908160030b82036105fb576060918684015201516060820152945f61033d565b8980fd5b8780fd5b3d915061058f565b84513d8a823e3d90fd5b825163671eb0c560e01b81528590fd5b825163aa43cb2d60e01b81528590fd5b9190506080366003190112610848576024906064359067ffffffffffffffff8083116108485736602384011215610848578285013581811161084857848401938536918360051b01011161084857825163d47eed4560e01b815260209490917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031691908684806106d084868e840161093f565b0381865afa93841561087b575f9461084c575b50823b156108485761070d925f92858b895196879586948593631df3cbc560e31b8552840161093f565b03925af1801561083e5761082b575b50303b1561081d578683516358d8c81b60e11b81528735888201528635878201526044356044820152818160648183305af1801561082157610809575b5050803411610766578680f35b34033481116107f7578680808093335af1903d156107f1573d9081116107df5782519061079c601f8201601f191686018361091d565b815286843d92013e5b156107b05780808680f35b5162461bcd60e51b815292830152600d908201526c1c99599d5b990819985a5b1959609a1b6044820152606490fd5b634e487b7160e01b8752604186528487fd5b506107a5565b634e487b7160e01b8752601186528487fd5b610812906108d9565b61081d57865f610759565b8680fd5b85513d84823e3d90fd5b6108369197506108d9565b5f955f61071c565b84513d5f823e3d90fd5b5f80fd5b9093508681813d8311610874575b610864818361091d565b810103126108485751925f6106e3565b503d61085a565b86513d5f823e3d90fd5b8234610848575f366003190112610848576020905161012c8152f35b34610848575f36600319011261084857807fe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b4360209252f35b67ffffffffffffffff81116108ed57604052565b634e487b7160e01b5f52604160045260245ffd5b6080810190811067ffffffffffffffff8211176108ed57604052565b90601f8019910116810190811067ffffffffffffffff8211176108ed57604052565b9160208181850182865252604084019360408360051b82010194845f925b85841061096e575050505050505090565b90919293949596603f198282030184528735601e198436030181121561084857830186810191903567ffffffffffffffff81116108485780360383136108485787828280600196849695859652848401375f828201840152601f01601f191601019901979695919091019301919061095d565b63ffffffff16604d81116109f557600a0a90565b634e487b7160e01b5f52601160045260245ffd5b81810292915f8212600160ff1b8214166109f55781840514901517156109f557565b805115610a385760200190565b634e487b7160e01b5f52603260045260245ffd5b805160011015610a38576040019056fea264697066735822122064c3fd81239e2b5af141c134e510c2ca9442171f96a24fa25b2fa977df049e4c64736f6c63430008180033","sourceMap":"277:4214:20:-:0;;;;;;;;;;;;;-1:-1:-1;;277:4214:20;;;;-1:-1:-1;;;;;277:4214:20;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;277:4214:20;;;;;;;;1240:19;;277:4214;;;;;;;;1240:19;277:4214;;;;;;;;;;;;;;;;;-1:-1:-1;277:4214:20;;;;;;-1:-1:-1;277:4214:20;;;;;-1:-1:-1;277:4214:20","linkReferences":{}},"deployedBytecode":{"object":"0x6080604081815260049182361015610015575f80fd5b5f925f3560e01c9182637e8bf08e146108a1575081639d7f7e8614610885578163b05f011e14610635578163b1b190361461028b578163c33f59d31461026d578163d4b06fb81461021a578163d54a70e8146100fb578163de61ece1146100cb575063f98d06f014610085575f80fd5b346100c757816003193601126100c757517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b5080fd5b9050346100f75760203660031901126100f7578160209360ff9235815280855220541690519015158152f35b8280fd5b839150346100c7576020806003193601126100f75781358352828152838320549260ff8416156101e857845192606084019084821067ffffffffffffffff8311176101d5575085526002835260ff828401948636873760081c16156101b357620f424061016784610a2b565b528061017284610a4c565b52909392915b83519485948186019282875251809352850193925b82811061019c57505050500390f35b83518552869550938101939281019260010161018d565b806101bd84610a2b565b52620f42406101cb84610a4c565b5290939291610178565b604190634e487b7160e01b5f525260245ffd5b845162461bcd60e51b8152808401839052600c60248201526b1b9bdd081c995cdbdb1d995960a21b6044820152606490fd5b9050346100f75760203660031901126100f7576080928291358152806020522090600182549201549080519260ff81161515845260ff8160081c161515602085015260101c60070b908301526060820152f35b5050346100c757816003193601126100c75760209051620f42408152f35b9050346100f75760603660031901126100f7578035916024906044359184865260209086825260ff8388205416610625578035421061061557825163052571af60e51b81527fe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b438682015261012c82820152946080866044817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa95861561060b578896610580575b5085519188600793840b131561057157868501805190919060030b8a811261044d57508751840b9263ffffffff8093511660060192831161043c57505091856103b660609795936103b07fe76d5296aa15458b12b8bcdd564f9d1ae191aa5fba77eedc064ea339c0e003719a98966109e1565b90610a09565b1215948051820b60018a8c8751936103cd85610901565b83855288888601928c84528187019283528d8701944286528152808a5220945115159160ff61ff0087549251151560081b16925160101b69ffffffffffffffff00001693169069ffffffffffffffffffff191617171783555191015551900b908251948552840152820152a280f35b634e487b7160e01b8b526011905289fd5b909150637fffffff19811461055f578903906006600383900b136104d0578751840b9263ffffffff9283166006039283116104bf57505091856104ba60609795936103b07fe76d5296aa15458b12b8bcdd564f9d1ae191aa5fba77eedc064ea339c0e003719a98966109e1565b6103b6565b601190634e487b7160e01b5f52525ffd5b8751840b9163ffffffff9081166005190190811161054c576104f1906109e1565b92831561053b57600160ff1b83145f1985141661043c575050918560609694927fe76d5296aa15458b12b8bcdd564f9d1ae191aa5fba77eedc064ea339c0e00371989694056103b6565b634e487b7160e01b8b526012905289fd5b50634e487b7160e01b5f90815260118452fd5b50634e487b7160e01b89526011825288fd5b50835163cb08be8160e01b8152fd5b9095506080813d608011610603575b8161059c6080938361091d565b810103126105ff578351906105b082610901565b80518060070b81036105fb5782528381015167ffffffffffffffff811681036105fb578483015284810151908160030b82036105fb576060918684015201516060820152945f61033d565b8980fd5b8780fd5b3d915061058f565b84513d8a823e3d90fd5b825163671eb0c560e01b81528590fd5b825163aa43cb2d60e01b81528590fd5b9190506080366003190112610848576024906064359067ffffffffffffffff8083116108485736602384011215610848578285013581811161084857848401938536918360051b01011161084857825163d47eed4560e01b815260209490917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031691908684806106d084868e840161093f565b0381865afa93841561087b575f9461084c575b50823b156108485761070d925f92858b895196879586948593631df3cbc560e31b8552840161093f565b03925af1801561083e5761082b575b50303b1561081d578683516358d8c81b60e11b81528735888201528635878201526044356044820152818160648183305af1801561082157610809575b5050803411610766578680f35b34033481116107f7578680808093335af1903d156107f1573d9081116107df5782519061079c601f8201601f191686018361091d565b815286843d92013e5b156107b05780808680f35b5162461bcd60e51b815292830152600d908201526c1c99599d5b990819985a5b1959609a1b6044820152606490fd5b634e487b7160e01b8752604186528487fd5b506107a5565b634e487b7160e01b8752601186528487fd5b610812906108d9565b61081d57865f610759565b8680fd5b85513d84823e3d90fd5b6108369197506108d9565b5f955f61071c565b84513d5f823e3d90fd5b5f80fd5b9093508681813d8311610874575b610864818361091d565b810103126108485751925f6106e3565b503d61085a565b86513d5f823e3d90fd5b8234610848575f366003190112610848576020905161012c8152f35b34610848575f36600319011261084857807fe62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b4360209252f35b67ffffffffffffffff81116108ed57604052565b634e487b7160e01b5f52604160045260245ffd5b6080810190811067ffffffffffffffff8211176108ed57604052565b90601f8019910116810190811067ffffffffffffffff8211176108ed57604052565b9160208181850182865252604084019360408360051b82010194845f925b85841061096e575050505050505090565b90919293949596603f198282030184528735601e198436030181121561084857830186810191903567ffffffffffffffff81116108485780360383136108485787828280600196849695859652848401375f828201840152601f01601f191601019901979695919091019301919061095d565b63ffffffff16604d81116109f557600a0a90565b634e487b7160e01b5f52601160045260245ffd5b81810292915f8212600160ff1b8214166109f55781840514901517156109f557565b805115610a385760200190565b634e487b7160e01b5f52603260045260245ffd5b805160011015610a38576040019056fea264697066735822122064c3fd81239e2b5af141c134e510c2ca9442171f96a24fa25b2fa977df049e4c64736f6c63430008180033","sourceMap":"277:4214:20:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;305:27;-1:-1:-1;;;;;277:4214:20;;;;;;;;;;;;;;;;;;-1:-1:-1;;277:4214:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4249:1;277:4214;;;;;;;;;;;;;;;;;673:3;4290:24;;;:::i;:::-;277:4214;4340:14;;;;:::i;:::-;277:4214;4261:198;;;;;277:4214;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;277:4214:20;;;;;;;;;;;;4261:198;4385:14;;;;:::i;:::-;277:4214;673:3;4413:24;;;:::i;:::-;277:4214;4261:198;;;;;;277:4214;;;;;;;;;;;;;;;-1:-1:-1;;;277:4214:20;;;;;;;;;;;;;-1:-1:-1;;;277:4214:20;;;;;;;;;;;;;;;-1:-1:-1;;277:4214:20;;;;;;;;;;;;;;;;;;;944:49;;277:4214;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;673:3;277:4214;;;;;;;;;;;-1:-1:-1;;277:4214:20;;;;;;;;;;;;;;;;;;;;;;;;;;1676:66;;277:4214;;1756:15;:33;1752:64;;277:4214;;-1:-1:-1;;;1926:53:20;;377:66;1926:53;;;277:4214;555:3;277:4214;;;;;1926:53;277:4214;;;1926:4;-1:-1:-1;;;;;277:4214:20;1926:53;;;;;;;;;;;277:4214;;;;;;;;;;1993:19;;1989:50;;2200:13;;;277:4214;;2200:13;;277:4214;;;2200:18;;;277:4214;;;;;;;;;;;;;2287:1;277:4214;;;;;;2280:33;;;;2248:66;277:4214;2280:33;;;;2921:62;2280:33;;;;:::i;:::-;2248:66;;:::i;:::-;2674:34;;277:4214;;;;;;;;;;;;;;:::i;:::-;;;;2743:162;;;;277:4214;;;;2743:162;;;277:4214;;;2743:162;;;1756:15;;277:4214;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2921:62;277:4214;;;-1:-1:-1;;;277:4214:20;;;;;;;2196:453;277:4214;;-1:-1:-1;;;277:4214:20;;;;;;;2404:1;277:4214;;;;2393:12;2404:1;;277:4214;;;;;;;;;2404:1;277:4214;;;;;;2471:33;;;;2439:66;277:4214;2471:33;;;;2921:62;2471:33;;;;:::i;2439:66::-;2196:453;;277:4214;;;;;;;;;;;2389:250;277:4214;;;;;;;;;-1:-1:-1;;277:4214:20;;;;;;2590:33;;;:::i;:::-;277:4214;;;;;-1:-1:-1;;;277:4214:20;;-1:-1:-1;;277:4214:20;;;;;;;;;;;;;2921:62;277:4214;;;;2196:453;;277:4214;-1:-1:-1;;;277:4214:20;;;;;;;;-1:-1:-1;;;;277:4214:20;;;;;;;;;-1:-1:-1;;;;277:4214:20;;;;;;;1989:50;-1:-1:-1;277:4214:20;;-1:-1:-1;;;2021:18:20;;;1926:53;;;;;;;;;;;;;;;;;;:::i;:::-;;;277:4214;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1926:53;;;;277:4214;;;;;;;;1926:53;;;-1:-1:-1;1926:53:20;;;277:4214;;;;;;;;;1752:64;277:4214;;-1:-1:-1;;;1798:18:20;;277:4214;;1798:18;1676:66;277:4214;;-1:-1:-1;;;1719:23:20;;277:4214;;1719:23;277:4214;;;-1:-1:-1;277:4214:20;;-1:-1:-1;;277:4214:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3392:29:20;;277:4214;;;;3392:4;-1:-1:-1;;;;;277:4214:20;;;;;;3392:29;277:4214;;3392:29;;;;:::i;:::-;;;;;;;;;;;277:4214;3392:29;;;277:4214;3431:45;;;;;;;277:4214;;;;;;;;;;;;;;;;;3431:45;;;;;:::i;:::-;;;;;;;;;;;277:4214;3511:4;;:52;;;;277:4214;;;;;;3511:52;;277:4214;;3511:52;;;277:4214;;;;;;;;;;;;;3511:4;;277:4214;3511:4;;;:52;;;;;;;;277:4214;3607:9;;;;:15;3603:145;;277:4214;;;3603:145;3607:9;277:4214;3607:9;277:4214;;;;3652:10;;;;;;:43;;277:4214;;;;;;;;;;;;;;;;;;-1:-1:-1;;277:4214:20;;;;;:::i;:::-;;;;;;;;;;;;;3603:145;;277:4214;;;;;-1:-1:-1;;;277:4214:20;;;;;;;;;;;-1:-1:-1;;;277:4214:20;;;;;;;;-1:-1:-1;;;277:4214:20;;;;;;;;;;;;;-1:-1:-1;;;277:4214:20;;;;;;;;3511:52;;;;:::i;:::-;277:4214;;3511:52;;;;277:4214;;;;3511:52;277:4214;;;;;;;;;3431:45;;;;;;:::i;:::-;277:4214;3431:45;;;;;277:4214;;;;;;;;;3431:45;277:4214;;;3392:29;;;;;;;;;;;;;;;;;:::i;:::-;;;277:4214;;;;;3392:29;;;;;;;;;;277:4214;;;;;;;;;;;;;;;;-1:-1:-1;;277:4214:20;;;;;;;555:3;277:4214;;;;;;;;;-1:-1:-1;;277:4214:20;;;;;377:66;277:4214;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;1926:53;277:4214;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;277:4214:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;277:4214:20;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;4421:1;277:4214;;;;;;;:::o","linkReferences":{},"immutableReferences":{"37794":[{"start":152,"length":32},{"start":773,"length":32},{"start":1686,"length":32}]}},"methodIdentifiers":{"BTC_USD_FEED()":"7e8bf08e","MAX_PRICE_AGE()":"9d7f7e86","PRICE_SCALE()":"c33f59d3","getPayouts(bytes32)":"d54a70e8","isResolved(bytes32)":"de61ece1","pyth()":"f98d06f0","resolutions(bytes32)":"d4b06fb8","resolve(bytes32,uint256,uint256)":"b1b19036","resolveWithUpdate(bytes32,uint256,uint256,bytes[])":"b05f011e"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_pyth\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"MarketAlreadyResolved\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MarketNotExpired\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PriceUnavailable\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"marketId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"yesWins\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"int64\",\"name\":\"settlePrice\",\"type\":\"int64\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"strikePrice\",\"type\":\"uint256\"}],\"name\":\"MarketResolved\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"BTC_USD_FEED\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_PRICE_AGE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRICE_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"marketId\",\"type\":\"bytes32\"}],\"name\":\"getPayouts\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"marketId\",\"type\":\"bytes32\"}],\"name\":\"isResolved\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pyth\",\"outputs\":[{\"internalType\":\"contract IPyth\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"resolutions\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"resolved\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"yesWins\",\"type\":\"bool\"},{\"internalType\":\"int64\",\"name\":\"settlePrice\",\"type\":\"int64\"},{\"internalType\":\"uint256\",\"name\":\"settleTime\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"marketId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"expiryTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"strikePrice\",\"type\":\"uint256\"}],\"name\":\"resolve\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"marketId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"expiryTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"strikePrice\",\"type\":\"uint256\"},{\"internalType\":\"bytes[]\",\"name\":\"updateData\",\"type\":\"bytes[]\"}],\"name\":\"resolveWithUpdate\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"resolve(bytes32,uint256,uint256)\":{\"params\":{\"expiryTimestamp\":\"When the market expires\",\"marketId\":\"Unique market identifier\",\"strikePrice\":\"Strike price in USD with 6 decimals (e.g., 70000_000000 = $70,000)\"}},\"resolveWithUpdate(bytes32,uint256,uint256,bytes[])\":{\"params\":{\"updateData\":\"Pyth price update data (from Hermes API)\"}}},\"title\":\"PythResolver\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"MAX_PRICE_AGE()\":{\"notice\":\"Max age of Pyth price for resolution (5 minutes)\"},\"PRICE_SCALE()\":{\"notice\":\"Price scale factor (Turbo uses 6 decimals internally)\"},\"getPayouts(bytes32)\":{\"notice\":\"Get payout array for CTF [YES_payout, NO_payout] scaled to PRICE_SCALE\"},\"isResolved(bytes32)\":{\"notice\":\"Check if a market is resolved\"},\"resolutions(bytes32)\":{\"notice\":\"marketId => resolution\"},\"resolve(bytes32,uint256,uint256)\":{\"notice\":\"Resolve a market after expiry. Anyone can call.\"},\"resolveWithUpdate(bytes32,uint256,uint256,bytes[])\":{\"notice\":\"Resolve with a fresh Pyth price update (caller pays update fee).\"}},\"notice\":\"Resolves BTC prediction markets using Pyth Network price feeds.         At market expiry, reads BTC/USD price and determines YES/NO payout.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/PythResolver.sol\":\"PythResolver\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":forge-std/=lib/forge-std/src/\"],\"viaIR\":true},\"sources\":{\"src/PythResolver.sol\":{\"keccak256\":\"0x18c1dfe6b2581aa66ca00e6774a1b3e89b00eb82a13fcdb17d94d33d4a9b5044\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://330482e97c17225cf4e449f0cb2804ef497d533b13cfe0e1b1624e1ec43048df\",\"dweb:/ipfs/QmTa4QjB5UGmgGt5dnRhaPhq3kQsYUD2GzfSQKYRALy3U4\"]},\"src/interfaces/IPyth.sol\":{\"keccak256\":\"0x71de6de644b0c7d5ee38f0460ee5ea603be3c4a5eed6a959259ef4340a8d9da9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63854934744502bbaaa925e15d811e1aef39fcdfa8cd7da7258037e6b5e38d7a\",\"dweb:/ipfs/QmSgGDfMAVCzXhBuK4AAJtPS8NahmGPm5bHeKw2yNxdGM7\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"_pyth","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"MarketAlreadyResolved"},{"inputs":[],"type":"error","name":"MarketNotExpired"},{"inputs":[],"type":"error","name":"PriceUnavailable"},{"inputs":[{"internalType":"bytes32","name":"marketId","type":"bytes32","indexed":true},{"internalType":"bool","name":"yesWins","type":"bool","indexed":false},{"internalType":"int64","name":"settlePrice","type":"int64","indexed":false},{"internalType":"uint256","name":"strikePrice","type":"uint256","indexed":false}],"type":"event","name":"MarketResolved","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"BTC_USD_FEED","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_PRICE_AGE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRICE_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"marketId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getPayouts","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}]},{"inputs":[{"internalType":"bytes32","name":"marketId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"isResolved","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pyth","outputs":[{"internalType":"contract IPyth","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function","name":"resolutions","outputs":[{"internalType":"bool","name":"resolved","type":"bool"},{"internalType":"bool","name":"yesWins","type":"bool"},{"internalType":"int64","name":"settlePrice","type":"int64"},{"internalType":"uint256","name":"settleTime","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"marketId","type":"bytes32"},{"internalType":"uint256","name":"expiryTimestamp","type":"uint256"},{"internalType":"uint256","name":"strikePrice","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"resolve"},{"inputs":[{"internalType":"bytes32","name":"marketId","type":"bytes32"},{"internalType":"uint256","name":"expiryTimestamp","type":"uint256"},{"internalType":"uint256","name":"strikePrice","type":"uint256"},{"internalType":"bytes[]","name":"updateData","type":"bytes[]"}],"stateMutability":"payable","type":"function","name":"resolveWithUpdate"}],"devdoc":{"kind":"dev","methods":{"resolve(bytes32,uint256,uint256)":{"params":{"expiryTimestamp":"When the market expires","marketId":"Unique market identifier","strikePrice":"Strike price in USD with 6 decimals (e.g., 70000_000000 = $70,000)"}},"resolveWithUpdate(bytes32,uint256,uint256,bytes[])":{"params":{"updateData":"Pyth price update data (from Hermes API)"}}},"version":1},"userdoc":{"kind":"user","methods":{"MAX_PRICE_AGE()":{"notice":"Max age of Pyth price for resolution (5 minutes)"},"PRICE_SCALE()":{"notice":"Price scale factor (Turbo uses 6 decimals internally)"},"getPayouts(bytes32)":{"notice":"Get payout array for CTF [YES_payout, NO_payout] scaled to PRICE_SCALE"},"isResolved(bytes32)":{"notice":"Check if a market is resolved"},"resolutions(bytes32)":{"notice":"marketId => resolution"},"resolve(bytes32,uint256,uint256)":{"notice":"Resolve a market after expiry. Anyone can call."},"resolveWithUpdate(bytes32,uint256,uint256,bytes[])":{"notice":"Resolve with a fresh Pyth price update (caller pays update fee)."}},"version":1}},"settings":{"remappings":["forge-std/=lib/forge-std/src/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"src/PythResolver.sol":"PythResolver"},"evmVersion":"cancun","libraries":{},"viaIR":true},"sources":{"src/PythResolver.sol":{"keccak256":"0x18c1dfe6b2581aa66ca00e6774a1b3e89b00eb82a13fcdb17d94d33d4a9b5044","urls":["bzz-raw://330482e97c17225cf4e449f0cb2804ef497d533b13cfe0e1b1624e1ec43048df","dweb:/ipfs/QmTa4QjB5UGmgGt5dnRhaPhq3kQsYUD2GzfSQKYRALy3U4"],"license":"MIT"},"src/interfaces/IPyth.sol":{"keccak256":"0x71de6de644b0c7d5ee38f0460ee5ea603be3c4a5eed6a959259ef4340a8d9da9","urls":["bzz-raw://63854934744502bbaaa925e15d811e1aef39fcdfa8cd7da7258037e6b5e38d7a","dweb:/ipfs/QmSgGDfMAVCzXhBuK4AAJtPS8NahmGPm5bHeKw2yNxdGM7"],"license":"MIT"}},"version":1},"id":20}