1#[allow(
143 non_camel_case_types,
144 non_snake_case,
145 clippy::pub_underscore_fields,
146 clippy::style,
147 clippy::empty_structs_with_brackets
148)]
149pub mod HoprNodeStakeFactory {
150 use super::*;
151 use alloy::sol_types as alloy_sol_types;
152 #[rustfmt::skip]
158 #[allow(clippy::all)]
159 pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
160 b"`\xA0`@R4\x80\x15b\0\0\x11W`\0\x80\xFD[P0`\x80\x81\x90R`@\x80Q` \x81\x01\x92\x90\x92R`\0\x90\x82\x01R``\x01`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x90\x82\x90Rb\0\0R\x91`\x01`\xF8\x1B\x90` \x01b\0\0xV[`@Q` \x81\x83\x03\x03\x81R\x90`@R`\0\x90\x81b\0\0q\x91\x90b\0\x01vV[Pb\0\x02BV[`\0\x83Q`\0[\x81\x81\x10\x15b\0\0\x9BW` \x81\x87\x01\x81\x01Q\x85\x83\x01R\x01b\0\0\x7FV[P\x7F\xFF\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x93\x90\x93\x16\x91\x90\x92\x01\x90\x81R`\x01\x01\x92\x91PPV[cNH{q`\xE0\x1B`\0R`A`\x04R`$`\0\xFD[`\x01\x81\x81\x1C\x90\x82\x16\x80b\0\0\xFCW`\x7F\x82\x16\x91P[` \x82\x10\x81\x03b\0\x01\x1DWcNH{q`\xE0\x1B`\0R`\"`\x04R`$`\0\xFD[P\x91\x90PV[`\x1F\x82\x11\x15b\0\x01qW`\0\x81\x81R` \x81 `\x1F\x85\x01`\x05\x1C\x81\x01` \x86\x10\x15b\0\x01LWP\x80[`\x1F\x85\x01`\x05\x1C\x82\x01\x91P[\x81\x81\x10\x15b\0\x01mW\x82\x81U`\x01\x01b\0\x01XV[PPP[PPPV[\x81Q`\x01`\x01`@\x1B\x03\x81\x11\x15b\0\x01\x92Wb\0\x01\x92b\0\0\xD1V[b\0\x01\xAA\x81b\0\x01\xA3\x84Tb\0\0\xE7V[\x84b\0\x01#V[` \x80`\x1F\x83\x11`\x01\x81\x14b\0\x01\xE2W`\0\x84\x15b\0\x01\xC9WP\x85\x83\x01Q[`\0\x19`\x03\x86\x90\x1B\x1C\x19\x16`\x01\x85\x90\x1B\x17\x85Ub\0\x01mV[`\0\x85\x81R` \x81 `\x1F\x19\x86\x16\x91[\x82\x81\x10\x15b\0\x02\x13W\x88\x86\x01Q\x82U\x94\x84\x01\x94`\x01\x90\x91\x01\x90\x84\x01b\0\x01\xF2V[P\x85\x82\x10\x15b\0\x022W\x87\x85\x01Q`\0\x19`\x03\x88\x90\x1B`\xF8\x16\x1C\x19\x16\x81U[PPPPP`\x01\x90\x81\x1B\x01\x90UPV[`\x80Qa\r\xE6b\0\x02[`\09`\0PPa\r\xE6`\0\xF3\xFE`\x80`@R4\x80\x15a\0\x10W`\0\x80\xFD[P`\x046\x10a\0AW`\x005`\xE0\x1C\x80c6\r\x0F\xAD\x14a\0FW\x80c~\xF2r\x1F\x14a\0vW\x80c\x93\x0FBj\x14a\0\x9DW[`\0\x80\xFD[a\0Ya\0T6`\x04a\x08\xEEV[a\0\xD0V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01[`@Q\x80\x91\x03\x90\xF3[`@\x80Q\x80\x82\x01\x82R`\x05\x81Rd1.4.1`\xD8\x1B` \x82\x01R\x90Qa\0m\x91\x90a\tjV[a\0\xB0a\0\xAB6`\x04a\t\x93V[a\0\xEEV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x93\x84\x16\x81R\x92\x90\x91\x16` \x83\x01R\x01a\0mV[`\0a\0\xE5`\x01`\x01`\xA0\x1B\x03\x84\x16\x83a\x04\x9DV[\x90P[\x92\x91PPV[`\0\x80\x84Q`\0\x03a\x01\x13W`@Qc\x06\xBF\xE8\xD5`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@Qk\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x193``\x1B\x16` \x82\x01R`4\x81\x01\x85\x90R`\0\x90`T\x01`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x80Q` \x90\x91\x01 \x90P`\0a\x01j`\x01`\x01`\xA0\x1B\x03\x89\x16\x83a\x04\xFDV[\x90P`\0\x87`\0\x81Q\x81\x10a\x01\x81Wa\x01\x81a\n{V[` \x02` \x01\x01Q\x90P0\x88`\0\x81Q\x81\x10a\x01\x9FWa\x01\x9Fa\n{V[` \x02` \x01\x01\x90`\x01`\x01`\xA0\x1B\x03\x16\x90\x81`\x01`\x01`\xA0\x1B\x03\x16\x81RPP`\0\x88`\x01`\0s*\x15\xDED\x10\xD4\xC8\xAF\n{l\x12\x801 \xF4<B\xB8 `\0\x80`\0`@Q`$\x01a\x01\xF6\x97\x96\x95\x94\x93\x92\x91\x90a\n\x91V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x81R` \x82\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16c\xB6>\x80\r`\xE0\x1B\x17\x90RQc\x16\x88\xF0\xB9`\xE0\x1B\x81R\x90\x91P`\0\x90sN\x1D\xCFz\xD4\xE4`\xCF\xD3\x07\x91\xCC\xC4\xF9\xC8\xA4\xF8 \xECg\x90c\x16\x88\xF0\xB9\x90a\x02s\x90sAg\\\t\x9F24\x1B\xF8K\xFCS\x82\xAFSM\xF5\xC7F\x1A\x90\x86\x90\x8E\x90`\x04\x01a\x0BRV[` `@Q\x80\x83\x03\x81`\0\x87Z\xF1\x15\x80\x15a\x02\x92W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x02\xB6\x91\x90a\x0B\x86V[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x83\x16` \x82\x01Rs\x96A\xD7d\xFC\x13\xC8\xB6$\xC0D0\xC75l\x1C|\x81\x02\xE2\x81\x83\x01R``\x80\x82\x01\x8C\x90R\x82Q\x80\x83\x03\x90\x91\x01\x81R`\x80\x82\x01\x90\x92R\x91\x92P\x82\x91`\0\x91a\x03\x0F\x91`\xA4\x01a\tjV[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R` \x81\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16cC\x9F\xAB\x91`\xE0\x1B\x17\x90R\x90Pa\x03N`\x01`\x01`\xA0\x1B\x03\x87\x16\x82a\x05\x9FV[P`@Q`\x01`\x01`\xA0\x1B\x03\x87\x16`$\x82\x01R`\0\x90`D\x01`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R` \x81\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16ca\x0BY%`\xE0\x1B\x17\x90R\x90Pa\x03\x9F\x83`\0\x83a\x05\xE3V[`@Q`\x01`$\x82\x01R0`D\x82\x01R`\x01`\x01`\xA0\x1B\x03\x87\x16`d\x82\x01R`\0\x90`\x84\x01`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R` \x81\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16c\xE3\x18\xB5+`\xE0\x1B\x17\x90R\x90Pa\x03\xFC\x84`\x01\x83a\x05\xE3V[\x8E`\x01`\x01`\xA0\x1B\x03\x16\x7F\x81=9\x1D\xC4\x90\xD6\xC1\xDA\xE7\xD3\xFD\xD5U\xF37S=\x1D\xA2\xC9\x08\xC6\xEF\xD3mL\xF5W\xA62\x06\x89`@Qa\x04D\x91\x90`\x01`\x01`\xA0\x1B\x03\x91\x90\x91\x16\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA2`@Q`\x01`\x01`\xA0\x1B\x03\x86\x16\x81R\x7F\x821\xD1i\xF4\x16\xB6f\xAE\x7F\xA4?\xAA$\xA1\x88\x99s\x80u\xA5?2\xC9v\x17\xD1s\xB1\x89\xE3\x86\x90` \x01`@Q\x80\x91\x03\x90\xA1P\x95\x9D\x91\x9CP\x90\x9APPPPPPPPPPPV[`@Q0`8\x82\x01RoZ\xF4=\x82\x80>\x90=\x91`+W\xFD[\xF3\xFF`$\x82\x01R`\x14\x81\x01\x83\x90Rs=`-\x80`\n=9\x81\xF36==7===6=s\x81R`X\x81\x01\x82\x90R`7`\x0C\x82\x01 `x\x82\x01R`U`C\x90\x91\x01 `\0\x90a\0\xE5V[`\0v=`-\x80`\n=9\x81\xF36==7===6=s\0\0\0\x83``\x1B`\xE8\x1C\x17`\0RnZ\xF4=\x82\x80>\x90=\x91`+W\xFD[\xF3\x83`x\x1B\x17` R\x81`7`\t`\0\xF5\x90P`\x01`\x01`\xA0\x1B\x03\x81\x16a\0\xE8W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FERC1167: create2 failed\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01[`@Q\x80\x91\x03\x90\xFD[``a\0\xE5\x83\x83`\0`@Q\x80`@\x01`@R\x80`\x1E\x81R` \x01\x7FAddress: low-level call failed\0\0\x81RPa\x07KV[`@Qc\x1B\x1A#\xEF`\xE3\x1B\x81R`\0\x90`\x01`\x01`\xA0\x1B\x03\x85\x16\x90c\xD8\xD1\x1Fx\x90a\x06$\x90\x87\x90\x85\x90\x87\x90\x82\x90\x81\x90\x81\x90\x81\x90\x81\x903\x90\x8F\x90`\x04\x01a\x0B\xCCV[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x06AW=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x06e\x91\x90a\x0CBV[`@Qc\xD4\xD9\xBD\xCD`\xE0\x1B\x81R`\x04\x81\x01\x82\x90R\x90\x91P`\x01`\x01`\xA0\x1B\x03\x85\x16\x90c\xD4\xD9\xBD\xCD\x90`$\x01`\0`@Q\x80\x83\x03\x81`\0\x87\x80;\x15\x80\x15a\x06\xAAW`\0\x80\xFD[PZ\xF1\x15\x80\x15a\x06\xBEW=`\0\x80>=`\0\xFD[PP`@Qc5;\t\x01`\xE1\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x87\x16\x92Pcjv\x12\x02\x91Pa\x07\x01\x90\x87\x90`\0\x90\x87\x90\x82\x90\x81\x90\x81\x90\x81\x90\x81\x903\x90\x82\x90`\x04\x01a\x0C[V[` `@Q\x80\x83\x03\x81`\0\x87Z\xF1\x15\x80\x15a\x07 W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x07D\x91\x90a\rrV[PPPPPV[``\x82G\x10\x15a\x07\xACW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FAddress: insufficient balance fo`D\x82\x01Re\x1C\x88\x18\xD8[\x1B`\xD2\x1B`d\x82\x01R`\x84\x01a\x05\x96V[`\0\x80\x86`\x01`\x01`\xA0\x1B\x03\x16\x85\x87`@Qa\x07\xC8\x91\x90a\r\x94V[`\0`@Q\x80\x83\x03\x81\x85\x87Z\xF1\x92PPP=\x80`\0\x81\x14a\x08\x05W`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=`\0` \x84\x01>a\x08\nV[``\x91P[P\x91P\x91Pa\x08\x1B\x87\x83\x83\x87a\x08(V[\x92PPP[\x94\x93PPPPV[``\x83\x15a\x08\x97W\x82Q`\0\x03a\x08\x90W`\x01`\x01`\xA0\x1B\x03\x85\x16;a\x08\x90W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1D`$\x82\x01R\x7FAddress: call to non-contract\0\0\0`D\x82\x01R`d\x01a\x05\x96V[P\x81a\x08 V[a\x08 \x83\x83\x81Q\x15a\x08\xACW\x81Q\x80\x83` \x01\xFD[\x80`@QbF\x1B\xCD`\xE5\x1B\x81R`\x04\x01a\x05\x96\x91\x90a\tjV[`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x08\xDBW`\0\x80\xFD[PV[\x805a\x08\xE9\x81a\x08\xC6V[\x91\x90PV[`\0\x80`@\x83\x85\x03\x12\x15a\t\x01W`\0\x80\xFD[\x825a\t\x0C\x81a\x08\xC6V[\x94` \x93\x90\x93\x015\x93PPPV[`\0[\x83\x81\x10\x15a\t5W\x81\x81\x01Q\x83\x82\x01R` \x01a\t\x1DV[PP`\0\x91\x01RV[`\0\x81Q\x80\x84Ra\tV\x81` \x86\x01` \x86\x01a\t\x1AV[`\x1F\x01`\x1F\x19\x16\x92\x90\x92\x01` \x01\x92\x91PPV[` \x81R`\0a\0\xE5` \x83\x01\x84a\t>V[cNH{q`\xE0\x1B`\0R`A`\x04R`$`\0\xFD[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\t\xA9W`\0\x80\xFD[\x845a\t\xB4\x81a\x08\xC6V[\x93P` \x85\x81\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\t\xD2W`\0\x80\xFD[\x81\x88\x01\x91P\x88`\x1F\x83\x01\x12a\t\xE6W`\0\x80\xFD[\x815\x81\x81\x11\x15a\t\xF8Wa\t\xF8a\t}V[\x80`\x05\x1B`@Q`\x1F\x19`?\x83\x01\x16\x81\x01\x81\x81\x10\x85\x82\x11\x17\x15a\n\x1DWa\n\x1Da\t}V[`@R\x91\x82R\x84\x82\x01\x92P\x83\x81\x01\x85\x01\x91\x8B\x83\x11\x15a\n;W`\0\x80\xFD[\x93\x85\x01\x93[\x82\x85\x10\x15a\n`Wa\nQ\x85a\x08\xDEV[\x84R\x93\x85\x01\x93\x92\x85\x01\x92a\n@V[\x98\x9B\x98\x9APPPP`@\x87\x015\x96``\x015\x95\x94PPPPPV[cNH{q`\xE0\x1B`\0R`2`\x04R`$`\0\xFD[a\x01\0\x80\x82R\x88Q\x90\x82\x01\x81\x90R`\0\x90a\x01 \x83\x01\x90` \x90\x81\x8C\x01\x84[\x82\x81\x10\x15a\n\xD5W\x81Q`\x01`\x01`\xA0\x1B\x03\x16\x85R\x93\x83\x01\x93\x90\x83\x01\x90`\x01\x01a\n\xB0V[PPP`\xFF\x8A\x16\x84\x82\x01RP`\x01`\x01`\xA0\x1B\x03\x88\x16`@\x84\x01R\x82\x81\x03``\x84\x01R`\x01\x81R`\0` \x82\x01R`@\x81\x01\x91PPa\x0B\x1F`\x80\x83\x01\x87`\x01`\x01`\xA0\x1B\x03\x16\x90RV[`\x01`\x01`\xA0\x1B\x03\x85\x16`\xA0\x83\x01R`\xFF\x84\x16`\xC0\x83\x01R`\x01`\x01`\xA0\x1B\x03\x83\x16`\xE0\x83\x01R\x98\x97PPPPPPPPV[`\x01`\x01`\xA0\x1B\x03\x84\x16\x81R``` \x82\x01\x81\x90R`\0\x90a\x0Bv\x90\x83\x01\x85a\t>V[\x90P\x82`@\x83\x01R\x94\x93PPPPV[`\0` \x82\x84\x03\x12\x15a\x0B\x98W`\0\x80\xFD[\x81Qa\x0B\xA3\x81a\x08\xC6V[\x93\x92PPPV[`\x02\x81\x10a\x0B\xC8WcNH{q`\xE0\x1B`\0R`!`\x04R`$`\0\xFD[\x90RV[`\x01`\x01`\xA0\x1B\x03\x8B\x81\x16\x82R` \x82\x01\x8B\x90Ra\x01@`@\x83\x01\x81\x90R`\0\x91a\x0B\xF9\x84\x83\x01\x8Da\t>V[\x92Pa\x0C\x08``\x85\x01\x8Ca\x0B\xAAV[`\x80\x84\x01\x99\x90\x99RP`\xA0\x82\x01\x96\x90\x96R`\xC0\x81\x01\x94\x90\x94R\x91\x85\x16`\xE0\x84\x01R\x90\x93\x16a\x01\0\x82\x01Ra\x01 \x01\x91\x90\x91R\x94\x93PPPPV[`\0` \x82\x84\x03\x12\x15a\x0CTW`\0\x80\xFD[PQ\x91\x90PV[`\0a\x01@`\x01\x80`\xA0\x1B\x03\x80\x8E\x16\x84R` \x8D\x81\x86\x01R\x82`@\x86\x01Ra\x0C\x85\x83\x86\x01\x8Ea\t>V[\x92Pa\x0C\x94``\x86\x01\x8Da\x0B\xAAV[\x8A`\x80\x86\x01R\x89`\xA0\x86\x01R\x88`\xC0\x86\x01R\x81\x88\x16`\xE0\x86\x01R\x81\x87\x16a\x01\0\x86\x01R\x84\x83\x03a\x01 \x86\x01R`\0\x91P\x85T\x82`\x01\x82\x81\x1C\x91P\x80\x83\x16\x80a\x0C\xDDW`\x7F\x83\x16\x92P[\x84\x83\x10\x81\x03a\x0C\xFAWcNH{q`\xE0\x1B\x86R`\"`\x04R`$\x86\xFD[\x82\x87R` \x87\x01\x96P\x80\x80\x15a\r\x17W`\x01\x81\x14a\r-Wa\rXV[`\xFF\x19\x85\x16\x88R\x83\x15\x15`\x05\x1B\x88\x01\x96Pa\rXV[`\0\x8B\x81R` \x90 `\0[\x85\x81\x10\x15a\rRW\x81T\x8A\x82\x01R\x90\x84\x01\x90\x87\x01a\r9V[\x89\x01\x97PP[PPPPPP\x80\x92PPP\x9B\x9APPPPPPPPPPPV[`\0` \x82\x84\x03\x12\x15a\r\x84W`\0\x80\xFD[\x81Q\x80\x15\x15\x81\x14a\x0B\xA3W`\0\x80\xFD[`\0\x82Qa\r\xA6\x81\x84` \x87\x01a\t\x1AV[\x91\x90\x91\x01\x92\x91PPV\xFE\xA2dipfsX\"\x12 \x98\x86ik)\t\xC8\xEF\xE8\x18\x02\xF6\xE7_\xD0\xD1\x07.\x9BW\xE0\xCAV\x80\xD6\x16\x8A\xAF_\xAEK\xC3dsolcC\0\x08\x13\x003",
161 );
162 #[rustfmt::skip]
168 #[allow(clippy::all)]
169 pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
170 b"`\x80`@R4\x80\x15a\0\x10W`\0\x80\xFD[P`\x046\x10a\0AW`\x005`\xE0\x1C\x80c6\r\x0F\xAD\x14a\0FW\x80c~\xF2r\x1F\x14a\0vW\x80c\x93\x0FBj\x14a\0\x9DW[`\0\x80\xFD[a\0Ya\0T6`\x04a\x08\xEEV[a\0\xD0V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01[`@Q\x80\x91\x03\x90\xF3[`@\x80Q\x80\x82\x01\x82R`\x05\x81Rd1.4.1`\xD8\x1B` \x82\x01R\x90Qa\0m\x91\x90a\tjV[a\0\xB0a\0\xAB6`\x04a\t\x93V[a\0\xEEV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x93\x84\x16\x81R\x92\x90\x91\x16` \x83\x01R\x01a\0mV[`\0a\0\xE5`\x01`\x01`\xA0\x1B\x03\x84\x16\x83a\x04\x9DV[\x90P[\x92\x91PPV[`\0\x80\x84Q`\0\x03a\x01\x13W`@Qc\x06\xBF\xE8\xD5`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@Qk\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x193``\x1B\x16` \x82\x01R`4\x81\x01\x85\x90R`\0\x90`T\x01`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x80Q` \x90\x91\x01 \x90P`\0a\x01j`\x01`\x01`\xA0\x1B\x03\x89\x16\x83a\x04\xFDV[\x90P`\0\x87`\0\x81Q\x81\x10a\x01\x81Wa\x01\x81a\n{V[` \x02` \x01\x01Q\x90P0\x88`\0\x81Q\x81\x10a\x01\x9FWa\x01\x9Fa\n{V[` \x02` \x01\x01\x90`\x01`\x01`\xA0\x1B\x03\x16\x90\x81`\x01`\x01`\xA0\x1B\x03\x16\x81RPP`\0\x88`\x01`\0s*\x15\xDED\x10\xD4\xC8\xAF\n{l\x12\x801 \xF4<B\xB8 `\0\x80`\0`@Q`$\x01a\x01\xF6\x97\x96\x95\x94\x93\x92\x91\x90a\n\x91V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x81R` \x82\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16c\xB6>\x80\r`\xE0\x1B\x17\x90RQc\x16\x88\xF0\xB9`\xE0\x1B\x81R\x90\x91P`\0\x90sN\x1D\xCFz\xD4\xE4`\xCF\xD3\x07\x91\xCC\xC4\xF9\xC8\xA4\xF8 \xECg\x90c\x16\x88\xF0\xB9\x90a\x02s\x90sAg\\\t\x9F24\x1B\xF8K\xFCS\x82\xAFSM\xF5\xC7F\x1A\x90\x86\x90\x8E\x90`\x04\x01a\x0BRV[` `@Q\x80\x83\x03\x81`\0\x87Z\xF1\x15\x80\x15a\x02\x92W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x02\xB6\x91\x90a\x0B\x86V[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x83\x16` \x82\x01Rs\x96A\xD7d\xFC\x13\xC8\xB6$\xC0D0\xC75l\x1C|\x81\x02\xE2\x81\x83\x01R``\x80\x82\x01\x8C\x90R\x82Q\x80\x83\x03\x90\x91\x01\x81R`\x80\x82\x01\x90\x92R\x91\x92P\x82\x91`\0\x91a\x03\x0F\x91`\xA4\x01a\tjV[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R` \x81\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16cC\x9F\xAB\x91`\xE0\x1B\x17\x90R\x90Pa\x03N`\x01`\x01`\xA0\x1B\x03\x87\x16\x82a\x05\x9FV[P`@Q`\x01`\x01`\xA0\x1B\x03\x87\x16`$\x82\x01R`\0\x90`D\x01`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R` \x81\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16ca\x0BY%`\xE0\x1B\x17\x90R\x90Pa\x03\x9F\x83`\0\x83a\x05\xE3V[`@Q`\x01`$\x82\x01R0`D\x82\x01R`\x01`\x01`\xA0\x1B\x03\x87\x16`d\x82\x01R`\0\x90`\x84\x01`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R` \x81\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16c\xE3\x18\xB5+`\xE0\x1B\x17\x90R\x90Pa\x03\xFC\x84`\x01\x83a\x05\xE3V[\x8E`\x01`\x01`\xA0\x1B\x03\x16\x7F\x81=9\x1D\xC4\x90\xD6\xC1\xDA\xE7\xD3\xFD\xD5U\xF37S=\x1D\xA2\xC9\x08\xC6\xEF\xD3mL\xF5W\xA62\x06\x89`@Qa\x04D\x91\x90`\x01`\x01`\xA0\x1B\x03\x91\x90\x91\x16\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA2`@Q`\x01`\x01`\xA0\x1B\x03\x86\x16\x81R\x7F\x821\xD1i\xF4\x16\xB6f\xAE\x7F\xA4?\xAA$\xA1\x88\x99s\x80u\xA5?2\xC9v\x17\xD1s\xB1\x89\xE3\x86\x90` \x01`@Q\x80\x91\x03\x90\xA1P\x95\x9D\x91\x9CP\x90\x9APPPPPPPPPPPV[`@Q0`8\x82\x01RoZ\xF4=\x82\x80>\x90=\x91`+W\xFD[\xF3\xFF`$\x82\x01R`\x14\x81\x01\x83\x90Rs=`-\x80`\n=9\x81\xF36==7===6=s\x81R`X\x81\x01\x82\x90R`7`\x0C\x82\x01 `x\x82\x01R`U`C\x90\x91\x01 `\0\x90a\0\xE5V[`\0v=`-\x80`\n=9\x81\xF36==7===6=s\0\0\0\x83``\x1B`\xE8\x1C\x17`\0RnZ\xF4=\x82\x80>\x90=\x91`+W\xFD[\xF3\x83`x\x1B\x17` R\x81`7`\t`\0\xF5\x90P`\x01`\x01`\xA0\x1B\x03\x81\x16a\0\xE8W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FERC1167: create2 failed\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01[`@Q\x80\x91\x03\x90\xFD[``a\0\xE5\x83\x83`\0`@Q\x80`@\x01`@R\x80`\x1E\x81R` \x01\x7FAddress: low-level call failed\0\0\x81RPa\x07KV[`@Qc\x1B\x1A#\xEF`\xE3\x1B\x81R`\0\x90`\x01`\x01`\xA0\x1B\x03\x85\x16\x90c\xD8\xD1\x1Fx\x90a\x06$\x90\x87\x90\x85\x90\x87\x90\x82\x90\x81\x90\x81\x90\x81\x90\x81\x903\x90\x8F\x90`\x04\x01a\x0B\xCCV[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x06AW=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x06e\x91\x90a\x0CBV[`@Qc\xD4\xD9\xBD\xCD`\xE0\x1B\x81R`\x04\x81\x01\x82\x90R\x90\x91P`\x01`\x01`\xA0\x1B\x03\x85\x16\x90c\xD4\xD9\xBD\xCD\x90`$\x01`\0`@Q\x80\x83\x03\x81`\0\x87\x80;\x15\x80\x15a\x06\xAAW`\0\x80\xFD[PZ\xF1\x15\x80\x15a\x06\xBEW=`\0\x80>=`\0\xFD[PP`@Qc5;\t\x01`\xE1\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x87\x16\x92Pcjv\x12\x02\x91Pa\x07\x01\x90\x87\x90`\0\x90\x87\x90\x82\x90\x81\x90\x81\x90\x81\x90\x81\x903\x90\x82\x90`\x04\x01a\x0C[V[` `@Q\x80\x83\x03\x81`\0\x87Z\xF1\x15\x80\x15a\x07 W=`\0\x80>=`\0\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x07D\x91\x90a\rrV[PPPPPV[``\x82G\x10\x15a\x07\xACW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FAddress: insufficient balance fo`D\x82\x01Re\x1C\x88\x18\xD8[\x1B`\xD2\x1B`d\x82\x01R`\x84\x01a\x05\x96V[`\0\x80\x86`\x01`\x01`\xA0\x1B\x03\x16\x85\x87`@Qa\x07\xC8\x91\x90a\r\x94V[`\0`@Q\x80\x83\x03\x81\x85\x87Z\xF1\x92PPP=\x80`\0\x81\x14a\x08\x05W`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=`\0` \x84\x01>a\x08\nV[``\x91P[P\x91P\x91Pa\x08\x1B\x87\x83\x83\x87a\x08(V[\x92PPP[\x94\x93PPPPV[``\x83\x15a\x08\x97W\x82Q`\0\x03a\x08\x90W`\x01`\x01`\xA0\x1B\x03\x85\x16;a\x08\x90W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1D`$\x82\x01R\x7FAddress: call to non-contract\0\0\0`D\x82\x01R`d\x01a\x05\x96V[P\x81a\x08 V[a\x08 \x83\x83\x81Q\x15a\x08\xACW\x81Q\x80\x83` \x01\xFD[\x80`@QbF\x1B\xCD`\xE5\x1B\x81R`\x04\x01a\x05\x96\x91\x90a\tjV[`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x08\xDBW`\0\x80\xFD[PV[\x805a\x08\xE9\x81a\x08\xC6V[\x91\x90PV[`\0\x80`@\x83\x85\x03\x12\x15a\t\x01W`\0\x80\xFD[\x825a\t\x0C\x81a\x08\xC6V[\x94` \x93\x90\x93\x015\x93PPPV[`\0[\x83\x81\x10\x15a\t5W\x81\x81\x01Q\x83\x82\x01R` \x01a\t\x1DV[PP`\0\x91\x01RV[`\0\x81Q\x80\x84Ra\tV\x81` \x86\x01` \x86\x01a\t\x1AV[`\x1F\x01`\x1F\x19\x16\x92\x90\x92\x01` \x01\x92\x91PPV[` \x81R`\0a\0\xE5` \x83\x01\x84a\t>V[cNH{q`\xE0\x1B`\0R`A`\x04R`$`\0\xFD[`\0\x80`\0\x80`\x80\x85\x87\x03\x12\x15a\t\xA9W`\0\x80\xFD[\x845a\t\xB4\x81a\x08\xC6V[\x93P` \x85\x81\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x80\x82\x11\x15a\t\xD2W`\0\x80\xFD[\x81\x88\x01\x91P\x88`\x1F\x83\x01\x12a\t\xE6W`\0\x80\xFD[\x815\x81\x81\x11\x15a\t\xF8Wa\t\xF8a\t}V[\x80`\x05\x1B`@Q`\x1F\x19`?\x83\x01\x16\x81\x01\x81\x81\x10\x85\x82\x11\x17\x15a\n\x1DWa\n\x1Da\t}V[`@R\x91\x82R\x84\x82\x01\x92P\x83\x81\x01\x85\x01\x91\x8B\x83\x11\x15a\n;W`\0\x80\xFD[\x93\x85\x01\x93[\x82\x85\x10\x15a\n`Wa\nQ\x85a\x08\xDEV[\x84R\x93\x85\x01\x93\x92\x85\x01\x92a\n@V[\x98\x9B\x98\x9APPPP`@\x87\x015\x96``\x015\x95\x94PPPPPV[cNH{q`\xE0\x1B`\0R`2`\x04R`$`\0\xFD[a\x01\0\x80\x82R\x88Q\x90\x82\x01\x81\x90R`\0\x90a\x01 \x83\x01\x90` \x90\x81\x8C\x01\x84[\x82\x81\x10\x15a\n\xD5W\x81Q`\x01`\x01`\xA0\x1B\x03\x16\x85R\x93\x83\x01\x93\x90\x83\x01\x90`\x01\x01a\n\xB0V[PPP`\xFF\x8A\x16\x84\x82\x01RP`\x01`\x01`\xA0\x1B\x03\x88\x16`@\x84\x01R\x82\x81\x03``\x84\x01R`\x01\x81R`\0` \x82\x01R`@\x81\x01\x91PPa\x0B\x1F`\x80\x83\x01\x87`\x01`\x01`\xA0\x1B\x03\x16\x90RV[`\x01`\x01`\xA0\x1B\x03\x85\x16`\xA0\x83\x01R`\xFF\x84\x16`\xC0\x83\x01R`\x01`\x01`\xA0\x1B\x03\x83\x16`\xE0\x83\x01R\x98\x97PPPPPPPPV[`\x01`\x01`\xA0\x1B\x03\x84\x16\x81R``` \x82\x01\x81\x90R`\0\x90a\x0Bv\x90\x83\x01\x85a\t>V[\x90P\x82`@\x83\x01R\x94\x93PPPPV[`\0` \x82\x84\x03\x12\x15a\x0B\x98W`\0\x80\xFD[\x81Qa\x0B\xA3\x81a\x08\xC6V[\x93\x92PPPV[`\x02\x81\x10a\x0B\xC8WcNH{q`\xE0\x1B`\0R`!`\x04R`$`\0\xFD[\x90RV[`\x01`\x01`\xA0\x1B\x03\x8B\x81\x16\x82R` \x82\x01\x8B\x90Ra\x01@`@\x83\x01\x81\x90R`\0\x91a\x0B\xF9\x84\x83\x01\x8Da\t>V[\x92Pa\x0C\x08``\x85\x01\x8Ca\x0B\xAAV[`\x80\x84\x01\x99\x90\x99RP`\xA0\x82\x01\x96\x90\x96R`\xC0\x81\x01\x94\x90\x94R\x91\x85\x16`\xE0\x84\x01R\x90\x93\x16a\x01\0\x82\x01Ra\x01 \x01\x91\x90\x91R\x94\x93PPPPV[`\0` \x82\x84\x03\x12\x15a\x0CTW`\0\x80\xFD[PQ\x91\x90PV[`\0a\x01@`\x01\x80`\xA0\x1B\x03\x80\x8E\x16\x84R` \x8D\x81\x86\x01R\x82`@\x86\x01Ra\x0C\x85\x83\x86\x01\x8Ea\t>V[\x92Pa\x0C\x94``\x86\x01\x8Da\x0B\xAAV[\x8A`\x80\x86\x01R\x89`\xA0\x86\x01R\x88`\xC0\x86\x01R\x81\x88\x16`\xE0\x86\x01R\x81\x87\x16a\x01\0\x86\x01R\x84\x83\x03a\x01 \x86\x01R`\0\x91P\x85T\x82`\x01\x82\x81\x1C\x91P\x80\x83\x16\x80a\x0C\xDDW`\x7F\x83\x16\x92P[\x84\x83\x10\x81\x03a\x0C\xFAWcNH{q`\xE0\x1B\x86R`\"`\x04R`$\x86\xFD[\x82\x87R` \x87\x01\x96P\x80\x80\x15a\r\x17W`\x01\x81\x14a\r-Wa\rXV[`\xFF\x19\x85\x16\x88R\x83\x15\x15`\x05\x1B\x88\x01\x96Pa\rXV[`\0\x8B\x81R` \x90 `\0[\x85\x81\x10\x15a\rRW\x81T\x8A\x82\x01R\x90\x84\x01\x90\x87\x01a\r9V[\x89\x01\x97PP[PPPPPP\x80\x92PPP\x9B\x9APPPPPPPPPPPV[`\0` \x82\x84\x03\x12\x15a\r\x84W`\0\x80\xFD[\x81Q\x80\x15\x15\x81\x14a\x0B\xA3W`\0\x80\xFD[`\0\x82Qa\r\xA6\x81\x84` \x87\x01a\t\x1AV[\x91\x90\x91\x01\x92\x91PPV\xFE\xA2dipfsX\"\x12 \x98\x86ik)\t\xC8\xEF\xE8\x18\x02\xF6\xE7_\xD0\xD1\x07.\x9BW\xE0\xCAV\x80\xD6\x16\x8A\xAF_\xAEK\xC3dsolcC\0\x08\x13\x003",
171 );
172 #[derive(serde::Serialize, serde::Deserialize)]
173 #[derive(Default, Debug, PartialEq, Eq, Hash)]
174 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
179 #[derive(Clone)]
180 pub struct TooFewOwners;
181 #[allow(
182 non_camel_case_types,
183 non_snake_case,
184 clippy::pub_underscore_fields,
185 clippy::style
186 )]
187 const _: () = {
188 use alloy::sol_types as alloy_sol_types;
189 #[doc(hidden)]
190 type UnderlyingSolTuple<'a> = ();
191 #[doc(hidden)]
192 type UnderlyingRustTuple<'a> = ();
193 #[cfg(test)]
194 #[allow(dead_code, unreachable_patterns)]
195 fn _type_assertion(
196 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
197 ) {
198 match _t {
199 alloy_sol_types::private::AssertTypeEq::<
200 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
201 >(_) => {}
202 }
203 }
204 #[automatically_derived]
205 #[doc(hidden)]
206 impl ::core::convert::From<TooFewOwners> for UnderlyingRustTuple<'_> {
207 fn from(value: TooFewOwners) -> Self {
208 ()
209 }
210 }
211 #[automatically_derived]
212 #[doc(hidden)]
213 impl ::core::convert::From<UnderlyingRustTuple<'_>> for TooFewOwners {
214 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
215 Self
216 }
217 }
218 #[automatically_derived]
219 impl alloy_sol_types::SolError for TooFewOwners {
220 type Parameters<'a> = UnderlyingSolTuple<'a>;
221 type Token<'a> = <Self::Parameters<
222 'a,
223 > as alloy_sol_types::SolType>::Token<'a>;
224 const SIGNATURE: &'static str = "TooFewOwners()";
225 const SELECTOR: [u8; 4] = [13u8, 127u8, 209u8, 170u8];
226 #[inline]
227 fn new<'a>(
228 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
229 ) -> Self {
230 tuple.into()
231 }
232 #[inline]
233 fn tokenize(&self) -> Self::Token<'_> {
234 ()
235 }
236 #[inline]
237 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
238 <Self::Parameters<
239 '_,
240 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
241 .map(Self::new)
242 }
243 }
244 };
245 #[derive(serde::Serialize, serde::Deserialize)]
246 #[derive(Default, Debug, PartialEq, Eq, Hash)]
247 #[allow(
252 non_camel_case_types,
253 non_snake_case,
254 clippy::pub_underscore_fields,
255 clippy::style
256 )]
257 #[derive(Clone)]
258 pub struct NewHoprNodeStakeModule {
259 #[allow(missing_docs)]
260 pub moduleImplementation: alloy::sol_types::private::Address,
261 #[allow(missing_docs)]
262 pub instance: alloy::sol_types::private::Address,
263 }
264 #[allow(
265 non_camel_case_types,
266 non_snake_case,
267 clippy::pub_underscore_fields,
268 clippy::style
269 )]
270 const _: () = {
271 use alloy::sol_types as alloy_sol_types;
272 #[automatically_derived]
273 impl alloy_sol_types::SolEvent for NewHoprNodeStakeModule {
274 type DataTuple<'a> = (alloy::sol_types::sol_data::Address,);
275 type DataToken<'a> = <Self::DataTuple<
276 'a,
277 > as alloy_sol_types::SolType>::Token<'a>;
278 type TopicList = (
279 alloy_sol_types::sol_data::FixedBytes<32>,
280 alloy::sol_types::sol_data::Address,
281 );
282 const SIGNATURE: &'static str = "NewHoprNodeStakeModule(address,address)";
283 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
284 129u8, 61u8, 57u8, 29u8, 196u8, 144u8, 214u8, 193u8, 218u8, 231u8, 211u8,
285 253u8, 213u8, 85u8, 243u8, 55u8, 83u8, 61u8, 29u8, 162u8, 201u8, 8u8,
286 198u8, 239u8, 211u8, 109u8, 76u8, 245u8, 87u8, 166u8, 50u8, 6u8,
287 ]);
288 const ANONYMOUS: bool = false;
289 #[allow(unused_variables)]
290 #[inline]
291 fn new(
292 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
293 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
294 ) -> Self {
295 Self {
296 moduleImplementation: topics.1,
297 instance: data.0,
298 }
299 }
300 #[inline]
301 fn check_signature(
302 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
303 ) -> alloy_sol_types::Result<()> {
304 if topics.0 != Self::SIGNATURE_HASH {
305 return Err(
306 alloy_sol_types::Error::invalid_event_signature_hash(
307 Self::SIGNATURE,
308 topics.0,
309 Self::SIGNATURE_HASH,
310 ),
311 );
312 }
313 Ok(())
314 }
315 #[inline]
316 fn tokenize_body(&self) -> Self::DataToken<'_> {
317 (
318 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
319 &self.instance,
320 ),
321 )
322 }
323 #[inline]
324 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
325 (Self::SIGNATURE_HASH.into(), self.moduleImplementation.clone())
326 }
327 #[inline]
328 fn encode_topics_raw(
329 &self,
330 out: &mut [alloy_sol_types::abi::token::WordToken],
331 ) -> alloy_sol_types::Result<()> {
332 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
333 return Err(alloy_sol_types::Error::Overrun);
334 }
335 out[0usize] = alloy_sol_types::abi::token::WordToken(
336 Self::SIGNATURE_HASH,
337 );
338 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
339 &self.moduleImplementation,
340 );
341 Ok(())
342 }
343 }
344 #[automatically_derived]
345 impl alloy_sol_types::private::IntoLogData for NewHoprNodeStakeModule {
346 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
347 From::from(self)
348 }
349 fn into_log_data(self) -> alloy_sol_types::private::LogData {
350 From::from(&self)
351 }
352 }
353 #[automatically_derived]
354 impl From<&NewHoprNodeStakeModule> for alloy_sol_types::private::LogData {
355 #[inline]
356 fn from(this: &NewHoprNodeStakeModule) -> alloy_sol_types::private::LogData {
357 alloy_sol_types::SolEvent::encode_log_data(this)
358 }
359 }
360 };
361 #[derive(serde::Serialize, serde::Deserialize)]
362 #[derive(Default, Debug, PartialEq, Eq, Hash)]
363 #[allow(
368 non_camel_case_types,
369 non_snake_case,
370 clippy::pub_underscore_fields,
371 clippy::style
372 )]
373 #[derive(Clone)]
374 pub struct NewHoprNodeStakeSafe {
375 #[allow(missing_docs)]
376 pub instance: alloy::sol_types::private::Address,
377 }
378 #[allow(
379 non_camel_case_types,
380 non_snake_case,
381 clippy::pub_underscore_fields,
382 clippy::style
383 )]
384 const _: () = {
385 use alloy::sol_types as alloy_sol_types;
386 #[automatically_derived]
387 impl alloy_sol_types::SolEvent for NewHoprNodeStakeSafe {
388 type DataTuple<'a> = (alloy::sol_types::sol_data::Address,);
389 type DataToken<'a> = <Self::DataTuple<
390 'a,
391 > as alloy_sol_types::SolType>::Token<'a>;
392 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
393 const SIGNATURE: &'static str = "NewHoprNodeStakeSafe(address)";
394 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
395 130u8, 49u8, 209u8, 105u8, 244u8, 22u8, 182u8, 102u8, 174u8, 127u8,
396 164u8, 63u8, 170u8, 36u8, 161u8, 136u8, 153u8, 115u8, 128u8, 117u8,
397 165u8, 63u8, 50u8, 201u8, 118u8, 23u8, 209u8, 115u8, 177u8, 137u8, 227u8,
398 134u8,
399 ]);
400 const ANONYMOUS: bool = false;
401 #[allow(unused_variables)]
402 #[inline]
403 fn new(
404 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
405 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
406 ) -> Self {
407 Self { instance: data.0 }
408 }
409 #[inline]
410 fn check_signature(
411 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
412 ) -> alloy_sol_types::Result<()> {
413 if topics.0 != Self::SIGNATURE_HASH {
414 return Err(
415 alloy_sol_types::Error::invalid_event_signature_hash(
416 Self::SIGNATURE,
417 topics.0,
418 Self::SIGNATURE_HASH,
419 ),
420 );
421 }
422 Ok(())
423 }
424 #[inline]
425 fn tokenize_body(&self) -> Self::DataToken<'_> {
426 (
427 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
428 &self.instance,
429 ),
430 )
431 }
432 #[inline]
433 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
434 (Self::SIGNATURE_HASH.into(),)
435 }
436 #[inline]
437 fn encode_topics_raw(
438 &self,
439 out: &mut [alloy_sol_types::abi::token::WordToken],
440 ) -> alloy_sol_types::Result<()> {
441 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
442 return Err(alloy_sol_types::Error::Overrun);
443 }
444 out[0usize] = alloy_sol_types::abi::token::WordToken(
445 Self::SIGNATURE_HASH,
446 );
447 Ok(())
448 }
449 }
450 #[automatically_derived]
451 impl alloy_sol_types::private::IntoLogData for NewHoprNodeStakeSafe {
452 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
453 From::from(self)
454 }
455 fn into_log_data(self) -> alloy_sol_types::private::LogData {
456 From::from(&self)
457 }
458 }
459 #[automatically_derived]
460 impl From<&NewHoprNodeStakeSafe> for alloy_sol_types::private::LogData {
461 #[inline]
462 fn from(this: &NewHoprNodeStakeSafe) -> alloy_sol_types::private::LogData {
463 alloy_sol_types::SolEvent::encode_log_data(this)
464 }
465 }
466 };
467 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
472 #[derive(Clone)]
473 pub struct constructorCall {}
474 const _: () = {
475 use alloy::sol_types as alloy_sol_types;
476 {
477 #[doc(hidden)]
478 type UnderlyingSolTuple<'a> = ();
479 #[doc(hidden)]
480 type UnderlyingRustTuple<'a> = ();
481 #[cfg(test)]
482 #[allow(dead_code, unreachable_patterns)]
483 fn _type_assertion(
484 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
485 ) {
486 match _t {
487 alloy_sol_types::private::AssertTypeEq::<
488 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
489 >(_) => {}
490 }
491 }
492 #[automatically_derived]
493 #[doc(hidden)]
494 impl ::core::convert::From<constructorCall> for UnderlyingRustTuple<'_> {
495 fn from(value: constructorCall) -> Self {
496 ()
497 }
498 }
499 #[automatically_derived]
500 #[doc(hidden)]
501 impl ::core::convert::From<UnderlyingRustTuple<'_>> for constructorCall {
502 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
503 Self {}
504 }
505 }
506 }
507 #[automatically_derived]
508 impl alloy_sol_types::SolConstructor for constructorCall {
509 type Parameters<'a> = ();
510 type Token<'a> = <Self::Parameters<
511 'a,
512 > as alloy_sol_types::SolType>::Token<'a>;
513 #[inline]
514 fn new<'a>(
515 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
516 ) -> Self {
517 tuple.into()
518 }
519 #[inline]
520 fn tokenize(&self) -> Self::Token<'_> {
521 ()
522 }
523 }
524 };
525 #[derive(serde::Serialize, serde::Deserialize)]
526 #[derive(Default, Debug, PartialEq, Eq, Hash)]
527 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
532 #[derive(Clone)]
533 pub struct cloneCall {
534 #[allow(missing_docs)]
535 pub moduleSingletonAddress: alloy::sol_types::private::Address,
536 #[allow(missing_docs)]
537 pub admins: alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
538 #[allow(missing_docs)]
539 pub nonce: alloy::sol_types::private::primitives::aliases::U256,
540 #[allow(missing_docs)]
541 pub defaultTarget: alloy::sol_types::private::FixedBytes<32>,
542 }
543 #[derive(serde::Serialize, serde::Deserialize)]
544 #[derive(Default, Debug, PartialEq, Eq, Hash)]
545 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
547 #[derive(Clone)]
548 pub struct cloneReturn {
549 #[allow(missing_docs)]
550 pub _0: alloy::sol_types::private::Address,
551 #[allow(missing_docs)]
552 pub _1: alloy::sol_types::private::Address,
553 }
554 #[allow(
555 non_camel_case_types,
556 non_snake_case,
557 clippy::pub_underscore_fields,
558 clippy::style
559 )]
560 const _: () = {
561 use alloy::sol_types as alloy_sol_types;
562 {
563 #[doc(hidden)]
564 type UnderlyingSolTuple<'a> = (
565 alloy::sol_types::sol_data::Address,
566 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
567 alloy::sol_types::sol_data::Uint<256>,
568 alloy::sol_types::sol_data::FixedBytes<32>,
569 );
570 #[doc(hidden)]
571 type UnderlyingRustTuple<'a> = (
572 alloy::sol_types::private::Address,
573 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
574 alloy::sol_types::private::primitives::aliases::U256,
575 alloy::sol_types::private::FixedBytes<32>,
576 );
577 #[cfg(test)]
578 #[allow(dead_code, unreachable_patterns)]
579 fn _type_assertion(
580 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
581 ) {
582 match _t {
583 alloy_sol_types::private::AssertTypeEq::<
584 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
585 >(_) => {}
586 }
587 }
588 #[automatically_derived]
589 #[doc(hidden)]
590 impl ::core::convert::From<cloneCall> for UnderlyingRustTuple<'_> {
591 fn from(value: cloneCall) -> Self {
592 (
593 value.moduleSingletonAddress,
594 value.admins,
595 value.nonce,
596 value.defaultTarget,
597 )
598 }
599 }
600 #[automatically_derived]
601 #[doc(hidden)]
602 impl ::core::convert::From<UnderlyingRustTuple<'_>> for cloneCall {
603 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
604 Self {
605 moduleSingletonAddress: tuple.0,
606 admins: tuple.1,
607 nonce: tuple.2,
608 defaultTarget: tuple.3,
609 }
610 }
611 }
612 }
613 {
614 #[doc(hidden)]
615 type UnderlyingSolTuple<'a> = (
616 alloy::sol_types::sol_data::Address,
617 alloy::sol_types::sol_data::Address,
618 );
619 #[doc(hidden)]
620 type UnderlyingRustTuple<'a> = (
621 alloy::sol_types::private::Address,
622 alloy::sol_types::private::Address,
623 );
624 #[cfg(test)]
625 #[allow(dead_code, unreachable_patterns)]
626 fn _type_assertion(
627 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
628 ) {
629 match _t {
630 alloy_sol_types::private::AssertTypeEq::<
631 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
632 >(_) => {}
633 }
634 }
635 #[automatically_derived]
636 #[doc(hidden)]
637 impl ::core::convert::From<cloneReturn> for UnderlyingRustTuple<'_> {
638 fn from(value: cloneReturn) -> Self {
639 (value._0, value._1)
640 }
641 }
642 #[automatically_derived]
643 #[doc(hidden)]
644 impl ::core::convert::From<UnderlyingRustTuple<'_>> for cloneReturn {
645 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
646 Self { _0: tuple.0, _1: tuple.1 }
647 }
648 }
649 }
650 impl cloneReturn {
651 fn _tokenize(
652 &self,
653 ) -> <cloneCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
654 (
655 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
656 &self._0,
657 ),
658 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
659 &self._1,
660 ),
661 )
662 }
663 }
664 #[automatically_derived]
665 impl alloy_sol_types::SolCall for cloneCall {
666 type Parameters<'a> = (
667 alloy::sol_types::sol_data::Address,
668 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
669 alloy::sol_types::sol_data::Uint<256>,
670 alloy::sol_types::sol_data::FixedBytes<32>,
671 );
672 type Token<'a> = <Self::Parameters<
673 'a,
674 > as alloy_sol_types::SolType>::Token<'a>;
675 type Return = cloneReturn;
676 type ReturnTuple<'a> = (
677 alloy::sol_types::sol_data::Address,
678 alloy::sol_types::sol_data::Address,
679 );
680 type ReturnToken<'a> = <Self::ReturnTuple<
681 'a,
682 > as alloy_sol_types::SolType>::Token<'a>;
683 const SIGNATURE: &'static str = "clone(address,address[],uint256,bytes32)";
684 const SELECTOR: [u8; 4] = [147u8, 15u8, 66u8, 106u8];
685 #[inline]
686 fn new<'a>(
687 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
688 ) -> Self {
689 tuple.into()
690 }
691 #[inline]
692 fn tokenize(&self) -> Self::Token<'_> {
693 (
694 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
695 &self.moduleSingletonAddress,
696 ),
697 <alloy::sol_types::sol_data::Array<
698 alloy::sol_types::sol_data::Address,
699 > as alloy_sol_types::SolType>::tokenize(&self.admins),
700 <alloy::sol_types::sol_data::Uint<
701 256,
702 > as alloy_sol_types::SolType>::tokenize(&self.nonce),
703 <alloy::sol_types::sol_data::FixedBytes<
704 32,
705 > as alloy_sol_types::SolType>::tokenize(&self.defaultTarget),
706 )
707 }
708 #[inline]
709 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
710 cloneReturn::_tokenize(ret)
711 }
712 #[inline]
713 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
714 <Self::ReturnTuple<
715 '_,
716 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
717 .map(Into::into)
718 }
719 #[inline]
720 fn abi_decode_returns_validate(
721 data: &[u8],
722 ) -> alloy_sol_types::Result<Self::Return> {
723 <Self::ReturnTuple<
724 '_,
725 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
726 .map(Into::into)
727 }
728 }
729 };
730 #[derive(serde::Serialize, serde::Deserialize)]
731 #[derive(Default, Debug, PartialEq, Eq, Hash)]
732 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
737 #[derive(Clone)]
738 pub struct predictDeterministicAddressCall {
739 #[allow(missing_docs)]
740 pub implementation: alloy::sol_types::private::Address,
741 #[allow(missing_docs)]
742 pub salt: alloy::sol_types::private::FixedBytes<32>,
743 }
744 #[derive(serde::Serialize, serde::Deserialize)]
745 #[derive(Default, Debug, PartialEq, Eq, Hash)]
746 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
748 #[derive(Clone)]
749 pub struct predictDeterministicAddressReturn {
750 #[allow(missing_docs)]
751 pub predicted: alloy::sol_types::private::Address,
752 }
753 #[allow(
754 non_camel_case_types,
755 non_snake_case,
756 clippy::pub_underscore_fields,
757 clippy::style
758 )]
759 const _: () = {
760 use alloy::sol_types as alloy_sol_types;
761 {
762 #[doc(hidden)]
763 type UnderlyingSolTuple<'a> = (
764 alloy::sol_types::sol_data::Address,
765 alloy::sol_types::sol_data::FixedBytes<32>,
766 );
767 #[doc(hidden)]
768 type UnderlyingRustTuple<'a> = (
769 alloy::sol_types::private::Address,
770 alloy::sol_types::private::FixedBytes<32>,
771 );
772 #[cfg(test)]
773 #[allow(dead_code, unreachable_patterns)]
774 fn _type_assertion(
775 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
776 ) {
777 match _t {
778 alloy_sol_types::private::AssertTypeEq::<
779 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
780 >(_) => {}
781 }
782 }
783 #[automatically_derived]
784 #[doc(hidden)]
785 impl ::core::convert::From<predictDeterministicAddressCall>
786 for UnderlyingRustTuple<'_> {
787 fn from(value: predictDeterministicAddressCall) -> Self {
788 (value.implementation, value.salt)
789 }
790 }
791 #[automatically_derived]
792 #[doc(hidden)]
793 impl ::core::convert::From<UnderlyingRustTuple<'_>>
794 for predictDeterministicAddressCall {
795 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
796 Self {
797 implementation: tuple.0,
798 salt: tuple.1,
799 }
800 }
801 }
802 }
803 {
804 #[doc(hidden)]
805 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
806 #[doc(hidden)]
807 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
808 #[cfg(test)]
809 #[allow(dead_code, unreachable_patterns)]
810 fn _type_assertion(
811 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
812 ) {
813 match _t {
814 alloy_sol_types::private::AssertTypeEq::<
815 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
816 >(_) => {}
817 }
818 }
819 #[automatically_derived]
820 #[doc(hidden)]
821 impl ::core::convert::From<predictDeterministicAddressReturn>
822 for UnderlyingRustTuple<'_> {
823 fn from(value: predictDeterministicAddressReturn) -> Self {
824 (value.predicted,)
825 }
826 }
827 #[automatically_derived]
828 #[doc(hidden)]
829 impl ::core::convert::From<UnderlyingRustTuple<'_>>
830 for predictDeterministicAddressReturn {
831 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
832 Self { predicted: tuple.0 }
833 }
834 }
835 }
836 #[automatically_derived]
837 impl alloy_sol_types::SolCall for predictDeterministicAddressCall {
838 type Parameters<'a> = (
839 alloy::sol_types::sol_data::Address,
840 alloy::sol_types::sol_data::FixedBytes<32>,
841 );
842 type Token<'a> = <Self::Parameters<
843 'a,
844 > as alloy_sol_types::SolType>::Token<'a>;
845 type Return = alloy::sol_types::private::Address;
846 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
847 type ReturnToken<'a> = <Self::ReturnTuple<
848 'a,
849 > as alloy_sol_types::SolType>::Token<'a>;
850 const SIGNATURE: &'static str = "predictDeterministicAddress(address,bytes32)";
851 const SELECTOR: [u8; 4] = [54u8, 13u8, 15u8, 173u8];
852 #[inline]
853 fn new<'a>(
854 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
855 ) -> Self {
856 tuple.into()
857 }
858 #[inline]
859 fn tokenize(&self) -> Self::Token<'_> {
860 (
861 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
862 &self.implementation,
863 ),
864 <alloy::sol_types::sol_data::FixedBytes<
865 32,
866 > as alloy_sol_types::SolType>::tokenize(&self.salt),
867 )
868 }
869 #[inline]
870 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
871 (
872 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
873 ret,
874 ),
875 )
876 }
877 #[inline]
878 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
879 <Self::ReturnTuple<
880 '_,
881 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
882 .map(|r| {
883 let r: predictDeterministicAddressReturn = r.into();
884 r.predicted
885 })
886 }
887 #[inline]
888 fn abi_decode_returns_validate(
889 data: &[u8],
890 ) -> alloy_sol_types::Result<Self::Return> {
891 <Self::ReturnTuple<
892 '_,
893 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
894 .map(|r| {
895 let r: predictDeterministicAddressReturn = r.into();
896 r.predicted
897 })
898 }
899 }
900 };
901 #[derive(serde::Serialize, serde::Deserialize)]
902 #[derive(Default, Debug, PartialEq, Eq, Hash)]
903 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
908 #[derive(Clone)]
909 pub struct safeVersionCall;
910 #[derive(serde::Serialize, serde::Deserialize)]
911 #[derive(Default, Debug, PartialEq, Eq, Hash)]
912 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
914 #[derive(Clone)]
915 pub struct safeVersionReturn {
916 #[allow(missing_docs)]
917 pub _0: alloy::sol_types::private::String,
918 }
919 #[allow(
920 non_camel_case_types,
921 non_snake_case,
922 clippy::pub_underscore_fields,
923 clippy::style
924 )]
925 const _: () = {
926 use alloy::sol_types as alloy_sol_types;
927 {
928 #[doc(hidden)]
929 type UnderlyingSolTuple<'a> = ();
930 #[doc(hidden)]
931 type UnderlyingRustTuple<'a> = ();
932 #[cfg(test)]
933 #[allow(dead_code, unreachable_patterns)]
934 fn _type_assertion(
935 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
936 ) {
937 match _t {
938 alloy_sol_types::private::AssertTypeEq::<
939 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
940 >(_) => {}
941 }
942 }
943 #[automatically_derived]
944 #[doc(hidden)]
945 impl ::core::convert::From<safeVersionCall> for UnderlyingRustTuple<'_> {
946 fn from(value: safeVersionCall) -> Self {
947 ()
948 }
949 }
950 #[automatically_derived]
951 #[doc(hidden)]
952 impl ::core::convert::From<UnderlyingRustTuple<'_>> for safeVersionCall {
953 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
954 Self
955 }
956 }
957 }
958 {
959 #[doc(hidden)]
960 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,);
961 #[doc(hidden)]
962 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,);
963 #[cfg(test)]
964 #[allow(dead_code, unreachable_patterns)]
965 fn _type_assertion(
966 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
967 ) {
968 match _t {
969 alloy_sol_types::private::AssertTypeEq::<
970 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
971 >(_) => {}
972 }
973 }
974 #[automatically_derived]
975 #[doc(hidden)]
976 impl ::core::convert::From<safeVersionReturn> for UnderlyingRustTuple<'_> {
977 fn from(value: safeVersionReturn) -> Self {
978 (value._0,)
979 }
980 }
981 #[automatically_derived]
982 #[doc(hidden)]
983 impl ::core::convert::From<UnderlyingRustTuple<'_>> for safeVersionReturn {
984 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
985 Self { _0: tuple.0 }
986 }
987 }
988 }
989 #[automatically_derived]
990 impl alloy_sol_types::SolCall for safeVersionCall {
991 type Parameters<'a> = ();
992 type Token<'a> = <Self::Parameters<
993 'a,
994 > as alloy_sol_types::SolType>::Token<'a>;
995 type Return = alloy::sol_types::private::String;
996 type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,);
997 type ReturnToken<'a> = <Self::ReturnTuple<
998 'a,
999 > as alloy_sol_types::SolType>::Token<'a>;
1000 const SIGNATURE: &'static str = "safeVersion()";
1001 const SELECTOR: [u8; 4] = [126u8, 242u8, 114u8, 31u8];
1002 #[inline]
1003 fn new<'a>(
1004 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1005 ) -> Self {
1006 tuple.into()
1007 }
1008 #[inline]
1009 fn tokenize(&self) -> Self::Token<'_> {
1010 ()
1011 }
1012 #[inline]
1013 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
1014 (
1015 <alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
1016 ret,
1017 ),
1018 )
1019 }
1020 #[inline]
1021 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
1022 <Self::ReturnTuple<
1023 '_,
1024 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
1025 .map(|r| {
1026 let r: safeVersionReturn = r.into();
1027 r._0
1028 })
1029 }
1030 #[inline]
1031 fn abi_decode_returns_validate(
1032 data: &[u8],
1033 ) -> alloy_sol_types::Result<Self::Return> {
1034 <Self::ReturnTuple<
1035 '_,
1036 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
1037 .map(|r| {
1038 let r: safeVersionReturn = r.into();
1039 r._0
1040 })
1041 }
1042 }
1043 };
1044 #[derive(serde::Serialize, serde::Deserialize)]
1046 #[derive()]
1047 pub enum HoprNodeStakeFactoryCalls {
1048 #[allow(missing_docs)]
1049 clone(cloneCall),
1050 #[allow(missing_docs)]
1051 predictDeterministicAddress(predictDeterministicAddressCall),
1052 #[allow(missing_docs)]
1053 safeVersion(safeVersionCall),
1054 }
1055 #[automatically_derived]
1056 impl HoprNodeStakeFactoryCalls {
1057 pub const SELECTORS: &'static [[u8; 4usize]] = &[
1064 [54u8, 13u8, 15u8, 173u8],
1065 [126u8, 242u8, 114u8, 31u8],
1066 [147u8, 15u8, 66u8, 106u8],
1067 ];
1068 }
1069 #[automatically_derived]
1070 impl alloy_sol_types::SolInterface for HoprNodeStakeFactoryCalls {
1071 const NAME: &'static str = "HoprNodeStakeFactoryCalls";
1072 const MIN_DATA_LENGTH: usize = 0usize;
1073 const COUNT: usize = 3usize;
1074 #[inline]
1075 fn selector(&self) -> [u8; 4] {
1076 match self {
1077 Self::clone(_) => <cloneCall as alloy_sol_types::SolCall>::SELECTOR,
1078 Self::predictDeterministicAddress(_) => {
1079 <predictDeterministicAddressCall as alloy_sol_types::SolCall>::SELECTOR
1080 }
1081 Self::safeVersion(_) => {
1082 <safeVersionCall as alloy_sol_types::SolCall>::SELECTOR
1083 }
1084 }
1085 }
1086 #[inline]
1087 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
1088 Self::SELECTORS.get(i).copied()
1089 }
1090 #[inline]
1091 fn valid_selector(selector: [u8; 4]) -> bool {
1092 Self::SELECTORS.binary_search(&selector).is_ok()
1093 }
1094 #[inline]
1095 #[allow(non_snake_case)]
1096 fn abi_decode_raw(
1097 selector: [u8; 4],
1098 data: &[u8],
1099 ) -> alloy_sol_types::Result<Self> {
1100 static DECODE_SHIMS: &[fn(
1101 &[u8],
1102 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryCalls>] = &[
1103 {
1104 fn predictDeterministicAddress(
1105 data: &[u8],
1106 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryCalls> {
1107 <predictDeterministicAddressCall as alloy_sol_types::SolCall>::abi_decode_raw(
1108 data,
1109 )
1110 .map(HoprNodeStakeFactoryCalls::predictDeterministicAddress)
1111 }
1112 predictDeterministicAddress
1113 },
1114 {
1115 fn safeVersion(
1116 data: &[u8],
1117 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryCalls> {
1118 <safeVersionCall as alloy_sol_types::SolCall>::abi_decode_raw(
1119 data,
1120 )
1121 .map(HoprNodeStakeFactoryCalls::safeVersion)
1122 }
1123 safeVersion
1124 },
1125 {
1126 fn clone(
1127 data: &[u8],
1128 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryCalls> {
1129 <cloneCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
1130 .map(HoprNodeStakeFactoryCalls::clone)
1131 }
1132 clone
1133 },
1134 ];
1135 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
1136 return Err(
1137 alloy_sol_types::Error::unknown_selector(
1138 <Self as alloy_sol_types::SolInterface>::NAME,
1139 selector,
1140 ),
1141 );
1142 };
1143 DECODE_SHIMS[idx](data)
1144 }
1145 #[inline]
1146 #[allow(non_snake_case)]
1147 fn abi_decode_raw_validate(
1148 selector: [u8; 4],
1149 data: &[u8],
1150 ) -> alloy_sol_types::Result<Self> {
1151 static DECODE_VALIDATE_SHIMS: &[fn(
1152 &[u8],
1153 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryCalls>] = &[
1154 {
1155 fn predictDeterministicAddress(
1156 data: &[u8],
1157 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryCalls> {
1158 <predictDeterministicAddressCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
1159 data,
1160 )
1161 .map(HoprNodeStakeFactoryCalls::predictDeterministicAddress)
1162 }
1163 predictDeterministicAddress
1164 },
1165 {
1166 fn safeVersion(
1167 data: &[u8],
1168 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryCalls> {
1169 <safeVersionCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
1170 data,
1171 )
1172 .map(HoprNodeStakeFactoryCalls::safeVersion)
1173 }
1174 safeVersion
1175 },
1176 {
1177 fn clone(
1178 data: &[u8],
1179 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryCalls> {
1180 <cloneCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
1181 data,
1182 )
1183 .map(HoprNodeStakeFactoryCalls::clone)
1184 }
1185 clone
1186 },
1187 ];
1188 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
1189 return Err(
1190 alloy_sol_types::Error::unknown_selector(
1191 <Self as alloy_sol_types::SolInterface>::NAME,
1192 selector,
1193 ),
1194 );
1195 };
1196 DECODE_VALIDATE_SHIMS[idx](data)
1197 }
1198 #[inline]
1199 fn abi_encoded_size(&self) -> usize {
1200 match self {
1201 Self::clone(inner) => {
1202 <cloneCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
1203 }
1204 Self::predictDeterministicAddress(inner) => {
1205 <predictDeterministicAddressCall as alloy_sol_types::SolCall>::abi_encoded_size(
1206 inner,
1207 )
1208 }
1209 Self::safeVersion(inner) => {
1210 <safeVersionCall as alloy_sol_types::SolCall>::abi_encoded_size(
1211 inner,
1212 )
1213 }
1214 }
1215 }
1216 #[inline]
1217 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
1218 match self {
1219 Self::clone(inner) => {
1220 <cloneCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
1221 }
1222 Self::predictDeterministicAddress(inner) => {
1223 <predictDeterministicAddressCall as alloy_sol_types::SolCall>::abi_encode_raw(
1224 inner,
1225 out,
1226 )
1227 }
1228 Self::safeVersion(inner) => {
1229 <safeVersionCall as alloy_sol_types::SolCall>::abi_encode_raw(
1230 inner,
1231 out,
1232 )
1233 }
1234 }
1235 }
1236 }
1237 #[derive(serde::Serialize, serde::Deserialize)]
1239 #[derive(Debug, PartialEq, Eq, Hash)]
1240 pub enum HoprNodeStakeFactoryErrors {
1241 #[allow(missing_docs)]
1242 TooFewOwners(TooFewOwners),
1243 }
1244 #[automatically_derived]
1245 impl HoprNodeStakeFactoryErrors {
1246 pub const SELECTORS: &'static [[u8; 4usize]] = &[[13u8, 127u8, 209u8, 170u8]];
1253 }
1254 #[automatically_derived]
1255 impl alloy_sol_types::SolInterface for HoprNodeStakeFactoryErrors {
1256 const NAME: &'static str = "HoprNodeStakeFactoryErrors";
1257 const MIN_DATA_LENGTH: usize = 0usize;
1258 const COUNT: usize = 1usize;
1259 #[inline]
1260 fn selector(&self) -> [u8; 4] {
1261 match self {
1262 Self::TooFewOwners(_) => {
1263 <TooFewOwners as alloy_sol_types::SolError>::SELECTOR
1264 }
1265 }
1266 }
1267 #[inline]
1268 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
1269 Self::SELECTORS.get(i).copied()
1270 }
1271 #[inline]
1272 fn valid_selector(selector: [u8; 4]) -> bool {
1273 Self::SELECTORS.binary_search(&selector).is_ok()
1274 }
1275 #[inline]
1276 #[allow(non_snake_case)]
1277 fn abi_decode_raw(
1278 selector: [u8; 4],
1279 data: &[u8],
1280 ) -> alloy_sol_types::Result<Self> {
1281 static DECODE_SHIMS: &[fn(
1282 &[u8],
1283 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryErrors>] = &[
1284 {
1285 fn TooFewOwners(
1286 data: &[u8],
1287 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryErrors> {
1288 <TooFewOwners as alloy_sol_types::SolError>::abi_decode_raw(data)
1289 .map(HoprNodeStakeFactoryErrors::TooFewOwners)
1290 }
1291 TooFewOwners
1292 },
1293 ];
1294 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
1295 return Err(
1296 alloy_sol_types::Error::unknown_selector(
1297 <Self as alloy_sol_types::SolInterface>::NAME,
1298 selector,
1299 ),
1300 );
1301 };
1302 DECODE_SHIMS[idx](data)
1303 }
1304 #[inline]
1305 #[allow(non_snake_case)]
1306 fn abi_decode_raw_validate(
1307 selector: [u8; 4],
1308 data: &[u8],
1309 ) -> alloy_sol_types::Result<Self> {
1310 static DECODE_VALIDATE_SHIMS: &[fn(
1311 &[u8],
1312 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryErrors>] = &[
1313 {
1314 fn TooFewOwners(
1315 data: &[u8],
1316 ) -> alloy_sol_types::Result<HoprNodeStakeFactoryErrors> {
1317 <TooFewOwners as alloy_sol_types::SolError>::abi_decode_raw_validate(
1318 data,
1319 )
1320 .map(HoprNodeStakeFactoryErrors::TooFewOwners)
1321 }
1322 TooFewOwners
1323 },
1324 ];
1325 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
1326 return Err(
1327 alloy_sol_types::Error::unknown_selector(
1328 <Self as alloy_sol_types::SolInterface>::NAME,
1329 selector,
1330 ),
1331 );
1332 };
1333 DECODE_VALIDATE_SHIMS[idx](data)
1334 }
1335 #[inline]
1336 fn abi_encoded_size(&self) -> usize {
1337 match self {
1338 Self::TooFewOwners(inner) => {
1339 <TooFewOwners as alloy_sol_types::SolError>::abi_encoded_size(inner)
1340 }
1341 }
1342 }
1343 #[inline]
1344 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
1345 match self {
1346 Self::TooFewOwners(inner) => {
1347 <TooFewOwners as alloy_sol_types::SolError>::abi_encode_raw(
1348 inner,
1349 out,
1350 )
1351 }
1352 }
1353 }
1354 }
1355 #[derive(serde::Serialize, serde::Deserialize)]
1357 #[derive(Debug, PartialEq, Eq, Hash)]
1358 pub enum HoprNodeStakeFactoryEvents {
1359 #[allow(missing_docs)]
1360 NewHoprNodeStakeModule(NewHoprNodeStakeModule),
1361 #[allow(missing_docs)]
1362 NewHoprNodeStakeSafe(NewHoprNodeStakeSafe),
1363 }
1364 #[automatically_derived]
1365 impl HoprNodeStakeFactoryEvents {
1366 pub const SELECTORS: &'static [[u8; 32usize]] = &[
1373 [
1374 129u8, 61u8, 57u8, 29u8, 196u8, 144u8, 214u8, 193u8, 218u8, 231u8, 211u8,
1375 253u8, 213u8, 85u8, 243u8, 55u8, 83u8, 61u8, 29u8, 162u8, 201u8, 8u8,
1376 198u8, 239u8, 211u8, 109u8, 76u8, 245u8, 87u8, 166u8, 50u8, 6u8,
1377 ],
1378 [
1379 130u8, 49u8, 209u8, 105u8, 244u8, 22u8, 182u8, 102u8, 174u8, 127u8,
1380 164u8, 63u8, 170u8, 36u8, 161u8, 136u8, 153u8, 115u8, 128u8, 117u8,
1381 165u8, 63u8, 50u8, 201u8, 118u8, 23u8, 209u8, 115u8, 177u8, 137u8, 227u8,
1382 134u8,
1383 ],
1384 ];
1385 }
1386 #[automatically_derived]
1387 impl alloy_sol_types::SolEventInterface for HoprNodeStakeFactoryEvents {
1388 const NAME: &'static str = "HoprNodeStakeFactoryEvents";
1389 const COUNT: usize = 2usize;
1390 fn decode_raw_log(
1391 topics: &[alloy_sol_types::Word],
1392 data: &[u8],
1393 ) -> alloy_sol_types::Result<Self> {
1394 match topics.first().copied() {
1395 Some(
1396 <NewHoprNodeStakeModule as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
1397 ) => {
1398 <NewHoprNodeStakeModule as alloy_sol_types::SolEvent>::decode_raw_log(
1399 topics,
1400 data,
1401 )
1402 .map(Self::NewHoprNodeStakeModule)
1403 }
1404 Some(
1405 <NewHoprNodeStakeSafe as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
1406 ) => {
1407 <NewHoprNodeStakeSafe as alloy_sol_types::SolEvent>::decode_raw_log(
1408 topics,
1409 data,
1410 )
1411 .map(Self::NewHoprNodeStakeSafe)
1412 }
1413 _ => {
1414 alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog {
1415 name: <Self as alloy_sol_types::SolEventInterface>::NAME,
1416 log: alloy_sol_types::private::Box::new(
1417 alloy_sol_types::private::LogData::new_unchecked(
1418 topics.to_vec(),
1419 data.to_vec().into(),
1420 ),
1421 ),
1422 })
1423 }
1424 }
1425 }
1426 }
1427 #[automatically_derived]
1428 impl alloy_sol_types::private::IntoLogData for HoprNodeStakeFactoryEvents {
1429 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
1430 match self {
1431 Self::NewHoprNodeStakeModule(inner) => {
1432 alloy_sol_types::private::IntoLogData::to_log_data(inner)
1433 }
1434 Self::NewHoprNodeStakeSafe(inner) => {
1435 alloy_sol_types::private::IntoLogData::to_log_data(inner)
1436 }
1437 }
1438 }
1439 fn into_log_data(self) -> alloy_sol_types::private::LogData {
1440 match self {
1441 Self::NewHoprNodeStakeModule(inner) => {
1442 alloy_sol_types::private::IntoLogData::into_log_data(inner)
1443 }
1444 Self::NewHoprNodeStakeSafe(inner) => {
1445 alloy_sol_types::private::IntoLogData::into_log_data(inner)
1446 }
1447 }
1448 }
1449 }
1450 use alloy::contract as alloy_contract;
1451 #[inline]
1455 pub const fn new<
1456 P: alloy_contract::private::Provider<N>,
1457 N: alloy_contract::private::Network,
1458 >(
1459 address: alloy_sol_types::private::Address,
1460 provider: P,
1461 ) -> HoprNodeStakeFactoryInstance<P, N> {
1462 HoprNodeStakeFactoryInstance::<P, N>::new(address, provider)
1463 }
1464 #[inline]
1470 pub fn deploy<
1471 P: alloy_contract::private::Provider<N>,
1472 N: alloy_contract::private::Network,
1473 >(
1474 provider: P,
1475 ) -> impl ::core::future::Future<
1476 Output = alloy_contract::Result<HoprNodeStakeFactoryInstance<P, N>>,
1477 > {
1478 HoprNodeStakeFactoryInstance::<P, N>::deploy(provider)
1479 }
1480 #[inline]
1486 pub fn deploy_builder<
1487 P: alloy_contract::private::Provider<N>,
1488 N: alloy_contract::private::Network,
1489 >(provider: P) -> alloy_contract::RawCallBuilder<P, N> {
1490 HoprNodeStakeFactoryInstance::<P, N>::deploy_builder(provider)
1491 }
1492 #[derive(Clone)]
1504 pub struct HoprNodeStakeFactoryInstance<P, N = alloy_contract::private::Ethereum> {
1505 address: alloy_sol_types::private::Address,
1506 provider: P,
1507 _network: ::core::marker::PhantomData<N>,
1508 }
1509 #[automatically_derived]
1510 impl<P, N> ::core::fmt::Debug for HoprNodeStakeFactoryInstance<P, N> {
1511 #[inline]
1512 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1513 f.debug_tuple("HoprNodeStakeFactoryInstance").field(&self.address).finish()
1514 }
1515 }
1516 #[automatically_derived]
1518 impl<
1519 P: alloy_contract::private::Provider<N>,
1520 N: alloy_contract::private::Network,
1521 > HoprNodeStakeFactoryInstance<P, N> {
1522 #[inline]
1526 pub const fn new(
1527 address: alloy_sol_types::private::Address,
1528 provider: P,
1529 ) -> Self {
1530 Self {
1531 address,
1532 provider,
1533 _network: ::core::marker::PhantomData,
1534 }
1535 }
1536 #[inline]
1542 pub async fn deploy(
1543 provider: P,
1544 ) -> alloy_contract::Result<HoprNodeStakeFactoryInstance<P, N>> {
1545 let call_builder = Self::deploy_builder(provider);
1546 let contract_address = call_builder.deploy().await?;
1547 Ok(Self::new(contract_address, call_builder.provider))
1548 }
1549 #[inline]
1555 pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder<P, N> {
1556 alloy_contract::RawCallBuilder::new_raw_deploy(
1557 provider,
1558 ::core::clone::Clone::clone(&BYTECODE),
1559 )
1560 }
1561 #[inline]
1563 pub const fn address(&self) -> &alloy_sol_types::private::Address {
1564 &self.address
1565 }
1566 #[inline]
1568 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
1569 self.address = address;
1570 }
1571 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
1573 self.set_address(address);
1574 self
1575 }
1576 #[inline]
1578 pub const fn provider(&self) -> &P {
1579 &self.provider
1580 }
1581 }
1582 impl<P: ::core::clone::Clone, N> HoprNodeStakeFactoryInstance<&P, N> {
1583 #[inline]
1585 pub fn with_cloned_provider(self) -> HoprNodeStakeFactoryInstance<P, N> {
1586 HoprNodeStakeFactoryInstance {
1587 address: self.address,
1588 provider: ::core::clone::Clone::clone(&self.provider),
1589 _network: ::core::marker::PhantomData,
1590 }
1591 }
1592 }
1593 #[automatically_derived]
1595 impl<
1596 P: alloy_contract::private::Provider<N>,
1597 N: alloy_contract::private::Network,
1598 > HoprNodeStakeFactoryInstance<P, N> {
1599 pub fn call_builder<C: alloy_sol_types::SolCall>(
1604 &self,
1605 call: &C,
1606 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
1607 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
1608 }
1609 pub fn clone(
1611 &self,
1612 moduleSingletonAddress: alloy::sol_types::private::Address,
1613 admins: alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
1614 nonce: alloy::sol_types::private::primitives::aliases::U256,
1615 defaultTarget: alloy::sol_types::private::FixedBytes<32>,
1616 ) -> alloy_contract::SolCallBuilder<&P, cloneCall, N> {
1617 self.call_builder(
1618 &cloneCall {
1619 moduleSingletonAddress,
1620 admins,
1621 nonce,
1622 defaultTarget,
1623 },
1624 )
1625 }
1626 pub fn predictDeterministicAddress(
1628 &self,
1629 implementation: alloy::sol_types::private::Address,
1630 salt: alloy::sol_types::private::FixedBytes<32>,
1631 ) -> alloy_contract::SolCallBuilder<&P, predictDeterministicAddressCall, N> {
1632 self.call_builder(
1633 &predictDeterministicAddressCall {
1634 implementation,
1635 salt,
1636 },
1637 )
1638 }
1639 pub fn safeVersion(
1641 &self,
1642 ) -> alloy_contract::SolCallBuilder<&P, safeVersionCall, N> {
1643 self.call_builder(&safeVersionCall)
1644 }
1645 }
1646 #[automatically_derived]
1648 impl<
1649 P: alloy_contract::private::Provider<N>,
1650 N: alloy_contract::private::Network,
1651 > HoprNodeStakeFactoryInstance<P, N> {
1652 pub fn event_filter<E: alloy_sol_types::SolEvent>(
1657 &self,
1658 ) -> alloy_contract::Event<&P, E, N> {
1659 alloy_contract::Event::new_sol(&self.provider, &self.address)
1660 }
1661 pub fn NewHoprNodeStakeModule_filter(
1663 &self,
1664 ) -> alloy_contract::Event<&P, NewHoprNodeStakeModule, N> {
1665 self.event_filter::<NewHoprNodeStakeModule>()
1666 }
1667 pub fn NewHoprNodeStakeSafe_filter(
1669 &self,
1670 ) -> alloy_contract::Event<&P, NewHoprNodeStakeSafe, N> {
1671 self.event_filter::<NewHoprNodeStakeSafe>()
1672 }
1673 }
1674}