cs-codex-dist-tests/ProjectPlugins/CodexContractsPlugin/Marketplace/Marketplace.cs

608 lines
55 KiB
C#

using Nethereum.ABI.FunctionEncoding.Attributes;
using Nethereum.Contracts;
using System.Numerics;
// Generated code, do not modify.
#pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
namespace CodexContractsPlugin.Marketplace
{
public partial class MarketplaceDeployment : MarketplaceDeploymentBase
{
public MarketplaceDeployment() : base(BYTECODE) { }
public MarketplaceDeployment(string byteCode) : base(byteCode) { }
}
public class MarketplaceDeploymentBase : ContractDeploymentMessage
{
public static string BYTECODE = "0x60c06040523480156200001157600080fd5b506040516200440838038062004408833981016040819052620000349162000571565b602083015180516040850151516001805460ff191660ff909216919091179055608052816101004311620000af5760405162461bcd60e51b815260206004820152601960248201527f496e73756666696369656e7420626c6f636b206865696768740000000000000060448201526064015b60405180910390fd5b81516002908155602083015160035560408301516004805460ff191660ff9092169190911790556060830151839190600590620000ed908262000724565b50608091909101516004909101805460ff191660ff928316179055600780546001600160a01b0319166001600160a01b0393841617905590841660a0528451516064911611159050620001835760405162461bcd60e51b815260206004820152601560248201527f4d757374206265206c657373207468616e2031303000000000000000000000006044820152606401620000a6565b606483600001516060015160ff161115620001e15760405162461bcd60e51b815260206004820152601560248201527f4d757374206265206c657373207468616e2031303000000000000000000000006044820152606401620000a6565b82516060810151602090910151606491620001fc91620007f0565b60ff1611156200024f5760405162461bcd60e51b815260206004820152601d60248201527f4d6178696d756d20736c617368696e67206578636565647320313030250000006044820152606401620000a6565b82518051600f805460208085015160408087015160609788015160ff9081166401000000000260ff60201b1961ffff90931662010000029290921664ffffff0000199482166101000261ffff199097169882169890981795909517929092169590951717835580880151805160109081559181015160115593840151601280549190931660ff19919091161790915592820151869391929190601390620002f7908262000724565b50608091909101516004909101805460ff1990811660ff938416179091556040939093015151600692909201805490931691161790555062000822915050565b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b038111828210171562000372576200037262000337565b60405290565b604051606081016001600160401b038111828210171562000372576200037262000337565b604051608081016001600160401b038111828210171562000372576200037262000337565b604051601f8201601f191681016001600160401b0381118282101715620003ed57620003ed62000337565b604052919050565b805160ff811681146200040757600080fd5b919050565b600060a082840312156200041f57600080fd5b620004296200034d565b905081518152602080830151818301526200044760408401620003f5565b604083015260608301516001600160401b03808211156200046757600080fd5b818501915085601f8301126200047c57600080fd5b81518181111562000491576200049162000337565b620004a5601f8201601f19168501620003c2565b91508082528684828501011115620004bc57600080fd5b60005b81811015620004dc578381018501518382018601528401620004bf565b50600084828401015250806060850152505050620004fd60808301620003f5565b608082015292915050565b6000602082840312156200051b57600080fd5b604051602081016001600160401b038111828210171562000540576200054062000337565b6040529050806200055183620003f5565b905292915050565b80516001600160a01b03811681146200040757600080fd5b6000806000606084860312156200058757600080fd5b83516001600160401b03808211156200059f57600080fd5b9085019081870360c0811215620005b557600080fd5b620005bf62000378565b6080821215620005ce57600080fd5b620005d86200039d565b9150620005e584620003f5565b8252620005f560208501620003f5565b6020830152604084015161ffff811681146200061057600080fd5b60408301526200062360608501620003f5565b6060830152908152608083015190828211156200063f57600080fd5b6200064d898386016200040c565b6020820152620006618960a0860162000508565b604082015295506200067a925050506020850162000559565b91506200068a6040850162000559565b90509250925092565b600181811c90821680620006a857607f821691505b602082108103620006c957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200071f576000816000526020600020601f850160051c81016020861015620006fa5750805b601f850160051c820191505b818110156200071b5782815560010162000706565b5050505b505050565b81516001600160401b0381111562000740576200074062000337565b620007588162000751845462000693565b84620006cf565b602080601f831160018114620007905760008415620007775750858301515b600019600386901b1c1916600185901b1785556200071b565b600085815260208120601f198616915b82811015620007c157888601518255948401946001909101908401620007a0565b5085821015620007e05787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60ff81811683821602908116908181146200081b57634e487b7160e01b600052601160045260246000fd5b5092915050565b60805160a051613b8f6200087960003960008181610442015281816118bb01528181612279015281816123180152818161248d0152818161252c0152612775015260008181612c3e0152612e040152613b8f6000f3fe608060405234801561001057600080fd5b50600436106101ae5760003560e01c806379502c55116100ee578063be5cdc4811610097578063e8aa0a0711610071578063e8aa0a07146103ed578063f752196b14610400578063fb1e61ca14610420578063fc0c546a1461044057600080fd5b8063be5cdc48146103a7578063c0cc4add146103c7578063c5d43351146103da57600080fd5b8063a3a0807e116100c8578063a3a0807e14610361578063a6af384b14610374578063b396dc791461038757600080fd5b806379502c55146103315780639777b72c14610346578063a29c29a41461034e57600080fd5b80634641dce61161015b5780635da73835116101355780635da73835146102b257806362d48e13146102c75780636b00c8cf146102da5780636e2b54ee1461031e57600080fd5b80634641dce6146102575780634802f44b1461027c57806359cc89ed1461029f57600080fd5b80630aefaabe1161018c5780630aefaabe1461020e578063329b5a0b14610221578063458d2bf11461024457600080fd5b806302fa8e65146101b357806305b90773146101d957806308695fcd146101f9575b600080fd5b6101c66101c1366004612feb565b610466565b6040519081526020015b60405180910390f35b6101ec6101e7366004612feb565b6104dd565b6040516101d0919061301a565b61020c610207366004613034565b6105ef565b005b61020c61021c36600461306b565b610745565b6101c661022f366004612feb565b60009081526017602052604090206005015490565b6101c6610252366004612feb565b610922565b61026a610265366004612feb565b61093b565b60405160ff90911681526020016101d0565b61028f61028a366004613034565b61094e565b60405190151581526020016101d0565b61020c6102ad3660046130c0565b6109c9565b6102ba610d2d565b6040516101d091906130f7565b61020c6102d5366004613034565b610d54565b6103066102e8366004612feb565b6000908152601860205260409020600501546001600160a01b031690565b6040516001600160a01b0390911681526020016101d0565b61020c61032c366004612feb565b610e51565b610339610e5e565b6040516101d09190613181565b6102ba611012565b61020c61035c366004612feb565b611031565b61028f61036f366004612feb565b6110a1565b61020c61038236600461322a565b6110d6565b61039a610395366004612feb565b61142b565b6040516101d09190613333565b6103ba6103b5366004612feb565b611614565b6040516101d09190613365565b61028f6103d5366004612feb565b6116e2565b61020c6103e8366004613379565b6116f5565b61020c6103fb3660046133a9565b611934565b6101c661040e366004612feb565b6000908152600a602052604090205490565b61043361042e366004612feb565b611a69565b6040516101d091906133d7565b7f0000000000000000000000000000000000000000000000000000000000000000610306565b60008181526017602052604081206004015481610482846104dd565b9050600081600481111561049857610498613004565b14806104b5575060018160048111156104b3576104b3613004565b145b156104c1575092915050565b6104d5826104d0600142613400565b611c20565b949350505050565b60008181526016602052604081205482906001600160a01b031661053a5760405162461bcd60e51b815260206004820152600f60248201526e155b9adb9bdddb881c995c5d595cdd608a1b60448201526064015b60405180910390fd5b600083815260176020526040812090815460ff16600481111561055f5761055f613004565b14801561057c575060008481526017602052604090206005015442115b1561058b5760029250506105e9565b6001815460ff1660048111156105a3576105a3613004565b14806105c457506000815460ff1660048111156105c2576105c2613004565b145b80156105d35750806004015442115b156105e25760039250506105e9565b5460ff1691505b50919050565b60016105fa83611614565b600581111561060b5761060b613004565b146106585760405162461bcd60e51b815260206004820152601960248201527f536c6f74206e6f7420616363657074696e672070726f6f6673000000000000006044820152606401610531565b6106628282611c38565b6000828152601860209081526040808320600181015484526016909252909120600f5461ffff62010000909104166106a6856000908152600a602052604090205490565b6106b09190613429565b60000361073f57600f5460068201546000916064916106da91640100000000900460ff169061343d565b6106e49190613454565b9050808360040160008282546106fa9190613400565b9091555050600f546000868152600a6020526040902054610100820460ff169162010000900461ffff169061072f9190613454565b1061073d5761073d85611e65565b505b50505050565b826000808281526018602052604090205460ff16600581111561076a5761076a613004565b036107a65760405162461bcd60e51b815260206004820152600c60248201526b536c6f74206973206672656560a01b6044820152606401610531565b600084815260186020526040902060058101546001600160a01b031633146108105760405162461bcd60e51b815260206004820152601960248201527f536c6f742066696c6c6564206279206f7468657220686f7374000000000000006044820152606401610531565b600061081b86611614565b9050600481600581111561083157610831613004565b0361087e5760405162461bcd60e51b815260206004820152600c60248201527f416c7265616479207061696400000000000000000000000000000000000000006044820152606401610531565b600281600581111561089257610892613004565b036108ac576108a7826001015487878761200b565b61091a565b60058160058111156108c0576108c0613004565b036108d5576108a7826001015487878761239d565b60038160058111156108e9576108e9613004565b036108f8576108a733876125af565b600181600581111561090c5761090c613004565b0361091a5761091a86611e65565b505050505050565b6000610935826109306125d1565b6125dc565b92915050565b6000610935826109496125d1565b6125f0565b6040805160208082018590528183018490528251808303840181526060909201909252805191012060009033908290600154600082815260208190526040902091925060ff169061099e90612664565b1080156109c0575060008181526020819052604090206109be908361266e565b155b95945050505050565b60008381526016602052604090205483906001600160a01b0316610a215760405162461bcd60e51b815260206004820152600f60248201526e155b9adb9bdddb881c995c5d595cdd608a1b6044820152606401610531565b6000848152601660205260409020600181015467ffffffffffffffff168410610a8c5760405162461bcd60e51b815260206004820152600c60248201527f496e76616c696420736c6f7400000000000000000000000000000000000000006044820152606401610531565b60408051602080820188905281830187905282518083038401815260609092018352815191810191909120600081815291829052919020610acd903361266e565b610b195760405162461bcd60e51b815260206004820152601460248201527f5265736572766174696f6e2072657175697265640000000000000000000000006044820152606401610531565b6000818152601860205260408120600181018890556003810187905590610b3f83611614565b6005811115610b5057610b50613004565b14610b9d5760405162461bcd60e51b815260206004820152601060248201527f536c6f74206973206e6f742066726565000000000000000000000000000000006044820152606401610531565b600483015460008381526008602090815260408083204290556009909152902055610bc88286611934565b60058101805473ffffffffffffffffffffffffffffffffffffffff191633179055805460ff191660019081178255426002830155600088815260176020526040812080830180549193929091610c1f908490613468565b90915550610c2f90508842612690565b816002016000828254610c429190613400565b90915550506006840154610c56338261272d565b8060196000016000828254610c6b9190613468565b9091555050600483018190556005830154610c8f906001600160a01b031685612830565b887ff530852268993f91008f1a1e0b09b5c813acd4188481f1fa83c33c7182e814b489604051610cc191815260200190565b60405180910390a26001808601549083015467ffffffffffffffff9091169003610d2257815460ff1916600117825542600383015560405189907f85e1543bf2f84fe80c6badbce3648c8539ad1df4d2b3d822938ca0538be727e690600090a25b505050505050505050565b336000908152600e60205260409020606090610d4f90610d4c90612852565b90565b905090565b610d5e828261094e565b610daa5760405162461bcd60e51b815260206004820152601760248201527f5265736572766174696f6e206e6f7420616c6c6f7765640000000000000000006044820152606401610531565b60408051602080820185905281830184905282518083038401815260609092018352815191810191909120600081815291829052919020610deb903361285f565b50600154600082815260208190526040902060ff90911690610e0c90612664565b03610e4c57827f3bef2ebab8cc92e0edda5decf18232f0606a18405ef674b51ea9d1e0e3839b4183604051610e4391815260200190565b60405180910390a25b505050565b610e5b81336116f5565b50565b610ed26040805160e081019091526000606082018181526080830182905260a0830182905260c0830191909152819081526040805160a08101825260008082526020828101829052928201819052606080830152608082015291019081526040805160208181019092526000815291015290565b6040805160e081018252600f805460ff808216606080860191825261010084048316608087015261ffff6201000085041660a080880191909152640100000000909404831660c087015290855285519283018652601080548452601154602085810191909152601254909316968401969096526013805495969495928701949291840191610f5f9061347b565b80601f0160208091040260200160405190810160405280929190818152602001828054610f8b9061347b565b8015610fd85780601f10610fad57610100808354040283529160200191610fd8565b820191906000526020600020905b815481529060010190602001808311610fbb57829003601f168201915b50505091835250506004919091015460ff908116602092830152918352604080518083019091526006949094015490911683520152919050565b336000908152600d60205260409020606090610d4f90610d4c90612852565b806000808281526018602052604090205460ff16600581111561105657611056613004565b036110925760405162461bcd60e51b815260206004820152600c60248201526b536c6f74206973206672656560a01b6044820152606401610531565b61109d823333610745565b5050565b60008060006110b7846110b26125d1565b612874565b90925090508180156104d5575060045460ff9081169116109392505050565b336110e460208301836134af565b6001600160a01b03161461113a5760405162461bcd60e51b815260206004820152601660248201527f496e76616c696420636c69656e742061646472657373000000000000000000006044820152606401610531565b600061114d61114883613641565b612957565b6000818152601660205260409020549091506001600160a01b0316156111b55760405162461bcd60e51b815260206004820152601660248201527f5265717565737420616c726561647920657869737473000000000000000000006044820152606401610531565b60008261012001351180156111d257506060820135610120830135105b61121e5760405162461bcd60e51b815260206004820152601360248201527f457870697279206e6f7420696e2072616e6765000000000000000000000000006044820152606401610531565b60006112306040840160208501613730565b67ffffffffffffffff16116112875760405162461bcd60e51b815260206004820152601260248201527f496e73756666696369656e7420736c6f747300000000000000000000000000006044820152606401610531565b6112976040830160208401613730565b67ffffffffffffffff166112b2610100840160e08501613730565b67ffffffffffffffff16111561130a5760405162461bcd60e51b815260206004820152601960248201527f6d6178536c6f744c6f7373206578636565647320736c6f7473000000000000006044820152606401610531565b6000818152601660205260409020829061132482826138bb565b506113359050606083013542613468565b60008281526017602052604090206004015561135661012083013542613468565b6000828152601760209081526040909120600501919091556113849061137e908401846134af565b82612987565b600061139761139284613641565b6129a9565b60008381526017602052604081206002018290556019805492935083929091906113c2908490613468565b909155506113d29050338261272d565b7f5fdb86c365a247a4d97dcbcc5c3abde9d6e3e2de26273f3fda8eef5073b9a96c8284602001601760008681526020019081526020016000206005015460405161141e939291906139b3565b60405180910390a1505050565b611433612f23565b816000808281526018602052604090205460ff16600581111561145857611458613004565b036114945760405162461bcd60e51b815260206004820152600c60248201526b536c6f74206973206672656560a01b6044820152606401610531565b60008381526018602052604090206114aa612f23565b600180830154600090815260166020908152604091829020825160a0808201855282546001600160a01b03168252845160e0810186529583015467ffffffffffffffff9081168752600284015487860152600384015487870152600484015460608801526005840154608088015260068401549187019190915260078301541660c08601529182019390935281518083018352600884018054929493850192829082906115569061347b565b80601f01602080910402602001604051908101604052809291908181526020018280546115829061347b565b80156115cf5780601f106115a4576101008083540402835291602001916115cf565b820191906000526020600020905b8154815290600101906020018083116115b257829003601f168201915b505050918352505060019190910154602091820152908252600a83015482820152600b9092015460409091015290825260039092015491810191909152915050919050565b6000818152601860205260408120600181015482036116365750600092915050565b600061164582600101546104dd565b90506004825460ff16600581111561165f5761165f613004565b0361166e575060049392505050565b600281600481111561168257611682613004565b03611691575060059392505050565b60038160048111156116a5576116a5613004565b036116b4575060029392505050565b60048160048111156116c8576116c8613004565b036116d7575060039392505050565b505460ff1692915050565b6000610935826116f06125d1565b6129ce565b600082815260166020908152604080832060179092529091206005015442116117605760405162461bcd60e51b815260206004820152601960248201527f52657175657374206e6f74207965742074696d6564206f7574000000000000006044820152606401610531565b80546001600160a01b031633146117b95760405162461bcd60e51b815260206004820152601660248201527f496e76616c696420636c69656e742061646472657373000000000000000000006044820152606401610531565b600083815260176020526040812090815460ff1660048111156117de576117de613004565b1461182b5760405162461bcd60e51b815260206004820152600d60248201527f496e76616c6964207374617465000000000000000000000000000000000000006044820152606401610531565b805460ff19166002178155815461184b906001600160a01b0316856129fe565b60405184907ff903f4774c7bd27355f9d7fcbc382b079b164a697a44ac5d95267a4c3cb3bb2290600090a26002810154601a8054829190600090611890908490613468565b909155505060405163a9059cbb60e01b81526001600160a01b038581166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015611904573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119289190613a2f565b61073d5761073d613a51565b6000828152601860209081526040808320600101548084526016909252909120546001600160a01b031661199c5760405162461bcd60e51b815260206004820152600f60248201526e155b9adb9bdddb881c995c5d595cdd608a1b6044820152606401610531565b6000838152601860209081526040808320600181015484526016835281842082516003808252608082019094529194909390929082016060803683370190505090506119ef6119ea87610922565b612a20565b81600081518110611a0257611a02613a67565b60209081029190910101526009820154611a1b90612a31565b81600181518110611a2e57611a2e613a67565b602002602001018181525050826003015481600281518110611a5257611a52613a67565b60200260200101818152505061091a868683612a3d565b611a71612f43565b60008281526016602052604090205482906001600160a01b0316611ac95760405162461bcd60e51b815260206004820152600f60248201526e155b9adb9bdddb881c995c5d595cdd608a1b6044820152606401610531565b600083815260166020908152604091829020825160a0808201855282546001600160a01b03168252845160e081018652600184015467ffffffffffffffff90811682526002850154828701526003850154828801526004850154606083015260058501546080830152600685015492820192909252600784015490911660c08201529281019290925282518084018452600882018054939492939285019282908290611b749061347b565b80601f0160208091040260200160405190810160405280929190818152602001828054611ba09061347b565b8015611bed5780601f10611bc257610100808354040283529160200191611bed565b820191906000526020600020905b815481529060010190602001808311611bd057829003601f168201915b505050505081526020016001820154815250508152602001600a8201548152602001600b82015481525050915050919050565b6000818310611c2f5781611c31565b825b9392505050565b6000611c4382612bfc565b9050428110611c945760405162461bcd60e51b815260206004820152601860248201527f506572696f6420686173206e6f7420656e6465642079657400000000000000006044820152606401610531565b600354611ca19082613468565b4210611cef5760405162461bcd60e51b815260206004820152601460248201527f56616c69646174696f6e2074696d6564206f75740000000000000000000000006044820152606401610531565b6000838152600b6020908152604080832085845290915290205460ff1615611d595760405162461bcd60e51b815260206004820181905260248201527f50726f6f6620776173207375626d69747465642c206e6f74206d697373696e676044820152606401610531565b611d6383836129ce565b611daf5760405162461bcd60e51b815260206004820152601660248201527f50726f6f6620776173206e6f74207265717569726564000000000000000000006044820152606401610531565b6000838152600c6020908152604080832085845290915290205460ff1615611e195760405162461bcd60e51b815260206004820152601f60248201527f50726f6f6620616c7265616479206d61726b6564206173206d697373696e67006044820152606401610531565b6000838152600c602090815260408083208584528252808320805460ff19166001908117909155868452600a9092528220805491929091611e5b908490613468565b9091555050505050565b60008181526018602090815260408083206001810154808552601790935292206005830154611e9d906001600160a01b0316856125af565b6003808401546000868152601860205260408120805460ff1916815560018082018390556002820183905593810182905560048101829055600501805473ffffffffffffffffffffffffffffffffffffffff191690558383018054929392909190611f09908490613400565b909155505060405181815283907f1d31c9f8dea6e179f6a050db117595feea8937029ea51f5168a4780be7e8f5529060200160405180910390a26000858152600a6020526040812055600083815260166020526040812060018085015490820154919291611f81919067ffffffffffffffff16613400565b600783015490915067ffffffffffffffff1681118015611fb657506001845460ff166004811115611fb457611fb4613004565b145b1561200257835460ff19166004178455611fd1600142613400565b600485015560405185907f4769361a442504ecaf038f35e119bcccdd5e42096b24c09e3c17fd17c6684c0290600090a25b50505050505050565b60008481526016602052604090205484906001600160a01b03166120635760405162461bcd60e51b815260206004820152600f60248201526e155b9adb9bdddb881c995c5d595cdd608a1b6044820152606401610531565b60008581526017602090815260408083206016909252909120815460ff19166003178255805461209c906001600160a01b0316886129fe565b600086815260186020526040902060058101546120c2906001600160a01b0316886125af565b6000888152601660209081526040808320815160a0808201845282546001600160a01b03168252835160e081018552600184015467ffffffffffffffff90811682526002850154828801526003850154828701526004850154606083015260058501546080830152600685015492820192909252600784015490911660c08201529381019390935281518083018352600882018054612217959485019291908290829061216e9061347b565b80601f016020809104026020016040519081016040528092919081815260200182805461219a9061347b565b80156121e75780601f106121bc576101008083540402835291602001916121e7565b820191906000526020600020905b8154815290600101906020018083116121ca57829003601f168201915b505050505081526020016001820154815250508152602001600a8201548152602001600b82015481525050612c0f565b60048301549091506122298183613468565b601a805460009061223b908490613468565b90915550508254600490849060ff1916600183021790555060405163a9059cbb60e01b81526001600160a01b038981166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156122c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122e69190613a2f565b6122f2576122f2613a51565b60405163a9059cbb60e01b81526001600160a01b038881166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015612361573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123859190613a2f565b61239157612391613a51565b50505050505050505050565b60008481526016602052604090205484906001600160a01b03166123f55760405162461bcd60e51b815260206004820152600f60248201526e155b9adb9bdddb881c995c5d595cdd608a1b6044820152606401610531565b6000848152601860205260409020600581015461241b906001600160a01b0316866125af565b600061242b878360020154612690565b600483015490915061243d8183613468565b601a805460009061244f908490613468565b90915550508254600490849060ff1916600183021790555060405163a9059cbb60e01b81526001600160a01b038781166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156124d6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124fa9190613a2f565b61250657612506613a51565b60405163a9059cbb60e01b81526001600160a01b038681166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015612575573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125999190613a2f565b6125a5576125a5613a51565b5050505050505050565b6001600160a01b0382166000908152600e60205260409020610e4c9082612c2b565b6000610d4f42612c37565b6000611c316125eb84846125f0565b612c63565b6000806125ff61010043613429565b600654909150600090610100906126199060ff168661343d565b6126239190613429565b9050600061263361010087613429565b90506000610100826126458587613468565b61264f9190613468565b6126599190613429565b979650505050505050565b6000610935825490565b6001600160a01b03811660009081526001830160205260408120541515611c31565b6000828152601660209081526040808320601790925282206005015483106126fa5760405162461bcd60e51b815260206004820152601760248201527f5374617274206e6f74206265666f7265206578706972790000000000000000006044820152606401610531565b6005810154836127198660009081526017602052604090206005015490565b6127239190613400565b6104d5919061343d565b6040517f23b872dd0000000000000000000000000000000000000000000000000000000081526001600160a01b038381166004830152306024830181905260448301849052917f0000000000000000000000000000000000000000000000000000000000000000909116906323b872dd906064016020604051808303816000875af11580156127c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127e49190613a2f565b610e4c5760405162461bcd60e51b815260206004820152600f60248201527f5472616e73666572206661696c656400000000000000000000000000000000006044820152606401610531565b6001600160a01b0382166000908152600e60205260409020610e4c9082612cbd565b60606000611c3183612cc9565b6000611c31836001600160a01b038416612d25565b600080600061288285611614565b6000868152600860205260408120549192509061289e90612c37565b905060018260058111156128b4576128b4613004565b1415806128c857506128c68582612d74565b155b156128db57600080935093505050612950565b6128e586866125f0565b925060006128f284612c63565b6004549091506000906101009061290c9060ff1682613a7d565b60008a8152600960205260409020546129299161ffff169061343d565b6129339190613454565b905080158061294957506129478183613429565b155b9550505050505b9250929050565b60008160405160200161296a91906133d7565b604051602081830303815290604052805190602001209050919050565b6001600160a01b0382166000908152600d60205260409020610e4c9082612cbd565b60006129b482612c0f565b602083015151610935919067ffffffffffffffff1661343d565b60008060006129dd8585612874565b90925090508180156109c0575060045460ff90811691161015949350505050565b6001600160a01b0382166000908152600d60205260409020610e4c9082612c2b565b600060ff198216816104d582612d7e565b600080611c3183612d7e565b6000838152600b6020526040812090612a546125d1565b815260208101919091526040016000205460ff1615612ab55760405162461bcd60e51b815260206004820152601760248201527f50726f6f6620616c7265616479207375626d69747465640000000000000000006044820152606401610531565b6007546040517f94c8919d0000000000000000000000000000000000000000000000000000000081526001600160a01b03909116906394c8919d90612b009085908590600401613a98565b602060405180830381865afa158015612b1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b419190613a2f565b612b8d5760405162461bcd60e51b815260206004820152600d60248201527f496e76616c69642070726f6f66000000000000000000000000000000000000006044820152606401610531565b6000838152600b60205260408120600191612ba66125d1565b815260200190815260200160002060006101000a81548160ff0219169083151502179055507f3b989d183b84b02259d7c14b34a9c9eb0fccb4c355a920d25e581e25aef4993d8360405161141e91815260200190565b6000610935612c0a83612df0565b612dfd565b602081015160808101516040909101516000916109359161343d565b6000611c318383612e29565b60006109357f000000000000000000000000000000000000000000000000000000000000000083613454565b60008060ff8316612c75600143613400565b612c7f9190613400565b4090506000819003612c9357612c93613a51565b60408051602081018390520160405160208183030381529060405280519060200120915050919050565b6000611c318383612d25565b606081600001805480602002602001604051908101604052809291908181526020018280548015612d1957602002820191906000526020600020905b815481526020019060010190808311612d05575b50505050509050919050565b6000818152600183016020526040812054612d6c57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610935565b506000610935565b6000818311611c31565b7fff00000000000000000000000000000000000000000000000000000000000000811660015b60208110156105e957600891821c91612dbe90829061343d565b83901b7fff00000000000000000000000000000000000000000000000000000000000000169190911790600101612da4565b6000610935826001613468565b60006109357f00000000000000000000000000000000000000000000000000000000000000008361343d565b60008181526001830160205260408120548015612f12576000612e4d600183613400565b8554909150600090612e6190600190613400565b9050818114612ec6576000866000018281548110612e8157612e81613a67565b9060005260206000200154905080876000018481548110612ea457612ea4613a67565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612ed757612ed7613b43565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610935565b6000915050610935565b5092915050565b6040518060400160405280612f36612f43565b8152602001600081525090565b6040518060a0016040528060006001600160a01b03168152602001612fb26040518060e00160405280600067ffffffffffffffff1681526020016000815260200160008152602001600081526020016000815260200160008152602001600067ffffffffffffffff1681525090565b8152602001612fd7604051806040016040528060608152602001600080191681525090565b815260006020820181905260409091015290565b600060208284031215612ffd57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b602081016005831061302e5761302e613004565b91905290565b6000806040838503121561304757600080fd5b50508035926020909101359150565b6001600160a01b0381168114610e5b57600080fd5b60008060006060848603121561308057600080fd5b83359250602084013561309281613056565b915060408401356130a281613056565b809150509250925092565b600061010082840312156105e957600080fd5b600080600061014084860312156130d657600080fd5b83359250602084013591506130ee85604086016130ad565b90509250925092565b6020808252825182820181905260009190848201906040850190845b8181101561312f57835183529284019291840191600101613113565b50909695505050505050565b6000815180845260005b8181101561316157602081850181015186830182015201613145565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000825160ff815116602084015260ff602082015116604084015261ffff604082015116606084015260ff606082015116608084015250602083015160c060a0840152805160e0840152602081015161010084015260ff604082015116610120840152606081015160a061014085015261320361018085018261313b565b905060ff608083015116610160850152604085015191506104d560c08501835160ff169052565b60006020828403121561323c57600080fd5b813567ffffffffffffffff81111561325357600080fd5b82016101608185031215611c3157600080fd5b600081516040845261327b604085018261313b565b602093840151949093019390935250919050565b60006101606001600160a01b038351168452602083015167ffffffffffffffff808251166020870152602082015160408701526040820151606087015260608201516080870152608082015160a087015260a082015160c08701528060c08301511660e0870152505060408301518161010086015261331082860182613266565b915050606083015161012085015260808301516101408501528091505092915050565b60208152600082516040602084015261334f606084018261328f565b9050602084015160408401528091505092915050565b602081016006831061302e5761302e613004565b6000806040838503121561338c57600080fd5b82359150602083013561339e81613056565b809150509250929050565b60008061012083850312156133bd57600080fd5b823591506133ce84602085016130ad565b90509250929050565b602081526000611c31602083018461328f565b634e487b7160e01b600052601160045260246000fd5b81810381811115610935576109356133ea565b634e487b7160e01b600052601260045260246000fd5b60008261343857613438613413565b500690565b8082028115828204841417610935576109356133ea565b60008261346357613463613413565b500490565b80820180821115610935576109356133ea565b600181811c9082168061348f57607f821691505b6020821081036105e957634e487b7160e01b600052602260045260246000fd5b6000602082840312156134c157600080fd5b8135611c3181613056565b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff81118282101715613505576135056134cc565b60405290565b60405160a0810167ffffffffffffffff81118282101715613505576135056134cc565b60405160e0810167ffffffffffffffff81118282101715613505576135056134cc565b604051601f8201601f1916810167ffffffffffffffff8111828210171561357a5761357a6134cc565b604052919050565b67ffffffffffffffff81168114610e5b57600080fd5b6000604082840312156135aa57600080fd5b6135b26134e2565b9050813567ffffffffffffffff808211156135cc57600080fd5b818401915084601f8301126135e057600080fd5b81356020828211156135f4576135f46134cc565b613606601f8301601f19168201613551565b9250818352868183860101111561361c57600080fd5b8181850182850137600081838501015282855280860135818601525050505092915050565b600081360361016081121561365557600080fd5b61365d61350b565b833561366881613056565b815260e0601f198301121561367c57600080fd5b61368461352e565b9150602084013561369481613582565b8083525060408401356020830152606084013560408301526080840135606083015260a0840135608083015260c084013560a083015260e08401356136d881613582565b60c083015260208101919091526101008301359067ffffffffffffffff82111561370157600080fd5b61370d36838601613598565b604082015261012084013560608201526101409093013560808401525090919050565b60006020828403121561374257600080fd5b8135611c3181613582565b6000813561093581613582565b60008235603e1983360301811261377057600080fd5b9190910192915050565b601f821115610e4c576000816000526020600020601f850160051c810160208610156137a35750805b601f850160051c820191505b8181101561091a578281556001016137af565b8135601e198336030181126137d657600080fd5b8201803567ffffffffffffffff8111156137ef57600080fd5b6020813603818401131561380257600080fd5b61381682613810865461347b565b8661377a565b6000601f83116001811461384c576000841561383457508482018301355b600019600386901b1c1916600185901b1786556138a9565b600086815260209020601f19851690835b8281101561387e57878501860135825593850193600190910190850161385d565b508582101561389d5760001960f88760031b161c198585890101351681555b505060018460011b0186555b50508085013560018501555050505050565b81356138c681613056565b6001600160a01b03811673ffffffffffffffffffffffffffffffffffffffff198354161782555060208201356138fb81613582565b60018201805467ffffffffffffffff191667ffffffffffffffff83161790555060408201356002820155606082013560038201556080820135600482015560a0820135600582015560c0820135600682015561397f61395c60e0840161374d565b6007830167ffffffffffffffff821667ffffffffffffffff198254161781555050565b61399961399061010084018461375a565b600883016137c2565b610120820135600a820155610140820135600b8201555050565b838152610120810183356139c681613582565b67ffffffffffffffff8082166020850152602086013560408501526040860135606085015260608601356080850152608086013560a085015260a086013560c085015260c08601359150613a1982613582565b1660e08301526101009091019190915292915050565b600060208284031215613a4157600080fd5b81518015158114611c3157600080fd5b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b61ffff828116828216039080821115612f1c57612f1c6133ea565b82358152602080840135908201526000610120828101613ac8604085016040880180358252602090810135910152565b613ae2608085016080880180358252602090810135910152565b613afc60c0850160c0880180358252602090810135910152565b61010084019190915283519081905261014083019060209081860160005b82811015613b3657815185529383019390830190600101613b1a565b5092979650505050505050565b634e487b7160e01b600052603160045260246000fdfea26469706673582212200e9eabf1c7758524872d3680c4aa166a203f002da479ea7453681db34417c3e664736f6c63430008170033";
public MarketplaceDeploymentBase() : base(BYTECODE) { }
public MarketplaceDeploymentBase(string byteCode) : base(byteCode) { }
[Parameter("tuple", "configuration", 1)]
public virtual MarketplaceConfig Configuration { get; set; }
[Parameter("address", "token_", 2)]
public virtual string Token { get; set; }
[Parameter("address", "verifier", 3)]
public virtual string Verifier { get; set; }
}
public partial class ProofSubmittedEventDTO : ProofSubmittedEventDTOBase { }
[Event("ProofSubmitted")]
public class ProofSubmittedEventDTOBase : IEventDTO
{
[Parameter("bytes32", "id", 1, false )]
public virtual byte[] Id { get; set; }
}
public partial class RequestCancelledEventDTO : RequestCancelledEventDTOBase { }
[Event("RequestCancelled")]
public class RequestCancelledEventDTOBase : IEventDTO
{
[Parameter("bytes32", "requestId", 1, true )]
public virtual byte[] RequestId { get; set; }
}
public partial class RequestFailedEventDTO : RequestFailedEventDTOBase { }
[Event("RequestFailed")]
public class RequestFailedEventDTOBase : IEventDTO
{
[Parameter("bytes32", "requestId", 1, true )]
public virtual byte[] RequestId { get; set; }
}
public partial class RequestFulfilledEventDTO : RequestFulfilledEventDTOBase { }
[Event("RequestFulfilled")]
public class RequestFulfilledEventDTOBase : IEventDTO
{
[Parameter("bytes32", "requestId", 1, true )]
public virtual byte[] RequestId { get; set; }
}
public partial class SlotFilledEventDTO : SlotFilledEventDTOBase { }
[Event("SlotFilled")]
public class SlotFilledEventDTOBase : IEventDTO
{
[Parameter("bytes32", "requestId", 1, true )]
public virtual byte[] RequestId { get; set; }
[Parameter("uint256", "slotIndex", 2, false )]
public virtual BigInteger SlotIndex { get; set; }
}
public partial class SlotFreedEventDTO : SlotFreedEventDTOBase { }
[Event("SlotFreed")]
public class SlotFreedEventDTOBase : IEventDTO
{
[Parameter("bytes32", "requestId", 1, true )]
public virtual byte[] RequestId { get; set; }
[Parameter("uint256", "slotIndex", 2, false )]
public virtual BigInteger SlotIndex { get; set; }
}
public partial class SlotReservationsFullEventDTO : SlotReservationsFullEventDTOBase { }
[Event("SlotReservationsFull")]
public class SlotReservationsFullEventDTOBase : IEventDTO
{
[Parameter("bytes32", "requestId", 1, true )]
public virtual byte[] RequestId { get; set; }
[Parameter("uint256", "slotIndex", 2, false )]
public virtual BigInteger SlotIndex { get; set; }
}
public partial class StorageRequestedEventDTO : StorageRequestedEventDTOBase { }
[Event("StorageRequested")]
public class StorageRequestedEventDTOBase : IEventDTO
{
[Parameter("bytes32", "requestId", 1, false )]
public virtual byte[] RequestId { get; set; }
[Parameter("tuple", "ask", 2, false )]
public virtual Ask Ask { get; set; }
[Parameter("uint256", "expiry", 3, false )]
public virtual BigInteger Expiry { get; set; }
}
public partial class CanReserveSlotOutputDTO : CanReserveSlotOutputDTOBase { }
[FunctionOutput]
public class CanReserveSlotOutputDTOBase : IFunctionOutputDTO
{
[Parameter("bool", "", 1)]
public virtual bool ReturnValue1 { get; set; }
}
public partial class CanReserveSlotFunction : CanReserveSlotFunctionBase { }
[Function("canReserveSlot", "bool")]
public class CanReserveSlotFunctionBase : FunctionMessage
{
[Parameter("bytes32", "requestId", 1)]
public virtual byte[] RequestId { get; set; }
[Parameter("uint256", "slotIndex", 2)]
public virtual BigInteger SlotIndex { get; set; }
}
public partial class ConfigOutputDTO : ConfigOutputDTOBase { }
[FunctionOutput]
public class ConfigOutputDTOBase : IFunctionOutputDTO
{
[Parameter("tuple", "", 1)]
public virtual MarketplaceConfig ReturnValue1 { get; set; }
}
public partial class ConfigFunction : ConfigFunctionBase { }
[Function("config", typeof(ConfigOutputDTO))]
public class ConfigFunctionBase : FunctionMessage
{
}
public partial class FillSlotFunction : FillSlotFunctionBase { }
[Function("fillSlot")]
public class FillSlotFunctionBase : FunctionMessage
{
[Parameter("bytes32", "requestId", 1)]
public virtual byte[] RequestId { get; set; }
[Parameter("uint256", "slotIndex", 2)]
public virtual BigInteger SlotIndex { get; set; }
[Parameter("tuple", "proof", 3)]
public virtual Groth16Proof Proof { get; set; }
}
public partial class FreeSlot1Function : FreeSlot1FunctionBase { }
[Function("freeSlot")]
public class FreeSlot1FunctionBase : FunctionMessage
{
[Parameter("bytes32", "slotId", 1)]
public virtual byte[] SlotId { get; set; }
[Parameter("address", "rewardRecipient", 2)]
public virtual string RewardRecipient { get; set; }
[Parameter("address", "collateralRecipient", 3)]
public virtual string CollateralRecipient { get; set; }
}
public partial class FreeSlotFunction : FreeSlotFunctionBase { }
[Function("freeSlot")]
public class FreeSlotFunctionBase : FunctionMessage
{
[Parameter("bytes32", "slotId", 1)]
public virtual byte[] SlotId { get; set; }
}
public partial class GetActiveSlotOutputDTO : GetActiveSlotOutputDTOBase { }
[FunctionOutput]
public class GetActiveSlotOutputDTOBase : IFunctionOutputDTO
{
[Parameter("tuple", "", 1)]
public virtual ActiveSlot ReturnValue1 { get; set; }
}
public partial class GetActiveSlotFunction : GetActiveSlotFunctionBase { }
[Function("getActiveSlot", typeof(GetActiveSlotOutputDTO))]
public class GetActiveSlotFunctionBase : FunctionMessage
{
[Parameter("bytes32", "slotId", 1)]
public virtual byte[] SlotId { get; set; }
}
public partial class GetChallengeOutputDTO : GetChallengeOutputDTOBase { }
[FunctionOutput]
public class GetChallengeOutputDTOBase : IFunctionOutputDTO
{
[Parameter("bytes32", "", 1)]
public virtual byte[] ReturnValue1 { get; set; }
}
public partial class GetChallengeFunction : GetChallengeFunctionBase { }
[Function("getChallenge", "bytes32")]
public class GetChallengeFunctionBase : FunctionMessage
{
[Parameter("bytes32", "id", 1)]
public virtual byte[] Id { get; set; }
}
public partial class GetHostOutputDTO : GetHostOutputDTOBase { }
[FunctionOutput]
public class GetHostOutputDTOBase : IFunctionOutputDTO
{
[Parameter("address", "", 1)]
public virtual string ReturnValue1 { get; set; }
}
public partial class GetHostFunction : GetHostFunctionBase { }
[Function("getHost", "address")]
public class GetHostFunctionBase : FunctionMessage
{
[Parameter("bytes32", "slotId", 1)]
public virtual byte[] SlotId { get; set; }
}
public partial class GetPointerOutputDTO : GetPointerOutputDTOBase { }
[FunctionOutput]
public class GetPointerOutputDTOBase : IFunctionOutputDTO
{
[Parameter("uint8", "", 1)]
public virtual byte ReturnValue1 { get; set; }
}
public partial class GetPointerFunction : GetPointerFunctionBase { }
[Function("getPointer", "uint8")]
public class GetPointerFunctionBase : FunctionMessage
{
[Parameter("bytes32", "id", 1)]
public virtual byte[] Id { get; set; }
}
public partial class GetRequestOutputDTO : GetRequestOutputDTOBase { }
[FunctionOutput]
public class GetRequestOutputDTOBase : IFunctionOutputDTO
{
[Parameter("tuple", "", 1)]
public virtual Request ReturnValue1 { get; set; }
}
public partial class GetRequestFunction : GetRequestFunctionBase { }
[Function("getRequest", typeof(GetRequestOutputDTO))]
public class GetRequestFunctionBase : FunctionMessage
{
[Parameter("bytes32", "requestId", 1)]
public virtual byte[] RequestId { get; set; }
}
public partial class IsProofRequiredOutputDTO : IsProofRequiredOutputDTOBase { }
[FunctionOutput]
public class IsProofRequiredOutputDTOBase : IFunctionOutputDTO
{
[Parameter("bool", "", 1)]
public virtual bool ReturnValue1 { get; set; }
}
public partial class IsProofRequiredFunction : IsProofRequiredFunctionBase { }
[Function("isProofRequired", "bool")]
public class IsProofRequiredFunctionBase : FunctionMessage
{
[Parameter("bytes32", "id", 1)]
public virtual byte[] Id { get; set; }
}
public partial class MarkProofAsMissingFunction : MarkProofAsMissingFunctionBase { }
[Function("markProofAsMissing")]
public class MarkProofAsMissingFunctionBase : FunctionMessage
{
[Parameter("bytes32", "slotId", 1)]
public virtual byte[] SlotId { get; set; }
[Parameter("uint256", "period", 2)]
public virtual BigInteger Period { get; set; }
}
public partial class MissingProofsOutputDTO : MissingProofsOutputDTOBase { }
[FunctionOutput]
public class MissingProofsOutputDTOBase : IFunctionOutputDTO
{
[Parameter("uint256", "", 1)]
public virtual BigInteger ReturnValue1 { get; set; }
}
public partial class MissingProofsFunction : MissingProofsFunctionBase { }
[Function("missingProofs", "uint256")]
public class MissingProofsFunctionBase : FunctionMessage
{
[Parameter("bytes32", "slotId", 1)]
public virtual byte[] SlotId { get; set; }
}
public partial class MyRequestsOutputDTO : MyRequestsOutputDTOBase { }
[FunctionOutput]
public class MyRequestsOutputDTOBase : IFunctionOutputDTO
{
[Parameter("bytes32[]", "", 1)]
public virtual List<byte[]> ReturnValue1 { get; set; }
}
public partial class MyRequestsFunction : MyRequestsFunctionBase { }
[Function("myRequests", "bytes32[]")]
public class MyRequestsFunctionBase : FunctionMessage
{
}
public partial class MySlotsOutputDTO : MySlotsOutputDTOBase { }
[FunctionOutput]
public class MySlotsOutputDTOBase : IFunctionOutputDTO
{
[Parameter("bytes32[]", "", 1)]
public virtual List<byte[]> ReturnValue1 { get; set; }
}
public partial class MySlotsFunction : MySlotsFunctionBase { }
[Function("mySlots", "bytes32[]")]
public class MySlotsFunctionBase : FunctionMessage
{
}
public partial class RequestEndOutputDTO : RequestEndOutputDTOBase { }
[FunctionOutput]
public class RequestEndOutputDTOBase : IFunctionOutputDTO
{
[Parameter("uint256", "", 1)]
public virtual BigInteger ReturnValue1 { get; set; }
}
public partial class RequestEndFunction : RequestEndFunctionBase { }
[Function("requestEnd", "uint256")]
public class RequestEndFunctionBase : FunctionMessage
{
[Parameter("bytes32", "requestId", 1)]
public virtual byte[] RequestId { get; set; }
}
public partial class RequestExpiryOutputDTO : RequestExpiryOutputDTOBase { }
[FunctionOutput]
public class RequestExpiryOutputDTOBase : IFunctionOutputDTO
{
[Parameter("uint256", "", 1)]
public virtual BigInteger ReturnValue1 { get; set; }
}
public partial class RequestExpiryFunction : RequestExpiryFunctionBase { }
[Function("requestExpiry", "uint256")]
public class RequestExpiryFunctionBase : FunctionMessage
{
[Parameter("bytes32", "requestId", 1)]
public virtual byte[] RequestId { get; set; }
}
public partial class RequestStateOutputDTO : RequestStateOutputDTOBase { }
[FunctionOutput]
public class RequestStateOutputDTOBase : IFunctionOutputDTO
{
[Parameter("uint8", "", 1)]
public virtual byte ReturnValue1 { get; set; }
}
public partial class RequestStateFunction : RequestStateFunctionBase { }
[Function("requestState", "uint8")]
public class RequestStateFunctionBase : FunctionMessage
{
[Parameter("bytes32", "requestId", 1)]
public virtual byte[] RequestId { get; set; }
}
public partial class RequestStorageFunction : RequestStorageFunctionBase { }
[Function("requestStorage")]
public class RequestStorageFunctionBase : FunctionMessage
{
[Parameter("tuple", "request", 1)]
public virtual Request Request { get; set; }
}
public partial class ReserveSlotFunction : ReserveSlotFunctionBase { }
[Function("reserveSlot")]
public class ReserveSlotFunctionBase : FunctionMessage
{
[Parameter("bytes32", "requestId", 1)]
public virtual byte[] RequestId { get; set; }
[Parameter("uint256", "slotIndex", 2)]
public virtual BigInteger SlotIndex { get; set; }
}
public partial class SlotStateOutputDTO : SlotStateOutputDTOBase { }
[FunctionOutput]
public class SlotStateOutputDTOBase : IFunctionOutputDTO
{
[Parameter("uint8", "", 1)]
public virtual byte ReturnValue1 { get; set; }
}
public partial class SlotStateFunction : SlotStateFunctionBase { }
[Function("slotState", "uint8")]
public class SlotStateFunctionBase : FunctionMessage
{
[Parameter("bytes32", "slotId", 1)]
public virtual byte[] SlotId { get; set; }
}
public partial class SubmitProofFunction : SubmitProofFunctionBase { }
[Function("submitProof")]
public class SubmitProofFunctionBase : FunctionMessage
{
[Parameter("bytes32", "id", 1)]
public virtual byte[] Id { get; set; }
[Parameter("tuple", "proof", 2)]
public virtual Groth16Proof Proof { get; set; }
}
public partial class TokenOutputDTO : TokenOutputDTOBase { }
[FunctionOutput]
public class TokenOutputDTOBase : IFunctionOutputDTO
{
[Parameter("address", "", 1)]
public virtual string ReturnValue1 { get; set; }
}
public partial class TokenFunction : TokenFunctionBase { }
[Function("token", "address")]
public class TokenFunctionBase : FunctionMessage
{
}
public partial class WillProofBeRequiredOutputDTO : WillProofBeRequiredOutputDTOBase { }
[FunctionOutput]
public class WillProofBeRequiredOutputDTOBase : IFunctionOutputDTO
{
[Parameter("bool", "", 1)]
public virtual bool ReturnValue1 { get; set; }
}
public partial class WillProofBeRequiredFunction : WillProofBeRequiredFunctionBase { }
[Function("willProofBeRequired", "bool")]
public class WillProofBeRequiredFunctionBase : FunctionMessage
{
[Parameter("bytes32", "id", 1)]
public virtual byte[] Id { get; set; }
}
public partial class WithdrawFundsFunction : WithdrawFundsFunctionBase { }
[Function("withdrawFunds")]
public class WithdrawFundsFunctionBase : FunctionMessage
{
[Parameter("bytes32", "requestId", 1)]
public virtual byte[] RequestId { get; set; }
}
public partial class WithdrawFunds1Function : WithdrawFunds1FunctionBase { }
[Function("withdrawFunds")]
public class WithdrawFunds1FunctionBase : FunctionMessage
{
[Parameter("bytes32", "requestId", 1)]
public virtual byte[] RequestId { get; set; }
[Parameter("address", "withdrawRecipient", 2)]
public virtual string WithdrawRecipient { get; set; }
}
public partial class CollateralConfig : CollateralConfigBase { }
public class CollateralConfigBase
{
[Parameter("uint8", "repairRewardPercentage", 1)]
public virtual byte RepairRewardPercentage { get; set; }
[Parameter("uint8", "maxNumberOfSlashes", 2)]
public virtual byte MaxNumberOfSlashes { get; set; }
[Parameter("uint16", "slashCriterion", 3)]
public virtual ushort SlashCriterion { get; set; }
[Parameter("uint8", "slashPercentage", 4)]
public virtual byte SlashPercentage { get; set; }
}
public partial class ProofConfig : ProofConfigBase { }
public class ProofConfigBase
{
[Parameter("uint256", "period", 1)]
public virtual BigInteger Period { get; set; }
[Parameter("uint256", "timeout", 2)]
public virtual BigInteger Timeout { get; set; }
[Parameter("uint8", "downtime", 3)]
public virtual byte Downtime { get; set; }
[Parameter("string", "zkeyHash", 4)]
public virtual string ZkeyHash { get; set; }
[Parameter("uint8", "downtimeProduct", 5)]
public virtual byte DowntimeProduct { get; set; }
}
public partial class SlotReservationsConfig : SlotReservationsConfigBase { }
public class SlotReservationsConfigBase
{
[Parameter("uint8", "maxReservations", 1)]
public virtual byte MaxReservations { get; set; }
}
public partial class MarketplaceConfig : MarketplaceConfigBase { }
public class MarketplaceConfigBase
{
[Parameter("tuple", "collateral", 1)]
public virtual CollateralConfig Collateral { get; set; }
[Parameter("tuple", "proofs", 2)]
public virtual ProofConfig Proofs { get; set; }
[Parameter("tuple", "reservations", 3)]
public virtual SlotReservationsConfig Reservations { get; set; }
}
public partial class Ask : AskBase { }
public class AskBase
{
[Parameter("uint64", "slots", 1)]
public virtual ulong Slots { get; set; }
[Parameter("uint256", "slotSize", 2)]
public virtual BigInteger SlotSize { get; set; }
[Parameter("uint256", "duration", 3)]
public virtual BigInteger Duration { get; set; }
[Parameter("uint256", "proofProbability", 4)]
public virtual BigInteger ProofProbability { get; set; }
[Parameter("uint256", "reward", 5)]
public virtual BigInteger Reward { get; set; }
[Parameter("uint256", "collateral", 6)]
public virtual BigInteger Collateral { get; set; }
[Parameter("uint64", "maxSlotLoss", 7)]
public virtual ulong MaxSlotLoss { get; set; }
}
public partial class G1Point : G1PointBase { }
public class G1PointBase
{
[Parameter("uint256", "x", 1)]
public virtual BigInteger X { get; set; }
[Parameter("uint256", "y", 2)]
public virtual BigInteger Y { get; set; }
}
public partial class Fp2Element : Fp2ElementBase { }
public class Fp2ElementBase
{
[Parameter("uint256", "real", 1)]
public virtual BigInteger Real { get; set; }
[Parameter("uint256", "imag", 2)]
public virtual BigInteger Imag { get; set; }
}
public partial class G2Point : G2PointBase { }
public class G2PointBase
{
[Parameter("tuple", "x", 1)]
public virtual Fp2Element X { get; set; }
[Parameter("tuple", "y", 2)]
public virtual Fp2Element Y { get; set; }
}
public partial class Groth16Proof : Groth16ProofBase { }
public class Groth16ProofBase
{
[Parameter("tuple", "a", 1)]
public virtual G1Point A { get; set; }
[Parameter("tuple", "b", 2)]
public virtual G2Point B { get; set; }
[Parameter("tuple", "c", 3)]
public virtual G1Point C { get; set; }
}
public partial class Content : ContentBase { }
public class ContentBase
{
[Parameter("string", "cid", 1)]
public virtual string Cid { get; set; }
[Parameter("bytes32", "merkleRoot", 2)]
public virtual byte[] MerkleRoot { get; set; }
}
public partial class Request : RequestBase { }
public class RequestBase
{
[Parameter("address", "client", 1)]
public virtual string Client { get; set; }
[Parameter("tuple", "ask", 2)]
public virtual Ask Ask { get; set; }
[Parameter("tuple", "content", 3)]
public virtual Content Content { get; set; }
[Parameter("uint256", "expiry", 4)]
public virtual BigInteger Expiry { get; set; }
[Parameter("bytes32", "nonce", 5)]
public virtual byte[] Nonce { get; set; }
}
public partial class ActiveSlot : ActiveSlotBase { }
public class ActiveSlotBase
{
[Parameter("tuple", "request", 1)]
public virtual Request Request { get; set; }
[Parameter("uint256", "slotIndex", 2)]
public virtual BigInteger SlotIndex { get; set; }
}
}
#pragma warning restore CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.