@vaubanworks/sdk 0.0.0-stage → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abi.js","sourceRoot":"","sources":["../src/abi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const vaubanVaultBytecode: "0x60806040526001600a5534801562000015575f80fd5b5060405162002d7638038062002d76833981016040819052620000389162000157565b6001600160a01b03831615806200005657506001600160a01b038216155b15620000755760405163d92e233d60e01b815260040160405180910390fd5b5f80546001600160a01b0319166001600160a01b038581169182178355600280549186167fffffff0000000000000000ff000000000000000000000000000000000000000090921691909117600160a81b6001600160401b038616021790556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36040516001600160a01b038316907fe3162ce634ee4c6e39c868aa130f44228244e7469c577a852dd02e9fd9cb59c3905f90a2505050620001ad565b80516001600160a01b038116811462000152575f80fd5b919050565b5f805f606084860312156200016a575f80fd5b62000175846200013b565b925062000185602085016200013b565b60408501519092506001600160401b0381168114620001a2575f80fd5b809150509250925092565b612bbb80620001bb5f395ff3fe608060405260043610610191575f3560e01c806373d872d9116100dc578063affed0e011610087578063c4d252f511610062578063c4d252f514610643578063e30c397814610662578063f2fde38b14610681578063f5ff5c76146106a0575f80fd5b8063affed0e0146105e2578063b61d27f6146105f7578063bcf685ed14610624575f80fd5b80637cc96380116100b75780637cc963801461055b5780638da5cb5b1461057b5780639a66303e146105b1575f80fd5b806373d872d9146104bc57806379ba50971461050e5780637aa2749e14610522575f80fd5b8063477809b11161013c5780636717cca3116101175780636717cca31461046a5780636a28f000146104895780636e371f6c1461049d575f80fd5b8063477809b1146103dd5780634815ff171461043757806362a5af3b14610456575f80fd5b806308ccb0161161016c57806308ccb016146102335780631e6a41ea1461026c57806320d7bec114610329575f80fd5b806301ba36ba1461019c578063054f7d9c146101d1578063061af89f14610212575f80fd5b3661019857005b5f80fd5b3480156101a7575f80fd5b506101bb6101b636600461236a565b6106bf565b6040516101c89190612430565b60405180910390f35b3480156101dc575f80fd5b506002546102029074010000000000000000000000000000000000000000900460ff1681565b60405190151581526020016101c8565b34801561021d575f80fd5b5061023161022c366004612449565b61095a565b005b34801561023e575f80fd5b5061020261024d3660046124d9565b600560209081525f928352604080842090915290825290205460ff1681565b348015610277575f80fd5b506102e561028636600461250c565b60086020525f90815260409020805460019091015467ffffffffffffffff80831692680100000000000000008104909116916fffffffffffffffffffffffffffffffff7001000000000000000000000000000000009092048216911684565b6040805167ffffffffffffffff95861681529490931660208501526fffffffffffffffffffffffffffffffff918216928401929092521660608201526080016101c8565b348015610334575f80fd5b5061039c61034336600461250c565b60076020525f908152604090208054600182015460029092015460ff8216926fffffffffffffffffffffffffffffffff610100909304831692818116927001000000000000000000000000000000009092048116911685565b6040805195151586526fffffffffffffffffffffffffffffffff9485166020870152928416928501929092528216606084015216608082015260a0016101c8565b3480156103e8575f80fd5b506104196103f7366004612527565b60096020525f90815260409020805460019091015467ffffffffffffffff1682565b6040805192835267ffffffffffffffff9091166020830152016101c8565b348015610442575f80fd5b506101bb61045136600461253e565b610a8a565b348015610461575f80fd5b50610231610bbb565b348015610475575f80fd5b50610231610484366004612596565b610c74565b348015610494575f80fd5b50610231610d0e565b3480156104a8575f80fd5b506102316104b73660046125ca565b610da9565b3480156104c7575f80fd5b506002546104f5907501000000000000000000000000000000000000000000900467ffffffffffffffff1681565b60405167ffffffffffffffff90911681526020016101c8565b348015610519575f80fd5b50610231611055565b34801561052d575f80fd5b5061054d61053c36600461250c565b60066020525f908152604090205481565b6040519081526020016101c8565b348015610566575f80fd5b506003546104f59067ffffffffffffffff1681565b348015610586575f80fd5b505f54610599906001600160a01b031681565b6040516001600160a01b0390911681526020016101c8565b3480156105bc575f80fd5b506105d06105cb36600461253e565b611107565b60405160ff90911681526020016101c8565b3480156105ed575f80fd5b5061054d60045481565b348015610602575f80fd5b5061061661061136600461253e565b6111dc565b6040516101c892919061265e565b34801561062f575f80fd5b5061023161063e36600461250c565b6114bb565b34801561064e575f80fd5b5061023161065d366004612527565b6115a4565b34801561066d575f80fd5b50600154610599906001600160a01b031681565b34801561068c575f80fd5b5061023161069b36600461250c565b6116a0565b3480156106ab575f80fd5b50600254610599906001600160a01b031681565b6060600a546001146106fd576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600a819055546001600160a01b0316331480159061072757505f546001600160a01b03163314155b1561075e576040517f0d9ab13f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8681526009602090815260408083208151808301909252805482526001015467ffffffffffffffff1691810182905291036107ce576040517fab812d61000000000000000000000000000000000000000000000000000000008152600481018890526024015b60405180910390fd5b858585856040516020016107e594939291906126bd565b60405160208183030381529060405280519060200120815f015114610839576040517fd193a639000000000000000000000000000000000000000000000000000000008152600481018890526024016107c5565b806020015167ffffffffffffffff1642101561089a5760208101516040517f88c6b9be0000000000000000000000000000000000000000000000000000000081526004810189905267ffffffffffffffff90911660248201526044016107c5565b60025474010000000000000000000000000000000000000000900460ff16156108ef576040517f528ac5eb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6108fa86858561174b565b5f87815260096020526040812090815560010180547fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000016905561094a868686866109448282611a63565b8c611be5565b6001600a55979650505050505050565b5f546001600160a01b0316331461099d576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0382165f90815260076020526040902081906109c08282612718565b50506001600160a01b0382167f1da15b421511e6907467bcfbabb6e83a9759da64fb3a35ea439656391ab003a06109fa602084018461288e565b610a0a60408501602086016128a9565b610a1a60608601604087016128a9565b610a2a60808701606088016128a9565b610a3a60a08801608089016128a9565b6040805195151586526fffffffffffffffffffffffffffffffff9485166020870152928416928501929092528216606084015216608082015260a00160405180910390a2610a86611d20565b5050565b5f546060906001600160a01b03163314610ad0576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600a54600114610b0c576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600a819055505f856001600160a01b0316858585604051610b309291906128c4565b5f6040518083038185875af1925050503d805f8114610b6a576040519150601f19603f3d011682016040523d82523d5f602084013e610b6f565b606091505b509250905080610bad57816040517fa5fa8d2b0000000000000000000000000000000000000000000000000000000081526004016107c59190612430565b506001600a55949350505050565b5f546001600160a01b03163314610bfe576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600280547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1674010000000000000000000000000000000000000000179055604051600181527f59800d968fcce138300a0019410b4b75041610d65b3cdc5f31656b03ed14912e906020015b60405180910390a1565b5f546001600160a01b03163314610cb7576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600280547fffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffff16750100000000000000000000000000000000000000000067ffffffffffffffff841602179055610d0b611d20565b50565b5f546001600160a01b03163314610d51576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600280547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690556040515f81527f59800d968fcce138300a0019410b4b75041610d65b3cdc5f31656b03ed14912e90602001610c6a565b5f546001600160a01b03163314610dec576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b306001600160a01b03851603610e2e576040517f7849ef1d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b82811015611046576001600160a01b0385165f90815260056020526040812083151591868685818110610e6557610e656128d3565b9050602002016020810190610e7a9190612900565b7fffffffff0000000000000000000000000000000000000000000000000000000016815260208101919091526040015f205460ff1615151461103e576001600160a01b0385165f9081526005602052604081208391868685818110610ee157610ee16128d3565b9050602002016020810190610ef69190612900565b7fffffffff0000000000000000000000000000000000000000000000000000000016815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169115159190911790558115610f88576001600160a01b0385165f9081526006602052604081208054909190610f7f90612946565b90915550610fb2565b6001600160a01b0385165f9081526006602052604081208054909190610fad9061297d565b909155505b838382818110610fc457610fc46128d3565b9050602002016020810190610fd99190612900565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916856001600160a01b03167f0c2c6fc761095d974d40ecb258ea42c933a4da10e67273b94992758442ff970f84604051611035911515815260200190565b60405180910390a35b600101610e30565b5061104f611d20565b50505050565b6001546001600160a01b03163314611099576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805460405133926001600160a01b03909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80547fffffffffffffffffffffffff00000000000000000000000000000000000000009081163317909155600180549091169055565b6002545f9074010000000000000000000000000000000000000000900460ff161561115e576040517f528ac5eb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61116985848461174b565b5f6111748484611a63565b90508415611189576111865f86611d83565b50505b801561119c576111998682611d83565b50505b6111a65f86612111565b806111c0575080158015906111c057506111c08682612111565b156111cf5760019150506111d4565b5f9150505b949350505050565b5f6060600a5460011461121b576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600a819055546001600160a01b03163314611264576040517f0d9ab13f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60025474010000000000000000000000000000000000000000900460ff16156112b9576040517f528ac5eb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6112c486858561174b565b5f6112cf8585611a63565b90506112db5f87612111565b806112f5575080158015906112f557506112f58782612111565b1561149957851561130d5761130a5f87611d83565b50505b80156113205761131d8782611d83565b50505b6004805430915f61133083612946565b90915550604080516001600160a01b0390931660208401528201526060016040516020818303038152906040528051906020012092505f600260159054906101000a900467ffffffffffffffff164261138991906129b1565b60408051808201909152909150806113a78a8a8a8a606086016126bd565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00181529181528151602092830120835267ffffffffffffffff858116938301939093525f88815260098352819020845181559390910151600190930180547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001693909216929092179055516001600160a01b0389169085907f825c8ee59c047b7a11d339901f383dac821b053cef51f44d176d21152f16aa5d9061147a908b908b908b9088906129d2565b60405180910390a3505060408051602081019091525f815290506114ab565b6114a787878787855f611be5565b9150505b6001600a55909590945092505050565b5f546001600160a01b031633146114fe576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b03811661153e576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600280547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383169081179091556040517fe3162ce634ee4c6e39c868aa130f44228244e7469c577a852dd02e9fd9cb59c3905f90a2610d0b611d20565b5f546001600160a01b031633146115e7576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8181526009602052604081206001015467ffffffffffffffff16900361163d576040517fab812d61000000000000000000000000000000000000000000000000000000008152600481018290526024016107c5565b5f8181526009602052604080822082815560010180547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001690555182917fbaa1eb22f2a492ba1a5fea61b8df4d27c6c8b5f3971e63bb58fa14ff72eedb7091a250565b5f546001600160a01b031633146116e3576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038381169182179092555f8054604051929316917f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e227009190a350565b306001600160a01b0384160361178d576040517f7849ef1d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6117988383612168565b6001600160a01b0385165f9081526005602090815260408083207fffffffff000000000000000000000000000000000000000000000000000000008516845290915290205490915060ff1661184c576040517f727969cf0000000000000000000000000000000000000000000000000000000081526001600160a01b03851660048201527fffffffff00000000000000000000000000000000000000000000000000000000821660248201526044016107c5565b7fffffffff0000000000000000000000000000000000000000000000000000000081167f095ea7b30000000000000000000000000000000000000000000000000000000014806118dd57507fffffffff0000000000000000000000000000000000000000000000000000000081167f3950935100000000000000000000000000000000000000000000000000000000145b156119bd575f806118f18460048188612a06565b8101906118fe9190612a2d565b915091507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff810361195b576040517f0a8958a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0382165f9081526006602052604081205490036119b6576040517f74b4cd0c0000000000000000000000000000000000000000000000000000000081526001600160a01b03831660048201526024016107c5565b505061104f565b7f5dd34b9b000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000082160161104f575f611a148360048187612a06565b810190611a219190612a57565b9150508015611a5c576040517f0a8958a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b5f80611a6f8484612168565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fa9059cbb000000000000000000000000000000000000000000000000000000001480611b0257507fffffffff0000000000000000000000000000000000000000000000000000000081167f095ea7b300000000000000000000000000000000000000000000000000000000145b80611b4e57507fffffffff0000000000000000000000000000000000000000000000000000000081167f3950935100000000000000000000000000000000000000000000000000000000145b15611b7657611b608360048187612a06565b810190611b6d9190612a2d565b9250611bde9050565b7fdc478d23000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000821601611bde57611bcc8360048187612a06565b810190611bd99190612a8e565b935050505b5092915050565b60608515611bf757611bf75f8761220d565b8215611c0757611c07878461220d565b5f876001600160a01b0316878787604051611c239291906128c4565b5f6040518083038185875af1925050503d805f8114611c5d576040519150601f19603f3d011682016040523d82523d5f602084013e611c62565b606091505b509250905080611ca057816040517fa5fa8d2b0000000000000000000000000000000000000000000000000000000081526004016107c59190612430565b611caa8686612168565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916886001600160a01b03167f44d639f7b5d1bebd75d05b4ecac3f6e4fe7d58a893341aba34cae6613e8ea1128986604051611d0d929190918252602082015260400190565b60405180910390a3509695505050505050565b600380545f90611d399067ffffffffffffffff16612acc565b825467ffffffffffffffff9182166101009390930a83810292021916179091556040517f6e396392ff3042c11f8cfbf4bd0247855ea728053f31a430df9522b044fefd57905f90a2565b6001600160a01b0382165f908152600760209081526040808320815160a081018352815460ff811615158083526fffffffffffffffffffffffffffffffff6101009092048216958301959095526001830154808216948301949094527001000000000000000000000000000000009093048316606082015260029091015490911660808201528291611e4c576040517f708e7bd80000000000000000000000000000000000000000000000000000000081526001600160a01b03861660048201526024016107c5565b80602001516fffffffffffffffffffffffffffffffff16841115611ecc5760208101516040517f296fc2480000000000000000000000000000000000000000000000000000000081526001600160a01b0387166004820152602481018690526fffffffffffffffffffffffffffffffff90911660448201526064016107c5565b6001600160a01b0385165f9081526008602090815260408083208151608081018352815467ffffffffffffffff808216835268010000000000000000820416948201949094527001000000000000000000000000000000009093046fffffffffffffffffffffffffffffffff908116928401929092526001015416606082015290611f59610e1042612af2565b90505f611f696201518042612af2565b90505f878367ffffffffffffffff16855f015167ffffffffffffffff1614611f91575f611f97565b84604001515b6fffffffffffffffffffffffffffffffff16611fb39190612b2a565b90505f888367ffffffffffffffff16866020015167ffffffffffffffff1614611fdc575f611fe2565b85606001515b6fffffffffffffffffffffffffffffffff16611ffe9190612b2a565b905085604001516fffffffffffffffffffffffffffffffff168211156120805760408087015190517f95d5193f0000000000000000000000000000000000000000000000000000000081526001600160a01b038c166004820152602481018490526fffffffffffffffffffffffffffffffff90911660448201526064016107c5565b85606001516fffffffffffffffffffffffffffffffff168111156121005760608601516040517f52bcf2c90000000000000000000000000000000000000000000000000000000081526001600160a01b038c166004820152602481018390526fffffffffffffffffffffffffffffffff90911660448201526064016107c5565b9096509450505050505b9250929050565b6001600160a01b0382165f908152600760205260408120600201546fffffffffffffffffffffffffffffffff16801580159061215e5750806fffffffffffffffffffffffffffffffff1683115b9150505b92915050565b5f81810361217757505f612162565b60048210156121a757507fffffffff00000000000000000000000000000000000000000000000000000000612162565b6121b460045f8486612a06565b6121bd91612b3d565b90507fffffffff00000000000000000000000000000000000000000000000000000000811661216257507fffffffff00000000000000000000000000000000000000000000000000000000612162565b5f806122198484611d83565b915091506040518060800160405280610e10426122369190612af2565b67ffffffffffffffff1681526020016122526201518042612af2565b67ffffffffffffffff90811682526fffffffffffffffffffffffffffffffff9485166020808401919091529385166040928301526001600160a01b039096165f9081526008845281902082518154948401519284015186167001000000000000000000000000000000000292881668010000000000000000027fffffffffffffffffffffffffffffffff00000000000000000000000000000000958616919098161796909617841617855560600151600190940180549490921693169290921790915550565b6001600160a01b0381168114610d0b575f80fd5b5f8083601f84011261233c575f80fd5b50813567ffffffffffffffff811115612353575f80fd5b60208301915083602082850101111561210a575f80fd5b5f805f805f6080868803121561237e575f80fd5b85359450602086013561239081612318565b935060408601359250606086013567ffffffffffffffff8111156123b2575f80fd5b6123be8882890161232c565b969995985093965092949392505050565b5f81518084525f5b818110156123f3576020818501810151868301820152016123d7565b505f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f61244260208301846123cf565b9392505050565b5f8082840360c081121561245b575f80fd5b833561246681612318565b925060a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082011215612497575f80fd5b506020830190509250929050565b80357fffffffff00000000000000000000000000000000000000000000000000000000811681146124d4575f80fd5b919050565b5f80604083850312156124ea575f80fd5b82356124f581612318565b9150612503602084016124a5565b90509250929050565b5f6020828403121561251c575f80fd5b813561244281612318565b5f60208284031215612537575f80fd5b5035919050565b5f805f8060608587031215612551575f80fd5b843561255c81612318565b935060208501359250604085013567ffffffffffffffff81111561257e575f80fd5b61258a8782880161232c565b95989497509550505050565b5f602082840312156125a6575f80fd5b813567ffffffffffffffff81168114612442575f80fd5b8015158114610d0b575f80fd5b5f805f80606085870312156125dd575f80fd5b84356125e881612318565b9350602085013567ffffffffffffffff80821115612604575f80fd5b818701915087601f830112612617575f80fd5b813581811115612625575f80fd5b8860208260051b8501011115612639575f80fd5b6020830195508094505050506040850135612653816125bd565b939692955090935050565b828152604060208201525f6111d460408301846123cf565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b6001600160a01b0385168152836020820152606060408201525f6126e5606083018486612676565b9695505050505050565b6fffffffffffffffffffffffffffffffff81168114610d0b575f80fd5b5f8135612162816126ef565b8135612723816125bd565b81547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00811691151560ff1691821783556020840135612761816126ef565b70ffffffffffffffffffffffffffffffff008160081b16837fffffffffffffffffffffffffffffff00000000000000000000000000000000008416171784555050506001810160408301356127b5816126ef565b81547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff82161782555060608301356127fe816126ef565b81546fffffffffffffffffffffffffffffffff16608091821b7fffffffffffffffffffffffffffffffff000000000000000000000000000000001617909155610a869061284c90840161270c565b600283016fffffffffffffffffffffffffffffffff82167fffffffffffffffffffffffffffffffff000000000000000000000000000000008254161781555050565b5f6020828403121561289e575f80fd5b8135612442816125bd565b5f602082840312156128b9575f80fd5b8135612442816126ef565b818382375f9101908152919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215612910575f80fd5b612442826124a5565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361297657612976612919565b5060010190565b5f8161298b5761298b612919565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b67ffffffffffffffff818116838216019080821115611bde57611bde612919565b848152606060208201525f6129eb606083018587612676565b905067ffffffffffffffff8316604083015295945050505050565b5f8085851115612a14575f80fd5b83861115612a20575f80fd5b5050820193919092039150565b5f8060408385031215612a3e575f80fd5b8235612a4981612318565b946020939093013593505050565b5f8060408385031215612a68575f80fd5b8235612a7381612318565b91506020830135612a83816125bd565b809150509250929050565b5f805f60608486031215612aa0575f80fd5b8335612aab81612318565b92506020840135612abb81612318565b929592945050506040919091013590565b5f67ffffffffffffffff808316818103612ae857612ae8612919565b6001019392505050565b5f82612b25577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b8082018082111561216257612162612919565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015612b7d5780818660040360031b1b83161692505b50509291505056fea264697066735822122032564ebb4007f6e40f223bb0a4912dc737876a188466496a202e7aac50e4132064736f6c63430008180033";
2
+ //# sourceMappingURL=bytecode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bytecode.d.ts","sourceRoot":"","sources":["../src/bytecode.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,mBAAmB,EAAG,gvtBAAyvtB,CAAC"}
@@ -0,0 +1,3 @@
1
+ // generated by scripts/abi.py — do not edit
2
+ export const vaubanVaultBytecode = "0x60806040526001600a5534801562000015575f80fd5b5060405162002d7638038062002d76833981016040819052620000389162000157565b6001600160a01b03831615806200005657506001600160a01b038216155b15620000755760405163d92e233d60e01b815260040160405180910390fd5b5f80546001600160a01b0319166001600160a01b038581169182178355600280549186167fffffff0000000000000000ff000000000000000000000000000000000000000090921691909117600160a81b6001600160401b038616021790556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36040516001600160a01b038316907fe3162ce634ee4c6e39c868aa130f44228244e7469c577a852dd02e9fd9cb59c3905f90a2505050620001ad565b80516001600160a01b038116811462000152575f80fd5b919050565b5f805f606084860312156200016a575f80fd5b62000175846200013b565b925062000185602085016200013b565b60408501519092506001600160401b0381168114620001a2575f80fd5b809150509250925092565b612bbb80620001bb5f395ff3fe608060405260043610610191575f3560e01c806373d872d9116100dc578063affed0e011610087578063c4d252f511610062578063c4d252f514610643578063e30c397814610662578063f2fde38b14610681578063f5ff5c76146106a0575f80fd5b8063affed0e0146105e2578063b61d27f6146105f7578063bcf685ed14610624575f80fd5b80637cc96380116100b75780637cc963801461055b5780638da5cb5b1461057b5780639a66303e146105b1575f80fd5b806373d872d9146104bc57806379ba50971461050e5780637aa2749e14610522575f80fd5b8063477809b11161013c5780636717cca3116101175780636717cca31461046a5780636a28f000146104895780636e371f6c1461049d575f80fd5b8063477809b1146103dd5780634815ff171461043757806362a5af3b14610456575f80fd5b806308ccb0161161016c57806308ccb016146102335780631e6a41ea1461026c57806320d7bec114610329575f80fd5b806301ba36ba1461019c578063054f7d9c146101d1578063061af89f14610212575f80fd5b3661019857005b5f80fd5b3480156101a7575f80fd5b506101bb6101b636600461236a565b6106bf565b6040516101c89190612430565b60405180910390f35b3480156101dc575f80fd5b506002546102029074010000000000000000000000000000000000000000900460ff1681565b60405190151581526020016101c8565b34801561021d575f80fd5b5061023161022c366004612449565b61095a565b005b34801561023e575f80fd5b5061020261024d3660046124d9565b600560209081525f928352604080842090915290825290205460ff1681565b348015610277575f80fd5b506102e561028636600461250c565b60086020525f90815260409020805460019091015467ffffffffffffffff80831692680100000000000000008104909116916fffffffffffffffffffffffffffffffff7001000000000000000000000000000000009092048216911684565b6040805167ffffffffffffffff95861681529490931660208501526fffffffffffffffffffffffffffffffff918216928401929092521660608201526080016101c8565b348015610334575f80fd5b5061039c61034336600461250c565b60076020525f908152604090208054600182015460029092015460ff8216926fffffffffffffffffffffffffffffffff610100909304831692818116927001000000000000000000000000000000009092048116911685565b6040805195151586526fffffffffffffffffffffffffffffffff9485166020870152928416928501929092528216606084015216608082015260a0016101c8565b3480156103e8575f80fd5b506104196103f7366004612527565b60096020525f90815260409020805460019091015467ffffffffffffffff1682565b6040805192835267ffffffffffffffff9091166020830152016101c8565b348015610442575f80fd5b506101bb61045136600461253e565b610a8a565b348015610461575f80fd5b50610231610bbb565b348015610475575f80fd5b50610231610484366004612596565b610c74565b348015610494575f80fd5b50610231610d0e565b3480156104a8575f80fd5b506102316104b73660046125ca565b610da9565b3480156104c7575f80fd5b506002546104f5907501000000000000000000000000000000000000000000900467ffffffffffffffff1681565b60405167ffffffffffffffff90911681526020016101c8565b348015610519575f80fd5b50610231611055565b34801561052d575f80fd5b5061054d61053c36600461250c565b60066020525f908152604090205481565b6040519081526020016101c8565b348015610566575f80fd5b506003546104f59067ffffffffffffffff1681565b348015610586575f80fd5b505f54610599906001600160a01b031681565b6040516001600160a01b0390911681526020016101c8565b3480156105bc575f80fd5b506105d06105cb36600461253e565b611107565b60405160ff90911681526020016101c8565b3480156105ed575f80fd5b5061054d60045481565b348015610602575f80fd5b5061061661061136600461253e565b6111dc565b6040516101c892919061265e565b34801561062f575f80fd5b5061023161063e36600461250c565b6114bb565b34801561064e575f80fd5b5061023161065d366004612527565b6115a4565b34801561066d575f80fd5b50600154610599906001600160a01b031681565b34801561068c575f80fd5b5061023161069b36600461250c565b6116a0565b3480156106ab575f80fd5b50600254610599906001600160a01b031681565b6060600a546001146106fd576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600a819055546001600160a01b0316331480159061072757505f546001600160a01b03163314155b1561075e576040517f0d9ab13f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8681526009602090815260408083208151808301909252805482526001015467ffffffffffffffff1691810182905291036107ce576040517fab812d61000000000000000000000000000000000000000000000000000000008152600481018890526024015b60405180910390fd5b858585856040516020016107e594939291906126bd565b60405160208183030381529060405280519060200120815f015114610839576040517fd193a639000000000000000000000000000000000000000000000000000000008152600481018890526024016107c5565b806020015167ffffffffffffffff1642101561089a5760208101516040517f88c6b9be0000000000000000000000000000000000000000000000000000000081526004810189905267ffffffffffffffff90911660248201526044016107c5565b60025474010000000000000000000000000000000000000000900460ff16156108ef576040517f528ac5eb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6108fa86858561174b565b5f87815260096020526040812090815560010180547fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000016905561094a868686866109448282611a63565b8c611be5565b6001600a55979650505050505050565b5f546001600160a01b0316331461099d576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0382165f90815260076020526040902081906109c08282612718565b50506001600160a01b0382167f1da15b421511e6907467bcfbabb6e83a9759da64fb3a35ea439656391ab003a06109fa602084018461288e565b610a0a60408501602086016128a9565b610a1a60608601604087016128a9565b610a2a60808701606088016128a9565b610a3a60a08801608089016128a9565b6040805195151586526fffffffffffffffffffffffffffffffff9485166020870152928416928501929092528216606084015216608082015260a00160405180910390a2610a86611d20565b5050565b5f546060906001600160a01b03163314610ad0576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600a54600114610b0c576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600a819055505f856001600160a01b0316858585604051610b309291906128c4565b5f6040518083038185875af1925050503d805f8114610b6a576040519150601f19603f3d011682016040523d82523d5f602084013e610b6f565b606091505b509250905080610bad57816040517fa5fa8d2b0000000000000000000000000000000000000000000000000000000081526004016107c59190612430565b506001600a55949350505050565b5f546001600160a01b03163314610bfe576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600280547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1674010000000000000000000000000000000000000000179055604051600181527f59800d968fcce138300a0019410b4b75041610d65b3cdc5f31656b03ed14912e906020015b60405180910390a1565b5f546001600160a01b03163314610cb7576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600280547fffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffff16750100000000000000000000000000000000000000000067ffffffffffffffff841602179055610d0b611d20565b50565b5f546001600160a01b03163314610d51576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600280547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690556040515f81527f59800d968fcce138300a0019410b4b75041610d65b3cdc5f31656b03ed14912e90602001610c6a565b5f546001600160a01b03163314610dec576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b306001600160a01b03851603610e2e576040517f7849ef1d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b82811015611046576001600160a01b0385165f90815260056020526040812083151591868685818110610e6557610e656128d3565b9050602002016020810190610e7a9190612900565b7fffffffff0000000000000000000000000000000000000000000000000000000016815260208101919091526040015f205460ff1615151461103e576001600160a01b0385165f9081526005602052604081208391868685818110610ee157610ee16128d3565b9050602002016020810190610ef69190612900565b7fffffffff0000000000000000000000000000000000000000000000000000000016815260208101919091526040015f2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169115159190911790558115610f88576001600160a01b0385165f9081526006602052604081208054909190610f7f90612946565b90915550610fb2565b6001600160a01b0385165f9081526006602052604081208054909190610fad9061297d565b909155505b838382818110610fc457610fc46128d3565b9050602002016020810190610fd99190612900565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916856001600160a01b03167f0c2c6fc761095d974d40ecb258ea42c933a4da10e67273b94992758442ff970f84604051611035911515815260200190565b60405180910390a35b600101610e30565b5061104f611d20565b50505050565b6001546001600160a01b03163314611099576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f805460405133926001600160a01b03909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80547fffffffffffffffffffffffff00000000000000000000000000000000000000009081163317909155600180549091169055565b6002545f9074010000000000000000000000000000000000000000900460ff161561115e576040517f528ac5eb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61116985848461174b565b5f6111748484611a63565b90508415611189576111865f86611d83565b50505b801561119c576111998682611d83565b50505b6111a65f86612111565b806111c0575080158015906111c057506111c08682612111565b156111cf5760019150506111d4565b5f9150505b949350505050565b5f6060600a5460011461121b576040517fed3ba6a600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600a819055546001600160a01b03163314611264576040517f0d9ab13f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60025474010000000000000000000000000000000000000000900460ff16156112b9576040517f528ac5eb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6112c486858561174b565b5f6112cf8585611a63565b90506112db5f87612111565b806112f5575080158015906112f557506112f58782612111565b1561149957851561130d5761130a5f87611d83565b50505b80156113205761131d8782611d83565b50505b6004805430915f61133083612946565b90915550604080516001600160a01b0390931660208401528201526060016040516020818303038152906040528051906020012092505f600260159054906101000a900467ffffffffffffffff164261138991906129b1565b60408051808201909152909150806113a78a8a8a8a606086016126bd565b604080518083037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe00181529181528151602092830120835267ffffffffffffffff858116938301939093525f88815260098352819020845181559390910151600190930180547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001693909216929092179055516001600160a01b0389169085907f825c8ee59c047b7a11d339901f383dac821b053cef51f44d176d21152f16aa5d9061147a908b908b908b9088906129d2565b60405180910390a3505060408051602081019091525f815290506114ab565b6114a787878787855f611be5565b9150505b6001600a55909590945092505050565b5f546001600160a01b031633146114fe576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b03811661153e576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600280547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383169081179091556040517fe3162ce634ee4c6e39c868aa130f44228244e7469c577a852dd02e9fd9cb59c3905f90a2610d0b611d20565b5f546001600160a01b031633146115e7576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8181526009602052604081206001015467ffffffffffffffff16900361163d576040517fab812d61000000000000000000000000000000000000000000000000000000008152600481018290526024016107c5565b5f8181526009602052604080822082815560010180547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001690555182917fbaa1eb22f2a492ba1a5fea61b8df4d27c6c8b5f3971e63bb58fa14ff72eedb7091a250565b5f546001600160a01b031633146116e3576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038381169182179092555f8054604051929316917f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e227009190a350565b306001600160a01b0384160361178d576040517f7849ef1d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6117988383612168565b6001600160a01b0385165f9081526005602090815260408083207fffffffff000000000000000000000000000000000000000000000000000000008516845290915290205490915060ff1661184c576040517f727969cf0000000000000000000000000000000000000000000000000000000081526001600160a01b03851660048201527fffffffff00000000000000000000000000000000000000000000000000000000821660248201526044016107c5565b7fffffffff0000000000000000000000000000000000000000000000000000000081167f095ea7b30000000000000000000000000000000000000000000000000000000014806118dd57507fffffffff0000000000000000000000000000000000000000000000000000000081167f3950935100000000000000000000000000000000000000000000000000000000145b156119bd575f806118f18460048188612a06565b8101906118fe9190612a2d565b915091507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff810361195b576040517f0a8958a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0382165f9081526006602052604081205490036119b6576040517f74b4cd0c0000000000000000000000000000000000000000000000000000000081526001600160a01b03831660048201526024016107c5565b505061104f565b7f5dd34b9b000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000082160161104f575f611a148360048187612a06565b810190611a219190612a57565b9150508015611a5c576040517f0a8958a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b5f80611a6f8484612168565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fa9059cbb000000000000000000000000000000000000000000000000000000001480611b0257507fffffffff0000000000000000000000000000000000000000000000000000000081167f095ea7b300000000000000000000000000000000000000000000000000000000145b80611b4e57507fffffffff0000000000000000000000000000000000000000000000000000000081167f3950935100000000000000000000000000000000000000000000000000000000145b15611b7657611b608360048187612a06565b810190611b6d9190612a2d565b9250611bde9050565b7fdc478d23000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000821601611bde57611bcc8360048187612a06565b810190611bd99190612a8e565b935050505b5092915050565b60608515611bf757611bf75f8761220d565b8215611c0757611c07878461220d565b5f876001600160a01b0316878787604051611c239291906128c4565b5f6040518083038185875af1925050503d805f8114611c5d576040519150601f19603f3d011682016040523d82523d5f602084013e611c62565b606091505b509250905080611ca057816040517fa5fa8d2b0000000000000000000000000000000000000000000000000000000081526004016107c59190612430565b611caa8686612168565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916886001600160a01b03167f44d639f7b5d1bebd75d05b4ecac3f6e4fe7d58a893341aba34cae6613e8ea1128986604051611d0d929190918252602082015260400190565b60405180910390a3509695505050505050565b600380545f90611d399067ffffffffffffffff16612acc565b825467ffffffffffffffff9182166101009390930a83810292021916179091556040517f6e396392ff3042c11f8cfbf4bd0247855ea728053f31a430df9522b044fefd57905f90a2565b6001600160a01b0382165f908152600760209081526040808320815160a081018352815460ff811615158083526fffffffffffffffffffffffffffffffff6101009092048216958301959095526001830154808216948301949094527001000000000000000000000000000000009093048316606082015260029091015490911660808201528291611e4c576040517f708e7bd80000000000000000000000000000000000000000000000000000000081526001600160a01b03861660048201526024016107c5565b80602001516fffffffffffffffffffffffffffffffff16841115611ecc5760208101516040517f296fc2480000000000000000000000000000000000000000000000000000000081526001600160a01b0387166004820152602481018690526fffffffffffffffffffffffffffffffff90911660448201526064016107c5565b6001600160a01b0385165f9081526008602090815260408083208151608081018352815467ffffffffffffffff808216835268010000000000000000820416948201949094527001000000000000000000000000000000009093046fffffffffffffffffffffffffffffffff908116928401929092526001015416606082015290611f59610e1042612af2565b90505f611f696201518042612af2565b90505f878367ffffffffffffffff16855f015167ffffffffffffffff1614611f91575f611f97565b84604001515b6fffffffffffffffffffffffffffffffff16611fb39190612b2a565b90505f888367ffffffffffffffff16866020015167ffffffffffffffff1614611fdc575f611fe2565b85606001515b6fffffffffffffffffffffffffffffffff16611ffe9190612b2a565b905085604001516fffffffffffffffffffffffffffffffff168211156120805760408087015190517f95d5193f0000000000000000000000000000000000000000000000000000000081526001600160a01b038c166004820152602481018490526fffffffffffffffffffffffffffffffff90911660448201526064016107c5565b85606001516fffffffffffffffffffffffffffffffff168111156121005760608601516040517f52bcf2c90000000000000000000000000000000000000000000000000000000081526001600160a01b038c166004820152602481018390526fffffffffffffffffffffffffffffffff90911660448201526064016107c5565b9096509450505050505b9250929050565b6001600160a01b0382165f908152600760205260408120600201546fffffffffffffffffffffffffffffffff16801580159061215e5750806fffffffffffffffffffffffffffffffff1683115b9150505b92915050565b5f81810361217757505f612162565b60048210156121a757507fffffffff00000000000000000000000000000000000000000000000000000000612162565b6121b460045f8486612a06565b6121bd91612b3d565b90507fffffffff00000000000000000000000000000000000000000000000000000000811661216257507fffffffff00000000000000000000000000000000000000000000000000000000612162565b5f806122198484611d83565b915091506040518060800160405280610e10426122369190612af2565b67ffffffffffffffff1681526020016122526201518042612af2565b67ffffffffffffffff90811682526fffffffffffffffffffffffffffffffff9485166020808401919091529385166040928301526001600160a01b039096165f9081526008845281902082518154948401519284015186167001000000000000000000000000000000000292881668010000000000000000027fffffffffffffffffffffffffffffffff00000000000000000000000000000000958616919098161796909617841617855560600151600190940180549490921693169290921790915550565b6001600160a01b0381168114610d0b575f80fd5b5f8083601f84011261233c575f80fd5b50813567ffffffffffffffff811115612353575f80fd5b60208301915083602082850101111561210a575f80fd5b5f805f805f6080868803121561237e575f80fd5b85359450602086013561239081612318565b935060408601359250606086013567ffffffffffffffff8111156123b2575f80fd5b6123be8882890161232c565b969995985093965092949392505050565b5f81518084525f5b818110156123f3576020818501810151868301820152016123d7565b505f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081525f61244260208301846123cf565b9392505050565b5f8082840360c081121561245b575f80fd5b833561246681612318565b925060a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082011215612497575f80fd5b506020830190509250929050565b80357fffffffff00000000000000000000000000000000000000000000000000000000811681146124d4575f80fd5b919050565b5f80604083850312156124ea575f80fd5b82356124f581612318565b9150612503602084016124a5565b90509250929050565b5f6020828403121561251c575f80fd5b813561244281612318565b5f60208284031215612537575f80fd5b5035919050565b5f805f8060608587031215612551575f80fd5b843561255c81612318565b935060208501359250604085013567ffffffffffffffff81111561257e575f80fd5b61258a8782880161232c565b95989497509550505050565b5f602082840312156125a6575f80fd5b813567ffffffffffffffff81168114612442575f80fd5b8015158114610d0b575f80fd5b5f805f80606085870312156125dd575f80fd5b84356125e881612318565b9350602085013567ffffffffffffffff80821115612604575f80fd5b818701915087601f830112612617575f80fd5b813581811115612625575f80fd5b8860208260051b8501011115612639575f80fd5b6020830195508094505050506040850135612653816125bd565b939692955090935050565b828152604060208201525f6111d460408301846123cf565b81835281816020850137505f602082840101525f60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b6001600160a01b0385168152836020820152606060408201525f6126e5606083018486612676565b9695505050505050565b6fffffffffffffffffffffffffffffffff81168114610d0b575f80fd5b5f8135612162816126ef565b8135612723816125bd565b81547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00811691151560ff1691821783556020840135612761816126ef565b70ffffffffffffffffffffffffffffffff008160081b16837fffffffffffffffffffffffffffffff00000000000000000000000000000000008416171784555050506001810160408301356127b5816126ef565b81547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff82161782555060608301356127fe816126ef565b81546fffffffffffffffffffffffffffffffff16608091821b7fffffffffffffffffffffffffffffffff000000000000000000000000000000001617909155610a869061284c90840161270c565b600283016fffffffffffffffffffffffffffffffff82167fffffffffffffffffffffffffffffffff000000000000000000000000000000008254161781555050565b5f6020828403121561289e575f80fd5b8135612442816125bd565b5f602082840312156128b9575f80fd5b8135612442816126ef565b818382375f9101908152919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215612910575f80fd5b612442826124a5565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361297657612976612919565b5060010190565b5f8161298b5761298b612919565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b67ffffffffffffffff818116838216019080821115611bde57611bde612919565b848152606060208201525f6129eb606083018587612676565b905067ffffffffffffffff8316604083015295945050505050565b5f8085851115612a14575f80fd5b83861115612a20575f80fd5b5050820193919092039150565b5f8060408385031215612a3e575f80fd5b8235612a4981612318565b946020939093013593505050565b5f8060408385031215612a68575f80fd5b8235612a7381612318565b91506020830135612a83816125bd565b809150509250929050565b5f805f60608486031215612aa0575f80fd5b8335612aab81612318565b92506020840135612abb81612318565b929592945050506040919091013590565b5f67ffffffffffffffff808316818103612ae857612ae8612919565b6001019392505050565b5f82612b25577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b8082018082111561216257612162612919565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015612b7d5780818660040360031b1b83161692505b50509291505056fea264697066735822122032564ebb4007f6e40f223bb0a4912dc737876a188466496a202e7aac50e4132064736f6c63430008180033";
3
+ //# sourceMappingURL=bytecode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bytecode.js","sourceRoot":"","sources":["../src/bytecode.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,MAAM,CAAC,MAAM,mBAAmB,GAAG,gvtBAAyvtB,CAAC"}
@@ -0,0 +1,101 @@
1
+ import { type Account, type Address, type Chain, type Hex, type PublicClient, type Transport, type WalletClient } from "viem";
2
+ import { vaubanVaultAbi } from "./abi.ts";
3
+ export { vaubanVaultAbi };
4
+ export declare const robinhoodChain: Chain;
5
+ export type Rampart = "keep" | "curtain" | "ditch" | "gate" | "access" | "call";
6
+ /** A refusal from one of the ramparts, decoded from the vault's custom error. */
7
+ export declare class Refused extends Error {
8
+ readonly rampart: Rampart;
9
+ readonly code: string;
10
+ readonly args: readonly unknown[];
11
+ readonly reason: string;
12
+ constructor(rampart: Rampart, code: string, args: readonly unknown[], reason: string);
13
+ }
14
+ /** Turn any viem error from a vault call into a `Refused`, or rethrow. */
15
+ export declare function toRefused(err: unknown): never;
16
+ export type Ruling = {
17
+ kind: "passed";
18
+ hash: Hex;
19
+ } | {
20
+ kind: "held";
21
+ hash: Hex;
22
+ id: Hex;
23
+ eta: Date;
24
+ };
25
+ export type Call = {
26
+ target: Address;
27
+ value?: bigint;
28
+ data?: Hex;
29
+ };
30
+ export type Limits = {
31
+ perTx: bigint;
32
+ perHour: bigint;
33
+ perDay: bigint;
34
+ holdAbove?: bigint;
35
+ };
36
+ export declare const NATIVE: "0x0000000000000000000000000000000000000000";
37
+ type Clients = {
38
+ vault: Address;
39
+ public: PublicClient<Transport, Chain>;
40
+ wallet: WalletClient<Transport, Chain, Account>;
41
+ };
42
+ /**
43
+ * The agent's side. Every move goes through the vault; refusals come back as `Refused`
44
+ * with the rampart that stopped it, before any gas is spent (simulated first).
45
+ */
46
+ export declare class VaubanAgent {
47
+ readonly c: Clients;
48
+ constructor(c: Clients);
49
+ /** Dry run: "pass" | "hold", or throws `Refused`. No transaction. */
50
+ rule({ target, value, data }: Call): Promise<"pass" | "hold">;
51
+ execute({ target, value, data }: Call): Promise<Ruling>;
52
+ release(id: Hex, { target, value, data }: Call): Promise<Hex>;
53
+ /** ERC-20 transfer through the vault. */
54
+ transferToken(token: Address, to: Address, amount: bigint): Promise<Ruling>;
55
+ /** Bounded ERC-20 approve through the vault (unlimited is always refused). */
56
+ approveToken(token: Address, spender: Address, amount: bigint): Promise<Ruling>;
57
+ }
58
+ /** The owner's side: draw the sheet, freeze, cancel. */
59
+ export declare class VaubanOwner {
60
+ readonly c: Clients;
61
+ constructor(c: Clients);
62
+ private send;
63
+ allow(target: Address, selectors: Hex[]): Promise<`0x${string}`>;
64
+ disallow(target: Address, selectors: Hex[]): Promise<`0x${string}`>;
65
+ setLimits(asset: Address, l: Limits): Promise<`0x${string}`>;
66
+ setGateDelay(seconds: bigint): Promise<`0x${string}`>;
67
+ freeze(): Promise<`0x${string}`>;
68
+ unfreeze(): Promise<`0x${string}`>;
69
+ cancel(id: Hex): Promise<`0x${string}`>;
70
+ withdraw(to: Address, value: bigint): Promise<`0x${string}`>;
71
+ }
72
+ export type HeldMove = {
73
+ id: Hex;
74
+ target: Address;
75
+ value: bigint;
76
+ data: Hex;
77
+ eta: Date;
78
+ block: bigint;
79
+ };
80
+ export type VaultState = {
81
+ owner: Address;
82
+ agent: Address;
83
+ frozen: boolean;
84
+ gateDelay: bigint;
85
+ revision: bigint;
86
+ balance: bigint;
87
+ };
88
+ export declare function readState(pub: PublicClient, vault: Address): Promise<VaultState>;
89
+ export type Listing = {
90
+ target: Address;
91
+ selectors: Hex[];
92
+ };
93
+ /**
94
+ * The curtain as it stands: every (target, selector) pair currently on the allowlist,
95
+ * rebuilt from `Listed` events and confirmed against `allowed()` so a pruned log range
96
+ * can never show a stale entry.
97
+ */
98
+ export declare function listAllowed(pub: PublicClient, vault: Address, step?: bigint): Promise<Listing[]>;
99
+ /** Moves still waiting at the gate (held, not yet released or cancelled). */
100
+ export declare function listHeld(pub: PublicClient, vault: Address, fromBlock?: bigint): Promise<HeldMove[]>;
101
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1,256 @@
1
+ import { BaseError, ContractFunctionRevertedError, decodeEventLog, defineChain, encodeFunctionData, formatEther, parseAbi, zeroAddress, zeroHash, } from "viem";
2
+ import { vaubanVaultAbi } from "./abi.js";
3
+ export { vaubanVaultAbi };
4
+ export const robinhoodChain = defineChain({
5
+ id: 4663,
6
+ name: "Robinhood Chain",
7
+ nativeCurrency: { name: "Ether", symbol: "ETH", decimals: 18 },
8
+ rpcUrls: { default: { http: ["https://rpc.mainnet.chain.robinhood.com"] } },
9
+ });
10
+ /** A refusal from one of the ramparts, decoded from the vault's custom error. */
11
+ export class Refused extends Error {
12
+ rampart;
13
+ code;
14
+ args;
15
+ reason;
16
+ constructor(rampart, code, args, reason) {
17
+ super(`${rampart.toUpperCase()} refused: ${reason}`);
18
+ this.name = "Refused";
19
+ this.rampart = rampart;
20
+ this.code = code;
21
+ this.args = args;
22
+ this.reason = reason;
23
+ }
24
+ }
25
+ const RAMPART = {
26
+ KeepSealed: "keep",
27
+ CurtainNotListed: "curtain",
28
+ CurtainSelfCall: "curtain",
29
+ CurtainUnlimitedApproval: "curtain",
30
+ CurtainUnknownSpender: "curtain",
31
+ DitchUncapped: "ditch",
32
+ DitchPerTx: "ditch",
33
+ DitchPerHour: "ditch",
34
+ DitchPerDay: "ditch",
35
+ GateUnknown: "gate",
36
+ GateNotYet: "gate",
37
+ GateMismatch: "gate",
38
+ NotAgent: "access",
39
+ NotOwner: "access",
40
+ Reentrant: "access",
41
+ ZeroAddress: "access",
42
+ CallFailed: "call",
43
+ };
44
+ function explain(code, a) {
45
+ const eth = a[0] === "0x0000000000000000000000000000000000000000";
46
+ const asset = (x) => (x === "0x0000000000000000000000000000000000000000" ? "ETH" : String(x));
47
+ // Token decimals are not known here, so only ETH amounts are scaled.
48
+ const amt = (x) => (eth && typeof x === "bigint" ? formatEther(x) : String(x));
49
+ switch (code) {
50
+ case "KeepSealed": return "the fort is frozen by the owner";
51
+ case "CurtainNotListed": return `${a[0]} selector ${a[1]} is not on the allowlist`;
52
+ case "CurtainSelfCall": return "the agent may not call the vault itself";
53
+ case "CurtainUnlimitedApproval": return "unlimited approvals are never allowed";
54
+ case "CurtainUnknownSpender": return `spender ${a[0]} is not a listed contract`;
55
+ case "DitchUncapped": return `no limits set for ${asset(a[0])}, so it cannot move`;
56
+ case "DitchPerTx": return `${amt(a[1])} over per-tx cap ${amt(a[2])} for ${asset(a[0])}`;
57
+ case "DitchPerHour": return `would reach ${amt(a[1])}, over hourly cap ${amt(a[2])} for ${asset(a[0])}`;
58
+ case "DitchPerDay": return `would reach ${amt(a[1])}, over daily cap ${amt(a[2])} for ${asset(a[0])}`;
59
+ case "GateUnknown": return `nothing held under ${a[0]}`;
60
+ case "GateNotYet": return `held until ${new Date(Number(a[1]) * 1000).toISOString()}`;
61
+ case "GateMismatch": return "release payload differs from what was held";
62
+ case "NotAgent": return "caller is not the vault's agent";
63
+ case "NotOwner": return "caller is not the owner";
64
+ case "CallFailed": return `target call reverted (${a[0]})`;
65
+ default: return code;
66
+ }
67
+ }
68
+ /** Turn any viem error from a vault call into a `Refused`, or rethrow. */
69
+ export function toRefused(err) {
70
+ if (err instanceof BaseError) {
71
+ const rev = err.walk((e) => e instanceof ContractFunctionRevertedError);
72
+ if (rev instanceof ContractFunctionRevertedError && rev.data?.errorName) {
73
+ const code = rev.data.errorName;
74
+ const args = rev.data.args ?? [];
75
+ throw new Refused(RAMPART[code] ?? "call", code, args, explain(code, args));
76
+ }
77
+ }
78
+ throw err;
79
+ }
80
+ export const NATIVE = "0x0000000000000000000000000000000000000000";
81
+ /**
82
+ * The agent's side. Every move goes through the vault; refusals come back as `Refused`
83
+ * with the rampart that stopped it, before any gas is spent (simulated first).
84
+ */
85
+ export class VaubanAgent {
86
+ c;
87
+ constructor(c) {
88
+ this.c = c;
89
+ }
90
+ /** Dry run: "pass" | "hold", or throws `Refused`. No transaction. */
91
+ async rule({ target, value = 0n, data = "0x" }) {
92
+ try {
93
+ const r = await this.c.public.readContract({
94
+ address: this.c.vault, abi: vaubanVaultAbi, functionName: "rule", args: [target, value, data],
95
+ });
96
+ return r === 0 ? "pass" : "hold";
97
+ }
98
+ catch (e) {
99
+ return toRefused(e);
100
+ }
101
+ }
102
+ async execute({ target, value = 0n, data = "0x" }) {
103
+ let request;
104
+ try {
105
+ ({ request } = await this.c.public.simulateContract({
106
+ account: this.c.wallet.account, address: this.c.vault, abi: vaubanVaultAbi,
107
+ functionName: "execute", args: [target, value, data],
108
+ }));
109
+ }
110
+ catch (e) {
111
+ return toRefused(e);
112
+ }
113
+ const hash = await this.c.wallet.writeContract(request);
114
+ const rcpt = await this.c.public.waitForTransactionReceipt({ hash });
115
+ if (rcpt.status !== "success")
116
+ throw new Error(`execute reverted on-chain: ${hash}`);
117
+ for (const log of rcpt.logs) {
118
+ if (log.address.toLowerCase() !== this.c.vault.toLowerCase())
119
+ continue;
120
+ try {
121
+ const ev = decodeEventLog({ abi: vaubanVaultAbi, data: log.data, topics: log.topics });
122
+ if (ev.eventName === "HeldAtGate") {
123
+ return { kind: "held", hash, id: ev.args.id, eta: new Date(Number(ev.args.eta) * 1000) };
124
+ }
125
+ }
126
+ catch {
127
+ /* not ours */
128
+ }
129
+ }
130
+ return { kind: "passed", hash };
131
+ }
132
+ async release(id, { target, value = 0n, data = "0x" }) {
133
+ let request;
134
+ try {
135
+ ({ request } = await this.c.public.simulateContract({
136
+ account: this.c.wallet.account, address: this.c.vault, abi: vaubanVaultAbi,
137
+ functionName: "release", args: [id, target, value, data],
138
+ }));
139
+ }
140
+ catch (e) {
141
+ return toRefused(e);
142
+ }
143
+ const hash = await this.c.wallet.writeContract(request);
144
+ const rcpt = await this.c.public.waitForTransactionReceipt({ hash });
145
+ if (rcpt.status !== "success")
146
+ throw new Error(`release reverted on-chain: ${hash}`);
147
+ return hash;
148
+ }
149
+ /** ERC-20 transfer through the vault. */
150
+ transferToken(token, to, amount) {
151
+ return this.execute({ target: token, data: encodeFunctionData({ abi: erc20, functionName: "transfer", args: [to, amount] }) });
152
+ }
153
+ /** Bounded ERC-20 approve through the vault (unlimited is always refused). */
154
+ approveToken(token, spender, amount) {
155
+ return this.execute({ target: token, data: encodeFunctionData({ abi: erc20, functionName: "approve", args: [spender, amount] }) });
156
+ }
157
+ }
158
+ const erc20 = parseAbi([
159
+ "function transfer(address,uint256) returns (bool)",
160
+ "function approve(address,uint256) returns (bool)",
161
+ ]);
162
+ /** The owner's side: draw the sheet, freeze, cancel. */
163
+ export class VaubanOwner {
164
+ c;
165
+ constructor(c) {
166
+ this.c = c;
167
+ }
168
+ async send(functionName, args) {
169
+ let request;
170
+ try {
171
+ ({ request } = await this.c.public.simulateContract({
172
+ account: this.c.wallet.account, address: this.c.vault, abi: vaubanVaultAbi,
173
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
174
+ functionName: functionName, args: args,
175
+ }));
176
+ }
177
+ catch (e) {
178
+ return toRefused(e);
179
+ }
180
+ const hash = await this.c.wallet.writeContract(request);
181
+ const rcpt = await this.c.public.waitForTransactionReceipt({ hash });
182
+ if (rcpt.status !== "success")
183
+ throw new Error(`${functionName} reverted on-chain: ${hash}`);
184
+ return hash;
185
+ }
186
+ allow(target, selectors) { return this.send("setAllowed", [target, selectors, true]); }
187
+ disallow(target, selectors) { return this.send("setAllowed", [target, selectors, false]); }
188
+ setLimits(asset, l) {
189
+ return this.send("setLimits", [asset, { set: true, perTx: l.perTx, perHour: l.perHour, perDay: l.perDay, holdAbove: l.holdAbove ?? 0n }]);
190
+ }
191
+ setGateDelay(seconds) { return this.send("setGateDelay", [seconds]); }
192
+ freeze() { return this.send("freeze", []); }
193
+ unfreeze() { return this.send("unfreeze", []); }
194
+ cancel(id) { return this.send("cancel", [id]); }
195
+ withdraw(to, value) { return this.send("ownerExecute", [to, value, "0x"]); }
196
+ }
197
+ export async function readState(pub, vault) {
198
+ const base = { address: vault, abi: vaubanVaultAbi };
199
+ const [owner, agent, frozen, gateDelay, revision, balance] = await Promise.all([
200
+ pub.readContract({ ...base, functionName: "owner" }),
201
+ pub.readContract({ ...base, functionName: "agent" }),
202
+ pub.readContract({ ...base, functionName: "frozen" }),
203
+ pub.readContract({ ...base, functionName: "gateDelay" }),
204
+ pub.readContract({ ...base, functionName: "revision" }),
205
+ pub.getBalance({ address: vault }),
206
+ ]);
207
+ return { owner, agent, frozen, gateDelay: BigInt(gateDelay), revision: BigInt(revision), balance };
208
+ }
209
+ /**
210
+ * The curtain as it stands: every (target, selector) pair currently on the allowlist,
211
+ * rebuilt from `Listed` events and confirmed against `allowed()` so a pruned log range
212
+ * can never show a stale entry.
213
+ */
214
+ export async function listAllowed(pub, vault, step = 10000000n) {
215
+ // Walk back from head and stop at the constructor's OwnershipTransferred(0x0, owner).
216
+ // The public Robinhood RPC caps one log query at 10M blocks.
217
+ // One event per query: the public RPC allows 10M blocks for a single topic, only 100k for several.
218
+ // cacheTime 0: viem otherwise reuses a head up to pollingInterval old and misses a just-mined Listed
219
+ const head = await pub.getBlockNumber({ cacheTime: 0 });
220
+ const logs = [];
221
+ for (let to = head; to >= 0n;) {
222
+ const from = to >= step ? to - step + 1n : 0n;
223
+ logs.push(...(await pub.getContractEvents({ address: vault, abi: vaubanVaultAbi, eventName: "Listed", fromBlock: from, toBlock: to })));
224
+ const born = await pub.getContractEvents({ address: vault, abi: vaubanVaultAbi, eventName: "OwnershipTransferred", args: { from: zeroAddress }, fromBlock: from, toBlock: to });
225
+ if (born.length || from === 0n)
226
+ break;
227
+ to = from - 1n;
228
+ }
229
+ logs.sort((a, b) => (a.blockNumber === b.blockNumber ? a.logIndex - b.logIndex : a.blockNumber < b.blockNumber ? -1 : 1));
230
+ const seen = new Map();
231
+ for (const l of logs)
232
+ seen.set(`${l.args.target}:${l.args.selector}`, { target: l.args.target, selector: l.args.selector });
233
+ const pairs = [...seen.values()];
234
+ const live = await Promise.all(pairs.map((p) => pub.readContract({ address: vault, abi: vaubanVaultAbi, functionName: "allowed", args: [p.target, p.selector] })));
235
+ const byTarget = new Map();
236
+ pairs.forEach((p, i) => {
237
+ if (!live[i])
238
+ return;
239
+ byTarget.set(p.target, [...(byTarget.get(p.target) ?? []), p.selector].sort());
240
+ });
241
+ return [...byTarget].map(([target, selectors]) => ({ target, selectors }));
242
+ }
243
+ /** Moves still waiting at the gate (held, not yet released or cancelled). */
244
+ export async function listHeld(pub, vault, fromBlock = 0n) {
245
+ const logs = await pub.getContractEvents({ address: vault, abi: vaubanVaultAbi, eventName: "HeldAtGate", fromBlock });
246
+ const out = [];
247
+ for (const l of logs) {
248
+ const id = l.args.id;
249
+ const h = await pub.readContract({ address: vault, abi: vaubanVaultAbi, functionName: "held", args: [id] });
250
+ if (h[1] === 0n || h[0] === zeroHash)
251
+ continue;
252
+ out.push({ id, target: l.args.target, value: l.args.value, data: l.args.data, eta: new Date(Number(l.args.eta) * 1000), block: l.blockNumber });
253
+ }
254
+ return out;
255
+ }
256
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,64 @@
1
1
  {
2
2
  "name": "@vaubanworks/sdk",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
3
+ "version": "0.2.0",
4
+ "description": "TypeScript SDK for Vauban vaults on Robinhood Chain: an agent that is checked against caps, an allowlist, a time-lock and a kill switch on every call. Not audited.",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
12
+ },
13
+ "./bytecode": {
14
+ "types": "./dist/bytecode.d.ts",
15
+ "import": "./dist/bytecode.js"
16
+ },
17
+ "./package.json": "./package.json"
18
+ },
19
+ "files": [
20
+ "dist",
21
+ "README.md",
22
+ "LICENSE"
23
+ ],
24
+ "sideEffects": false,
25
+ "engines": {
26
+ "node": ">=20"
27
+ },
28
+ "scripts": {
29
+ "typecheck": "tsc",
30
+ "test": "node --experimental-strip-types --no-warnings --test test/*.test.ts",
31
+ "abi": "python3 ../scripts/abi.py",
32
+ "build": "rm -rf dist && tsc -p tsconfig.build.json",
33
+ "prepublishOnly": "npm run build && npm run typecheck"
34
+ },
35
+ "keywords": [
36
+ "vauban",
37
+ "vault",
38
+ "agent",
39
+ "robinhood-chain",
40
+ "viem",
41
+ "spend-limits"
42
+ ],
43
+ "homepage": "https://vauban.works",
44
+ "repository": {
45
+ "type": "git",
46
+ "url": "git+https://github.com/vaubandev/vauban.git",
47
+ "directory": "sdk"
48
+ },
49
+ "bugs": {
50
+ "url": "https://github.com/vaubandev/vauban/issues"
51
+ },
52
+ "license": "MIT",
53
+ "dependencies": {
54
+ "viem": "^2.57.12"
55
+ },
56
+ "devDependencies": {
57
+ "@types/node": "^26.6.5",
58
+ "esbuild": "^0.28.2",
59
+ "typescript": "^7.0.2"
60
+ },
61
+ "publishConfig": {
62
+ "access": "public"
63
+ }
64
+ }