1#[allow(
1047 non_camel_case_types,
1048 non_snake_case,
1049 clippy::pub_underscore_fields,
1050 clippy::style,
1051 clippy::empty_structs_with_brackets
1052)]
1053pub mod StrategyManager {
1054 use super::*;
1055 use alloy::sol_types as alloy_sol_types;
1056 #[rustfmt::skip]
1062 #[allow(clippy::all)]
1063 pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
1064 b"`\xE0`@R4\x80\x15a\0\x0FW__\xFD[P`@Qa.\xF98\x03\x80a.\xF9\x839\x81\x01`@\x81\x90Ra\0.\x91a\x01\xB3V[\x80\x80\x84\x84`\x01`\x01`\xA0\x1B\x03\x81\x16a\0YW`@Qc9\xB1\x90\xBB`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x90\x81\x16`\x80R\x16`\xA0Ra\0t\x81a\0\x8AV[`\xC0RPa\0\x82\x90Pa\0\xD0V[PPPa\x02\xE4V[__\x82\x90P`\x1F\x81Q\x11\x15a\0\xBDW\x82`@Qc0Z'\xA9`\xE0\x1B\x81R`\x04\x01a\0\xB4\x91\x90a\x02\x89V[`@Q\x80\x91\x03\x90\xFD[\x80Qa\0\xC8\x82a\x02\xBEV[\x17\x93\x92PPPV[_Ta\x01\0\x90\x04`\xFF\x16\x15a\x017W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`'`$\x82\x01R\x7FInitializable: contract is initi`D\x82\x01Rfalizing`\xC8\x1B`d\x82\x01R`\x84\x01a\0\xB4V[_T`\xFF\x90\x81\x16\x14a\x01\x86W_\x80T`\xFF\x19\x16`\xFF\x90\x81\x17\x90\x91U`@Q\x90\x81R\x7F\x7F&\xB8?\xF9n\x1F+jh/\x138R\xF6y\x8A\t\xC4e\xDA\x95\x92\x14`\xCE\xFB8G@$\x98\x90` \x01`@Q\x80\x91\x03\x90\xA1[V[`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x01\x9CW__\xFD[PV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[___``\x84\x86\x03\x12\x15a\x01\xC5W__\xFD[\x83Qa\x01\xD0\x81a\x01\x88V[` \x85\x01Q\x90\x93Pa\x01\xE1\x81a\x01\x88V[`@\x85\x01Q\x90\x92P`\x01`\x01`@\x1B\x03\x81\x11\x15a\x01\xFCW__\xFD[\x84\x01`\x1F\x81\x01\x86\x13a\x02\x0CW__\xFD[\x80Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\x02%Wa\x02%a\x01\x9FV[`@Q`\x1F\x82\x01`\x1F\x19\x90\x81\x16`?\x01\x16\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a\x02SWa\x02Sa\x01\x9FV[`@R\x81\x81R\x82\x82\x01` \x01\x88\x10\x15a\x02jW__\xFD[\x81` \x84\x01` \x83\x01^_` \x83\x83\x01\x01R\x80\x93PPPP\x92P\x92P\x92V[` \x81R_\x82Q\x80` \x84\x01R\x80` \x85\x01`@\x85\x01^_`@\x82\x85\x01\x01R`@`\x1F\x19`\x1F\x83\x01\x16\x84\x01\x01\x91PP\x92\x91PPV[\x80Q` \x80\x83\x01Q\x91\x90\x81\x10\x15a\x02\xDEW_\x19\x81` \x03`\x03\x1B\x1B\x82\x16\x91P[P\x91\x90PV[`\x80Q`\xA0Q`\xC0Qa+\xACa\x03M_9_\x81\x81a\x0B\xB9\x01Ra\x1C\x81\x01R_\x81\x81a\x04\xE7\x01R\x81\x81a\x07\x97\x01R\x81\x81a\x0BK\x01R\x81\x81a\x0E\x01\x01R\x81\x81a\x12\x8D\x01Ra\x18\x9D\x01R_\x81\x81a\x03\xBC\x01R\x81\x81a\x05\xA6\x01R\x81\x81a\x0B\xF7\x01Ra\x14\xC9\x01Ra+\xAC_\xF3\xFE`\x80`@R4\x80\x15a\0\x0FW__\xFD[P`\x046\x10a\x02\x13W_5`\xE0\x1C\x80c\x8B\x8A\xAC<\x11a\x01\x1FW\x80c\xDE\xBE\x1E\xAB\x11a\0\xA9W\x80c\xF3\xB4\xA0\0\x11a\0yW\x80c\xF3\xB4\xA0\0\x14a\x05/W\x80c\xF6\x98\xDA%\x14a\x059W\x80c\xFA\xBC\x1C\xBC\x14a\x05AW\x80c\xFD\x98\x04#\x14a\x05TW\x80c\xFE$:\x17\x14a\x05gW__\xFD[\x80c\xDE\xBE\x1E\xAB\x14a\x04\xCFW\x80c\xDF\\\xF7#\x14a\x04\xE2W\x80c\xE7\xA0P\xAA\x14a\x05\tW\x80c\xF2\xFD\xE3\x8B\x14a\x05\x1CW__\xFD[\x80c\x9A\xC0\x1Da\x11a\0\xEFW\x80c\x9A\xC0\x1Da\x14a\x04cW\x80c\xB5\xD8\xB5\xB8\x14a\x04vW\x80c\xC6eg\x02\x14a\x04\x89W\x80c\xCB\xC2\xBDb\x14a\x04\x9CW\x80c\xDED\xAC\xB6\x14a\x04\xAFW__\xFD[\x80c\x8B\x8A\xAC<\x14a\x03\xF6W\x80c\x8D\xA5\xCB[\x14a\x04\x1EW\x80c\x94\xF6I\xDD\x14a\x04/W\x80c\x96\x7F\xC0\xD2\x14a\x04PW__\xFD[\x80cY\\jg\x11a\x01\xA0W\x80cf<\x1D\xE4\x11a\x01pW\x80cf<\x1D\xE4\x14a\x03[W\x80cqP\x18\xA6\x14a\x03}W\x80crJ\xF4#\x14a\x03\x85W\x80c~\xCE\xBE\0\x14a\x03\x98W\x80c\x88o\x11\x95\x14a\x03\xB7W__\xFD[\x80cY\\jg\x14a\x03\x05W\x80cZ\xC8j\xB7\x14a\x03\rW\x80c\\\x97Z\xBB\x14a\x03@W\x80c]\xE0\x8F\xF2\x14a\x03HW__\xFD[\x80c6\xA8\xC5\0\x11a\x01\xE6W\x80c6\xA8\xC5\0\x14a\x02xW\x80cH\x82^\x94\x14a\x02\x8EW\x80cKm]n\x14a\x02\xB5W\x80cP\xFFr%\x14a\x02\xC8W\x80cT\xFDMP\x14a\x02\xF0W__\xFD[\x80c\x13d9\xDD\x14a\x02\x17W\x80c\x17\x94\xBB<\x14a\x02,W\x80c.\xAEA\x8C\x14a\x02?W\x80c2\xE8\x9A\xCE\x14a\x02RW[__\xFD[a\x02*a\x02%6`\x04a%\xE1V[a\x05\x91V[\0[a\x02*a\x02:6`\x04a&\x0CV[a\x06fV[a\x02*a\x02M6`\x04a&JV[a\x07\x8CV[a\x02ea\x02`6`\x04a&\xACV[a\x08DV[`@Q\x90\x81R` \x01[`@Q\x80\x91\x03\x90\xF3[a\x02\x80a\x08\xE8V[`@Qa\x02o\x92\x91\x90a'\xE1V[a\x02e\x7FC7\xF8-\x14.A\xF2\xA8\xC1\x05G\xCD\x8C\x85\x9B\xDD\xB9\"b\xA6\x10X\xE7xB\xE2M\x9D\xEA\x92$\x81V[a\x02*a\x02\xC36`\x04a(7V[a\n\x05V[a\x02\xDBa\x02\xD66`\x04a&\x0CV[a\x0B>V[`@\x80Q\x92\x83R` \x83\x01\x91\x90\x91R\x01a\x02oV[a\x02\xF8a\x0B\xB2V[`@Qa\x02o\x91\x90a(\x80V[a\x02*a\x0B\xE2V[a\x030a\x03\x1B6`\x04a(\x92V[`\x98T`\x01`\xFF\x90\x92\x16\x91\x90\x91\x1B\x90\x81\x16\x14\x90V[`@Q\x90\x15\x15\x81R` \x01a\x02oV[`\x98Ta\x02eV[a\x02*a\x03V6`\x04a(\xB2V[a\x0C\x91V[a\x030a\x03i6`\x04a(7V[`\xD1` R_\x90\x81R`@\x90 T`\xFF\x16\x81V[a\x02*a\r\xE4V[a\x02ea\x03\x936`\x04a&\x0CV[a\r\xF5V[a\x02ea\x03\xA66`\x04a(7V[`\xCA` R_\x90\x81R`@\x90 T\x81V[a\x03\xDE\x7F\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\0\x81V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x02oV[a\x02ea\x04\x046`\x04a(7V[`\x01`\x01`\xA0\x1B\x03\x16_\x90\x81R`\xCE` R`@\x90 T\x90V[`3T`\x01`\x01`\xA0\x1B\x03\x16a\x03\xDEV[a\x04Ba\x04=6`\x04a(7V[a\x0EhV[`@Qa\x02o\x92\x91\x90a)\\V[`\xCBTa\x03\xDE\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[a\x02ea\x04q6`\x04a)\x89V[a\x0F\xE0V[a\x02*a\x04\x846`\x04a(\xB2V[a\x10qV[a\x02*a\x04\x976`\x04a(7V[a\x11\xB8V[a\x03\xDEa\x04\xAA6`\x04a)\xEAV[a\x11\xDBV[a\x04\xC2a\x04\xBD6`\x04a(7V[a\x12\x0FV[`@Qa\x02o\x91\x90a*\x14V[a\x02*a\x04\xDD6`\x04a)\xEAV[a\x12\x82V[a\x03\xDE\x7F\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\0\x81V[a\x02ea\x05\x176`\x04a&\x0CV[a\x13FV[a\x02*a\x05*6`\x04a(7V[a\x13\x98V[a\x03\xDEb\x0E\x16\xE4\x81V[a\x02ea\x14\x0EV[a\x02*a\x05O6`\x04a%\xE1V[a\x14\xC7V[a\x02ea\x05b6`\x04a(7V[a\x15\xDDV[a\x02ea\x05u6`\x04a*&V[`\xCD` \x90\x81R_\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 T\x81V[`@Qc#}\xFBG`\xE1\x1B\x81R3`\x04\x82\x01R\x7F\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\0`\x01`\x01`\xA0\x1B\x03\x16\x90cF\xFB\xF6\x8E\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x05\xF3W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x06\x17\x91\x90a*]V[a\x064W`@Qc\x1Dw\xD4w`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x98T\x81\x81\x16\x81\x14a\x06YW`@Qc\xC6\x1D\xCA]`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x06b\x82a\x15\xF2V[PPV[_Ta\x01\0\x90\x04`\xFF\x16\x15\x80\x80\x15a\x06\x84WP_T`\x01`\xFF\x90\x91\x16\x10[\x80a\x06\x9DWP0;\x15\x80\x15a\x06\x9DWP_T`\xFF\x16`\x01\x14[a\x07\x05W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`.`$\x82\x01R\x7FInitializable: contract is alrea`D\x82\x01Rm\x19\x1EH\x1A[\x9A]\x1AX[\x1A^\x99Y`\x92\x1B`d\x82\x01R`\x84\x01[`@Q\x80\x91\x03\x90\xFD[_\x80T`\xFF\x19\x16`\x01\x17\x90U\x80\x15a\x07&W_\x80Ta\xFF\0\x19\x16a\x01\0\x17\x90U[a\x07/\x82a\x15\xF2V[a\x078\x84a\x16/V[a\x07A\x83a\x16\x80V[\x80\x15a\x07\x86W_\x80Ta\xFF\0\x19\x16\x90U`@Q`\x01\x81R\x7F\x7F&\xB8?\xF9n\x1F+jh/\x138R\xF6y\x8A\t\xC4e\xDA\x95\x92\x14`\xCE\xFB8G@$\x98\x90` \x01`@Q\x80\x91\x03\x90\xA1[PPPPV[3`\x01`\x01`\xA0\x1B\x03\x7F\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\0\x16\x14a\x07\xD5W`@Qc\xF79X\x9B`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x07\xDDa\x16\xE9V[`@Qcl\xE5v\x89`\xE1\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x84\x16\x90c\xD9\xCA\xED\x12\x90a\x08\r\x90\x87\x90\x86\x90\x86\x90`\x04\x01a*|V[_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a\x08$W__\xFD[PZ\xF1\x15\x80\x15a\x086W=__>=_\xFD[PPPPa\x07\x86`\x01`eUV[`\x98T_\x90\x81\x90`\x01\x90\x81\x16\x03a\x08nW`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x08va\x16\xE9V[`\x01`\x01`\xA0\x1B\x03\x85\x16_\x90\x81R`\xCA` R`@\x90 Ta\x08\xA7\x86a\x08\xA0\x81\x8C\x8C\x8C\x87\x8Ca\x0F\xE0V[\x86\x88a\x17BV[`\x01`\x01`\xA0\x1B\x03\x86\x16_\x90\x81R`\xCA` R`@\x90 `\x01\x82\x01\x90Ua\x08\xD0\x86\x8A\x8A\x8Aa\x17\x94V[\x92PPa\x08\xDD`\x01`eUV[P\x96\x95PPPPPPV[``\x80_a\x08\xF6`\xD4a\x19\x01V[\x90P_\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\t\x12Wa\t\x12a&\x98V[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\t;W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\x82g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\tXWa\tXa&\x98V[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\t\x81W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x83\x81\x10\x15a\t\xFAW__a\t\x9B`\xD4\x84a\x19\x11V[\x91P\x91P\x81\x85\x84\x81Q\x81\x10a\t\xB2Wa\t\xB2a*\xA0V[` \x02` \x01\x01\x90`\x01`\x01`\xA0\x1B\x03\x16\x90\x81`\x01`\x01`\xA0\x1B\x03\x16\x81RPP\x80\x84\x84\x81Q\x81\x10a\t\xE5Wa\t\xE5a*\xA0V[` \x90\x81\x02\x91\x90\x91\x01\x01RPP`\x01\x01a\t\x86V[P\x90\x94\x90\x93P\x91PPV[a\n\ra\x16\xE9V[_a\n\x19`\xD4\x83a\x19.V[\x91PPa\n'`\xD4\x83a\x19EV[P`@\x80Q`\x01`\x01`\xA0\x1B\x03\x84\x16\x81R` \x81\x01\x83\x90R\x7F\xD9\xD0\x82\xC3\xECO:?\xFAU\xC3$\x93\x9A\x06@\x7F_\xBC\xB8}^\x0C\xE3\xB9P\x8C\x92\xC8N\xD89\x91\x01`@Q\x80\x91\x03\x90\xA1\x80\x15a\x0B0W\x81`\x01`\x01`\xA0\x1B\x03\x16c\xD9\xCA\xED\x12b\x0E\x16\xE4\x84`\x01`\x01`\xA0\x1B\x03\x16c$\x95\xA5\x99`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\n\xBFW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\n\xE3\x91\x90a*\xB4V[\x84`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\x0B\x02\x93\x92\x91\x90a*|V[_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a\x0B\x19W__\xFD[PZ\xF1\x15\x80\x15a\x0B+W=__>=_\xFD[PPPP[Pa\x0B;`\x01`eUV[PV[_\x803`\x01`\x01`\xA0\x1B\x03\x7F\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\0\x16\x14a\x0B\x89W`@Qc\xF79X\x9B`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0B\x91a\x16\xE9V[a\x0B\x9C\x85\x85\x85a\x19YV[\x91P\x91Pa\x0B\xAA`\x01`eUV[\x93P\x93\x91PPV[``a\x0B\xDD\x7F\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\0a\x1A\xC1V[\x90P\x90V[`@Qc#}\xFBG`\xE1\x1B\x81R3`\x04\x82\x01R\x7F\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\0`\x01`\x01`\xA0\x1B\x03\x16\x90cF\xFB\xF6\x8E\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x0CDW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x0Ch\x91\x90a*]V[a\x0C\x85W`@Qc\x1Dw\xD4w`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0C\x8F_\x19a\x15\xF2V[V[`\xCBT`\x01`\x01`\xA0\x1B\x03\x163\x14a\x0C\xBCW`@Qc \xBA?\xF9`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0C\xC4a\x16\xE9V[\x80_[\x81\x81\x10\x15a\r\xD8W`\xD1_\x85\x85\x84\x81\x81\x10a\x0C\xE4Wa\x0C\xE4a*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\x0C\xF9\x91\x90a(7V[`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x81\x01\x91\x90\x91R`@\x01_ T`\xFF\x16a\r\xD0W`\x01`\xD1_\x86\x86\x85\x81\x81\x10a\r0Wa\r0a*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\rE\x91\x90a(7V[`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x81\x01\x91\x90\x91R`@\x01_ \x80T`\xFF\x19\x16\x91\x15\x15\x91\x90\x91\x17\x90U\x7F\x0C5\xB1}\x91\xC9n\xB2u\x1C\xD4V\xE1%/B\xA3\x86\xE5$\xEF\x9F\xF2n\xCC\x99P\x85\x9F\xDC\x04\xFE\x84\x84\x83\x81\x81\x10a\r\x9FWa\r\x9Fa*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\r\xB4\x91\x90a(7V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01`@Q\x80\x91\x03\x90\xA1[`\x01\x01a\x0C\xC7V[PPa\x06b`\x01`eUV[a\r\xECa\x1A\xFEV[a\x0C\x8F_a\x16/V[_3`\x01`\x01`\xA0\x1B\x03\x7F\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\0\x16\x14a\x0E?W`@Qc\xF79X\x9B`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0EGa\x16\xE9V[_a\x0ES\x85\x85\x85a\x1BXV[\x92PPPa\x0Ea`\x01`eUV[\x93\x92PPPV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\xCE` R`@\x81 T``\x91\x82\x91\x90\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x0E\x9FWa\x0E\x9Fa&\x98V[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x0E\xC8W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x82\x81\x10\x15a\x0FVW`\x01`\x01`\xA0\x1B\x03\x86\x16_\x90\x81R`\xCD` \x90\x81R`@\x80\x83 `\xCE\x90\x92R\x82 \x80T\x91\x92\x91\x84\x90\x81\x10a\x0F\x0BWa\x0F\x0Ba*\xA0V[_\x91\x82R` \x80\x83 \x90\x91\x01T`\x01`\x01`\xA0\x1B\x03\x16\x83R\x82\x01\x92\x90\x92R`@\x01\x90 T\x82Q\x83\x90\x83\x90\x81\x10a\x0FCWa\x0FCa*\xA0V[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a\x0E\xCDV[P`\xCE_\x86`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ \x81\x81\x80T\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80T\x80\x15a\x0F\xCEW` \x02\x82\x01\x91\x90_R` _ \x90[\x81T`\x01`\x01`\xA0\x1B\x03\x16\x81R`\x01\x90\x91\x01\x90` \x01\x80\x83\x11a\x0F\xB0W[PPPPP\x91P\x93P\x93PPP\x91P\x91V[`@\x80Q\x7FC7\xF8-\x14.A\xF2\xA8\xC1\x05G\xCD\x8C\x85\x9B\xDD\xB9\"b\xA6\x10X\xE7xB\xE2M\x9D\xEA\x92$` \x82\x01R`\x01`\x01`\xA0\x1B\x03\x80\x89\x16\x92\x82\x01\x92\x90\x92R\x81\x87\x16``\x82\x01R\x90\x85\x16`\x80\x82\x01R`\xA0\x81\x01\x84\x90R`\xC0\x81\x01\x83\x90R`\xE0\x81\x01\x82\x90R_\x90a\x10f\x90a\x01\0\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 a\x1C\x1EV[\x97\x96PPPPPPPV[`\xCBT`\x01`\x01`\xA0\x1B\x03\x163\x14a\x10\x9CW`@Qc \xBA?\xF9`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x10\xA4a\x16\xE9V[\x80_[\x81\x81\x10\x15a\r\xD8W`\xD1_\x85\x85\x84\x81\x81\x10a\x10\xC4Wa\x10\xC4a*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\x10\xD9\x91\x90a(7V[`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x81\x01\x91\x90\x91R`@\x01_ T`\xFF\x16\x15a\x11\xB0W_`\xD1_\x86\x86\x85\x81\x81\x10a\x11\x10Wa\x11\x10a*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\x11%\x91\x90a(7V[`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x81\x01\x91\x90\x91R`@\x01_ \x80T`\xFF\x19\x16\x91\x15\x15\x91\x90\x91\x17\x90U\x7F@tA;KD>NX\x01\x9F(U\xA8vQ\x135\x8C|r\xE3\x95\t\xC6\xAFE\xFC\x0F[\xA00\x84\x84\x83\x81\x81\x10a\x11\x7FWa\x11\x7Fa*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\x11\x94\x91\x90a(7V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01`@Q\x80\x91\x03\x90\xA1[`\x01\x01a\x10\xA7V[a\x11\xC0a\x1A\xFEV[a\x11\xC8a\x16\xE9V[a\x11\xD1\x81a\x16\x80V[a\x0B;`\x01`eUV[`\xCE` R\x81_R`@_ \x81\x81T\x81\x10a\x11\xF4W_\x80\xFD[_\x91\x82R` \x90\x91 \x01T`\x01`\x01`\xA0\x1B\x03\x16\x91P\x82\x90PV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\xCE` \x90\x81R`@\x91\x82\x90 \x80T\x83Q\x81\x84\x02\x81\x01\x84\x01\x90\x94R\x80\x84R``\x93\x92\x83\x01\x82\x82\x80\x15a\x12vW` \x02\x82\x01\x91\x90_R` _ \x90[\x81T`\x01`\x01`\xA0\x1B\x03\x16\x81R`\x01\x90\x91\x01\x90` \x01\x80\x83\x11a\x12XW[PPPPP\x90P\x91\x90PV[3`\x01`\x01`\xA0\x1B\x03\x7F\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\0\x16\x14a\x12\xCBW`@Qc\xF79X\x9B`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x12\xD3a\x16\xE9V[_a\x12\xDF`\xD4\x84a\x19.V[\x91Pa\x12\xF8\x90P`\xD4\x84a\x12\xF3\x85\x85a*\xE3V[a\x1CdV[P`@\x80Q`\x01`\x01`\xA0\x1B\x03\x85\x16\x81R` \x81\x01\x84\x90R\x7F\xCA>\x02\xA4\xABz\xD3\xC4z\x8E6\xE5\xA6$\xC3\x01py\x17&\xABr\x0F\x1B\xAB\xFE\xF2\x10F\xD9S\xFF\x91\x01`@Q\x80\x91\x03\x90\xA1Pa\x06b`\x01`eUV[`\x98T_\x90\x81\x90`\x01\x90\x81\x16\x03a\x13pW`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x13xa\x16\xE9V[a\x13\x843\x86\x86\x86a\x17\x94V[\x91Pa\x13\x90`\x01`eUV[P\x93\x92PPPV[a\x13\xA0a\x1A\xFEV[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x14\x05W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FOwnable: new owner is the zero a`D\x82\x01Reddress`\xD0\x1B`d\x82\x01R`\x84\x01a\x06\xFCV[a\x0B;\x81a\x16/V[`@\x80Q\x80\x82\x01\x90\x91R`\n\x81Ri\"\xB4\xB3\xB2\xB7&0\xBC\xB2\xB9`\xB1\x1B` \x90\x91\x01R_\x7F\x8Bs\xC3\xC6\x9B\xB8\xFE=Q.\xCCL\xF7Y\xCCy#\x9F{\x17\x9B\x0F\xFA\xCA\xA9\xA7]R+9@\x0F\x7Fq\xB6%\xCF\xADD\xBA\xC6;\x13\xDB\xA0\x7F.\x1D`\x84\xEE\x04\xB6\xF8u!\x01\xEC\xE6\x12mXN\xE6\xEAa\x14{a\x1CyV[\x80Q` \x91\x82\x01 `@\x80Q\x92\x83\x01\x94\x90\x94R\x92\x81\x01\x91\x90\x91R``\x81\x01\x91\x90\x91RF`\x80\x82\x01R0`\xA0\x82\x01R`\xC0\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x90V[\x7F\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\0`\x01`\x01`\xA0\x1B\x03\x16c\xEA\xB6mz`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x15#W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x15G\x91\x90a*\xB4V[`\x01`\x01`\xA0\x1B\x03\x163`\x01`\x01`\xA0\x1B\x03\x16\x14a\x15xW`@QcyH!\xFF`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x98T\x80\x19\x82\x19\x81\x16\x14a\x15\x9FW`@Qc\xC6\x1D\xCA]`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x98\x82\x90U`@Q\x82\x81R3\x90\x7F5\x82\xD1\x82\x8E&\xBFV\xBD\x80\x15\x02\xBC\x02\x1A\xC0\xBC\x8A\xFBW\xC8&\xE4\x98kEY<\x8F\xAD8\x9C\x90` \x01`@Q\x80\x91\x03\x90\xA2PPV[__a\x15\xEA`\xD4\x84a\x19.V[\x94\x93PPPPV[`\x98\x81\x90U`@Q\x81\x81R3\x90\x7F\xAB@\xA3t\xBCQ\xDE7\"\0\xA8\xBC\x98\x1A\xF8\xC9\xEC\xDC\x08\xDF\xDA\xEF\x0B\xB6\xE0\x9F\x88\xF3\xC6\x16\xEF=\x90` \x01`@Q\x80\x91\x03\x90\xA2PV[`3\x80T`\x01`\x01`\xA0\x1B\x03\x83\x81\x16`\x01`\x01`\xA0\x1B\x03\x19\x83\x16\x81\x17\x90\x93U`@Q\x91\x16\x91\x90\x82\x90\x7F\x8B\xE0\x07\x9CS\x16Y\x14\x13D\xCD\x1F\xD0\xA4\xF2\x84\x19I\x7F\x97\"\xA3\xDA\xAF\xE3\xB4\x18okdW\xE0\x90_\x90\xA3PPV[`\xCBT`@\x80Q`\x01`\x01`\xA0\x1B\x03\x92\x83\x16\x81R\x91\x83\x16` \x83\x01R\x7FBd'^Y9U\xFF\x9DaF\xA5\x1AE%\xF6\xDD\xAC\xE2\xE8\x1D\xB99\x1A\xBC\xC9\xD1\xCAH\x04})\x91\x01`@Q\x80\x91\x03\x90\xA1`\xCB\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x92\x90\x92\x16\x91\x90\x91\x17\x90UV[`\x02`eT\x03a\x17;W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1F`$\x82\x01R\x7FReentrancyGuard: reentrant call\0`D\x82\x01R`d\x01a\x06\xFCV[`\x02`eUV[B\x81\x10\x15a\x17cW`@Qc\x08\x19\xBD\xCD`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x17w`\x01`\x01`\xA0\x1B\x03\x85\x16\x84\x84a\x1D\x15V[a\x07\x86W`@Qc\x8B\xAAW\x9F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x83\x16_\x90\x81R`\xD1` R`@\x81 T\x84\x90`\xFF\x16a\x17\xCEW`@Qc.\xFD\x96Q`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x17\xE3`\x01`\x01`\xA0\x1B\x03\x85\x163\x87\x86a\x1DsV[`@Qc\x11\xF9\xFB\xC9`\xE2\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x81\x16`\x04\x83\x01R`$\x82\x01\x85\x90R\x86\x16\x90cG\xE7\xEF$\x90`D\x01` `@Q\x80\x83\x03\x81_\x87Z\xF1\x15\x80\x15a\x18/W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x18S\x91\x90a*\xF6V[\x91P__a\x18b\x88\x88\x86a\x19YV[`@Qc\x1E2\x8Ey`\xE1\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x8B\x81\x16`\x04\x83\x01R\x8A\x81\x16`$\x83\x01R`D\x82\x01\x84\x90R`d\x82\x01\x83\x90R\x92\x94P\x90\x92P\x7F\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\0\x90\x91\x16\x90c<e\x1C\xF2\x90`\x84\x01_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a\x18\xE0W__\xFD[PZ\xF1\x15\x80\x15a\x18\xF2W=__>=_\xFD[PPPPPPP\x94\x93PPPPV[_a\x19\x0B\x82a\x1D\xCBV[\x92\x91PPV[_\x80\x80\x80a\x19\x1F\x86\x86a\x1D\xD5V[\x90\x94P\x92PPP[\x92P\x92\x90PV[_\x80\x80\x80a\x19\x1F\x86`\x01`\x01`\xA0\x1B\x03\x87\x16a\x1D\xFEV[_a\x0Ea\x83`\x01`\x01`\xA0\x1B\x03\x84\x16a\x1E6V[_\x80`\x01`\x01`\xA0\x1B\x03\x85\x16a\x19\x82W`@Qc\x16\xF2\xCC\xC9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x82_\x03a\x19\xA2W`@QcB\x06\x1B%`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x86\x16_\x90\x81R`\xCD` \x90\x81R`@\x80\x83 \x93\x88\x16\x83R\x92\x90R\x90\x81 T\x90\x81\x90\x03a\x1AHW`\x01`\x01`\xA0\x1B\x03\x86\x16_\x90\x81R`\xCE` \x90\x81R`@\x90\x91 T\x10a\x1A\nW`@Qc\x01\xA1D9`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x86\x81\x16_\x90\x81R`\xCE` \x90\x81R`@\x82 \x80T`\x01\x81\x01\x82U\x90\x83R\x91 \x01\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x91\x87\x16\x91\x90\x91\x17\x90U[a\x1AR\x84\x82a*\xE3V[`\x01`\x01`\xA0\x1B\x03\x80\x88\x16_\x90\x81R`\xCD` \x90\x81R`@\x80\x83 \x93\x8A\x16\x83R\x92\x90R\x81\x90 \x91\x90\x91UQ\x7FUH\xC87\xAB\x06\x8C\xF5j,$y\xDF\x08\x82\xA4\x92/\xD2\x03\xED\xB7Qs!\x83\x1D\x95\x07\x8C_b\x90a\x1A\xAE\x90\x88\x90\x88\x90\x88\x90a*|V[`@Q\x80\x91\x03\x90\xA1\x95\x92\x94P\x91\x92PPPV[``_a\x1A\xCD\x83a\x1ERV[`@\x80Q` \x80\x82R\x81\x83\x01\x90\x92R\x91\x92P_\x91\x90` \x82\x01\x81\x806\x837PPP\x91\x82RP` \x81\x01\x92\x90\x92RP\x90V[`3T`\x01`\x01`\xA0\x1B\x03\x163\x14a\x0C\x8FW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FOwnable: caller is not the owner`D\x82\x01R`d\x01a\x06\xFCV[__\x82_\x03a\x1BzW`@QcB\x06\x1B%`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x86\x16_\x90\x81R`\xCD` \x90\x81R`@\x80\x83 \x93\x88\x16\x83R\x92\x90R T\x80\x84\x11\x15a\x1B\xC0W`@QcK\x18\xB1\x93`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x1B\xCA\x84\x82a+\rV[`\x01`\x01`\xA0\x1B\x03\x80\x88\x16_\x90\x81R`\xCD` \x90\x81R`@\x80\x83 \x93\x8A\x16\x83R\x92\x90R\x90\x81 \x82\x90U\x90\x91P\x81\x90\x03a\x1C\x12Wa\x1C\x07\x86\x86a\x1EyV[`\x01\x92P\x90Pa\x0B\xAAV[_\x96\x90\x95P\x93PPPPV[_a\x1C'a\x14\x0EV[`@Qa\x19\x01`\xF0\x1B` \x82\x01R`\"\x81\x01\x91\x90\x91R`B\x81\x01\x83\x90R`b\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x91\x90PV[_a\x15\xEA\x84`\x01`\x01`\xA0\x1B\x03\x85\x16\x84a\x1F\xF7V[``_a\x1C\xA5\x7F\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\0a\x1A\xC1V[\x90P\x80_\x81Q\x81\x10a\x1C\xB9Wa\x1C\xB9a*\xA0V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x81`\x01\x81Q\x81\x10a\x1C\xD7Wa\x1C\xD7a*\xA0V[\x01` \x90\x81\x01Q`@Q`\x01`\x01`\xF8\x1B\x03\x19\x93\x84\x16\x92\x81\x01\x92\x90\x92R\x91\x90\x91\x16`!\x82\x01R`\"\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x91PP\x90V[___a\x1D\"\x85\x85a \x13V[\x90\x92P\x90P_\x81`\x04\x81\x11\x15a\x1D:Wa\x1D:a+ V[\x14\x80\x15a\x1DXWP\x85`\x01`\x01`\xA0\x1B\x03\x16\x82`\x01`\x01`\xA0\x1B\x03\x16\x14[\x80a\x1DiWPa\x1Di\x86\x86\x86a RV[\x96\x95PPPPPPV[a\x07\x86\x84c#\xB8r\xDD`\xE0\x1B\x85\x85\x85`@Q`$\x01a\x1D\x94\x93\x92\x91\x90a*|V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R` \x81\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16`\x01`\x01`\xE0\x1B\x03\x19\x90\x93\x16\x92\x90\x92\x17\x90\x91Ra!9V[_a\x19\x0B\x82a\"\x11V[_\x80\x80a\x1D\xE2\x85\x85a\"\x1AV[_\x81\x81R`\x02\x96\x90\x96\x01` R`@\x90\x95 T\x94\x95\x93PPPPV[_\x81\x81R`\x02\x83\x01` R`@\x81 T\x81\x90\x80a\x1E+Wa\x1E\x1F\x85\x85a\"%V[\x92P_\x91Pa\x19'\x90PV[`\x01\x92P\x90Pa\x19'V[_\x81\x81R`\x02\x83\x01` R`@\x81 \x81\x90Ua\x0Ea\x83\x83a\"0V[_`\xFF\x82\x16`\x1F\x81\x11\x15a\x19\x0BW`@Qc,\xD4J\xC3`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x82\x16_\x90\x81R`\xCE` R`@\x81 T\x90[\x81\x81\x10\x15a\x1F\x8BW`\x01`\x01`\xA0\x1B\x03\x84\x81\x16_\x90\x81R`\xCE` R`@\x90 \x80T\x91\x85\x16\x91\x83\x90\x81\x10a\x1E\xC9Wa\x1E\xC9a*\xA0V[_\x91\x82R` \x90\x91 \x01T`\x01`\x01`\xA0\x1B\x03\x16\x03a\x1F\x83W`\x01`\x01`\xA0\x1B\x03\x84\x16_\x90\x81R`\xCE` R`@\x90 \x80Ta\x1F\x07\x90`\x01\x90a+\rV[\x81T\x81\x10a\x1F\x17Wa\x1F\x17a*\xA0V[_\x91\x82R` \x80\x83 \x90\x91\x01T`\x01`\x01`\xA0\x1B\x03\x87\x81\x16\x84R`\xCE\x90\x92R`@\x90\x92 \x80T\x91\x90\x92\x16\x91\x90\x83\x90\x81\x10a\x1FSWa\x1FSa*\xA0V[\x90_R` _ \x01_a\x01\0\n\x81T\x81`\x01`\x01`\xA0\x1B\x03\x02\x19\x16\x90\x83`\x01`\x01`\xA0\x1B\x03\x16\x02\x17\x90UPa\x1F\x8BV[`\x01\x01a\x1E\x93V[\x81\x81\x03a\x1F\xABW`@Qc-\xF1ZA`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x84\x16_\x90\x81R`\xCE` R`@\x90 \x80T\x80a\x1F\xD1Wa\x1F\xD1a+4V[_\x82\x81R` \x90 \x81\x01_\x19\x90\x81\x01\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x90U\x01\x90UPPPPV[_\x82\x81R`\x02\x84\x01` R`@\x81 \x82\x90Ua\x15\xEA\x84\x84a\";V[__\x82Q`A\x03a GW` \x83\x01Q`@\x84\x01Q``\x85\x01Q_\x1Aa ;\x87\x82\x85\x85a\"FV[\x94P\x94PPPPa\x19'V[P_\x90P`\x02a\x19'V[___\x85`\x01`\x01`\xA0\x1B\x03\x16c\x16&\xBA~`\xE0\x1B\x86\x86`@Q`$\x01a z\x92\x91\x90a+HV[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x81R` \x82\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16`\x01`\x01`\xE0\x1B\x03\x19\x90\x94\x16\x93\x90\x93\x17\x90\x92R\x90Qa \xB8\x91\x90a+`V[_`@Q\x80\x83\x03\x81\x85Z\xFA\x91PP=\x80_\x81\x14a \xF0W`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a \xF5V[``\x91P[P\x91P\x91P\x81\x80\x15a!\tWP` \x81Q\x10\x15[\x80\x15a\x1DiWP\x80Qc\x0B\x13]?`\xE1\x1B\x90a!.\x90\x83\x01` \x90\x81\x01\x90\x84\x01a*\xF6V[\x14\x96\x95PPPPPPV[_a!\x8D\x82`@Q\x80`@\x01`@R\x80` \x81R` \x01\x7FSafeERC20: low-level call failed\x81RP\x85`\x01`\x01`\xA0\x1B\x03\x16a#\x03\x90\x92\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x90P\x80Q_\x14\x80a!\xADWP\x80\x80` \x01\x90Q\x81\x01\x90a!\xAD\x91\x90a*]V[a\"\x0CW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`*`$\x82\x01R\x7FSafeERC20: ERC20 operation did n`D\x82\x01Ri\x1B\xDD\x08\x1C\xDDX\xD8\xD9YY`\xB2\x1B`d\x82\x01R`\x84\x01a\x06\xFCV[PPPV[_a\x19\x0B\x82T\x90V[_a\x0Ea\x83\x83a#\x11V[_a\x0Ea\x83\x83a#7V[_a\x0Ea\x83\x83a#NV[_a\x0Ea\x83\x83a$1V[_\x80\x7F\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]WnsW\xA4P\x1D\xDF\xE9/Fh\x1B \xA0\x83\x11\x15a\"{WP_\x90P`\x03a\"\xFAV[`@\x80Q_\x80\x82R` \x82\x01\x80\x84R\x89\x90R`\xFF\x88\x16\x92\x82\x01\x92\x90\x92R``\x81\x01\x86\x90R`\x80\x81\x01\x85\x90R`\x01\x90`\xA0\x01` `@Q` \x81\x03\x90\x80\x84\x03\x90\x85Z\xFA\x15\x80\x15a\"\xCCW=__>=_\xFD[PP`@Q`\x1F\x19\x01Q\x91PP`\x01`\x01`\xA0\x1B\x03\x81\x16a\"\xF4W_`\x01\x92P\x92PPa\"\xFAV[\x91P_\x90P[\x94P\x94\x92PPPV[``a\x15\xEA\x84\x84_\x85a$}V[_\x82_\x01\x82\x81T\x81\x10a#&Wa#&a*\xA0V[\x90_R` _ \x01T\x90P\x92\x91PPV[_\x81\x81R`\x01\x83\x01` R`@\x81 T\x15\x15a\x0EaV[_\x81\x81R`\x01\x83\x01` R`@\x81 T\x80\x15a$(W_a#p`\x01\x83a+\rV[\x85T\x90\x91P_\x90a#\x83\x90`\x01\x90a+\rV[\x90P\x81\x81\x14a#\xE2W_\x86_\x01\x82\x81T\x81\x10a#\xA1Wa#\xA1a*\xA0V[\x90_R` _ \x01T\x90P\x80\x87_\x01\x84\x81T\x81\x10a#\xC1Wa#\xC1a*\xA0V[_\x91\x82R` \x80\x83 \x90\x91\x01\x92\x90\x92U\x91\x82R`\x01\x88\x01\x90R`@\x90 \x83\x90U[\x85T\x86\x90\x80a#\xF3Wa#\xF3a+4V[`\x01\x90\x03\x81\x81\x90_R` _ \x01_\x90U\x90U\x85`\x01\x01_\x86\x81R` \x01\x90\x81R` \x01_ _\x90U`\x01\x93PPPPa\x19\x0BV[_\x91PPa\x19\x0BV[_\x81\x81R`\x01\x83\x01` R`@\x81 Ta$vWP\x81T`\x01\x81\x81\x01\x84U_\x84\x81R` \x80\x82 \x90\x93\x01\x84\x90U\x84T\x84\x82R\x82\x86\x01\x90\x93R`@\x90 \x91\x90\x91Ua\x19\x0BV[P_a\x19\x0BV[``\x82G\x10\x15a$\xDEW`@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\x06\xFCV[__\x86`\x01`\x01`\xA0\x1B\x03\x16\x85\x87`@Qa$\xF9\x91\x90a+`V[_`@Q\x80\x83\x03\x81\x85\x87Z\xF1\x92PPP=\x80_\x81\x14a%3W`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a%8V[``\x91P[P\x91P\x91Pa\x10f\x87\x83\x83\x87``\x83\x15a%\xB2W\x82Q_\x03a%\xABW`\x01`\x01`\xA0\x1B\x03\x85\x16;a%\xABW`@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\x06\xFCV[P\x81a\x15\xEAV[a\x15\xEA\x83\x83\x81Q\x15a%\xC7W\x81Q\x80\x83` \x01\xFD[\x80`@QbF\x1B\xCD`\xE5\x1B\x81R`\x04\x01a\x06\xFC\x91\x90a(\x80V[_` \x82\x84\x03\x12\x15a%\xF1W__\xFD[P5\x91\x90PV[`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x0B;W__\xFD[___``\x84\x86\x03\x12\x15a&\x1EW__\xFD[\x835a&)\x81a%\xF8V[\x92P` \x84\x015a&9\x81a%\xF8V[\x92\x95\x92\x94PPP`@\x91\x90\x91\x015\x90V[____`\x80\x85\x87\x03\x12\x15a&]W__\xFD[\x845a&h\x81a%\xF8V[\x93P` \x85\x015a&x\x81a%\xF8V[\x92P`@\x85\x015a&\x88\x81a%\xF8V[\x93\x96\x92\x95P\x92\x93``\x015\x92PPV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[______`\xC0\x87\x89\x03\x12\x15a&\xC1W__\xFD[\x865a&\xCC\x81a%\xF8V[\x95P` \x87\x015a&\xDC\x81a%\xF8V[\x94P`@\x87\x015\x93P``\x87\x015a&\xF3\x81a%\xF8V[\x92P`\x80\x87\x015\x91P`\xA0\x87\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a'\x15W__\xFD[\x87\x01`\x1F\x81\x01\x89\x13a'%W__\xFD[\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a'?Wa'?a&\x98V[`@Q`\x1F\x82\x01`\x1F\x19\x90\x81\x16`?\x01\x16\x81\x01g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x82\x82\x10\x17\x15a'nWa'na&\x98V[`@R\x81\x81R\x82\x82\x01` \x01\x8B\x10\x15a'\x85W__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92\x95P\x92\x95P\x92\x95V[_\x81Q\x80\x84R` \x84\x01\x93P` \x83\x01_[\x82\x81\x10\x15a'\xD7W\x81Q\x86R` \x95\x86\x01\x95\x90\x91\x01\x90`\x01\x01a'\xB9V[P\x93\x94\x93PPPPV[`@\x80\x82R\x83Q\x90\x82\x01\x81\x90R_\x90` \x85\x01\x90``\x84\x01\x90\x83[\x81\x81\x10\x15a(#W\x83Q`\x01`\x01`\xA0\x1B\x03\x16\x83R` \x93\x84\x01\x93\x90\x92\x01\x91`\x01\x01a'\xFCV[PP\x83\x81\x03` \x85\x01Ra\x1Di\x81\x86a'\xA7V[_` \x82\x84\x03\x12\x15a(GW__\xFD[\x815a\x0Ea\x81a%\xF8V[_\x81Q\x80\x84R\x80` \x84\x01` \x86\x01^_` \x82\x86\x01\x01R` `\x1F\x19`\x1F\x83\x01\x16\x85\x01\x01\x91PP\x92\x91PPV[` \x81R_a\x0Ea` \x83\x01\x84a(RV[_` \x82\x84\x03\x12\x15a(\xA2W__\xFD[\x815`\xFF\x81\x16\x81\x14a\x0EaW__\xFD[__` \x83\x85\x03\x12\x15a(\xC3W__\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a(\xD9W__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a(\xE9W__\xFD[\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a(\xFFW__\xFD[\x85` \x82`\x05\x1B\x84\x01\x01\x11\x15a)\x13W__\xFD[` \x91\x90\x91\x01\x95\x90\x94P\x92PPPV[_\x81Q\x80\x84R` \x84\x01\x93P` \x83\x01_[\x82\x81\x10\x15a'\xD7W\x81Q`\x01`\x01`\xA0\x1B\x03\x16\x86R` \x95\x86\x01\x95\x90\x91\x01\x90`\x01\x01a)5V[`@\x81R_a)n`@\x83\x01\x85a)#V[\x82\x81\x03` \x84\x01Ra)\x80\x81\x85a'\xA7V[\x95\x94PPPPPV[______`\xC0\x87\x89\x03\x12\x15a)\x9EW__\xFD[\x865a)\xA9\x81a%\xF8V[\x95P` \x87\x015a)\xB9\x81a%\xF8V[\x94P`@\x87\x015a)\xC9\x81a%\xF8V[\x95\x98\x94\x97P\x94\x95``\x81\x015\x95P`\x80\x81\x015\x94`\xA0\x90\x91\x015\x93P\x91PPV[__`@\x83\x85\x03\x12\x15a)\xFBW__\xFD[\x825a*\x06\x81a%\xF8V[\x94` \x93\x90\x93\x015\x93PPPV[` \x81R_a\x0Ea` \x83\x01\x84a)#V[__`@\x83\x85\x03\x12\x15a*7W__\xFD[\x825a*B\x81a%\xF8V[\x91P` \x83\x015a*R\x81a%\xF8V[\x80\x91PP\x92P\x92\x90PV[_` \x82\x84\x03\x12\x15a*mW__\xFD[\x81Q\x80\x15\x15\x81\x14a\x0EaW__\xFD[`\x01`\x01`\xA0\x1B\x03\x93\x84\x16\x81R\x91\x90\x92\x16` \x82\x01R`@\x81\x01\x91\x90\x91R``\x01\x90V[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[_` \x82\x84\x03\x12\x15a*\xC4W__\xFD[\x81Qa\x0Ea\x81a%\xF8V[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x80\x82\x01\x80\x82\x11\x15a\x19\x0BWa\x19\x0Ba*\xCFV[_` \x82\x84\x03\x12\x15a+\x06W__\xFD[PQ\x91\x90PV[\x81\x81\x03\x81\x81\x11\x15a\x19\x0BWa\x19\x0Ba*\xCFV[cNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[cNH{q`\xE0\x1B_R`1`\x04R`$_\xFD[\x82\x81R`@` \x82\x01R_a\x15\xEA`@\x83\x01\x84a(RV[_\x82Q\x80` \x85\x01\x84^_\x92\x01\x91\x82RP\x91\x90PV\xFE\xA2dipfsX\"\x12 QVB\x1C\xB9\xF4\x86]\x8C kb'y\x99\xDBuS\xF3j\xA1^\xD2\x84\xF4F\xE7\x8B\xB9\xA7MVdsolcC\0\x08\x1B\x003",
1065 );
1066 #[rustfmt::skip]
1072 #[allow(clippy::all)]
1073 pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
1074 b"`\x80`@R4\x80\x15a\0\x0FW__\xFD[P`\x046\x10a\x02\x13W_5`\xE0\x1C\x80c\x8B\x8A\xAC<\x11a\x01\x1FW\x80c\xDE\xBE\x1E\xAB\x11a\0\xA9W\x80c\xF3\xB4\xA0\0\x11a\0yW\x80c\xF3\xB4\xA0\0\x14a\x05/W\x80c\xF6\x98\xDA%\x14a\x059W\x80c\xFA\xBC\x1C\xBC\x14a\x05AW\x80c\xFD\x98\x04#\x14a\x05TW\x80c\xFE$:\x17\x14a\x05gW__\xFD[\x80c\xDE\xBE\x1E\xAB\x14a\x04\xCFW\x80c\xDF\\\xF7#\x14a\x04\xE2W\x80c\xE7\xA0P\xAA\x14a\x05\tW\x80c\xF2\xFD\xE3\x8B\x14a\x05\x1CW__\xFD[\x80c\x9A\xC0\x1Da\x11a\0\xEFW\x80c\x9A\xC0\x1Da\x14a\x04cW\x80c\xB5\xD8\xB5\xB8\x14a\x04vW\x80c\xC6eg\x02\x14a\x04\x89W\x80c\xCB\xC2\xBDb\x14a\x04\x9CW\x80c\xDED\xAC\xB6\x14a\x04\xAFW__\xFD[\x80c\x8B\x8A\xAC<\x14a\x03\xF6W\x80c\x8D\xA5\xCB[\x14a\x04\x1EW\x80c\x94\xF6I\xDD\x14a\x04/W\x80c\x96\x7F\xC0\xD2\x14a\x04PW__\xFD[\x80cY\\jg\x11a\x01\xA0W\x80cf<\x1D\xE4\x11a\x01pW\x80cf<\x1D\xE4\x14a\x03[W\x80cqP\x18\xA6\x14a\x03}W\x80crJ\xF4#\x14a\x03\x85W\x80c~\xCE\xBE\0\x14a\x03\x98W\x80c\x88o\x11\x95\x14a\x03\xB7W__\xFD[\x80cY\\jg\x14a\x03\x05W\x80cZ\xC8j\xB7\x14a\x03\rW\x80c\\\x97Z\xBB\x14a\x03@W\x80c]\xE0\x8F\xF2\x14a\x03HW__\xFD[\x80c6\xA8\xC5\0\x11a\x01\xE6W\x80c6\xA8\xC5\0\x14a\x02xW\x80cH\x82^\x94\x14a\x02\x8EW\x80cKm]n\x14a\x02\xB5W\x80cP\xFFr%\x14a\x02\xC8W\x80cT\xFDMP\x14a\x02\xF0W__\xFD[\x80c\x13d9\xDD\x14a\x02\x17W\x80c\x17\x94\xBB<\x14a\x02,W\x80c.\xAEA\x8C\x14a\x02?W\x80c2\xE8\x9A\xCE\x14a\x02RW[__\xFD[a\x02*a\x02%6`\x04a%\xE1V[a\x05\x91V[\0[a\x02*a\x02:6`\x04a&\x0CV[a\x06fV[a\x02*a\x02M6`\x04a&JV[a\x07\x8CV[a\x02ea\x02`6`\x04a&\xACV[a\x08DV[`@Q\x90\x81R` \x01[`@Q\x80\x91\x03\x90\xF3[a\x02\x80a\x08\xE8V[`@Qa\x02o\x92\x91\x90a'\xE1V[a\x02e\x7FC7\xF8-\x14.A\xF2\xA8\xC1\x05G\xCD\x8C\x85\x9B\xDD\xB9\"b\xA6\x10X\xE7xB\xE2M\x9D\xEA\x92$\x81V[a\x02*a\x02\xC36`\x04a(7V[a\n\x05V[a\x02\xDBa\x02\xD66`\x04a&\x0CV[a\x0B>V[`@\x80Q\x92\x83R` \x83\x01\x91\x90\x91R\x01a\x02oV[a\x02\xF8a\x0B\xB2V[`@Qa\x02o\x91\x90a(\x80V[a\x02*a\x0B\xE2V[a\x030a\x03\x1B6`\x04a(\x92V[`\x98T`\x01`\xFF\x90\x92\x16\x91\x90\x91\x1B\x90\x81\x16\x14\x90V[`@Q\x90\x15\x15\x81R` \x01a\x02oV[`\x98Ta\x02eV[a\x02*a\x03V6`\x04a(\xB2V[a\x0C\x91V[a\x030a\x03i6`\x04a(7V[`\xD1` R_\x90\x81R`@\x90 T`\xFF\x16\x81V[a\x02*a\r\xE4V[a\x02ea\x03\x936`\x04a&\x0CV[a\r\xF5V[a\x02ea\x03\xA66`\x04a(7V[`\xCA` R_\x90\x81R`@\x90 T\x81V[a\x03\xDE\x7F\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\0\x81V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x02oV[a\x02ea\x04\x046`\x04a(7V[`\x01`\x01`\xA0\x1B\x03\x16_\x90\x81R`\xCE` R`@\x90 T\x90V[`3T`\x01`\x01`\xA0\x1B\x03\x16a\x03\xDEV[a\x04Ba\x04=6`\x04a(7V[a\x0EhV[`@Qa\x02o\x92\x91\x90a)\\V[`\xCBTa\x03\xDE\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[a\x02ea\x04q6`\x04a)\x89V[a\x0F\xE0V[a\x02*a\x04\x846`\x04a(\xB2V[a\x10qV[a\x02*a\x04\x976`\x04a(7V[a\x11\xB8V[a\x03\xDEa\x04\xAA6`\x04a)\xEAV[a\x11\xDBV[a\x04\xC2a\x04\xBD6`\x04a(7V[a\x12\x0FV[`@Qa\x02o\x91\x90a*\x14V[a\x02*a\x04\xDD6`\x04a)\xEAV[a\x12\x82V[a\x03\xDE\x7F\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\0\x81V[a\x02ea\x05\x176`\x04a&\x0CV[a\x13FV[a\x02*a\x05*6`\x04a(7V[a\x13\x98V[a\x03\xDEb\x0E\x16\xE4\x81V[a\x02ea\x14\x0EV[a\x02*a\x05O6`\x04a%\xE1V[a\x14\xC7V[a\x02ea\x05b6`\x04a(7V[a\x15\xDDV[a\x02ea\x05u6`\x04a*&V[`\xCD` \x90\x81R_\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 T\x81V[`@Qc#}\xFBG`\xE1\x1B\x81R3`\x04\x82\x01R\x7F\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\0`\x01`\x01`\xA0\x1B\x03\x16\x90cF\xFB\xF6\x8E\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x05\xF3W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x06\x17\x91\x90a*]V[a\x064W`@Qc\x1Dw\xD4w`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x98T\x81\x81\x16\x81\x14a\x06YW`@Qc\xC6\x1D\xCA]`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x06b\x82a\x15\xF2V[PPV[_Ta\x01\0\x90\x04`\xFF\x16\x15\x80\x80\x15a\x06\x84WP_T`\x01`\xFF\x90\x91\x16\x10[\x80a\x06\x9DWP0;\x15\x80\x15a\x06\x9DWP_T`\xFF\x16`\x01\x14[a\x07\x05W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`.`$\x82\x01R\x7FInitializable: contract is alrea`D\x82\x01Rm\x19\x1EH\x1A[\x9A]\x1AX[\x1A^\x99Y`\x92\x1B`d\x82\x01R`\x84\x01[`@Q\x80\x91\x03\x90\xFD[_\x80T`\xFF\x19\x16`\x01\x17\x90U\x80\x15a\x07&W_\x80Ta\xFF\0\x19\x16a\x01\0\x17\x90U[a\x07/\x82a\x15\xF2V[a\x078\x84a\x16/V[a\x07A\x83a\x16\x80V[\x80\x15a\x07\x86W_\x80Ta\xFF\0\x19\x16\x90U`@Q`\x01\x81R\x7F\x7F&\xB8?\xF9n\x1F+jh/\x138R\xF6y\x8A\t\xC4e\xDA\x95\x92\x14`\xCE\xFB8G@$\x98\x90` \x01`@Q\x80\x91\x03\x90\xA1[PPPPV[3`\x01`\x01`\xA0\x1B\x03\x7F\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\0\x16\x14a\x07\xD5W`@Qc\xF79X\x9B`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x07\xDDa\x16\xE9V[`@Qcl\xE5v\x89`\xE1\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x84\x16\x90c\xD9\xCA\xED\x12\x90a\x08\r\x90\x87\x90\x86\x90\x86\x90`\x04\x01a*|V[_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a\x08$W__\xFD[PZ\xF1\x15\x80\x15a\x086W=__>=_\xFD[PPPPa\x07\x86`\x01`eUV[`\x98T_\x90\x81\x90`\x01\x90\x81\x16\x03a\x08nW`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x08va\x16\xE9V[`\x01`\x01`\xA0\x1B\x03\x85\x16_\x90\x81R`\xCA` R`@\x90 Ta\x08\xA7\x86a\x08\xA0\x81\x8C\x8C\x8C\x87\x8Ca\x0F\xE0V[\x86\x88a\x17BV[`\x01`\x01`\xA0\x1B\x03\x86\x16_\x90\x81R`\xCA` R`@\x90 `\x01\x82\x01\x90Ua\x08\xD0\x86\x8A\x8A\x8Aa\x17\x94V[\x92PPa\x08\xDD`\x01`eUV[P\x96\x95PPPPPPV[``\x80_a\x08\xF6`\xD4a\x19\x01V[\x90P_\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\t\x12Wa\t\x12a&\x98V[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\t;W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_\x82g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\tXWa\tXa&\x98V[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\t\x81W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x83\x81\x10\x15a\t\xFAW__a\t\x9B`\xD4\x84a\x19\x11V[\x91P\x91P\x81\x85\x84\x81Q\x81\x10a\t\xB2Wa\t\xB2a*\xA0V[` \x02` \x01\x01\x90`\x01`\x01`\xA0\x1B\x03\x16\x90\x81`\x01`\x01`\xA0\x1B\x03\x16\x81RPP\x80\x84\x84\x81Q\x81\x10a\t\xE5Wa\t\xE5a*\xA0V[` \x90\x81\x02\x91\x90\x91\x01\x01RPP`\x01\x01a\t\x86V[P\x90\x94\x90\x93P\x91PPV[a\n\ra\x16\xE9V[_a\n\x19`\xD4\x83a\x19.V[\x91PPa\n'`\xD4\x83a\x19EV[P`@\x80Q`\x01`\x01`\xA0\x1B\x03\x84\x16\x81R` \x81\x01\x83\x90R\x7F\xD9\xD0\x82\xC3\xECO:?\xFAU\xC3$\x93\x9A\x06@\x7F_\xBC\xB8}^\x0C\xE3\xB9P\x8C\x92\xC8N\xD89\x91\x01`@Q\x80\x91\x03\x90\xA1\x80\x15a\x0B0W\x81`\x01`\x01`\xA0\x1B\x03\x16c\xD9\xCA\xED\x12b\x0E\x16\xE4\x84`\x01`\x01`\xA0\x1B\x03\x16c$\x95\xA5\x99`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\n\xBFW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\n\xE3\x91\x90a*\xB4V[\x84`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\x0B\x02\x93\x92\x91\x90a*|V[_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a\x0B\x19W__\xFD[PZ\xF1\x15\x80\x15a\x0B+W=__>=_\xFD[PPPP[Pa\x0B;`\x01`eUV[PV[_\x803`\x01`\x01`\xA0\x1B\x03\x7F\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\0\x16\x14a\x0B\x89W`@Qc\xF79X\x9B`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0B\x91a\x16\xE9V[a\x0B\x9C\x85\x85\x85a\x19YV[\x91P\x91Pa\x0B\xAA`\x01`eUV[\x93P\x93\x91PPV[``a\x0B\xDD\x7F\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\0a\x1A\xC1V[\x90P\x90V[`@Qc#}\xFBG`\xE1\x1B\x81R3`\x04\x82\x01R\x7F\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\0`\x01`\x01`\xA0\x1B\x03\x16\x90cF\xFB\xF6\x8E\x90`$\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x0CDW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x0Ch\x91\x90a*]V[a\x0C\x85W`@Qc\x1Dw\xD4w`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0C\x8F_\x19a\x15\xF2V[V[`\xCBT`\x01`\x01`\xA0\x1B\x03\x163\x14a\x0C\xBCW`@Qc \xBA?\xF9`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0C\xC4a\x16\xE9V[\x80_[\x81\x81\x10\x15a\r\xD8W`\xD1_\x85\x85\x84\x81\x81\x10a\x0C\xE4Wa\x0C\xE4a*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\x0C\xF9\x91\x90a(7V[`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x81\x01\x91\x90\x91R`@\x01_ T`\xFF\x16a\r\xD0W`\x01`\xD1_\x86\x86\x85\x81\x81\x10a\r0Wa\r0a*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\rE\x91\x90a(7V[`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x81\x01\x91\x90\x91R`@\x01_ \x80T`\xFF\x19\x16\x91\x15\x15\x91\x90\x91\x17\x90U\x7F\x0C5\xB1}\x91\xC9n\xB2u\x1C\xD4V\xE1%/B\xA3\x86\xE5$\xEF\x9F\xF2n\xCC\x99P\x85\x9F\xDC\x04\xFE\x84\x84\x83\x81\x81\x10a\r\x9FWa\r\x9Fa*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\r\xB4\x91\x90a(7V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01`@Q\x80\x91\x03\x90\xA1[`\x01\x01a\x0C\xC7V[PPa\x06b`\x01`eUV[a\r\xECa\x1A\xFEV[a\x0C\x8F_a\x16/V[_3`\x01`\x01`\xA0\x1B\x03\x7F\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\0\x16\x14a\x0E?W`@Qc\xF79X\x9B`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0EGa\x16\xE9V[_a\x0ES\x85\x85\x85a\x1BXV[\x92PPPa\x0Ea`\x01`eUV[\x93\x92PPPV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\xCE` R`@\x81 T``\x91\x82\x91\x90\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x0E\x9FWa\x0E\x9Fa&\x98V[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x0E\xC8W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x82\x81\x10\x15a\x0FVW`\x01`\x01`\xA0\x1B\x03\x86\x16_\x90\x81R`\xCD` \x90\x81R`@\x80\x83 `\xCE\x90\x92R\x82 \x80T\x91\x92\x91\x84\x90\x81\x10a\x0F\x0BWa\x0F\x0Ba*\xA0V[_\x91\x82R` \x80\x83 \x90\x91\x01T`\x01`\x01`\xA0\x1B\x03\x16\x83R\x82\x01\x92\x90\x92R`@\x01\x90 T\x82Q\x83\x90\x83\x90\x81\x10a\x0FCWa\x0FCa*\xA0V[` \x90\x81\x02\x91\x90\x91\x01\x01R`\x01\x01a\x0E\xCDV[P`\xCE_\x86`\x01`\x01`\xA0\x1B\x03\x16`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x01\x90\x81R` \x01_ \x81\x81\x80T\x80` \x02` \x01`@Q\x90\x81\x01`@R\x80\x92\x91\x90\x81\x81R` \x01\x82\x80T\x80\x15a\x0F\xCEW` \x02\x82\x01\x91\x90_R` _ \x90[\x81T`\x01`\x01`\xA0\x1B\x03\x16\x81R`\x01\x90\x91\x01\x90` \x01\x80\x83\x11a\x0F\xB0W[PPPPP\x91P\x93P\x93PPP\x91P\x91V[`@\x80Q\x7FC7\xF8-\x14.A\xF2\xA8\xC1\x05G\xCD\x8C\x85\x9B\xDD\xB9\"b\xA6\x10X\xE7xB\xE2M\x9D\xEA\x92$` \x82\x01R`\x01`\x01`\xA0\x1B\x03\x80\x89\x16\x92\x82\x01\x92\x90\x92R\x81\x87\x16``\x82\x01R\x90\x85\x16`\x80\x82\x01R`\xA0\x81\x01\x84\x90R`\xC0\x81\x01\x83\x90R`\xE0\x81\x01\x82\x90R_\x90a\x10f\x90a\x01\0\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 a\x1C\x1EV[\x97\x96PPPPPPPV[`\xCBT`\x01`\x01`\xA0\x1B\x03\x163\x14a\x10\x9CW`@Qc \xBA?\xF9`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x10\xA4a\x16\xE9V[\x80_[\x81\x81\x10\x15a\r\xD8W`\xD1_\x85\x85\x84\x81\x81\x10a\x10\xC4Wa\x10\xC4a*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\x10\xD9\x91\x90a(7V[`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x81\x01\x91\x90\x91R`@\x01_ T`\xFF\x16\x15a\x11\xB0W_`\xD1_\x86\x86\x85\x81\x81\x10a\x11\x10Wa\x11\x10a*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\x11%\x91\x90a(7V[`\x01`\x01`\xA0\x1B\x03\x16\x81R` \x81\x01\x91\x90\x91R`@\x01_ \x80T`\xFF\x19\x16\x91\x15\x15\x91\x90\x91\x17\x90U\x7F@tA;KD>NX\x01\x9F(U\xA8vQ\x135\x8C|r\xE3\x95\t\xC6\xAFE\xFC\x0F[\xA00\x84\x84\x83\x81\x81\x10a\x11\x7FWa\x11\x7Fa*\xA0V[\x90P` \x02\x01` \x81\x01\x90a\x11\x94\x91\x90a(7V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01`@Q\x80\x91\x03\x90\xA1[`\x01\x01a\x10\xA7V[a\x11\xC0a\x1A\xFEV[a\x11\xC8a\x16\xE9V[a\x11\xD1\x81a\x16\x80V[a\x0B;`\x01`eUV[`\xCE` R\x81_R`@_ \x81\x81T\x81\x10a\x11\xF4W_\x80\xFD[_\x91\x82R` \x90\x91 \x01T`\x01`\x01`\xA0\x1B\x03\x16\x91P\x82\x90PV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\xCE` \x90\x81R`@\x91\x82\x90 \x80T\x83Q\x81\x84\x02\x81\x01\x84\x01\x90\x94R\x80\x84R``\x93\x92\x83\x01\x82\x82\x80\x15a\x12vW` \x02\x82\x01\x91\x90_R` _ \x90[\x81T`\x01`\x01`\xA0\x1B\x03\x16\x81R`\x01\x90\x91\x01\x90` \x01\x80\x83\x11a\x12XW[PPPPP\x90P\x91\x90PV[3`\x01`\x01`\xA0\x1B\x03\x7F\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\0\x16\x14a\x12\xCBW`@Qc\xF79X\x9B`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x12\xD3a\x16\xE9V[_a\x12\xDF`\xD4\x84a\x19.V[\x91Pa\x12\xF8\x90P`\xD4\x84a\x12\xF3\x85\x85a*\xE3V[a\x1CdV[P`@\x80Q`\x01`\x01`\xA0\x1B\x03\x85\x16\x81R` \x81\x01\x84\x90R\x7F\xCA>\x02\xA4\xABz\xD3\xC4z\x8E6\xE5\xA6$\xC3\x01py\x17&\xABr\x0F\x1B\xAB\xFE\xF2\x10F\xD9S\xFF\x91\x01`@Q\x80\x91\x03\x90\xA1Pa\x06b`\x01`eUV[`\x98T_\x90\x81\x90`\x01\x90\x81\x16\x03a\x13pW`@Qc\x84\nH\xD5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x13xa\x16\xE9V[a\x13\x843\x86\x86\x86a\x17\x94V[\x91Pa\x13\x90`\x01`eUV[P\x93\x92PPPV[a\x13\xA0a\x1A\xFEV[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x14\x05W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FOwnable: new owner is the zero a`D\x82\x01Reddress`\xD0\x1B`d\x82\x01R`\x84\x01a\x06\xFCV[a\x0B;\x81a\x16/V[`@\x80Q\x80\x82\x01\x90\x91R`\n\x81Ri\"\xB4\xB3\xB2\xB7&0\xBC\xB2\xB9`\xB1\x1B` \x90\x91\x01R_\x7F\x8Bs\xC3\xC6\x9B\xB8\xFE=Q.\xCCL\xF7Y\xCCy#\x9F{\x17\x9B\x0F\xFA\xCA\xA9\xA7]R+9@\x0F\x7Fq\xB6%\xCF\xADD\xBA\xC6;\x13\xDB\xA0\x7F.\x1D`\x84\xEE\x04\xB6\xF8u!\x01\xEC\xE6\x12mXN\xE6\xEAa\x14{a\x1CyV[\x80Q` \x91\x82\x01 `@\x80Q\x92\x83\x01\x94\x90\x94R\x92\x81\x01\x91\x90\x91R``\x81\x01\x91\x90\x91RF`\x80\x82\x01R0`\xA0\x82\x01R`\xC0\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x90V[\x7F\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\0`\x01`\x01`\xA0\x1B\x03\x16c\xEA\xB6mz`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x15#W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x15G\x91\x90a*\xB4V[`\x01`\x01`\xA0\x1B\x03\x163`\x01`\x01`\xA0\x1B\x03\x16\x14a\x15xW`@QcyH!\xFF`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x98T\x80\x19\x82\x19\x81\x16\x14a\x15\x9FW`@Qc\xC6\x1D\xCA]`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x98\x82\x90U`@Q\x82\x81R3\x90\x7F5\x82\xD1\x82\x8E&\xBFV\xBD\x80\x15\x02\xBC\x02\x1A\xC0\xBC\x8A\xFBW\xC8&\xE4\x98kEY<\x8F\xAD8\x9C\x90` \x01`@Q\x80\x91\x03\x90\xA2PPV[__a\x15\xEA`\xD4\x84a\x19.V[\x94\x93PPPPV[`\x98\x81\x90U`@Q\x81\x81R3\x90\x7F\xAB@\xA3t\xBCQ\xDE7\"\0\xA8\xBC\x98\x1A\xF8\xC9\xEC\xDC\x08\xDF\xDA\xEF\x0B\xB6\xE0\x9F\x88\xF3\xC6\x16\xEF=\x90` \x01`@Q\x80\x91\x03\x90\xA2PV[`3\x80T`\x01`\x01`\xA0\x1B\x03\x83\x81\x16`\x01`\x01`\xA0\x1B\x03\x19\x83\x16\x81\x17\x90\x93U`@Q\x91\x16\x91\x90\x82\x90\x7F\x8B\xE0\x07\x9CS\x16Y\x14\x13D\xCD\x1F\xD0\xA4\xF2\x84\x19I\x7F\x97\"\xA3\xDA\xAF\xE3\xB4\x18okdW\xE0\x90_\x90\xA3PPV[`\xCBT`@\x80Q`\x01`\x01`\xA0\x1B\x03\x92\x83\x16\x81R\x91\x83\x16` \x83\x01R\x7FBd'^Y9U\xFF\x9DaF\xA5\x1AE%\xF6\xDD\xAC\xE2\xE8\x1D\xB99\x1A\xBC\xC9\xD1\xCAH\x04})\x91\x01`@Q\x80\x91\x03\x90\xA1`\xCB\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x92\x90\x92\x16\x91\x90\x91\x17\x90UV[`\x02`eT\x03a\x17;W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1F`$\x82\x01R\x7FReentrancyGuard: reentrant call\0`D\x82\x01R`d\x01a\x06\xFCV[`\x02`eUV[B\x81\x10\x15a\x17cW`@Qc\x08\x19\xBD\xCD`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x17w`\x01`\x01`\xA0\x1B\x03\x85\x16\x84\x84a\x1D\x15V[a\x07\x86W`@Qc\x8B\xAAW\x9F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x83\x16_\x90\x81R`\xD1` R`@\x81 T\x84\x90`\xFF\x16a\x17\xCEW`@Qc.\xFD\x96Q`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x17\xE3`\x01`\x01`\xA0\x1B\x03\x85\x163\x87\x86a\x1DsV[`@Qc\x11\xF9\xFB\xC9`\xE2\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x81\x16`\x04\x83\x01R`$\x82\x01\x85\x90R\x86\x16\x90cG\xE7\xEF$\x90`D\x01` `@Q\x80\x83\x03\x81_\x87Z\xF1\x15\x80\x15a\x18/W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x18S\x91\x90a*\xF6V[\x91P__a\x18b\x88\x88\x86a\x19YV[`@Qc\x1E2\x8Ey`\xE1\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x8B\x81\x16`\x04\x83\x01R\x8A\x81\x16`$\x83\x01R`D\x82\x01\x84\x90R`d\x82\x01\x83\x90R\x92\x94P\x90\x92P\x7F\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\0\x90\x91\x16\x90c<e\x1C\xF2\x90`\x84\x01_`@Q\x80\x83\x03\x81_\x87\x80;\x15\x80\x15a\x18\xE0W__\xFD[PZ\xF1\x15\x80\x15a\x18\xF2W=__>=_\xFD[PPPPPPP\x94\x93PPPPV[_a\x19\x0B\x82a\x1D\xCBV[\x92\x91PPV[_\x80\x80\x80a\x19\x1F\x86\x86a\x1D\xD5V[\x90\x94P\x92PPP[\x92P\x92\x90PV[_\x80\x80\x80a\x19\x1F\x86`\x01`\x01`\xA0\x1B\x03\x87\x16a\x1D\xFEV[_a\x0Ea\x83`\x01`\x01`\xA0\x1B\x03\x84\x16a\x1E6V[_\x80`\x01`\x01`\xA0\x1B\x03\x85\x16a\x19\x82W`@Qc\x16\xF2\xCC\xC9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x82_\x03a\x19\xA2W`@QcB\x06\x1B%`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x86\x16_\x90\x81R`\xCD` \x90\x81R`@\x80\x83 \x93\x88\x16\x83R\x92\x90R\x90\x81 T\x90\x81\x90\x03a\x1AHW`\x01`\x01`\xA0\x1B\x03\x86\x16_\x90\x81R`\xCE` \x90\x81R`@\x90\x91 T\x10a\x1A\nW`@Qc\x01\xA1D9`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x86\x81\x16_\x90\x81R`\xCE` \x90\x81R`@\x82 \x80T`\x01\x81\x01\x82U\x90\x83R\x91 \x01\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x91\x87\x16\x91\x90\x91\x17\x90U[a\x1AR\x84\x82a*\xE3V[`\x01`\x01`\xA0\x1B\x03\x80\x88\x16_\x90\x81R`\xCD` \x90\x81R`@\x80\x83 \x93\x8A\x16\x83R\x92\x90R\x81\x90 \x91\x90\x91UQ\x7FUH\xC87\xAB\x06\x8C\xF5j,$y\xDF\x08\x82\xA4\x92/\xD2\x03\xED\xB7Qs!\x83\x1D\x95\x07\x8C_b\x90a\x1A\xAE\x90\x88\x90\x88\x90\x88\x90a*|V[`@Q\x80\x91\x03\x90\xA1\x95\x92\x94P\x91\x92PPPV[``_a\x1A\xCD\x83a\x1ERV[`@\x80Q` \x80\x82R\x81\x83\x01\x90\x92R\x91\x92P_\x91\x90` \x82\x01\x81\x806\x837PPP\x91\x82RP` \x81\x01\x92\x90\x92RP\x90V[`3T`\x01`\x01`\xA0\x1B\x03\x163\x14a\x0C\x8FW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01\x81\x90R`$\x82\x01R\x7FOwnable: caller is not the owner`D\x82\x01R`d\x01a\x06\xFCV[__\x82_\x03a\x1BzW`@QcB\x06\x1B%`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x86\x16_\x90\x81R`\xCD` \x90\x81R`@\x80\x83 \x93\x88\x16\x83R\x92\x90R T\x80\x84\x11\x15a\x1B\xC0W`@QcK\x18\xB1\x93`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x1B\xCA\x84\x82a+\rV[`\x01`\x01`\xA0\x1B\x03\x80\x88\x16_\x90\x81R`\xCD` \x90\x81R`@\x80\x83 \x93\x8A\x16\x83R\x92\x90R\x90\x81 \x82\x90U\x90\x91P\x81\x90\x03a\x1C\x12Wa\x1C\x07\x86\x86a\x1EyV[`\x01\x92P\x90Pa\x0B\xAAV[_\x96\x90\x95P\x93PPPPV[_a\x1C'a\x14\x0EV[`@Qa\x19\x01`\xF0\x1B` \x82\x01R`\"\x81\x01\x91\x90\x91R`B\x81\x01\x83\x90R`b\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x91\x90PV[_a\x15\xEA\x84`\x01`\x01`\xA0\x1B\x03\x85\x16\x84a\x1F\xF7V[``_a\x1C\xA5\x7F\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\0a\x1A\xC1V[\x90P\x80_\x81Q\x81\x10a\x1C\xB9Wa\x1C\xB9a*\xA0V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x81`\x01\x81Q\x81\x10a\x1C\xD7Wa\x1C\xD7a*\xA0V[\x01` \x90\x81\x01Q`@Q`\x01`\x01`\xF8\x1B\x03\x19\x93\x84\x16\x92\x81\x01\x92\x90\x92R\x91\x90\x91\x16`!\x82\x01R`\"\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x91PP\x90V[___a\x1D\"\x85\x85a \x13V[\x90\x92P\x90P_\x81`\x04\x81\x11\x15a\x1D:Wa\x1D:a+ V[\x14\x80\x15a\x1DXWP\x85`\x01`\x01`\xA0\x1B\x03\x16\x82`\x01`\x01`\xA0\x1B\x03\x16\x14[\x80a\x1DiWPa\x1Di\x86\x86\x86a RV[\x96\x95PPPPPPV[a\x07\x86\x84c#\xB8r\xDD`\xE0\x1B\x85\x85\x85`@Q`$\x01a\x1D\x94\x93\x92\x91\x90a*|V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R` \x81\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16`\x01`\x01`\xE0\x1B\x03\x19\x90\x93\x16\x92\x90\x92\x17\x90\x91Ra!9V[_a\x19\x0B\x82a\"\x11V[_\x80\x80a\x1D\xE2\x85\x85a\"\x1AV[_\x81\x81R`\x02\x96\x90\x96\x01` R`@\x90\x95 T\x94\x95\x93PPPPV[_\x81\x81R`\x02\x83\x01` R`@\x81 T\x81\x90\x80a\x1E+Wa\x1E\x1F\x85\x85a\"%V[\x92P_\x91Pa\x19'\x90PV[`\x01\x92P\x90Pa\x19'V[_\x81\x81R`\x02\x83\x01` R`@\x81 \x81\x90Ua\x0Ea\x83\x83a\"0V[_`\xFF\x82\x16`\x1F\x81\x11\x15a\x19\x0BW`@Qc,\xD4J\xC3`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x82\x16_\x90\x81R`\xCE` R`@\x81 T\x90[\x81\x81\x10\x15a\x1F\x8BW`\x01`\x01`\xA0\x1B\x03\x84\x81\x16_\x90\x81R`\xCE` R`@\x90 \x80T\x91\x85\x16\x91\x83\x90\x81\x10a\x1E\xC9Wa\x1E\xC9a*\xA0V[_\x91\x82R` \x90\x91 \x01T`\x01`\x01`\xA0\x1B\x03\x16\x03a\x1F\x83W`\x01`\x01`\xA0\x1B\x03\x84\x16_\x90\x81R`\xCE` R`@\x90 \x80Ta\x1F\x07\x90`\x01\x90a+\rV[\x81T\x81\x10a\x1F\x17Wa\x1F\x17a*\xA0V[_\x91\x82R` \x80\x83 \x90\x91\x01T`\x01`\x01`\xA0\x1B\x03\x87\x81\x16\x84R`\xCE\x90\x92R`@\x90\x92 \x80T\x91\x90\x92\x16\x91\x90\x83\x90\x81\x10a\x1FSWa\x1FSa*\xA0V[\x90_R` _ \x01_a\x01\0\n\x81T\x81`\x01`\x01`\xA0\x1B\x03\x02\x19\x16\x90\x83`\x01`\x01`\xA0\x1B\x03\x16\x02\x17\x90UPa\x1F\x8BV[`\x01\x01a\x1E\x93V[\x81\x81\x03a\x1F\xABW`@Qc-\xF1ZA`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x84\x16_\x90\x81R`\xCE` R`@\x90 \x80T\x80a\x1F\xD1Wa\x1F\xD1a+4V[_\x82\x81R` \x90 \x81\x01_\x19\x90\x81\x01\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x90U\x01\x90UPPPPV[_\x82\x81R`\x02\x84\x01` R`@\x81 \x82\x90Ua\x15\xEA\x84\x84a\";V[__\x82Q`A\x03a GW` \x83\x01Q`@\x84\x01Q``\x85\x01Q_\x1Aa ;\x87\x82\x85\x85a\"FV[\x94P\x94PPPPa\x19'V[P_\x90P`\x02a\x19'V[___\x85`\x01`\x01`\xA0\x1B\x03\x16c\x16&\xBA~`\xE0\x1B\x86\x86`@Q`$\x01a z\x92\x91\x90a+HV[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x81R` \x82\x01\x80Q`\x01`\x01`\xE0\x1B\x03\x16`\x01`\x01`\xE0\x1B\x03\x19\x90\x94\x16\x93\x90\x93\x17\x90\x92R\x90Qa \xB8\x91\x90a+`V[_`@Q\x80\x83\x03\x81\x85Z\xFA\x91PP=\x80_\x81\x14a \xF0W`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a \xF5V[``\x91P[P\x91P\x91P\x81\x80\x15a!\tWP` \x81Q\x10\x15[\x80\x15a\x1DiWP\x80Qc\x0B\x13]?`\xE1\x1B\x90a!.\x90\x83\x01` \x90\x81\x01\x90\x84\x01a*\xF6V[\x14\x96\x95PPPPPPV[_a!\x8D\x82`@Q\x80`@\x01`@R\x80` \x81R` \x01\x7FSafeERC20: low-level call failed\x81RP\x85`\x01`\x01`\xA0\x1B\x03\x16a#\x03\x90\x92\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x90P\x80Q_\x14\x80a!\xADWP\x80\x80` \x01\x90Q\x81\x01\x90a!\xAD\x91\x90a*]V[a\"\x0CW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`*`$\x82\x01R\x7FSafeERC20: ERC20 operation did n`D\x82\x01Ri\x1B\xDD\x08\x1C\xDDX\xD8\xD9YY`\xB2\x1B`d\x82\x01R`\x84\x01a\x06\xFCV[PPPV[_a\x19\x0B\x82T\x90V[_a\x0Ea\x83\x83a#\x11V[_a\x0Ea\x83\x83a#7V[_a\x0Ea\x83\x83a#NV[_a\x0Ea\x83\x83a$1V[_\x80\x7F\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]WnsW\xA4P\x1D\xDF\xE9/Fh\x1B \xA0\x83\x11\x15a\"{WP_\x90P`\x03a\"\xFAV[`@\x80Q_\x80\x82R` \x82\x01\x80\x84R\x89\x90R`\xFF\x88\x16\x92\x82\x01\x92\x90\x92R``\x81\x01\x86\x90R`\x80\x81\x01\x85\x90R`\x01\x90`\xA0\x01` `@Q` \x81\x03\x90\x80\x84\x03\x90\x85Z\xFA\x15\x80\x15a\"\xCCW=__>=_\xFD[PP`@Q`\x1F\x19\x01Q\x91PP`\x01`\x01`\xA0\x1B\x03\x81\x16a\"\xF4W_`\x01\x92P\x92PPa\"\xFAV[\x91P_\x90P[\x94P\x94\x92PPPV[``a\x15\xEA\x84\x84_\x85a$}V[_\x82_\x01\x82\x81T\x81\x10a#&Wa#&a*\xA0V[\x90_R` _ \x01T\x90P\x92\x91PPV[_\x81\x81R`\x01\x83\x01` R`@\x81 T\x15\x15a\x0EaV[_\x81\x81R`\x01\x83\x01` R`@\x81 T\x80\x15a$(W_a#p`\x01\x83a+\rV[\x85T\x90\x91P_\x90a#\x83\x90`\x01\x90a+\rV[\x90P\x81\x81\x14a#\xE2W_\x86_\x01\x82\x81T\x81\x10a#\xA1Wa#\xA1a*\xA0V[\x90_R` _ \x01T\x90P\x80\x87_\x01\x84\x81T\x81\x10a#\xC1Wa#\xC1a*\xA0V[_\x91\x82R` \x80\x83 \x90\x91\x01\x92\x90\x92U\x91\x82R`\x01\x88\x01\x90R`@\x90 \x83\x90U[\x85T\x86\x90\x80a#\xF3Wa#\xF3a+4V[`\x01\x90\x03\x81\x81\x90_R` _ \x01_\x90U\x90U\x85`\x01\x01_\x86\x81R` \x01\x90\x81R` \x01_ _\x90U`\x01\x93PPPPa\x19\x0BV[_\x91PPa\x19\x0BV[_\x81\x81R`\x01\x83\x01` R`@\x81 Ta$vWP\x81T`\x01\x81\x81\x01\x84U_\x84\x81R` \x80\x82 \x90\x93\x01\x84\x90U\x84T\x84\x82R\x82\x86\x01\x90\x93R`@\x90 \x91\x90\x91Ua\x19\x0BV[P_a\x19\x0BV[``\x82G\x10\x15a$\xDEW`@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\x06\xFCV[__\x86`\x01`\x01`\xA0\x1B\x03\x16\x85\x87`@Qa$\xF9\x91\x90a+`V[_`@Q\x80\x83\x03\x81\x85\x87Z\xF1\x92PPP=\x80_\x81\x14a%3W`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a%8V[``\x91P[P\x91P\x91Pa\x10f\x87\x83\x83\x87``\x83\x15a%\xB2W\x82Q_\x03a%\xABW`\x01`\x01`\xA0\x1B\x03\x85\x16;a%\xABW`@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\x06\xFCV[P\x81a\x15\xEAV[a\x15\xEA\x83\x83\x81Q\x15a%\xC7W\x81Q\x80\x83` \x01\xFD[\x80`@QbF\x1B\xCD`\xE5\x1B\x81R`\x04\x01a\x06\xFC\x91\x90a(\x80V[_` \x82\x84\x03\x12\x15a%\xF1W__\xFD[P5\x91\x90PV[`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x0B;W__\xFD[___``\x84\x86\x03\x12\x15a&\x1EW__\xFD[\x835a&)\x81a%\xF8V[\x92P` \x84\x015a&9\x81a%\xF8V[\x92\x95\x92\x94PPP`@\x91\x90\x91\x015\x90V[____`\x80\x85\x87\x03\x12\x15a&]W__\xFD[\x845a&h\x81a%\xF8V[\x93P` \x85\x015a&x\x81a%\xF8V[\x92P`@\x85\x015a&\x88\x81a%\xF8V[\x93\x96\x92\x95P\x92\x93``\x015\x92PPV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[______`\xC0\x87\x89\x03\x12\x15a&\xC1W__\xFD[\x865a&\xCC\x81a%\xF8V[\x95P` \x87\x015a&\xDC\x81a%\xF8V[\x94P`@\x87\x015\x93P``\x87\x015a&\xF3\x81a%\xF8V[\x92P`\x80\x87\x015\x91P`\xA0\x87\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a'\x15W__\xFD[\x87\x01`\x1F\x81\x01\x89\x13a'%W__\xFD[\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a'?Wa'?a&\x98V[`@Q`\x1F\x82\x01`\x1F\x19\x90\x81\x16`?\x01\x16\x81\x01g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x82\x82\x10\x17\x15a'nWa'na&\x98V[`@R\x81\x81R\x82\x82\x01` \x01\x8B\x10\x15a'\x85W__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92\x95P\x92\x95P\x92\x95V[_\x81Q\x80\x84R` \x84\x01\x93P` \x83\x01_[\x82\x81\x10\x15a'\xD7W\x81Q\x86R` \x95\x86\x01\x95\x90\x91\x01\x90`\x01\x01a'\xB9V[P\x93\x94\x93PPPPV[`@\x80\x82R\x83Q\x90\x82\x01\x81\x90R_\x90` \x85\x01\x90``\x84\x01\x90\x83[\x81\x81\x10\x15a(#W\x83Q`\x01`\x01`\xA0\x1B\x03\x16\x83R` \x93\x84\x01\x93\x90\x92\x01\x91`\x01\x01a'\xFCV[PP\x83\x81\x03` \x85\x01Ra\x1Di\x81\x86a'\xA7V[_` \x82\x84\x03\x12\x15a(GW__\xFD[\x815a\x0Ea\x81a%\xF8V[_\x81Q\x80\x84R\x80` \x84\x01` \x86\x01^_` \x82\x86\x01\x01R` `\x1F\x19`\x1F\x83\x01\x16\x85\x01\x01\x91PP\x92\x91PPV[` \x81R_a\x0Ea` \x83\x01\x84a(RV[_` \x82\x84\x03\x12\x15a(\xA2W__\xFD[\x815`\xFF\x81\x16\x81\x14a\x0EaW__\xFD[__` \x83\x85\x03\x12\x15a(\xC3W__\xFD[\x825g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a(\xD9W__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a(\xE9W__\xFD[\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a(\xFFW__\xFD[\x85` \x82`\x05\x1B\x84\x01\x01\x11\x15a)\x13W__\xFD[` \x91\x90\x91\x01\x95\x90\x94P\x92PPPV[_\x81Q\x80\x84R` \x84\x01\x93P` \x83\x01_[\x82\x81\x10\x15a'\xD7W\x81Q`\x01`\x01`\xA0\x1B\x03\x16\x86R` \x95\x86\x01\x95\x90\x91\x01\x90`\x01\x01a)5V[`@\x81R_a)n`@\x83\x01\x85a)#V[\x82\x81\x03` \x84\x01Ra)\x80\x81\x85a'\xA7V[\x95\x94PPPPPV[______`\xC0\x87\x89\x03\x12\x15a)\x9EW__\xFD[\x865a)\xA9\x81a%\xF8V[\x95P` \x87\x015a)\xB9\x81a%\xF8V[\x94P`@\x87\x015a)\xC9\x81a%\xF8V[\x95\x98\x94\x97P\x94\x95``\x81\x015\x95P`\x80\x81\x015\x94`\xA0\x90\x91\x015\x93P\x91PPV[__`@\x83\x85\x03\x12\x15a)\xFBW__\xFD[\x825a*\x06\x81a%\xF8V[\x94` \x93\x90\x93\x015\x93PPPV[` \x81R_a\x0Ea` \x83\x01\x84a)#V[__`@\x83\x85\x03\x12\x15a*7W__\xFD[\x825a*B\x81a%\xF8V[\x91P` \x83\x015a*R\x81a%\xF8V[\x80\x91PP\x92P\x92\x90PV[_` \x82\x84\x03\x12\x15a*mW__\xFD[\x81Q\x80\x15\x15\x81\x14a\x0EaW__\xFD[`\x01`\x01`\xA0\x1B\x03\x93\x84\x16\x81R\x91\x90\x92\x16` \x82\x01R`@\x81\x01\x91\x90\x91R``\x01\x90V[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[_` \x82\x84\x03\x12\x15a*\xC4W__\xFD[\x81Qa\x0Ea\x81a%\xF8V[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x80\x82\x01\x80\x82\x11\x15a\x19\x0BWa\x19\x0Ba*\xCFV[_` \x82\x84\x03\x12\x15a+\x06W__\xFD[PQ\x91\x90PV[\x81\x81\x03\x81\x81\x11\x15a\x19\x0BWa\x19\x0Ba*\xCFV[cNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[cNH{q`\xE0\x1B_R`1`\x04R`$_\xFD[\x82\x81R`@` \x82\x01R_a\x15\xEA`@\x83\x01\x84a(RV[_\x82Q\x80` \x85\x01\x84^_\x92\x01\x91\x82RP\x91\x90PV\xFE\xA2dipfsX\"\x12 QVB\x1C\xB9\xF4\x86]\x8C kb'y\x99\xDBuS\xF3j\xA1^\xD2\x84\xF4F\xE7\x8B\xB9\xA7MVdsolcC\0\x08\x1B\x003",
1075 );
1076 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1077 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1082 #[derive(Clone)]
1083 pub struct CurrentlyPaused;
1084 #[allow(
1085 non_camel_case_types,
1086 non_snake_case,
1087 clippy::pub_underscore_fields,
1088 clippy::style
1089 )]
1090 const _: () = {
1091 use alloy::sol_types as alloy_sol_types;
1092 #[doc(hidden)]
1093 type UnderlyingSolTuple<'a> = ();
1094 #[doc(hidden)]
1095 type UnderlyingRustTuple<'a> = ();
1096 #[cfg(test)]
1097 #[allow(dead_code, unreachable_patterns)]
1098 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1099 match _t {
1100 alloy_sol_types::private::AssertTypeEq::<
1101 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1102 >(_) => {}
1103 }
1104 }
1105 #[automatically_derived]
1106 #[doc(hidden)]
1107 impl ::core::convert::From<CurrentlyPaused> for UnderlyingRustTuple<'_> {
1108 fn from(value: CurrentlyPaused) -> Self {
1109 ()
1110 }
1111 }
1112 #[automatically_derived]
1113 #[doc(hidden)]
1114 impl ::core::convert::From<UnderlyingRustTuple<'_>> for CurrentlyPaused {
1115 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1116 Self
1117 }
1118 }
1119 #[automatically_derived]
1120 impl alloy_sol_types::SolError for CurrentlyPaused {
1121 type Parameters<'a> = UnderlyingSolTuple<'a>;
1122 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1123 const SIGNATURE: &'static str = "CurrentlyPaused()";
1124 const SELECTOR: [u8; 4] = [132u8, 10u8, 72u8, 213u8];
1125 #[inline]
1126 fn new<'a>(
1127 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1128 ) -> Self {
1129 tuple.into()
1130 }
1131 #[inline]
1132 fn tokenize(&self) -> Self::Token<'_> {
1133 ()
1134 }
1135 #[inline]
1136 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1137 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1138 data,
1139 )
1140 .map(Self::new)
1141 }
1142 }
1143 };
1144 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1145 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1150 #[derive(Clone)]
1151 pub struct InputAddressZero;
1152 #[allow(
1153 non_camel_case_types,
1154 non_snake_case,
1155 clippy::pub_underscore_fields,
1156 clippy::style
1157 )]
1158 const _: () = {
1159 use alloy::sol_types as alloy_sol_types;
1160 #[doc(hidden)]
1161 type UnderlyingSolTuple<'a> = ();
1162 #[doc(hidden)]
1163 type UnderlyingRustTuple<'a> = ();
1164 #[cfg(test)]
1165 #[allow(dead_code, unreachable_patterns)]
1166 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1167 match _t {
1168 alloy_sol_types::private::AssertTypeEq::<
1169 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1170 >(_) => {}
1171 }
1172 }
1173 #[automatically_derived]
1174 #[doc(hidden)]
1175 impl ::core::convert::From<InputAddressZero> for UnderlyingRustTuple<'_> {
1176 fn from(value: InputAddressZero) -> Self {
1177 ()
1178 }
1179 }
1180 #[automatically_derived]
1181 #[doc(hidden)]
1182 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InputAddressZero {
1183 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1184 Self
1185 }
1186 }
1187 #[automatically_derived]
1188 impl alloy_sol_types::SolError for InputAddressZero {
1189 type Parameters<'a> = UnderlyingSolTuple<'a>;
1190 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1191 const SIGNATURE: &'static str = "InputAddressZero()";
1192 const SELECTOR: [u8; 4] = [115u8, 99u8, 33u8, 118u8];
1193 #[inline]
1194 fn new<'a>(
1195 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1196 ) -> Self {
1197 tuple.into()
1198 }
1199 #[inline]
1200 fn tokenize(&self) -> Self::Token<'_> {
1201 ()
1202 }
1203 #[inline]
1204 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1205 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1206 data,
1207 )
1208 .map(Self::new)
1209 }
1210 }
1211 };
1212 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1213 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1218 #[derive(Clone)]
1219 pub struct InvalidNewPausedStatus;
1220 #[allow(
1221 non_camel_case_types,
1222 non_snake_case,
1223 clippy::pub_underscore_fields,
1224 clippy::style
1225 )]
1226 const _: () = {
1227 use alloy::sol_types as alloy_sol_types;
1228 #[doc(hidden)]
1229 type UnderlyingSolTuple<'a> = ();
1230 #[doc(hidden)]
1231 type UnderlyingRustTuple<'a> = ();
1232 #[cfg(test)]
1233 #[allow(dead_code, unreachable_patterns)]
1234 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1235 match _t {
1236 alloy_sol_types::private::AssertTypeEq::<
1237 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1238 >(_) => {}
1239 }
1240 }
1241 #[automatically_derived]
1242 #[doc(hidden)]
1243 impl ::core::convert::From<InvalidNewPausedStatus> for UnderlyingRustTuple<'_> {
1244 fn from(value: InvalidNewPausedStatus) -> Self {
1245 ()
1246 }
1247 }
1248 #[automatically_derived]
1249 #[doc(hidden)]
1250 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidNewPausedStatus {
1251 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1252 Self
1253 }
1254 }
1255 #[automatically_derived]
1256 impl alloy_sol_types::SolError for InvalidNewPausedStatus {
1257 type Parameters<'a> = UnderlyingSolTuple<'a>;
1258 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1259 const SIGNATURE: &'static str = "InvalidNewPausedStatus()";
1260 const SELECTOR: [u8; 4] = [198u8, 29u8, 202u8, 93u8];
1261 #[inline]
1262 fn new<'a>(
1263 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1264 ) -> Self {
1265 tuple.into()
1266 }
1267 #[inline]
1268 fn tokenize(&self) -> Self::Token<'_> {
1269 ()
1270 }
1271 #[inline]
1272 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1273 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1274 data,
1275 )
1276 .map(Self::new)
1277 }
1278 }
1279 };
1280 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1281 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1286 #[derive(Clone)]
1287 pub struct InvalidShortString;
1288 #[allow(
1289 non_camel_case_types,
1290 non_snake_case,
1291 clippy::pub_underscore_fields,
1292 clippy::style
1293 )]
1294 const _: () = {
1295 use alloy::sol_types as alloy_sol_types;
1296 #[doc(hidden)]
1297 type UnderlyingSolTuple<'a> = ();
1298 #[doc(hidden)]
1299 type UnderlyingRustTuple<'a> = ();
1300 #[cfg(test)]
1301 #[allow(dead_code, unreachable_patterns)]
1302 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1303 match _t {
1304 alloy_sol_types::private::AssertTypeEq::<
1305 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1306 >(_) => {}
1307 }
1308 }
1309 #[automatically_derived]
1310 #[doc(hidden)]
1311 impl ::core::convert::From<InvalidShortString> for UnderlyingRustTuple<'_> {
1312 fn from(value: InvalidShortString) -> Self {
1313 ()
1314 }
1315 }
1316 #[automatically_derived]
1317 #[doc(hidden)]
1318 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidShortString {
1319 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1320 Self
1321 }
1322 }
1323 #[automatically_derived]
1324 impl alloy_sol_types::SolError for InvalidShortString {
1325 type Parameters<'a> = UnderlyingSolTuple<'a>;
1326 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1327 const SIGNATURE: &'static str = "InvalidShortString()";
1328 const SELECTOR: [u8; 4] = [179u8, 81u8, 43u8, 12u8];
1329 #[inline]
1330 fn new<'a>(
1331 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1332 ) -> Self {
1333 tuple.into()
1334 }
1335 #[inline]
1336 fn tokenize(&self) -> Self::Token<'_> {
1337 ()
1338 }
1339 #[inline]
1340 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1341 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1342 data,
1343 )
1344 .map(Self::new)
1345 }
1346 }
1347 };
1348 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1349 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1354 #[derive(Clone)]
1355 pub struct InvalidSignature;
1356 #[allow(
1357 non_camel_case_types,
1358 non_snake_case,
1359 clippy::pub_underscore_fields,
1360 clippy::style
1361 )]
1362 const _: () = {
1363 use alloy::sol_types as alloy_sol_types;
1364 #[doc(hidden)]
1365 type UnderlyingSolTuple<'a> = ();
1366 #[doc(hidden)]
1367 type UnderlyingRustTuple<'a> = ();
1368 #[cfg(test)]
1369 #[allow(dead_code, unreachable_patterns)]
1370 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1371 match _t {
1372 alloy_sol_types::private::AssertTypeEq::<
1373 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1374 >(_) => {}
1375 }
1376 }
1377 #[automatically_derived]
1378 #[doc(hidden)]
1379 impl ::core::convert::From<InvalidSignature> for UnderlyingRustTuple<'_> {
1380 fn from(value: InvalidSignature) -> Self {
1381 ()
1382 }
1383 }
1384 #[automatically_derived]
1385 #[doc(hidden)]
1386 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidSignature {
1387 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1388 Self
1389 }
1390 }
1391 #[automatically_derived]
1392 impl alloy_sol_types::SolError for InvalidSignature {
1393 type Parameters<'a> = UnderlyingSolTuple<'a>;
1394 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1395 const SIGNATURE: &'static str = "InvalidSignature()";
1396 const SELECTOR: [u8; 4] = [139u8, 170u8, 87u8, 159u8];
1397 #[inline]
1398 fn new<'a>(
1399 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1400 ) -> Self {
1401 tuple.into()
1402 }
1403 #[inline]
1404 fn tokenize(&self) -> Self::Token<'_> {
1405 ()
1406 }
1407 #[inline]
1408 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1409 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1410 data,
1411 )
1412 .map(Self::new)
1413 }
1414 }
1415 };
1416 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1417 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1422 #[derive(Clone)]
1423 pub struct MaxStrategiesExceeded;
1424 #[allow(
1425 non_camel_case_types,
1426 non_snake_case,
1427 clippy::pub_underscore_fields,
1428 clippy::style
1429 )]
1430 const _: () = {
1431 use alloy::sol_types as alloy_sol_types;
1432 #[doc(hidden)]
1433 type UnderlyingSolTuple<'a> = ();
1434 #[doc(hidden)]
1435 type UnderlyingRustTuple<'a> = ();
1436 #[cfg(test)]
1437 #[allow(dead_code, unreachable_patterns)]
1438 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1439 match _t {
1440 alloy_sol_types::private::AssertTypeEq::<
1441 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1442 >(_) => {}
1443 }
1444 }
1445 #[automatically_derived]
1446 #[doc(hidden)]
1447 impl ::core::convert::From<MaxStrategiesExceeded> for UnderlyingRustTuple<'_> {
1448 fn from(value: MaxStrategiesExceeded) -> Self {
1449 ()
1450 }
1451 }
1452 #[automatically_derived]
1453 #[doc(hidden)]
1454 impl ::core::convert::From<UnderlyingRustTuple<'_>> for MaxStrategiesExceeded {
1455 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1456 Self
1457 }
1458 }
1459 #[automatically_derived]
1460 impl alloy_sol_types::SolError for MaxStrategiesExceeded {
1461 type Parameters<'a> = UnderlyingSolTuple<'a>;
1462 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1463 const SIGNATURE: &'static str = "MaxStrategiesExceeded()";
1464 const SELECTOR: [u8; 4] = [13u8, 10u8, 33u8, 200u8];
1465 #[inline]
1466 fn new<'a>(
1467 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1468 ) -> Self {
1469 tuple.into()
1470 }
1471 #[inline]
1472 fn tokenize(&self) -> Self::Token<'_> {
1473 ()
1474 }
1475 #[inline]
1476 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1477 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1478 data,
1479 )
1480 .map(Self::new)
1481 }
1482 }
1483 };
1484 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1485 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1490 #[derive(Clone)]
1491 pub struct OnlyDelegationManager;
1492 #[allow(
1493 non_camel_case_types,
1494 non_snake_case,
1495 clippy::pub_underscore_fields,
1496 clippy::style
1497 )]
1498 const _: () = {
1499 use alloy::sol_types as alloy_sol_types;
1500 #[doc(hidden)]
1501 type UnderlyingSolTuple<'a> = ();
1502 #[doc(hidden)]
1503 type UnderlyingRustTuple<'a> = ();
1504 #[cfg(test)]
1505 #[allow(dead_code, unreachable_patterns)]
1506 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1507 match _t {
1508 alloy_sol_types::private::AssertTypeEq::<
1509 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1510 >(_) => {}
1511 }
1512 }
1513 #[automatically_derived]
1514 #[doc(hidden)]
1515 impl ::core::convert::From<OnlyDelegationManager> for UnderlyingRustTuple<'_> {
1516 fn from(value: OnlyDelegationManager) -> Self {
1517 ()
1518 }
1519 }
1520 #[automatically_derived]
1521 #[doc(hidden)]
1522 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OnlyDelegationManager {
1523 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1524 Self
1525 }
1526 }
1527 #[automatically_derived]
1528 impl alloy_sol_types::SolError for OnlyDelegationManager {
1529 type Parameters<'a> = UnderlyingSolTuple<'a>;
1530 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1531 const SIGNATURE: &'static str = "OnlyDelegationManager()";
1532 const SELECTOR: [u8; 4] = [247u8, 57u8, 88u8, 155u8];
1533 #[inline]
1534 fn new<'a>(
1535 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1536 ) -> Self {
1537 tuple.into()
1538 }
1539 #[inline]
1540 fn tokenize(&self) -> Self::Token<'_> {
1541 ()
1542 }
1543 #[inline]
1544 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1545 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1546 data,
1547 )
1548 .map(Self::new)
1549 }
1550 }
1551 };
1552 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1553 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1558 #[derive(Clone)]
1559 pub struct OnlyPauser;
1560 #[allow(
1561 non_camel_case_types,
1562 non_snake_case,
1563 clippy::pub_underscore_fields,
1564 clippy::style
1565 )]
1566 const _: () = {
1567 use alloy::sol_types as alloy_sol_types;
1568 #[doc(hidden)]
1569 type UnderlyingSolTuple<'a> = ();
1570 #[doc(hidden)]
1571 type UnderlyingRustTuple<'a> = ();
1572 #[cfg(test)]
1573 #[allow(dead_code, unreachable_patterns)]
1574 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1575 match _t {
1576 alloy_sol_types::private::AssertTypeEq::<
1577 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1578 >(_) => {}
1579 }
1580 }
1581 #[automatically_derived]
1582 #[doc(hidden)]
1583 impl ::core::convert::From<OnlyPauser> for UnderlyingRustTuple<'_> {
1584 fn from(value: OnlyPauser) -> Self {
1585 ()
1586 }
1587 }
1588 #[automatically_derived]
1589 #[doc(hidden)]
1590 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OnlyPauser {
1591 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1592 Self
1593 }
1594 }
1595 #[automatically_derived]
1596 impl alloy_sol_types::SolError for OnlyPauser {
1597 type Parameters<'a> = UnderlyingSolTuple<'a>;
1598 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1599 const SIGNATURE: &'static str = "OnlyPauser()";
1600 const SELECTOR: [u8; 4] = [117u8, 223u8, 81u8, 220u8];
1601 #[inline]
1602 fn new<'a>(
1603 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1604 ) -> Self {
1605 tuple.into()
1606 }
1607 #[inline]
1608 fn tokenize(&self) -> Self::Token<'_> {
1609 ()
1610 }
1611 #[inline]
1612 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1613 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1614 data,
1615 )
1616 .map(Self::new)
1617 }
1618 }
1619 };
1620 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1621 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1626 #[derive(Clone)]
1627 pub struct OnlyStrategyWhitelister;
1628 #[allow(
1629 non_camel_case_types,
1630 non_snake_case,
1631 clippy::pub_underscore_fields,
1632 clippy::style
1633 )]
1634 const _: () = {
1635 use alloy::sol_types as alloy_sol_types;
1636 #[doc(hidden)]
1637 type UnderlyingSolTuple<'a> = ();
1638 #[doc(hidden)]
1639 type UnderlyingRustTuple<'a> = ();
1640 #[cfg(test)]
1641 #[allow(dead_code, unreachable_patterns)]
1642 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1643 match _t {
1644 alloy_sol_types::private::AssertTypeEq::<
1645 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1646 >(_) => {}
1647 }
1648 }
1649 #[automatically_derived]
1650 #[doc(hidden)]
1651 impl ::core::convert::From<OnlyStrategyWhitelister> for UnderlyingRustTuple<'_> {
1652 fn from(value: OnlyStrategyWhitelister) -> Self {
1653 ()
1654 }
1655 }
1656 #[automatically_derived]
1657 #[doc(hidden)]
1658 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OnlyStrategyWhitelister {
1659 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1660 Self
1661 }
1662 }
1663 #[automatically_derived]
1664 impl alloy_sol_types::SolError for OnlyStrategyWhitelister {
1665 type Parameters<'a> = UnderlyingSolTuple<'a>;
1666 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1667 const SIGNATURE: &'static str = "OnlyStrategyWhitelister()";
1668 const SELECTOR: [u8; 4] = [130u8, 232u8, 255u8, 228u8];
1669 #[inline]
1670 fn new<'a>(
1671 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1672 ) -> Self {
1673 tuple.into()
1674 }
1675 #[inline]
1676 fn tokenize(&self) -> Self::Token<'_> {
1677 ()
1678 }
1679 #[inline]
1680 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1681 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1682 data,
1683 )
1684 .map(Self::new)
1685 }
1686 }
1687 };
1688 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1689 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1694 #[derive(Clone)]
1695 pub struct OnlyUnpauser;
1696 #[allow(
1697 non_camel_case_types,
1698 non_snake_case,
1699 clippy::pub_underscore_fields,
1700 clippy::style
1701 )]
1702 const _: () = {
1703 use alloy::sol_types as alloy_sol_types;
1704 #[doc(hidden)]
1705 type UnderlyingSolTuple<'a> = ();
1706 #[doc(hidden)]
1707 type UnderlyingRustTuple<'a> = ();
1708 #[cfg(test)]
1709 #[allow(dead_code, unreachable_patterns)]
1710 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1711 match _t {
1712 alloy_sol_types::private::AssertTypeEq::<
1713 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1714 >(_) => {}
1715 }
1716 }
1717 #[automatically_derived]
1718 #[doc(hidden)]
1719 impl ::core::convert::From<OnlyUnpauser> for UnderlyingRustTuple<'_> {
1720 fn from(value: OnlyUnpauser) -> Self {
1721 ()
1722 }
1723 }
1724 #[automatically_derived]
1725 #[doc(hidden)]
1726 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OnlyUnpauser {
1727 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1728 Self
1729 }
1730 }
1731 #[automatically_derived]
1732 impl alloy_sol_types::SolError for OnlyUnpauser {
1733 type Parameters<'a> = UnderlyingSolTuple<'a>;
1734 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1735 const SIGNATURE: &'static str = "OnlyUnpauser()";
1736 const SELECTOR: [u8; 4] = [121u8, 72u8, 33u8, 255u8];
1737 #[inline]
1738 fn new<'a>(
1739 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1740 ) -> Self {
1741 tuple.into()
1742 }
1743 #[inline]
1744 fn tokenize(&self) -> Self::Token<'_> {
1745 ()
1746 }
1747 #[inline]
1748 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1749 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1750 data,
1751 )
1752 .map(Self::new)
1753 }
1754 }
1755 };
1756 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1757 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1762 #[derive(Clone)]
1763 pub struct SharesAmountTooHigh;
1764 #[allow(
1765 non_camel_case_types,
1766 non_snake_case,
1767 clippy::pub_underscore_fields,
1768 clippy::style
1769 )]
1770 const _: () = {
1771 use alloy::sol_types as alloy_sol_types;
1772 #[doc(hidden)]
1773 type UnderlyingSolTuple<'a> = ();
1774 #[doc(hidden)]
1775 type UnderlyingRustTuple<'a> = ();
1776 #[cfg(test)]
1777 #[allow(dead_code, unreachable_patterns)]
1778 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1779 match _t {
1780 alloy_sol_types::private::AssertTypeEq::<
1781 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1782 >(_) => {}
1783 }
1784 }
1785 #[automatically_derived]
1786 #[doc(hidden)]
1787 impl ::core::convert::From<SharesAmountTooHigh> for UnderlyingRustTuple<'_> {
1788 fn from(value: SharesAmountTooHigh) -> Self {
1789 ()
1790 }
1791 }
1792 #[automatically_derived]
1793 #[doc(hidden)]
1794 impl ::core::convert::From<UnderlyingRustTuple<'_>> for SharesAmountTooHigh {
1795 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1796 Self
1797 }
1798 }
1799 #[automatically_derived]
1800 impl alloy_sol_types::SolError for SharesAmountTooHigh {
1801 type Parameters<'a> = UnderlyingSolTuple<'a>;
1802 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1803 const SIGNATURE: &'static str = "SharesAmountTooHigh()";
1804 const SELECTOR: [u8; 4] = [75u8, 24u8, 177u8, 147u8];
1805 #[inline]
1806 fn new<'a>(
1807 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1808 ) -> Self {
1809 tuple.into()
1810 }
1811 #[inline]
1812 fn tokenize(&self) -> Self::Token<'_> {
1813 ()
1814 }
1815 #[inline]
1816 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1817 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1818 data,
1819 )
1820 .map(Self::new)
1821 }
1822 }
1823 };
1824 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1825 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1830 #[derive(Clone)]
1831 pub struct SharesAmountZero;
1832 #[allow(
1833 non_camel_case_types,
1834 non_snake_case,
1835 clippy::pub_underscore_fields,
1836 clippy::style
1837 )]
1838 const _: () = {
1839 use alloy::sol_types as alloy_sol_types;
1840 #[doc(hidden)]
1841 type UnderlyingSolTuple<'a> = ();
1842 #[doc(hidden)]
1843 type UnderlyingRustTuple<'a> = ();
1844 #[cfg(test)]
1845 #[allow(dead_code, unreachable_patterns)]
1846 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1847 match _t {
1848 alloy_sol_types::private::AssertTypeEq::<
1849 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1850 >(_) => {}
1851 }
1852 }
1853 #[automatically_derived]
1854 #[doc(hidden)]
1855 impl ::core::convert::From<SharesAmountZero> for UnderlyingRustTuple<'_> {
1856 fn from(value: SharesAmountZero) -> Self {
1857 ()
1858 }
1859 }
1860 #[automatically_derived]
1861 #[doc(hidden)]
1862 impl ::core::convert::From<UnderlyingRustTuple<'_>> for SharesAmountZero {
1863 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1864 Self
1865 }
1866 }
1867 #[automatically_derived]
1868 impl alloy_sol_types::SolError for SharesAmountZero {
1869 type Parameters<'a> = UnderlyingSolTuple<'a>;
1870 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1871 const SIGNATURE: &'static str = "SharesAmountZero()";
1872 const SELECTOR: [u8; 4] = [132u8, 12u8, 54u8, 74u8];
1873 #[inline]
1874 fn new<'a>(
1875 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1876 ) -> Self {
1877 tuple.into()
1878 }
1879 #[inline]
1880 fn tokenize(&self) -> Self::Token<'_> {
1881 ()
1882 }
1883 #[inline]
1884 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1885 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1886 data,
1887 )
1888 .map(Self::new)
1889 }
1890 }
1891 };
1892 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1893 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1898 #[derive(Clone)]
1899 pub struct SignatureExpired;
1900 #[allow(
1901 non_camel_case_types,
1902 non_snake_case,
1903 clippy::pub_underscore_fields,
1904 clippy::style
1905 )]
1906 const _: () = {
1907 use alloy::sol_types as alloy_sol_types;
1908 #[doc(hidden)]
1909 type UnderlyingSolTuple<'a> = ();
1910 #[doc(hidden)]
1911 type UnderlyingRustTuple<'a> = ();
1912 #[cfg(test)]
1913 #[allow(dead_code, unreachable_patterns)]
1914 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1915 match _t {
1916 alloy_sol_types::private::AssertTypeEq::<
1917 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1918 >(_) => {}
1919 }
1920 }
1921 #[automatically_derived]
1922 #[doc(hidden)]
1923 impl ::core::convert::From<SignatureExpired> for UnderlyingRustTuple<'_> {
1924 fn from(value: SignatureExpired) -> Self {
1925 ()
1926 }
1927 }
1928 #[automatically_derived]
1929 #[doc(hidden)]
1930 impl ::core::convert::From<UnderlyingRustTuple<'_>> for SignatureExpired {
1931 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
1932 Self
1933 }
1934 }
1935 #[automatically_derived]
1936 impl alloy_sol_types::SolError for SignatureExpired {
1937 type Parameters<'a> = UnderlyingSolTuple<'a>;
1938 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
1939 const SIGNATURE: &'static str = "SignatureExpired()";
1940 const SELECTOR: [u8; 4] = [8u8, 25u8, 189u8, 205u8];
1941 #[inline]
1942 fn new<'a>(
1943 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
1944 ) -> Self {
1945 tuple.into()
1946 }
1947 #[inline]
1948 fn tokenize(&self) -> Self::Token<'_> {
1949 ()
1950 }
1951 #[inline]
1952 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
1953 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
1954 data,
1955 )
1956 .map(Self::new)
1957 }
1958 }
1959 };
1960 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
1961 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
1966 #[derive(Clone)]
1967 pub struct StakerAddressZero;
1968 #[allow(
1969 non_camel_case_types,
1970 non_snake_case,
1971 clippy::pub_underscore_fields,
1972 clippy::style
1973 )]
1974 const _: () = {
1975 use alloy::sol_types as alloy_sol_types;
1976 #[doc(hidden)]
1977 type UnderlyingSolTuple<'a> = ();
1978 #[doc(hidden)]
1979 type UnderlyingRustTuple<'a> = ();
1980 #[cfg(test)]
1981 #[allow(dead_code, unreachable_patterns)]
1982 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
1983 match _t {
1984 alloy_sol_types::private::AssertTypeEq::<
1985 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
1986 >(_) => {}
1987 }
1988 }
1989 #[automatically_derived]
1990 #[doc(hidden)]
1991 impl ::core::convert::From<StakerAddressZero> for UnderlyingRustTuple<'_> {
1992 fn from(value: StakerAddressZero) -> Self {
1993 ()
1994 }
1995 }
1996 #[automatically_derived]
1997 #[doc(hidden)]
1998 impl ::core::convert::From<UnderlyingRustTuple<'_>> for StakerAddressZero {
1999 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2000 Self
2001 }
2002 }
2003 #[automatically_derived]
2004 impl alloy_sol_types::SolError for StakerAddressZero {
2005 type Parameters<'a> = UnderlyingSolTuple<'a>;
2006 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2007 const SIGNATURE: &'static str = "StakerAddressZero()";
2008 const SELECTOR: [u8; 4] = [22u8, 242u8, 204u8, 201u8];
2009 #[inline]
2010 fn new<'a>(
2011 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2012 ) -> Self {
2013 tuple.into()
2014 }
2015 #[inline]
2016 fn tokenize(&self) -> Self::Token<'_> {
2017 ()
2018 }
2019 #[inline]
2020 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2021 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
2022 data,
2023 )
2024 .map(Self::new)
2025 }
2026 }
2027 };
2028 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
2029 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2034 #[derive(Clone)]
2035 pub struct StrategyNotFound;
2036 #[allow(
2037 non_camel_case_types,
2038 non_snake_case,
2039 clippy::pub_underscore_fields,
2040 clippy::style
2041 )]
2042 const _: () = {
2043 use alloy::sol_types as alloy_sol_types;
2044 #[doc(hidden)]
2045 type UnderlyingSolTuple<'a> = ();
2046 #[doc(hidden)]
2047 type UnderlyingRustTuple<'a> = ();
2048 #[cfg(test)]
2049 #[allow(dead_code, unreachable_patterns)]
2050 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2051 match _t {
2052 alloy_sol_types::private::AssertTypeEq::<
2053 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2054 >(_) => {}
2055 }
2056 }
2057 #[automatically_derived]
2058 #[doc(hidden)]
2059 impl ::core::convert::From<StrategyNotFound> for UnderlyingRustTuple<'_> {
2060 fn from(value: StrategyNotFound) -> Self {
2061 ()
2062 }
2063 }
2064 #[automatically_derived]
2065 #[doc(hidden)]
2066 impl ::core::convert::From<UnderlyingRustTuple<'_>> for StrategyNotFound {
2067 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2068 Self
2069 }
2070 }
2071 #[automatically_derived]
2072 impl alloy_sol_types::SolError for StrategyNotFound {
2073 type Parameters<'a> = UnderlyingSolTuple<'a>;
2074 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2075 const SIGNATURE: &'static str = "StrategyNotFound()";
2076 const SELECTOR: [u8; 4] = [91u8, 226u8, 180u8, 130u8];
2077 #[inline]
2078 fn new<'a>(
2079 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2080 ) -> Self {
2081 tuple.into()
2082 }
2083 #[inline]
2084 fn tokenize(&self) -> Self::Token<'_> {
2085 ()
2086 }
2087 #[inline]
2088 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2089 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
2090 data,
2091 )
2092 .map(Self::new)
2093 }
2094 }
2095 };
2096 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
2097 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2102 #[derive(Clone)]
2103 pub struct StrategyNotWhitelisted;
2104 #[allow(
2105 non_camel_case_types,
2106 non_snake_case,
2107 clippy::pub_underscore_fields,
2108 clippy::style
2109 )]
2110 const _: () = {
2111 use alloy::sol_types as alloy_sol_types;
2112 #[doc(hidden)]
2113 type UnderlyingSolTuple<'a> = ();
2114 #[doc(hidden)]
2115 type UnderlyingRustTuple<'a> = ();
2116 #[cfg(test)]
2117 #[allow(dead_code, unreachable_patterns)]
2118 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2119 match _t {
2120 alloy_sol_types::private::AssertTypeEq::<
2121 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2122 >(_) => {}
2123 }
2124 }
2125 #[automatically_derived]
2126 #[doc(hidden)]
2127 impl ::core::convert::From<StrategyNotWhitelisted> for UnderlyingRustTuple<'_> {
2128 fn from(value: StrategyNotWhitelisted) -> Self {
2129 ()
2130 }
2131 }
2132 #[automatically_derived]
2133 #[doc(hidden)]
2134 impl ::core::convert::From<UnderlyingRustTuple<'_>> for StrategyNotWhitelisted {
2135 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2136 Self
2137 }
2138 }
2139 #[automatically_derived]
2140 impl alloy_sol_types::SolError for StrategyNotWhitelisted {
2141 type Parameters<'a> = UnderlyingSolTuple<'a>;
2142 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2143 const SIGNATURE: &'static str = "StrategyNotWhitelisted()";
2144 const SELECTOR: [u8; 4] = [93u8, 251u8, 44u8, 162u8];
2145 #[inline]
2146 fn new<'a>(
2147 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2148 ) -> Self {
2149 tuple.into()
2150 }
2151 #[inline]
2152 fn tokenize(&self) -> Self::Token<'_> {
2153 ()
2154 }
2155 #[inline]
2156 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2157 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
2158 data,
2159 )
2160 .map(Self::new)
2161 }
2162 }
2163 };
2164 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
2165 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2170 #[derive(Clone)]
2171 pub struct StringTooLong {
2172 #[allow(missing_docs)]
2173 pub str: alloy::sol_types::private::String,
2174 }
2175 #[allow(
2176 non_camel_case_types,
2177 non_snake_case,
2178 clippy::pub_underscore_fields,
2179 clippy::style
2180 )]
2181 const _: () = {
2182 use alloy::sol_types as alloy_sol_types;
2183 #[doc(hidden)]
2184 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,);
2185 #[doc(hidden)]
2186 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,);
2187 #[cfg(test)]
2188 #[allow(dead_code, unreachable_patterns)]
2189 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2190 match _t {
2191 alloy_sol_types::private::AssertTypeEq::<
2192 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2193 >(_) => {}
2194 }
2195 }
2196 #[automatically_derived]
2197 #[doc(hidden)]
2198 impl ::core::convert::From<StringTooLong> for UnderlyingRustTuple<'_> {
2199 fn from(value: StringTooLong) -> Self {
2200 (value.str,)
2201 }
2202 }
2203 #[automatically_derived]
2204 #[doc(hidden)]
2205 impl ::core::convert::From<UnderlyingRustTuple<'_>> for StringTooLong {
2206 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2207 Self { str: tuple.0 }
2208 }
2209 }
2210 #[automatically_derived]
2211 impl alloy_sol_types::SolError for StringTooLong {
2212 type Parameters<'a> = UnderlyingSolTuple<'a>;
2213 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2214 const SIGNATURE: &'static str = "StringTooLong(string)";
2215 const SELECTOR: [u8; 4] = [48u8, 90u8, 39u8, 169u8];
2216 #[inline]
2217 fn new<'a>(
2218 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2219 ) -> Self {
2220 tuple.into()
2221 }
2222 #[inline]
2223 fn tokenize(&self) -> Self::Token<'_> {
2224 (
2225 <alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
2226 &self.str,
2227 ),
2228 )
2229 }
2230 #[inline]
2231 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2232 <Self::Parameters<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
2233 data,
2234 )
2235 .map(Self::new)
2236 }
2237 }
2238 };
2239 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
2240 #[allow(
2245 non_camel_case_types,
2246 non_snake_case,
2247 clippy::pub_underscore_fields,
2248 clippy::style
2249 )]
2250 #[derive(Clone)]
2251 pub struct BurnableSharesDecreased {
2252 #[allow(missing_docs)]
2253 pub strategy: alloy::sol_types::private::Address,
2254 #[allow(missing_docs)]
2255 pub shares: alloy::sol_types::private::primitives::aliases::U256,
2256 }
2257 #[allow(
2258 non_camel_case_types,
2259 non_snake_case,
2260 clippy::pub_underscore_fields,
2261 clippy::style
2262 )]
2263 const _: () = {
2264 use alloy::sol_types as alloy_sol_types;
2265 #[automatically_derived]
2266 impl alloy_sol_types::SolEvent for BurnableSharesDecreased {
2267 type DataTuple<'a> = (
2268 alloy::sol_types::sol_data::Address,
2269 alloy::sol_types::sol_data::Uint<256>,
2270 );
2271 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
2272 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
2273 const SIGNATURE: &'static str = "BurnableSharesDecreased(address,uint256)";
2274 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
2275 alloy_sol_types::private::B256::new([
2276 217u8, 208u8, 130u8, 195u8, 236u8, 79u8, 58u8, 63u8, 250u8, 85u8, 195u8, 36u8,
2277 147u8, 154u8, 6u8, 64u8, 127u8, 95u8, 188u8, 184u8, 125u8, 94u8, 12u8, 227u8,
2278 185u8, 80u8, 140u8, 146u8, 200u8, 78u8, 216u8, 57u8,
2279 ]);
2280 const ANONYMOUS: bool = false;
2281 #[allow(unused_variables)]
2282 #[inline]
2283 fn new(
2284 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
2285 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
2286 ) -> Self {
2287 Self {
2288 strategy: data.0,
2289 shares: data.1,
2290 }
2291 }
2292 #[inline]
2293 fn check_signature(
2294 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
2295 ) -> alloy_sol_types::Result<()> {
2296 if topics.0 != Self::SIGNATURE_HASH {
2297 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
2298 Self::SIGNATURE,
2299 topics.0,
2300 Self::SIGNATURE_HASH,
2301 ));
2302 }
2303 Ok(())
2304 }
2305 #[inline]
2306 fn tokenize_body(&self) -> Self::DataToken<'_> {
2307 (
2308 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
2309 &self.strategy,
2310 ),
2311 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
2312 &self.shares,
2313 ),
2314 )
2315 }
2316 #[inline]
2317 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
2318 (Self::SIGNATURE_HASH.into(),)
2319 }
2320 #[inline]
2321 fn encode_topics_raw(
2322 &self,
2323 out: &mut [alloy_sol_types::abi::token::WordToken],
2324 ) -> alloy_sol_types::Result<()> {
2325 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
2326 return Err(alloy_sol_types::Error::Overrun);
2327 }
2328 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
2329 Ok(())
2330 }
2331 }
2332 #[automatically_derived]
2333 impl alloy_sol_types::private::IntoLogData for BurnableSharesDecreased {
2334 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
2335 From::from(self)
2336 }
2337 fn into_log_data(self) -> alloy_sol_types::private::LogData {
2338 From::from(&self)
2339 }
2340 }
2341 #[automatically_derived]
2342 impl From<&BurnableSharesDecreased> for alloy_sol_types::private::LogData {
2343 #[inline]
2344 fn from(this: &BurnableSharesDecreased) -> alloy_sol_types::private::LogData {
2345 alloy_sol_types::SolEvent::encode_log_data(this)
2346 }
2347 }
2348 };
2349 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
2350 #[allow(
2355 non_camel_case_types,
2356 non_snake_case,
2357 clippy::pub_underscore_fields,
2358 clippy::style
2359 )]
2360 #[derive(Clone)]
2361 pub struct BurnableSharesIncreased {
2362 #[allow(missing_docs)]
2363 pub strategy: alloy::sol_types::private::Address,
2364 #[allow(missing_docs)]
2365 pub shares: alloy::sol_types::private::primitives::aliases::U256,
2366 }
2367 #[allow(
2368 non_camel_case_types,
2369 non_snake_case,
2370 clippy::pub_underscore_fields,
2371 clippy::style
2372 )]
2373 const _: () = {
2374 use alloy::sol_types as alloy_sol_types;
2375 #[automatically_derived]
2376 impl alloy_sol_types::SolEvent for BurnableSharesIncreased {
2377 type DataTuple<'a> = (
2378 alloy::sol_types::sol_data::Address,
2379 alloy::sol_types::sol_data::Uint<256>,
2380 );
2381 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
2382 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
2383 const SIGNATURE: &'static str = "BurnableSharesIncreased(address,uint256)";
2384 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
2385 alloy_sol_types::private::B256::new([
2386 202u8, 62u8, 2u8, 164u8, 171u8, 122u8, 211u8, 196u8, 122u8, 142u8, 54u8, 229u8,
2387 166u8, 36u8, 195u8, 1u8, 112u8, 121u8, 23u8, 38u8, 171u8, 114u8, 15u8, 27u8,
2388 171u8, 254u8, 242u8, 16u8, 70u8, 217u8, 83u8, 255u8,
2389 ]);
2390 const ANONYMOUS: bool = false;
2391 #[allow(unused_variables)]
2392 #[inline]
2393 fn new(
2394 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
2395 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
2396 ) -> Self {
2397 Self {
2398 strategy: data.0,
2399 shares: data.1,
2400 }
2401 }
2402 #[inline]
2403 fn check_signature(
2404 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
2405 ) -> alloy_sol_types::Result<()> {
2406 if topics.0 != Self::SIGNATURE_HASH {
2407 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
2408 Self::SIGNATURE,
2409 topics.0,
2410 Self::SIGNATURE_HASH,
2411 ));
2412 }
2413 Ok(())
2414 }
2415 #[inline]
2416 fn tokenize_body(&self) -> Self::DataToken<'_> {
2417 (
2418 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
2419 &self.strategy,
2420 ),
2421 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
2422 &self.shares,
2423 ),
2424 )
2425 }
2426 #[inline]
2427 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
2428 (Self::SIGNATURE_HASH.into(),)
2429 }
2430 #[inline]
2431 fn encode_topics_raw(
2432 &self,
2433 out: &mut [alloy_sol_types::abi::token::WordToken],
2434 ) -> alloy_sol_types::Result<()> {
2435 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
2436 return Err(alloy_sol_types::Error::Overrun);
2437 }
2438 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
2439 Ok(())
2440 }
2441 }
2442 #[automatically_derived]
2443 impl alloy_sol_types::private::IntoLogData for BurnableSharesIncreased {
2444 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
2445 From::from(self)
2446 }
2447 fn into_log_data(self) -> alloy_sol_types::private::LogData {
2448 From::from(&self)
2449 }
2450 }
2451 #[automatically_derived]
2452 impl From<&BurnableSharesIncreased> for alloy_sol_types::private::LogData {
2453 #[inline]
2454 fn from(this: &BurnableSharesIncreased) -> alloy_sol_types::private::LogData {
2455 alloy_sol_types::SolEvent::encode_log_data(this)
2456 }
2457 }
2458 };
2459 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
2460 #[allow(
2465 non_camel_case_types,
2466 non_snake_case,
2467 clippy::pub_underscore_fields,
2468 clippy::style
2469 )]
2470 #[derive(Clone)]
2471 pub struct Deposit {
2472 #[allow(missing_docs)]
2473 pub staker: alloy::sol_types::private::Address,
2474 #[allow(missing_docs)]
2475 pub strategy: alloy::sol_types::private::Address,
2476 #[allow(missing_docs)]
2477 pub shares: alloy::sol_types::private::primitives::aliases::U256,
2478 }
2479 #[allow(
2480 non_camel_case_types,
2481 non_snake_case,
2482 clippy::pub_underscore_fields,
2483 clippy::style
2484 )]
2485 const _: () = {
2486 use alloy::sol_types as alloy_sol_types;
2487 #[automatically_derived]
2488 impl alloy_sol_types::SolEvent for Deposit {
2489 type DataTuple<'a> = (
2490 alloy::sol_types::sol_data::Address,
2491 alloy::sol_types::sol_data::Address,
2492 alloy::sol_types::sol_data::Uint<256>,
2493 );
2494 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
2495 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
2496 const SIGNATURE: &'static str = "Deposit(address,address,uint256)";
2497 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
2498 alloy_sol_types::private::B256::new([
2499 85u8, 72u8, 200u8, 55u8, 171u8, 6u8, 140u8, 245u8, 106u8, 44u8, 36u8, 121u8,
2500 223u8, 8u8, 130u8, 164u8, 146u8, 47u8, 210u8, 3u8, 237u8, 183u8, 81u8, 115u8,
2501 33u8, 131u8, 29u8, 149u8, 7u8, 140u8, 95u8, 98u8,
2502 ]);
2503 const ANONYMOUS: bool = false;
2504 #[allow(unused_variables)]
2505 #[inline]
2506 fn new(
2507 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
2508 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
2509 ) -> Self {
2510 Self {
2511 staker: data.0,
2512 strategy: data.1,
2513 shares: data.2,
2514 }
2515 }
2516 #[inline]
2517 fn check_signature(
2518 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
2519 ) -> alloy_sol_types::Result<()> {
2520 if topics.0 != Self::SIGNATURE_HASH {
2521 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
2522 Self::SIGNATURE,
2523 topics.0,
2524 Self::SIGNATURE_HASH,
2525 ));
2526 }
2527 Ok(())
2528 }
2529 #[inline]
2530 fn tokenize_body(&self) -> Self::DataToken<'_> {
2531 (
2532 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
2533 &self.staker,
2534 ),
2535 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
2536 &self.strategy,
2537 ),
2538 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
2539 &self.shares,
2540 ),
2541 )
2542 }
2543 #[inline]
2544 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
2545 (Self::SIGNATURE_HASH.into(),)
2546 }
2547 #[inline]
2548 fn encode_topics_raw(
2549 &self,
2550 out: &mut [alloy_sol_types::abi::token::WordToken],
2551 ) -> alloy_sol_types::Result<()> {
2552 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
2553 return Err(alloy_sol_types::Error::Overrun);
2554 }
2555 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
2556 Ok(())
2557 }
2558 }
2559 #[automatically_derived]
2560 impl alloy_sol_types::private::IntoLogData for Deposit {
2561 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
2562 From::from(self)
2563 }
2564 fn into_log_data(self) -> alloy_sol_types::private::LogData {
2565 From::from(&self)
2566 }
2567 }
2568 #[automatically_derived]
2569 impl From<&Deposit> for alloy_sol_types::private::LogData {
2570 #[inline]
2571 fn from(this: &Deposit) -> alloy_sol_types::private::LogData {
2572 alloy_sol_types::SolEvent::encode_log_data(this)
2573 }
2574 }
2575 };
2576 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
2577 #[allow(
2582 non_camel_case_types,
2583 non_snake_case,
2584 clippy::pub_underscore_fields,
2585 clippy::style
2586 )]
2587 #[derive(Clone)]
2588 pub struct Initialized {
2589 #[allow(missing_docs)]
2590 pub version: u8,
2591 }
2592 #[allow(
2593 non_camel_case_types,
2594 non_snake_case,
2595 clippy::pub_underscore_fields,
2596 clippy::style
2597 )]
2598 const _: () = {
2599 use alloy::sol_types as alloy_sol_types;
2600 #[automatically_derived]
2601 impl alloy_sol_types::SolEvent for Initialized {
2602 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<8>,);
2603 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
2604 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
2605 const SIGNATURE: &'static str = "Initialized(uint8)";
2606 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
2607 alloy_sol_types::private::B256::new([
2608 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8, 19u8,
2609 56u8, 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8, 146u8, 20u8,
2610 96u8, 206u8, 251u8, 56u8, 71u8, 64u8, 36u8, 152u8,
2611 ]);
2612 const ANONYMOUS: bool = false;
2613 #[allow(unused_variables)]
2614 #[inline]
2615 fn new(
2616 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
2617 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
2618 ) -> Self {
2619 Self { version: data.0 }
2620 }
2621 #[inline]
2622 fn check_signature(
2623 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
2624 ) -> alloy_sol_types::Result<()> {
2625 if topics.0 != Self::SIGNATURE_HASH {
2626 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
2627 Self::SIGNATURE,
2628 topics.0,
2629 Self::SIGNATURE_HASH,
2630 ));
2631 }
2632 Ok(())
2633 }
2634 #[inline]
2635 fn tokenize_body(&self) -> Self::DataToken<'_> {
2636 (
2637 <alloy::sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::tokenize(
2638 &self.version,
2639 ),
2640 )
2641 }
2642 #[inline]
2643 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
2644 (Self::SIGNATURE_HASH.into(),)
2645 }
2646 #[inline]
2647 fn encode_topics_raw(
2648 &self,
2649 out: &mut [alloy_sol_types::abi::token::WordToken],
2650 ) -> alloy_sol_types::Result<()> {
2651 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
2652 return Err(alloy_sol_types::Error::Overrun);
2653 }
2654 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
2655 Ok(())
2656 }
2657 }
2658 #[automatically_derived]
2659 impl alloy_sol_types::private::IntoLogData for Initialized {
2660 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
2661 From::from(self)
2662 }
2663 fn into_log_data(self) -> alloy_sol_types::private::LogData {
2664 From::from(&self)
2665 }
2666 }
2667 #[automatically_derived]
2668 impl From<&Initialized> for alloy_sol_types::private::LogData {
2669 #[inline]
2670 fn from(this: &Initialized) -> alloy_sol_types::private::LogData {
2671 alloy_sol_types::SolEvent::encode_log_data(this)
2672 }
2673 }
2674 };
2675 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
2676 #[allow(
2681 non_camel_case_types,
2682 non_snake_case,
2683 clippy::pub_underscore_fields,
2684 clippy::style
2685 )]
2686 #[derive(Clone)]
2687 pub struct OwnershipTransferred {
2688 #[allow(missing_docs)]
2689 pub previousOwner: alloy::sol_types::private::Address,
2690 #[allow(missing_docs)]
2691 pub newOwner: alloy::sol_types::private::Address,
2692 }
2693 #[allow(
2694 non_camel_case_types,
2695 non_snake_case,
2696 clippy::pub_underscore_fields,
2697 clippy::style
2698 )]
2699 const _: () = {
2700 use alloy::sol_types as alloy_sol_types;
2701 #[automatically_derived]
2702 impl alloy_sol_types::SolEvent for OwnershipTransferred {
2703 type DataTuple<'a> = ();
2704 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
2705 type TopicList = (
2706 alloy_sol_types::sol_data::FixedBytes<32>,
2707 alloy::sol_types::sol_data::Address,
2708 alloy::sol_types::sol_data::Address,
2709 );
2710 const SIGNATURE: &'static str = "OwnershipTransferred(address,address)";
2711 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
2712 alloy_sol_types::private::B256::new([
2713 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8, 31u8,
2714 208u8, 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8, 218u8,
2715 175u8, 227u8, 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
2716 ]);
2717 const ANONYMOUS: bool = false;
2718 #[allow(unused_variables)]
2719 #[inline]
2720 fn new(
2721 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
2722 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
2723 ) -> Self {
2724 Self {
2725 previousOwner: topics.1,
2726 newOwner: topics.2,
2727 }
2728 }
2729 #[inline]
2730 fn check_signature(
2731 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
2732 ) -> alloy_sol_types::Result<()> {
2733 if topics.0 != Self::SIGNATURE_HASH {
2734 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
2735 Self::SIGNATURE,
2736 topics.0,
2737 Self::SIGNATURE_HASH,
2738 ));
2739 }
2740 Ok(())
2741 }
2742 #[inline]
2743 fn tokenize_body(&self) -> Self::DataToken<'_> {
2744 ()
2745 }
2746 #[inline]
2747 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
2748 (
2749 Self::SIGNATURE_HASH.into(),
2750 self.previousOwner.clone(),
2751 self.newOwner.clone(),
2752 )
2753 }
2754 #[inline]
2755 fn encode_topics_raw(
2756 &self,
2757 out: &mut [alloy_sol_types::abi::token::WordToken],
2758 ) -> alloy_sol_types::Result<()> {
2759 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
2760 return Err(alloy_sol_types::Error::Overrun);
2761 }
2762 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
2763 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
2764 &self.previousOwner,
2765 );
2766 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
2767 &self.newOwner,
2768 );
2769 Ok(())
2770 }
2771 }
2772 #[automatically_derived]
2773 impl alloy_sol_types::private::IntoLogData for OwnershipTransferred {
2774 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
2775 From::from(self)
2776 }
2777 fn into_log_data(self) -> alloy_sol_types::private::LogData {
2778 From::from(&self)
2779 }
2780 }
2781 #[automatically_derived]
2782 impl From<&OwnershipTransferred> for alloy_sol_types::private::LogData {
2783 #[inline]
2784 fn from(this: &OwnershipTransferred) -> alloy_sol_types::private::LogData {
2785 alloy_sol_types::SolEvent::encode_log_data(this)
2786 }
2787 }
2788 };
2789 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
2790 #[allow(
2795 non_camel_case_types,
2796 non_snake_case,
2797 clippy::pub_underscore_fields,
2798 clippy::style
2799 )]
2800 #[derive(Clone)]
2801 pub struct Paused {
2802 #[allow(missing_docs)]
2803 pub account: alloy::sol_types::private::Address,
2804 #[allow(missing_docs)]
2805 pub newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
2806 }
2807 #[allow(
2808 non_camel_case_types,
2809 non_snake_case,
2810 clippy::pub_underscore_fields,
2811 clippy::style
2812 )]
2813 const _: () = {
2814 use alloy::sol_types as alloy_sol_types;
2815 #[automatically_derived]
2816 impl alloy_sol_types::SolEvent for Paused {
2817 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
2818 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
2819 type TopicList = (
2820 alloy_sol_types::sol_data::FixedBytes<32>,
2821 alloy::sol_types::sol_data::Address,
2822 );
2823 const SIGNATURE: &'static str = "Paused(address,uint256)";
2824 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
2825 alloy_sol_types::private::B256::new([
2826 171u8, 64u8, 163u8, 116u8, 188u8, 81u8, 222u8, 55u8, 34u8, 0u8, 168u8, 188u8,
2827 152u8, 26u8, 248u8, 201u8, 236u8, 220u8, 8u8, 223u8, 218u8, 239u8, 11u8, 182u8,
2828 224u8, 159u8, 136u8, 243u8, 198u8, 22u8, 239u8, 61u8,
2829 ]);
2830 const ANONYMOUS: bool = false;
2831 #[allow(unused_variables)]
2832 #[inline]
2833 fn new(
2834 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
2835 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
2836 ) -> Self {
2837 Self {
2838 account: topics.1,
2839 newPausedStatus: data.0,
2840 }
2841 }
2842 #[inline]
2843 fn check_signature(
2844 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
2845 ) -> alloy_sol_types::Result<()> {
2846 if topics.0 != Self::SIGNATURE_HASH {
2847 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
2848 Self::SIGNATURE,
2849 topics.0,
2850 Self::SIGNATURE_HASH,
2851 ));
2852 }
2853 Ok(())
2854 }
2855 #[inline]
2856 fn tokenize_body(&self) -> Self::DataToken<'_> {
2857 (
2858 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
2859 &self.newPausedStatus,
2860 ),
2861 )
2862 }
2863 #[inline]
2864 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
2865 (Self::SIGNATURE_HASH.into(), self.account.clone())
2866 }
2867 #[inline]
2868 fn encode_topics_raw(
2869 &self,
2870 out: &mut [alloy_sol_types::abi::token::WordToken],
2871 ) -> alloy_sol_types::Result<()> {
2872 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
2873 return Err(alloy_sol_types::Error::Overrun);
2874 }
2875 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
2876 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
2877 &self.account,
2878 );
2879 Ok(())
2880 }
2881 }
2882 #[automatically_derived]
2883 impl alloy_sol_types::private::IntoLogData for Paused {
2884 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
2885 From::from(self)
2886 }
2887 fn into_log_data(self) -> alloy_sol_types::private::LogData {
2888 From::from(&self)
2889 }
2890 }
2891 #[automatically_derived]
2892 impl From<&Paused> for alloy_sol_types::private::LogData {
2893 #[inline]
2894 fn from(this: &Paused) -> alloy_sol_types::private::LogData {
2895 alloy_sol_types::SolEvent::encode_log_data(this)
2896 }
2897 }
2898 };
2899 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
2900 #[allow(
2905 non_camel_case_types,
2906 non_snake_case,
2907 clippy::pub_underscore_fields,
2908 clippy::style
2909 )]
2910 #[derive(Clone)]
2911 pub struct StrategyAddedToDepositWhitelist {
2912 #[allow(missing_docs)]
2913 pub strategy: alloy::sol_types::private::Address,
2914 }
2915 #[allow(
2916 non_camel_case_types,
2917 non_snake_case,
2918 clippy::pub_underscore_fields,
2919 clippy::style
2920 )]
2921 const _: () = {
2922 use alloy::sol_types as alloy_sol_types;
2923 #[automatically_derived]
2924 impl alloy_sol_types::SolEvent for StrategyAddedToDepositWhitelist {
2925 type DataTuple<'a> = (alloy::sol_types::sol_data::Address,);
2926 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
2927 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
2928 const SIGNATURE: &'static str = "StrategyAddedToDepositWhitelist(address)";
2929 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
2930 alloy_sol_types::private::B256::new([
2931 12u8, 53u8, 177u8, 125u8, 145u8, 201u8, 110u8, 178u8, 117u8, 28u8, 212u8, 86u8,
2932 225u8, 37u8, 47u8, 66u8, 163u8, 134u8, 229u8, 36u8, 239u8, 159u8, 242u8, 110u8,
2933 204u8, 153u8, 80u8, 133u8, 159u8, 220u8, 4u8, 254u8,
2934 ]);
2935 const ANONYMOUS: bool = false;
2936 #[allow(unused_variables)]
2937 #[inline]
2938 fn new(
2939 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
2940 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
2941 ) -> Self {
2942 Self { strategy: data.0 }
2943 }
2944 #[inline]
2945 fn check_signature(
2946 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
2947 ) -> alloy_sol_types::Result<()> {
2948 if topics.0 != Self::SIGNATURE_HASH {
2949 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
2950 Self::SIGNATURE,
2951 topics.0,
2952 Self::SIGNATURE_HASH,
2953 ));
2954 }
2955 Ok(())
2956 }
2957 #[inline]
2958 fn tokenize_body(&self) -> Self::DataToken<'_> {
2959 (
2960 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
2961 &self.strategy,
2962 ),
2963 )
2964 }
2965 #[inline]
2966 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
2967 (Self::SIGNATURE_HASH.into(),)
2968 }
2969 #[inline]
2970 fn encode_topics_raw(
2971 &self,
2972 out: &mut [alloy_sol_types::abi::token::WordToken],
2973 ) -> alloy_sol_types::Result<()> {
2974 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
2975 return Err(alloy_sol_types::Error::Overrun);
2976 }
2977 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
2978 Ok(())
2979 }
2980 }
2981 #[automatically_derived]
2982 impl alloy_sol_types::private::IntoLogData for StrategyAddedToDepositWhitelist {
2983 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
2984 From::from(self)
2985 }
2986 fn into_log_data(self) -> alloy_sol_types::private::LogData {
2987 From::from(&self)
2988 }
2989 }
2990 #[automatically_derived]
2991 impl From<&StrategyAddedToDepositWhitelist> for alloy_sol_types::private::LogData {
2992 #[inline]
2993 fn from(this: &StrategyAddedToDepositWhitelist) -> alloy_sol_types::private::LogData {
2994 alloy_sol_types::SolEvent::encode_log_data(this)
2995 }
2996 }
2997 };
2998 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
2999 #[allow(
3004 non_camel_case_types,
3005 non_snake_case,
3006 clippy::pub_underscore_fields,
3007 clippy::style
3008 )]
3009 #[derive(Clone)]
3010 pub struct StrategyRemovedFromDepositWhitelist {
3011 #[allow(missing_docs)]
3012 pub strategy: alloy::sol_types::private::Address,
3013 }
3014 #[allow(
3015 non_camel_case_types,
3016 non_snake_case,
3017 clippy::pub_underscore_fields,
3018 clippy::style
3019 )]
3020 const _: () = {
3021 use alloy::sol_types as alloy_sol_types;
3022 #[automatically_derived]
3023 impl alloy_sol_types::SolEvent for StrategyRemovedFromDepositWhitelist {
3024 type DataTuple<'a> = (alloy::sol_types::sol_data::Address,);
3025 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
3026 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
3027 const SIGNATURE: &'static str = "StrategyRemovedFromDepositWhitelist(address)";
3028 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
3029 alloy_sol_types::private::B256::new([
3030 64u8, 116u8, 65u8, 59u8, 75u8, 68u8, 62u8, 78u8, 88u8, 1u8, 159u8, 40u8, 85u8,
3031 168u8, 118u8, 81u8, 19u8, 53u8, 140u8, 124u8, 114u8, 227u8, 149u8, 9u8, 198u8,
3032 175u8, 69u8, 252u8, 15u8, 91u8, 160u8, 48u8,
3033 ]);
3034 const ANONYMOUS: bool = false;
3035 #[allow(unused_variables)]
3036 #[inline]
3037 fn new(
3038 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
3039 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
3040 ) -> Self {
3041 Self { strategy: data.0 }
3042 }
3043 #[inline]
3044 fn check_signature(
3045 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
3046 ) -> alloy_sol_types::Result<()> {
3047 if topics.0 != Self::SIGNATURE_HASH {
3048 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
3049 Self::SIGNATURE,
3050 topics.0,
3051 Self::SIGNATURE_HASH,
3052 ));
3053 }
3054 Ok(())
3055 }
3056 #[inline]
3057 fn tokenize_body(&self) -> Self::DataToken<'_> {
3058 (
3059 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3060 &self.strategy,
3061 ),
3062 )
3063 }
3064 #[inline]
3065 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
3066 (Self::SIGNATURE_HASH.into(),)
3067 }
3068 #[inline]
3069 fn encode_topics_raw(
3070 &self,
3071 out: &mut [alloy_sol_types::abi::token::WordToken],
3072 ) -> alloy_sol_types::Result<()> {
3073 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
3074 return Err(alloy_sol_types::Error::Overrun);
3075 }
3076 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
3077 Ok(())
3078 }
3079 }
3080 #[automatically_derived]
3081 impl alloy_sol_types::private::IntoLogData for StrategyRemovedFromDepositWhitelist {
3082 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
3083 From::from(self)
3084 }
3085 fn into_log_data(self) -> alloy_sol_types::private::LogData {
3086 From::from(&self)
3087 }
3088 }
3089 #[automatically_derived]
3090 impl From<&StrategyRemovedFromDepositWhitelist> for alloy_sol_types::private::LogData {
3091 #[inline]
3092 fn from(
3093 this: &StrategyRemovedFromDepositWhitelist,
3094 ) -> alloy_sol_types::private::LogData {
3095 alloy_sol_types::SolEvent::encode_log_data(this)
3096 }
3097 }
3098 };
3099 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
3100 #[allow(
3105 non_camel_case_types,
3106 non_snake_case,
3107 clippy::pub_underscore_fields,
3108 clippy::style
3109 )]
3110 #[derive(Clone)]
3111 pub struct StrategyWhitelisterChanged {
3112 #[allow(missing_docs)]
3113 pub previousAddress: alloy::sol_types::private::Address,
3114 #[allow(missing_docs)]
3115 pub newAddress: alloy::sol_types::private::Address,
3116 }
3117 #[allow(
3118 non_camel_case_types,
3119 non_snake_case,
3120 clippy::pub_underscore_fields,
3121 clippy::style
3122 )]
3123 const _: () = {
3124 use alloy::sol_types as alloy_sol_types;
3125 #[automatically_derived]
3126 impl alloy_sol_types::SolEvent for StrategyWhitelisterChanged {
3127 type DataTuple<'a> = (
3128 alloy::sol_types::sol_data::Address,
3129 alloy::sol_types::sol_data::Address,
3130 );
3131 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
3132 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
3133 const SIGNATURE: &'static str = "StrategyWhitelisterChanged(address,address)";
3134 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
3135 alloy_sol_types::private::B256::new([
3136 66u8, 100u8, 39u8, 94u8, 89u8, 57u8, 85u8, 255u8, 157u8, 97u8, 70u8, 165u8,
3137 26u8, 69u8, 37u8, 246u8, 221u8, 172u8, 226u8, 232u8, 29u8, 185u8, 57u8, 26u8,
3138 188u8, 201u8, 209u8, 202u8, 72u8, 4u8, 125u8, 41u8,
3139 ]);
3140 const ANONYMOUS: bool = false;
3141 #[allow(unused_variables)]
3142 #[inline]
3143 fn new(
3144 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
3145 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
3146 ) -> Self {
3147 Self {
3148 previousAddress: data.0,
3149 newAddress: data.1,
3150 }
3151 }
3152 #[inline]
3153 fn check_signature(
3154 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
3155 ) -> alloy_sol_types::Result<()> {
3156 if topics.0 != Self::SIGNATURE_HASH {
3157 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
3158 Self::SIGNATURE,
3159 topics.0,
3160 Self::SIGNATURE_HASH,
3161 ));
3162 }
3163 Ok(())
3164 }
3165 #[inline]
3166 fn tokenize_body(&self) -> Self::DataToken<'_> {
3167 (
3168 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3169 &self.previousAddress,
3170 ),
3171 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3172 &self.newAddress,
3173 ),
3174 )
3175 }
3176 #[inline]
3177 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
3178 (Self::SIGNATURE_HASH.into(),)
3179 }
3180 #[inline]
3181 fn encode_topics_raw(
3182 &self,
3183 out: &mut [alloy_sol_types::abi::token::WordToken],
3184 ) -> alloy_sol_types::Result<()> {
3185 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
3186 return Err(alloy_sol_types::Error::Overrun);
3187 }
3188 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
3189 Ok(())
3190 }
3191 }
3192 #[automatically_derived]
3193 impl alloy_sol_types::private::IntoLogData for StrategyWhitelisterChanged {
3194 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
3195 From::from(self)
3196 }
3197 fn into_log_data(self) -> alloy_sol_types::private::LogData {
3198 From::from(&self)
3199 }
3200 }
3201 #[automatically_derived]
3202 impl From<&StrategyWhitelisterChanged> for alloy_sol_types::private::LogData {
3203 #[inline]
3204 fn from(this: &StrategyWhitelisterChanged) -> alloy_sol_types::private::LogData {
3205 alloy_sol_types::SolEvent::encode_log_data(this)
3206 }
3207 }
3208 };
3209 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
3210 #[allow(
3215 non_camel_case_types,
3216 non_snake_case,
3217 clippy::pub_underscore_fields,
3218 clippy::style
3219 )]
3220 #[derive(Clone)]
3221 pub struct Unpaused {
3222 #[allow(missing_docs)]
3223 pub account: alloy::sol_types::private::Address,
3224 #[allow(missing_docs)]
3225 pub newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
3226 }
3227 #[allow(
3228 non_camel_case_types,
3229 non_snake_case,
3230 clippy::pub_underscore_fields,
3231 clippy::style
3232 )]
3233 const _: () = {
3234 use alloy::sol_types as alloy_sol_types;
3235 #[automatically_derived]
3236 impl alloy_sol_types::SolEvent for Unpaused {
3237 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
3238 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
3239 type TopicList = (
3240 alloy_sol_types::sol_data::FixedBytes<32>,
3241 alloy::sol_types::sol_data::Address,
3242 );
3243 const SIGNATURE: &'static str = "Unpaused(address,uint256)";
3244 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
3245 alloy_sol_types::private::B256::new([
3246 53u8, 130u8, 209u8, 130u8, 142u8, 38u8, 191u8, 86u8, 189u8, 128u8, 21u8, 2u8,
3247 188u8, 2u8, 26u8, 192u8, 188u8, 138u8, 251u8, 87u8, 200u8, 38u8, 228u8, 152u8,
3248 107u8, 69u8, 89u8, 60u8, 143u8, 173u8, 56u8, 156u8,
3249 ]);
3250 const ANONYMOUS: bool = false;
3251 #[allow(unused_variables)]
3252 #[inline]
3253 fn new(
3254 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
3255 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
3256 ) -> Self {
3257 Self {
3258 account: topics.1,
3259 newPausedStatus: data.0,
3260 }
3261 }
3262 #[inline]
3263 fn check_signature(
3264 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
3265 ) -> alloy_sol_types::Result<()> {
3266 if topics.0 != Self::SIGNATURE_HASH {
3267 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
3268 Self::SIGNATURE,
3269 topics.0,
3270 Self::SIGNATURE_HASH,
3271 ));
3272 }
3273 Ok(())
3274 }
3275 #[inline]
3276 fn tokenize_body(&self) -> Self::DataToken<'_> {
3277 (
3278 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
3279 &self.newPausedStatus,
3280 ),
3281 )
3282 }
3283 #[inline]
3284 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
3285 (Self::SIGNATURE_HASH.into(), self.account.clone())
3286 }
3287 #[inline]
3288 fn encode_topics_raw(
3289 &self,
3290 out: &mut [alloy_sol_types::abi::token::WordToken],
3291 ) -> alloy_sol_types::Result<()> {
3292 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
3293 return Err(alloy_sol_types::Error::Overrun);
3294 }
3295 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
3296 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
3297 &self.account,
3298 );
3299 Ok(())
3300 }
3301 }
3302 #[automatically_derived]
3303 impl alloy_sol_types::private::IntoLogData for Unpaused {
3304 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
3305 From::from(self)
3306 }
3307 fn into_log_data(self) -> alloy_sol_types::private::LogData {
3308 From::from(&self)
3309 }
3310 }
3311 #[automatically_derived]
3312 impl From<&Unpaused> for alloy_sol_types::private::LogData {
3313 #[inline]
3314 fn from(this: &Unpaused) -> alloy_sol_types::private::LogData {
3315 alloy_sol_types::SolEvent::encode_log_data(this)
3316 }
3317 }
3318 };
3319 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3324 #[derive(Clone)]
3325 pub struct constructorCall {
3326 #[allow(missing_docs)]
3327 pub _delegation: alloy::sol_types::private::Address,
3328 #[allow(missing_docs)]
3329 pub _pauserRegistry: alloy::sol_types::private::Address,
3330 #[allow(missing_docs)]
3331 pub _version: alloy::sol_types::private::String,
3332 }
3333 const _: () = {
3334 use alloy::sol_types as alloy_sol_types;
3335 {
3336 #[doc(hidden)]
3337 type UnderlyingSolTuple<'a> = (
3338 alloy::sol_types::sol_data::Address,
3339 alloy::sol_types::sol_data::Address,
3340 alloy::sol_types::sol_data::String,
3341 );
3342 #[doc(hidden)]
3343 type UnderlyingRustTuple<'a> = (
3344 alloy::sol_types::private::Address,
3345 alloy::sol_types::private::Address,
3346 alloy::sol_types::private::String,
3347 );
3348 #[cfg(test)]
3349 #[allow(dead_code, unreachable_patterns)]
3350 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3351 match _t {
3352 alloy_sol_types::private::AssertTypeEq::<
3353 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3354 >(_) => {}
3355 }
3356 }
3357 #[automatically_derived]
3358 #[doc(hidden)]
3359 impl ::core::convert::From<constructorCall> for UnderlyingRustTuple<'_> {
3360 fn from(value: constructorCall) -> Self {
3361 (value._delegation, value._pauserRegistry, value._version)
3362 }
3363 }
3364 #[automatically_derived]
3365 #[doc(hidden)]
3366 impl ::core::convert::From<UnderlyingRustTuple<'_>> for constructorCall {
3367 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3368 Self {
3369 _delegation: tuple.0,
3370 _pauserRegistry: tuple.1,
3371 _version: tuple.2,
3372 }
3373 }
3374 }
3375 }
3376 #[automatically_derived]
3377 impl alloy_sol_types::SolConstructor for constructorCall {
3378 type Parameters<'a> = (
3379 alloy::sol_types::sol_data::Address,
3380 alloy::sol_types::sol_data::Address,
3381 alloy::sol_types::sol_data::String,
3382 );
3383 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3384 #[inline]
3385 fn new<'a>(
3386 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3387 ) -> Self {
3388 tuple.into()
3389 }
3390 #[inline]
3391 fn tokenize(&self) -> Self::Token<'_> {
3392 (
3393 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3394 &self._delegation,
3395 ),
3396 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3397 &self._pauserRegistry,
3398 ),
3399 <alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
3400 &self._version,
3401 ),
3402 )
3403 }
3404 }
3405 };
3406 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
3407 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3412 #[derive(Clone)]
3413 pub struct DEFAULT_BURN_ADDRESSCall;
3414 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
3415 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3417 #[derive(Clone)]
3418 pub struct DEFAULT_BURN_ADDRESSReturn {
3419 #[allow(missing_docs)]
3420 pub _0: alloy::sol_types::private::Address,
3421 }
3422 #[allow(
3423 non_camel_case_types,
3424 non_snake_case,
3425 clippy::pub_underscore_fields,
3426 clippy::style
3427 )]
3428 const _: () = {
3429 use alloy::sol_types as alloy_sol_types;
3430 {
3431 #[doc(hidden)]
3432 type UnderlyingSolTuple<'a> = ();
3433 #[doc(hidden)]
3434 type UnderlyingRustTuple<'a> = ();
3435 #[cfg(test)]
3436 #[allow(dead_code, unreachable_patterns)]
3437 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3438 match _t {
3439 alloy_sol_types::private::AssertTypeEq::<
3440 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3441 >(_) => {}
3442 }
3443 }
3444 #[automatically_derived]
3445 #[doc(hidden)]
3446 impl ::core::convert::From<DEFAULT_BURN_ADDRESSCall> for UnderlyingRustTuple<'_> {
3447 fn from(value: DEFAULT_BURN_ADDRESSCall) -> Self {
3448 ()
3449 }
3450 }
3451 #[automatically_derived]
3452 #[doc(hidden)]
3453 impl ::core::convert::From<UnderlyingRustTuple<'_>> for DEFAULT_BURN_ADDRESSCall {
3454 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3455 Self
3456 }
3457 }
3458 }
3459 {
3460 #[doc(hidden)]
3461 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
3462 #[doc(hidden)]
3463 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
3464 #[cfg(test)]
3465 #[allow(dead_code, unreachable_patterns)]
3466 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3467 match _t {
3468 alloy_sol_types::private::AssertTypeEq::<
3469 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3470 >(_) => {}
3471 }
3472 }
3473 #[automatically_derived]
3474 #[doc(hidden)]
3475 impl ::core::convert::From<DEFAULT_BURN_ADDRESSReturn> for UnderlyingRustTuple<'_> {
3476 fn from(value: DEFAULT_BURN_ADDRESSReturn) -> Self {
3477 (value._0,)
3478 }
3479 }
3480 #[automatically_derived]
3481 #[doc(hidden)]
3482 impl ::core::convert::From<UnderlyingRustTuple<'_>> for DEFAULT_BURN_ADDRESSReturn {
3483 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3484 Self { _0: tuple.0 }
3485 }
3486 }
3487 }
3488 #[automatically_derived]
3489 impl alloy_sol_types::SolCall for DEFAULT_BURN_ADDRESSCall {
3490 type Parameters<'a> = ();
3491 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3492 type Return = alloy::sol_types::private::Address;
3493 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
3494 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
3495 const SIGNATURE: &'static str = "DEFAULT_BURN_ADDRESS()";
3496 const SELECTOR: [u8; 4] = [243u8, 180u8, 160u8, 0u8];
3497 #[inline]
3498 fn new<'a>(
3499 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3500 ) -> Self {
3501 tuple.into()
3502 }
3503 #[inline]
3504 fn tokenize(&self) -> Self::Token<'_> {
3505 ()
3506 }
3507 #[inline]
3508 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
3509 (
3510 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3511 ret,
3512 ),
3513 )
3514 }
3515 #[inline]
3516 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
3517 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
3518 |r| {
3519 let r: DEFAULT_BURN_ADDRESSReturn = r.into();
3520 r._0
3521 },
3522 )
3523 }
3524 #[inline]
3525 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
3526 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
3527 data,
3528 )
3529 .map(|r| {
3530 let r: DEFAULT_BURN_ADDRESSReturn = r.into();
3531 r._0
3532 })
3533 }
3534 }
3535 };
3536 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
3537 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3542 #[derive(Clone)]
3543 pub struct DEPOSIT_TYPEHASHCall;
3544 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
3545 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3547 #[derive(Clone)]
3548 pub struct DEPOSIT_TYPEHASHReturn {
3549 #[allow(missing_docs)]
3550 pub _0: alloy::sol_types::private::FixedBytes<32>,
3551 }
3552 #[allow(
3553 non_camel_case_types,
3554 non_snake_case,
3555 clippy::pub_underscore_fields,
3556 clippy::style
3557 )]
3558 const _: () = {
3559 use alloy::sol_types as alloy_sol_types;
3560 {
3561 #[doc(hidden)]
3562 type UnderlyingSolTuple<'a> = ();
3563 #[doc(hidden)]
3564 type UnderlyingRustTuple<'a> = ();
3565 #[cfg(test)]
3566 #[allow(dead_code, unreachable_patterns)]
3567 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3568 match _t {
3569 alloy_sol_types::private::AssertTypeEq::<
3570 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3571 >(_) => {}
3572 }
3573 }
3574 #[automatically_derived]
3575 #[doc(hidden)]
3576 impl ::core::convert::From<DEPOSIT_TYPEHASHCall> for UnderlyingRustTuple<'_> {
3577 fn from(value: DEPOSIT_TYPEHASHCall) -> Self {
3578 ()
3579 }
3580 }
3581 #[automatically_derived]
3582 #[doc(hidden)]
3583 impl ::core::convert::From<UnderlyingRustTuple<'_>> for DEPOSIT_TYPEHASHCall {
3584 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3585 Self
3586 }
3587 }
3588 }
3589 {
3590 #[doc(hidden)]
3591 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
3592 #[doc(hidden)]
3593 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
3594 #[cfg(test)]
3595 #[allow(dead_code, unreachable_patterns)]
3596 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3597 match _t {
3598 alloy_sol_types::private::AssertTypeEq::<
3599 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3600 >(_) => {}
3601 }
3602 }
3603 #[automatically_derived]
3604 #[doc(hidden)]
3605 impl ::core::convert::From<DEPOSIT_TYPEHASHReturn> for UnderlyingRustTuple<'_> {
3606 fn from(value: DEPOSIT_TYPEHASHReturn) -> Self {
3607 (value._0,)
3608 }
3609 }
3610 #[automatically_derived]
3611 #[doc(hidden)]
3612 impl ::core::convert::From<UnderlyingRustTuple<'_>> for DEPOSIT_TYPEHASHReturn {
3613 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3614 Self { _0: tuple.0 }
3615 }
3616 }
3617 }
3618 #[automatically_derived]
3619 impl alloy_sol_types::SolCall for DEPOSIT_TYPEHASHCall {
3620 type Parameters<'a> = ();
3621 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3622 type Return = alloy::sol_types::private::FixedBytes<32>;
3623 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
3624 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
3625 const SIGNATURE: &'static str = "DEPOSIT_TYPEHASH()";
3626 const SELECTOR: [u8; 4] = [72u8, 130u8, 94u8, 148u8];
3627 #[inline]
3628 fn new<'a>(
3629 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3630 ) -> Self {
3631 tuple.into()
3632 }
3633 #[inline]
3634 fn tokenize(&self) -> Self::Token<'_> {
3635 ()
3636 }
3637 #[inline]
3638 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
3639 (
3640 <alloy::sol_types::sol_data::FixedBytes<
3641 32,
3642 > as alloy_sol_types::SolType>::tokenize(ret),
3643 )
3644 }
3645 #[inline]
3646 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
3647 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
3648 |r| {
3649 let r: DEPOSIT_TYPEHASHReturn = r.into();
3650 r._0
3651 },
3652 )
3653 }
3654 #[inline]
3655 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
3656 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
3657 data,
3658 )
3659 .map(|r| {
3660 let r: DEPOSIT_TYPEHASHReturn = r.into();
3661 r._0
3662 })
3663 }
3664 }
3665 };
3666 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
3667 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3672 #[derive(Clone)]
3673 pub struct addSharesCall {
3674 #[allow(missing_docs)]
3675 pub staker: alloy::sol_types::private::Address,
3676 #[allow(missing_docs)]
3677 pub strategy: alloy::sol_types::private::Address,
3678 #[allow(missing_docs)]
3679 pub shares: alloy::sol_types::private::primitives::aliases::U256,
3680 }
3681 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
3682 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3684 #[derive(Clone)]
3685 pub struct addSharesReturn {
3686 #[allow(missing_docs)]
3687 pub _0: alloy::sol_types::private::primitives::aliases::U256,
3688 #[allow(missing_docs)]
3689 pub _1: alloy::sol_types::private::primitives::aliases::U256,
3690 }
3691 #[allow(
3692 non_camel_case_types,
3693 non_snake_case,
3694 clippy::pub_underscore_fields,
3695 clippy::style
3696 )]
3697 const _: () = {
3698 use alloy::sol_types as alloy_sol_types;
3699 {
3700 #[doc(hidden)]
3701 type UnderlyingSolTuple<'a> = (
3702 alloy::sol_types::sol_data::Address,
3703 alloy::sol_types::sol_data::Address,
3704 alloy::sol_types::sol_data::Uint<256>,
3705 );
3706 #[doc(hidden)]
3707 type UnderlyingRustTuple<'a> = (
3708 alloy::sol_types::private::Address,
3709 alloy::sol_types::private::Address,
3710 alloy::sol_types::private::primitives::aliases::U256,
3711 );
3712 #[cfg(test)]
3713 #[allow(dead_code, unreachable_patterns)]
3714 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3715 match _t {
3716 alloy_sol_types::private::AssertTypeEq::<
3717 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3718 >(_) => {}
3719 }
3720 }
3721 #[automatically_derived]
3722 #[doc(hidden)]
3723 impl ::core::convert::From<addSharesCall> for UnderlyingRustTuple<'_> {
3724 fn from(value: addSharesCall) -> Self {
3725 (value.staker, value.strategy, value.shares)
3726 }
3727 }
3728 #[automatically_derived]
3729 #[doc(hidden)]
3730 impl ::core::convert::From<UnderlyingRustTuple<'_>> for addSharesCall {
3731 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3732 Self {
3733 staker: tuple.0,
3734 strategy: tuple.1,
3735 shares: tuple.2,
3736 }
3737 }
3738 }
3739 }
3740 {
3741 #[doc(hidden)]
3742 type UnderlyingSolTuple<'a> = (
3743 alloy::sol_types::sol_data::Uint<256>,
3744 alloy::sol_types::sol_data::Uint<256>,
3745 );
3746 #[doc(hidden)]
3747 type UnderlyingRustTuple<'a> = (
3748 alloy::sol_types::private::primitives::aliases::U256,
3749 alloy::sol_types::private::primitives::aliases::U256,
3750 );
3751 #[cfg(test)]
3752 #[allow(dead_code, unreachable_patterns)]
3753 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3754 match _t {
3755 alloy_sol_types::private::AssertTypeEq::<
3756 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3757 >(_) => {}
3758 }
3759 }
3760 #[automatically_derived]
3761 #[doc(hidden)]
3762 impl ::core::convert::From<addSharesReturn> for UnderlyingRustTuple<'_> {
3763 fn from(value: addSharesReturn) -> Self {
3764 (value._0, value._1)
3765 }
3766 }
3767 #[automatically_derived]
3768 #[doc(hidden)]
3769 impl ::core::convert::From<UnderlyingRustTuple<'_>> for addSharesReturn {
3770 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3771 Self {
3772 _0: tuple.0,
3773 _1: tuple.1,
3774 }
3775 }
3776 }
3777 }
3778 impl addSharesReturn {
3779 fn _tokenize(&self) -> <addSharesCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
3780 (
3781 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
3782 &self._0,
3783 ),
3784 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
3785 &self._1,
3786 ),
3787 )
3788 }
3789 }
3790 #[automatically_derived]
3791 impl alloy_sol_types::SolCall for addSharesCall {
3792 type Parameters<'a> = (
3793 alloy::sol_types::sol_data::Address,
3794 alloy::sol_types::sol_data::Address,
3795 alloy::sol_types::sol_data::Uint<256>,
3796 );
3797 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3798 type Return = addSharesReturn;
3799 type ReturnTuple<'a> = (
3800 alloy::sol_types::sol_data::Uint<256>,
3801 alloy::sol_types::sol_data::Uint<256>,
3802 );
3803 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
3804 const SIGNATURE: &'static str = "addShares(address,address,uint256)";
3805 const SELECTOR: [u8; 4] = [80u8, 255u8, 114u8, 37u8];
3806 #[inline]
3807 fn new<'a>(
3808 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3809 ) -> Self {
3810 tuple.into()
3811 }
3812 #[inline]
3813 fn tokenize(&self) -> Self::Token<'_> {
3814 (
3815 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3816 &self.staker,
3817 ),
3818 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3819 &self.strategy,
3820 ),
3821 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
3822 &self.shares,
3823 ),
3824 )
3825 }
3826 #[inline]
3827 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
3828 addSharesReturn::_tokenize(ret)
3829 }
3830 #[inline]
3831 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
3832 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
3833 .map(Into::into)
3834 }
3835 #[inline]
3836 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
3837 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
3838 data,
3839 )
3840 .map(Into::into)
3841 }
3842 }
3843 };
3844 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
3845 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3850 #[derive(Clone)]
3851 pub struct addStrategiesToDepositWhitelistCall {
3852 #[allow(missing_docs)]
3853 pub strategiesToWhitelist:
3854 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
3855 }
3856 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3858 #[derive(Clone)]
3859 pub struct addStrategiesToDepositWhitelistReturn {}
3860 #[allow(
3861 non_camel_case_types,
3862 non_snake_case,
3863 clippy::pub_underscore_fields,
3864 clippy::style
3865 )]
3866 const _: () = {
3867 use alloy::sol_types as alloy_sol_types;
3868 {
3869 #[doc(hidden)]
3870 type UnderlyingSolTuple<'a> =
3871 (alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,);
3872 #[doc(hidden)]
3873 type UnderlyingRustTuple<'a> =
3874 (alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,);
3875 #[cfg(test)]
3876 #[allow(dead_code, unreachable_patterns)]
3877 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3878 match _t {
3879 alloy_sol_types::private::AssertTypeEq::<
3880 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3881 >(_) => {}
3882 }
3883 }
3884 #[automatically_derived]
3885 #[doc(hidden)]
3886 impl ::core::convert::From<addStrategiesToDepositWhitelistCall> for UnderlyingRustTuple<'_> {
3887 fn from(value: addStrategiesToDepositWhitelistCall) -> Self {
3888 (value.strategiesToWhitelist,)
3889 }
3890 }
3891 #[automatically_derived]
3892 #[doc(hidden)]
3893 impl ::core::convert::From<UnderlyingRustTuple<'_>> for addStrategiesToDepositWhitelistCall {
3894 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3895 Self {
3896 strategiesToWhitelist: tuple.0,
3897 }
3898 }
3899 }
3900 }
3901 {
3902 #[doc(hidden)]
3903 type UnderlyingSolTuple<'a> = ();
3904 #[doc(hidden)]
3905 type UnderlyingRustTuple<'a> = ();
3906 #[cfg(test)]
3907 #[allow(dead_code, unreachable_patterns)]
3908 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3909 match _t {
3910 alloy_sol_types::private::AssertTypeEq::<
3911 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3912 >(_) => {}
3913 }
3914 }
3915 #[automatically_derived]
3916 #[doc(hidden)]
3917 impl ::core::convert::From<addStrategiesToDepositWhitelistReturn> for UnderlyingRustTuple<'_> {
3918 fn from(value: addStrategiesToDepositWhitelistReturn) -> Self {
3919 ()
3920 }
3921 }
3922 #[automatically_derived]
3923 #[doc(hidden)]
3924 impl ::core::convert::From<UnderlyingRustTuple<'_>> for addStrategiesToDepositWhitelistReturn {
3925 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3926 Self {}
3927 }
3928 }
3929 }
3930 impl addStrategiesToDepositWhitelistReturn {
3931 fn _tokenize(
3932 &self,
3933 ) -> <addStrategiesToDepositWhitelistCall as alloy_sol_types::SolCall>::ReturnToken<'_>
3934 {
3935 ()
3936 }
3937 }
3938 #[automatically_derived]
3939 impl alloy_sol_types::SolCall for addStrategiesToDepositWhitelistCall {
3940 type Parameters<'a> =
3941 (alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,);
3942 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3943 type Return = addStrategiesToDepositWhitelistReturn;
3944 type ReturnTuple<'a> = ();
3945 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
3946 const SIGNATURE: &'static str = "addStrategiesToDepositWhitelist(address[])";
3947 const SELECTOR: [u8; 4] = [93u8, 224u8, 143u8, 242u8];
3948 #[inline]
3949 fn new<'a>(
3950 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3951 ) -> Self {
3952 tuple.into()
3953 }
3954 #[inline]
3955 fn tokenize(&self) -> Self::Token<'_> {
3956 (<alloy::sol_types::sol_data::Array<
3957 alloy::sol_types::sol_data::Address,
3958 > as alloy_sol_types::SolType>::tokenize(
3959 &self.strategiesToWhitelist,
3960 ),)
3961 }
3962 #[inline]
3963 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
3964 addStrategiesToDepositWhitelistReturn::_tokenize(ret)
3965 }
3966 #[inline]
3967 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
3968 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
3969 .map(Into::into)
3970 }
3971 #[inline]
3972 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
3973 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
3974 data,
3975 )
3976 .map(Into::into)
3977 }
3978 }
3979 };
3980 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
3981 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3986 #[derive(Clone)]
3987 pub struct burnSharesCall {
3988 #[allow(missing_docs)]
3989 pub strategy: alloy::sol_types::private::Address,
3990 }
3991 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3993 #[derive(Clone)]
3994 pub struct burnSharesReturn {}
3995 #[allow(
3996 non_camel_case_types,
3997 non_snake_case,
3998 clippy::pub_underscore_fields,
3999 clippy::style
4000 )]
4001 const _: () = {
4002 use alloy::sol_types as alloy_sol_types;
4003 {
4004 #[doc(hidden)]
4005 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
4006 #[doc(hidden)]
4007 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
4008 #[cfg(test)]
4009 #[allow(dead_code, unreachable_patterns)]
4010 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4011 match _t {
4012 alloy_sol_types::private::AssertTypeEq::<
4013 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4014 >(_) => {}
4015 }
4016 }
4017 #[automatically_derived]
4018 #[doc(hidden)]
4019 impl ::core::convert::From<burnSharesCall> for UnderlyingRustTuple<'_> {
4020 fn from(value: burnSharesCall) -> Self {
4021 (value.strategy,)
4022 }
4023 }
4024 #[automatically_derived]
4025 #[doc(hidden)]
4026 impl ::core::convert::From<UnderlyingRustTuple<'_>> for burnSharesCall {
4027 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4028 Self { strategy: tuple.0 }
4029 }
4030 }
4031 }
4032 {
4033 #[doc(hidden)]
4034 type UnderlyingSolTuple<'a> = ();
4035 #[doc(hidden)]
4036 type UnderlyingRustTuple<'a> = ();
4037 #[cfg(test)]
4038 #[allow(dead_code, unreachable_patterns)]
4039 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4040 match _t {
4041 alloy_sol_types::private::AssertTypeEq::<
4042 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4043 >(_) => {}
4044 }
4045 }
4046 #[automatically_derived]
4047 #[doc(hidden)]
4048 impl ::core::convert::From<burnSharesReturn> for UnderlyingRustTuple<'_> {
4049 fn from(value: burnSharesReturn) -> Self {
4050 ()
4051 }
4052 }
4053 #[automatically_derived]
4054 #[doc(hidden)]
4055 impl ::core::convert::From<UnderlyingRustTuple<'_>> for burnSharesReturn {
4056 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4057 Self {}
4058 }
4059 }
4060 }
4061 impl burnSharesReturn {
4062 fn _tokenize(&self) -> <burnSharesCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
4063 ()
4064 }
4065 }
4066 #[automatically_derived]
4067 impl alloy_sol_types::SolCall for burnSharesCall {
4068 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
4069 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4070 type Return = burnSharesReturn;
4071 type ReturnTuple<'a> = ();
4072 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4073 const SIGNATURE: &'static str = "burnShares(address)";
4074 const SELECTOR: [u8; 4] = [75u8, 109u8, 93u8, 110u8];
4075 #[inline]
4076 fn new<'a>(
4077 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4078 ) -> Self {
4079 tuple.into()
4080 }
4081 #[inline]
4082 fn tokenize(&self) -> Self::Token<'_> {
4083 (
4084 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4085 &self.strategy,
4086 ),
4087 )
4088 }
4089 #[inline]
4090 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
4091 burnSharesReturn::_tokenize(ret)
4092 }
4093 #[inline]
4094 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4095 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
4096 .map(Into::into)
4097 }
4098 #[inline]
4099 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4100 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
4101 data,
4102 )
4103 .map(Into::into)
4104 }
4105 }
4106 };
4107 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4108 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4113 #[derive(Clone)]
4114 pub struct calculateStrategyDepositDigestHashCall {
4115 #[allow(missing_docs)]
4116 pub staker: alloy::sol_types::private::Address,
4117 #[allow(missing_docs)]
4118 pub strategy: alloy::sol_types::private::Address,
4119 #[allow(missing_docs)]
4120 pub token: alloy::sol_types::private::Address,
4121 #[allow(missing_docs)]
4122 pub amount: alloy::sol_types::private::primitives::aliases::U256,
4123 #[allow(missing_docs)]
4124 pub nonce: alloy::sol_types::private::primitives::aliases::U256,
4125 #[allow(missing_docs)]
4126 pub expiry: alloy::sol_types::private::primitives::aliases::U256,
4127 }
4128 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4129 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4131 #[derive(Clone)]
4132 pub struct calculateStrategyDepositDigestHashReturn {
4133 #[allow(missing_docs)]
4134 pub _0: alloy::sol_types::private::FixedBytes<32>,
4135 }
4136 #[allow(
4137 non_camel_case_types,
4138 non_snake_case,
4139 clippy::pub_underscore_fields,
4140 clippy::style
4141 )]
4142 const _: () = {
4143 use alloy::sol_types as alloy_sol_types;
4144 {
4145 #[doc(hidden)]
4146 type UnderlyingSolTuple<'a> = (
4147 alloy::sol_types::sol_data::Address,
4148 alloy::sol_types::sol_data::Address,
4149 alloy::sol_types::sol_data::Address,
4150 alloy::sol_types::sol_data::Uint<256>,
4151 alloy::sol_types::sol_data::Uint<256>,
4152 alloy::sol_types::sol_data::Uint<256>,
4153 );
4154 #[doc(hidden)]
4155 type UnderlyingRustTuple<'a> = (
4156 alloy::sol_types::private::Address,
4157 alloy::sol_types::private::Address,
4158 alloy::sol_types::private::Address,
4159 alloy::sol_types::private::primitives::aliases::U256,
4160 alloy::sol_types::private::primitives::aliases::U256,
4161 alloy::sol_types::private::primitives::aliases::U256,
4162 );
4163 #[cfg(test)]
4164 #[allow(dead_code, unreachable_patterns)]
4165 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4166 match _t {
4167 alloy_sol_types::private::AssertTypeEq::<
4168 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4169 >(_) => {}
4170 }
4171 }
4172 #[automatically_derived]
4173 #[doc(hidden)]
4174 impl ::core::convert::From<calculateStrategyDepositDigestHashCall> for UnderlyingRustTuple<'_> {
4175 fn from(value: calculateStrategyDepositDigestHashCall) -> Self {
4176 (
4177 value.staker,
4178 value.strategy,
4179 value.token,
4180 value.amount,
4181 value.nonce,
4182 value.expiry,
4183 )
4184 }
4185 }
4186 #[automatically_derived]
4187 #[doc(hidden)]
4188 impl ::core::convert::From<UnderlyingRustTuple<'_>> for calculateStrategyDepositDigestHashCall {
4189 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4190 Self {
4191 staker: tuple.0,
4192 strategy: tuple.1,
4193 token: tuple.2,
4194 amount: tuple.3,
4195 nonce: tuple.4,
4196 expiry: tuple.5,
4197 }
4198 }
4199 }
4200 }
4201 {
4202 #[doc(hidden)]
4203 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
4204 #[doc(hidden)]
4205 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
4206 #[cfg(test)]
4207 #[allow(dead_code, unreachable_patterns)]
4208 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4209 match _t {
4210 alloy_sol_types::private::AssertTypeEq::<
4211 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4212 >(_) => {}
4213 }
4214 }
4215 #[automatically_derived]
4216 #[doc(hidden)]
4217 impl ::core::convert::From<calculateStrategyDepositDigestHashReturn> for UnderlyingRustTuple<'_> {
4218 fn from(value: calculateStrategyDepositDigestHashReturn) -> Self {
4219 (value._0,)
4220 }
4221 }
4222 #[automatically_derived]
4223 #[doc(hidden)]
4224 impl ::core::convert::From<UnderlyingRustTuple<'_>> for calculateStrategyDepositDigestHashReturn {
4225 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4226 Self { _0: tuple.0 }
4227 }
4228 }
4229 }
4230 #[automatically_derived]
4231 impl alloy_sol_types::SolCall for calculateStrategyDepositDigestHashCall {
4232 type Parameters<'a> = (
4233 alloy::sol_types::sol_data::Address,
4234 alloy::sol_types::sol_data::Address,
4235 alloy::sol_types::sol_data::Address,
4236 alloy::sol_types::sol_data::Uint<256>,
4237 alloy::sol_types::sol_data::Uint<256>,
4238 alloy::sol_types::sol_data::Uint<256>,
4239 );
4240 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4241 type Return = alloy::sol_types::private::FixedBytes<32>;
4242 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
4243 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4244 const SIGNATURE: &'static str = "calculateStrategyDepositDigestHash(address,address,address,uint256,uint256,uint256)";
4245 const SELECTOR: [u8; 4] = [154u8, 192u8, 29u8, 97u8];
4246 #[inline]
4247 fn new<'a>(
4248 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4249 ) -> Self {
4250 tuple.into()
4251 }
4252 #[inline]
4253 fn tokenize(&self) -> Self::Token<'_> {
4254 (
4255 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4256 &self.staker,
4257 ),
4258 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4259 &self.strategy,
4260 ),
4261 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4262 &self.token,
4263 ),
4264 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
4265 &self.amount,
4266 ),
4267 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
4268 &self.nonce,
4269 ),
4270 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
4271 &self.expiry,
4272 ),
4273 )
4274 }
4275 #[inline]
4276 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
4277 (
4278 <alloy::sol_types::sol_data::FixedBytes<
4279 32,
4280 > as alloy_sol_types::SolType>::tokenize(ret),
4281 )
4282 }
4283 #[inline]
4284 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4285 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
4286 |r| {
4287 let r: calculateStrategyDepositDigestHashReturn = r.into();
4288 r._0
4289 },
4290 )
4291 }
4292 #[inline]
4293 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4294 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
4295 data,
4296 )
4297 .map(|r| {
4298 let r: calculateStrategyDepositDigestHashReturn = r.into();
4299 r._0
4300 })
4301 }
4302 }
4303 };
4304 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4305 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4310 #[derive(Clone)]
4311 pub struct delegationCall;
4312 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4313 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4315 #[derive(Clone)]
4316 pub struct delegationReturn {
4317 #[allow(missing_docs)]
4318 pub _0: alloy::sol_types::private::Address,
4319 }
4320 #[allow(
4321 non_camel_case_types,
4322 non_snake_case,
4323 clippy::pub_underscore_fields,
4324 clippy::style
4325 )]
4326 const _: () = {
4327 use alloy::sol_types as alloy_sol_types;
4328 {
4329 #[doc(hidden)]
4330 type UnderlyingSolTuple<'a> = ();
4331 #[doc(hidden)]
4332 type UnderlyingRustTuple<'a> = ();
4333 #[cfg(test)]
4334 #[allow(dead_code, unreachable_patterns)]
4335 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4336 match _t {
4337 alloy_sol_types::private::AssertTypeEq::<
4338 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4339 >(_) => {}
4340 }
4341 }
4342 #[automatically_derived]
4343 #[doc(hidden)]
4344 impl ::core::convert::From<delegationCall> for UnderlyingRustTuple<'_> {
4345 fn from(value: delegationCall) -> Self {
4346 ()
4347 }
4348 }
4349 #[automatically_derived]
4350 #[doc(hidden)]
4351 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegationCall {
4352 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4353 Self
4354 }
4355 }
4356 }
4357 {
4358 #[doc(hidden)]
4359 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
4360 #[doc(hidden)]
4361 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
4362 #[cfg(test)]
4363 #[allow(dead_code, unreachable_patterns)]
4364 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4365 match _t {
4366 alloy_sol_types::private::AssertTypeEq::<
4367 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4368 >(_) => {}
4369 }
4370 }
4371 #[automatically_derived]
4372 #[doc(hidden)]
4373 impl ::core::convert::From<delegationReturn> for UnderlyingRustTuple<'_> {
4374 fn from(value: delegationReturn) -> Self {
4375 (value._0,)
4376 }
4377 }
4378 #[automatically_derived]
4379 #[doc(hidden)]
4380 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegationReturn {
4381 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4382 Self { _0: tuple.0 }
4383 }
4384 }
4385 }
4386 #[automatically_derived]
4387 impl alloy_sol_types::SolCall for delegationCall {
4388 type Parameters<'a> = ();
4389 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4390 type Return = alloy::sol_types::private::Address;
4391 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
4392 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4393 const SIGNATURE: &'static str = "delegation()";
4394 const SELECTOR: [u8; 4] = [223u8, 92u8, 247u8, 35u8];
4395 #[inline]
4396 fn new<'a>(
4397 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4398 ) -> Self {
4399 tuple.into()
4400 }
4401 #[inline]
4402 fn tokenize(&self) -> Self::Token<'_> {
4403 ()
4404 }
4405 #[inline]
4406 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
4407 (
4408 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4409 ret,
4410 ),
4411 )
4412 }
4413 #[inline]
4414 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4415 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
4416 |r| {
4417 let r: delegationReturn = r.into();
4418 r._0
4419 },
4420 )
4421 }
4422 #[inline]
4423 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4424 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
4425 data,
4426 )
4427 .map(|r| {
4428 let r: delegationReturn = r.into();
4429 r._0
4430 })
4431 }
4432 }
4433 };
4434 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4435 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4440 #[derive(Clone)]
4441 pub struct depositIntoStrategyCall {
4442 #[allow(missing_docs)]
4443 pub strategy: alloy::sol_types::private::Address,
4444 #[allow(missing_docs)]
4445 pub token: alloy::sol_types::private::Address,
4446 #[allow(missing_docs)]
4447 pub amount: alloy::sol_types::private::primitives::aliases::U256,
4448 }
4449 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4450 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4452 #[derive(Clone)]
4453 pub struct depositIntoStrategyReturn {
4454 #[allow(missing_docs)]
4455 pub depositShares: alloy::sol_types::private::primitives::aliases::U256,
4456 }
4457 #[allow(
4458 non_camel_case_types,
4459 non_snake_case,
4460 clippy::pub_underscore_fields,
4461 clippy::style
4462 )]
4463 const _: () = {
4464 use alloy::sol_types as alloy_sol_types;
4465 {
4466 #[doc(hidden)]
4467 type UnderlyingSolTuple<'a> = (
4468 alloy::sol_types::sol_data::Address,
4469 alloy::sol_types::sol_data::Address,
4470 alloy::sol_types::sol_data::Uint<256>,
4471 );
4472 #[doc(hidden)]
4473 type UnderlyingRustTuple<'a> = (
4474 alloy::sol_types::private::Address,
4475 alloy::sol_types::private::Address,
4476 alloy::sol_types::private::primitives::aliases::U256,
4477 );
4478 #[cfg(test)]
4479 #[allow(dead_code, unreachable_patterns)]
4480 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4481 match _t {
4482 alloy_sol_types::private::AssertTypeEq::<
4483 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4484 >(_) => {}
4485 }
4486 }
4487 #[automatically_derived]
4488 #[doc(hidden)]
4489 impl ::core::convert::From<depositIntoStrategyCall> for UnderlyingRustTuple<'_> {
4490 fn from(value: depositIntoStrategyCall) -> Self {
4491 (value.strategy, value.token, value.amount)
4492 }
4493 }
4494 #[automatically_derived]
4495 #[doc(hidden)]
4496 impl ::core::convert::From<UnderlyingRustTuple<'_>> for depositIntoStrategyCall {
4497 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4498 Self {
4499 strategy: tuple.0,
4500 token: tuple.1,
4501 amount: tuple.2,
4502 }
4503 }
4504 }
4505 }
4506 {
4507 #[doc(hidden)]
4508 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
4509 #[doc(hidden)]
4510 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
4511 #[cfg(test)]
4512 #[allow(dead_code, unreachable_patterns)]
4513 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4514 match _t {
4515 alloy_sol_types::private::AssertTypeEq::<
4516 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4517 >(_) => {}
4518 }
4519 }
4520 #[automatically_derived]
4521 #[doc(hidden)]
4522 impl ::core::convert::From<depositIntoStrategyReturn> for UnderlyingRustTuple<'_> {
4523 fn from(value: depositIntoStrategyReturn) -> Self {
4524 (value.depositShares,)
4525 }
4526 }
4527 #[automatically_derived]
4528 #[doc(hidden)]
4529 impl ::core::convert::From<UnderlyingRustTuple<'_>> for depositIntoStrategyReturn {
4530 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4531 Self {
4532 depositShares: tuple.0,
4533 }
4534 }
4535 }
4536 }
4537 #[automatically_derived]
4538 impl alloy_sol_types::SolCall for depositIntoStrategyCall {
4539 type Parameters<'a> = (
4540 alloy::sol_types::sol_data::Address,
4541 alloy::sol_types::sol_data::Address,
4542 alloy::sol_types::sol_data::Uint<256>,
4543 );
4544 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4545 type Return = alloy::sol_types::private::primitives::aliases::U256;
4546 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
4547 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4548 const SIGNATURE: &'static str = "depositIntoStrategy(address,address,uint256)";
4549 const SELECTOR: [u8; 4] = [231u8, 160u8, 80u8, 170u8];
4550 #[inline]
4551 fn new<'a>(
4552 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4553 ) -> Self {
4554 tuple.into()
4555 }
4556 #[inline]
4557 fn tokenize(&self) -> Self::Token<'_> {
4558 (
4559 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4560 &self.strategy,
4561 ),
4562 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4563 &self.token,
4564 ),
4565 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
4566 &self.amount,
4567 ),
4568 )
4569 }
4570 #[inline]
4571 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
4572 (
4573 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
4574 ret,
4575 ),
4576 )
4577 }
4578 #[inline]
4579 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4580 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
4581 |r| {
4582 let r: depositIntoStrategyReturn = r.into();
4583 r.depositShares
4584 },
4585 )
4586 }
4587 #[inline]
4588 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4589 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
4590 data,
4591 )
4592 .map(|r| {
4593 let r: depositIntoStrategyReturn = r.into();
4594 r.depositShares
4595 })
4596 }
4597 }
4598 };
4599 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4600 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4605 #[derive(Clone)]
4606 pub struct depositIntoStrategyWithSignatureCall {
4607 #[allow(missing_docs)]
4608 pub strategy: alloy::sol_types::private::Address,
4609 #[allow(missing_docs)]
4610 pub token: alloy::sol_types::private::Address,
4611 #[allow(missing_docs)]
4612 pub amount: alloy::sol_types::private::primitives::aliases::U256,
4613 #[allow(missing_docs)]
4614 pub staker: alloy::sol_types::private::Address,
4615 #[allow(missing_docs)]
4616 pub expiry: alloy::sol_types::private::primitives::aliases::U256,
4617 #[allow(missing_docs)]
4618 pub signature: alloy::sol_types::private::Bytes,
4619 }
4620 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4621 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4623 #[derive(Clone)]
4624 pub struct depositIntoStrategyWithSignatureReturn {
4625 #[allow(missing_docs)]
4626 pub depositShares: alloy::sol_types::private::primitives::aliases::U256,
4627 }
4628 #[allow(
4629 non_camel_case_types,
4630 non_snake_case,
4631 clippy::pub_underscore_fields,
4632 clippy::style
4633 )]
4634 const _: () = {
4635 use alloy::sol_types as alloy_sol_types;
4636 {
4637 #[doc(hidden)]
4638 type UnderlyingSolTuple<'a> = (
4639 alloy::sol_types::sol_data::Address,
4640 alloy::sol_types::sol_data::Address,
4641 alloy::sol_types::sol_data::Uint<256>,
4642 alloy::sol_types::sol_data::Address,
4643 alloy::sol_types::sol_data::Uint<256>,
4644 alloy::sol_types::sol_data::Bytes,
4645 );
4646 #[doc(hidden)]
4647 type UnderlyingRustTuple<'a> = (
4648 alloy::sol_types::private::Address,
4649 alloy::sol_types::private::Address,
4650 alloy::sol_types::private::primitives::aliases::U256,
4651 alloy::sol_types::private::Address,
4652 alloy::sol_types::private::primitives::aliases::U256,
4653 alloy::sol_types::private::Bytes,
4654 );
4655 #[cfg(test)]
4656 #[allow(dead_code, unreachable_patterns)]
4657 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4658 match _t {
4659 alloy_sol_types::private::AssertTypeEq::<
4660 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4661 >(_) => {}
4662 }
4663 }
4664 #[automatically_derived]
4665 #[doc(hidden)]
4666 impl ::core::convert::From<depositIntoStrategyWithSignatureCall> for UnderlyingRustTuple<'_> {
4667 fn from(value: depositIntoStrategyWithSignatureCall) -> Self {
4668 (
4669 value.strategy,
4670 value.token,
4671 value.amount,
4672 value.staker,
4673 value.expiry,
4674 value.signature,
4675 )
4676 }
4677 }
4678 #[automatically_derived]
4679 #[doc(hidden)]
4680 impl ::core::convert::From<UnderlyingRustTuple<'_>> for depositIntoStrategyWithSignatureCall {
4681 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4682 Self {
4683 strategy: tuple.0,
4684 token: tuple.1,
4685 amount: tuple.2,
4686 staker: tuple.3,
4687 expiry: tuple.4,
4688 signature: tuple.5,
4689 }
4690 }
4691 }
4692 }
4693 {
4694 #[doc(hidden)]
4695 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
4696 #[doc(hidden)]
4697 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
4698 #[cfg(test)]
4699 #[allow(dead_code, unreachable_patterns)]
4700 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4701 match _t {
4702 alloy_sol_types::private::AssertTypeEq::<
4703 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4704 >(_) => {}
4705 }
4706 }
4707 #[automatically_derived]
4708 #[doc(hidden)]
4709 impl ::core::convert::From<depositIntoStrategyWithSignatureReturn> for UnderlyingRustTuple<'_> {
4710 fn from(value: depositIntoStrategyWithSignatureReturn) -> Self {
4711 (value.depositShares,)
4712 }
4713 }
4714 #[automatically_derived]
4715 #[doc(hidden)]
4716 impl ::core::convert::From<UnderlyingRustTuple<'_>> for depositIntoStrategyWithSignatureReturn {
4717 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4718 Self {
4719 depositShares: tuple.0,
4720 }
4721 }
4722 }
4723 }
4724 #[automatically_derived]
4725 impl alloy_sol_types::SolCall for depositIntoStrategyWithSignatureCall {
4726 type Parameters<'a> = (
4727 alloy::sol_types::sol_data::Address,
4728 alloy::sol_types::sol_data::Address,
4729 alloy::sol_types::sol_data::Uint<256>,
4730 alloy::sol_types::sol_data::Address,
4731 alloy::sol_types::sol_data::Uint<256>,
4732 alloy::sol_types::sol_data::Bytes,
4733 );
4734 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4735 type Return = alloy::sol_types::private::primitives::aliases::U256;
4736 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
4737 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4738 const SIGNATURE: &'static str =
4739 "depositIntoStrategyWithSignature(address,address,uint256,address,uint256,bytes)";
4740 const SELECTOR: [u8; 4] = [50u8, 232u8, 154u8, 206u8];
4741 #[inline]
4742 fn new<'a>(
4743 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4744 ) -> Self {
4745 tuple.into()
4746 }
4747 #[inline]
4748 fn tokenize(&self) -> Self::Token<'_> {
4749 (
4750 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4751 &self.strategy,
4752 ),
4753 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4754 &self.token,
4755 ),
4756 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
4757 &self.amount,
4758 ),
4759 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4760 &self.staker,
4761 ),
4762 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
4763 &self.expiry,
4764 ),
4765 <alloy::sol_types::sol_data::Bytes as alloy_sol_types::SolType>::tokenize(
4766 &self.signature,
4767 ),
4768 )
4769 }
4770 #[inline]
4771 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
4772 (
4773 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
4774 ret,
4775 ),
4776 )
4777 }
4778 #[inline]
4779 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4780 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
4781 |r| {
4782 let r: depositIntoStrategyWithSignatureReturn = r.into();
4783 r.depositShares
4784 },
4785 )
4786 }
4787 #[inline]
4788 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4789 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
4790 data,
4791 )
4792 .map(|r| {
4793 let r: depositIntoStrategyWithSignatureReturn = r.into();
4794 r.depositShares
4795 })
4796 }
4797 }
4798 };
4799 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4800 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4805 #[derive(Clone)]
4806 pub struct domainSeparatorCall;
4807 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4808 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4810 #[derive(Clone)]
4811 pub struct domainSeparatorReturn {
4812 #[allow(missing_docs)]
4813 pub _0: alloy::sol_types::private::FixedBytes<32>,
4814 }
4815 #[allow(
4816 non_camel_case_types,
4817 non_snake_case,
4818 clippy::pub_underscore_fields,
4819 clippy::style
4820 )]
4821 const _: () = {
4822 use alloy::sol_types as alloy_sol_types;
4823 {
4824 #[doc(hidden)]
4825 type UnderlyingSolTuple<'a> = ();
4826 #[doc(hidden)]
4827 type UnderlyingRustTuple<'a> = ();
4828 #[cfg(test)]
4829 #[allow(dead_code, unreachable_patterns)]
4830 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4831 match _t {
4832 alloy_sol_types::private::AssertTypeEq::<
4833 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4834 >(_) => {}
4835 }
4836 }
4837 #[automatically_derived]
4838 #[doc(hidden)]
4839 impl ::core::convert::From<domainSeparatorCall> for UnderlyingRustTuple<'_> {
4840 fn from(value: domainSeparatorCall) -> Self {
4841 ()
4842 }
4843 }
4844 #[automatically_derived]
4845 #[doc(hidden)]
4846 impl ::core::convert::From<UnderlyingRustTuple<'_>> for domainSeparatorCall {
4847 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4848 Self
4849 }
4850 }
4851 }
4852 {
4853 #[doc(hidden)]
4854 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
4855 #[doc(hidden)]
4856 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
4857 #[cfg(test)]
4858 #[allow(dead_code, unreachable_patterns)]
4859 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4860 match _t {
4861 alloy_sol_types::private::AssertTypeEq::<
4862 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4863 >(_) => {}
4864 }
4865 }
4866 #[automatically_derived]
4867 #[doc(hidden)]
4868 impl ::core::convert::From<domainSeparatorReturn> for UnderlyingRustTuple<'_> {
4869 fn from(value: domainSeparatorReturn) -> Self {
4870 (value._0,)
4871 }
4872 }
4873 #[automatically_derived]
4874 #[doc(hidden)]
4875 impl ::core::convert::From<UnderlyingRustTuple<'_>> for domainSeparatorReturn {
4876 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4877 Self { _0: tuple.0 }
4878 }
4879 }
4880 }
4881 #[automatically_derived]
4882 impl alloy_sol_types::SolCall for domainSeparatorCall {
4883 type Parameters<'a> = ();
4884 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4885 type Return = alloy::sol_types::private::FixedBytes<32>;
4886 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
4887 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4888 const SIGNATURE: &'static str = "domainSeparator()";
4889 const SELECTOR: [u8; 4] = [246u8, 152u8, 218u8, 37u8];
4890 #[inline]
4891 fn new<'a>(
4892 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4893 ) -> Self {
4894 tuple.into()
4895 }
4896 #[inline]
4897 fn tokenize(&self) -> Self::Token<'_> {
4898 ()
4899 }
4900 #[inline]
4901 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
4902 (
4903 <alloy::sol_types::sol_data::FixedBytes<
4904 32,
4905 > as alloy_sol_types::SolType>::tokenize(ret),
4906 )
4907 }
4908 #[inline]
4909 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4910 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
4911 |r| {
4912 let r: domainSeparatorReturn = r.into();
4913 r._0
4914 },
4915 )
4916 }
4917 #[inline]
4918 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
4919 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
4920 data,
4921 )
4922 .map(|r| {
4923 let r: domainSeparatorReturn = r.into();
4924 r._0
4925 })
4926 }
4927 }
4928 };
4929 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4930 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4935 #[derive(Clone)]
4936 pub struct getBurnableSharesCall {
4937 #[allow(missing_docs)]
4938 pub strategy: alloy::sol_types::private::Address,
4939 }
4940 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
4941 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4943 #[derive(Clone)]
4944 pub struct getBurnableSharesReturn {
4945 #[allow(missing_docs)]
4946 pub _0: alloy::sol_types::private::primitives::aliases::U256,
4947 }
4948 #[allow(
4949 non_camel_case_types,
4950 non_snake_case,
4951 clippy::pub_underscore_fields,
4952 clippy::style
4953 )]
4954 const _: () = {
4955 use alloy::sol_types as alloy_sol_types;
4956 {
4957 #[doc(hidden)]
4958 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
4959 #[doc(hidden)]
4960 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
4961 #[cfg(test)]
4962 #[allow(dead_code, unreachable_patterns)]
4963 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4964 match _t {
4965 alloy_sol_types::private::AssertTypeEq::<
4966 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4967 >(_) => {}
4968 }
4969 }
4970 #[automatically_derived]
4971 #[doc(hidden)]
4972 impl ::core::convert::From<getBurnableSharesCall> for UnderlyingRustTuple<'_> {
4973 fn from(value: getBurnableSharesCall) -> Self {
4974 (value.strategy,)
4975 }
4976 }
4977 #[automatically_derived]
4978 #[doc(hidden)]
4979 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getBurnableSharesCall {
4980 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4981 Self { strategy: tuple.0 }
4982 }
4983 }
4984 }
4985 {
4986 #[doc(hidden)]
4987 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
4988 #[doc(hidden)]
4989 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
4990 #[cfg(test)]
4991 #[allow(dead_code, unreachable_patterns)]
4992 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4993 match _t {
4994 alloy_sol_types::private::AssertTypeEq::<
4995 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4996 >(_) => {}
4997 }
4998 }
4999 #[automatically_derived]
5000 #[doc(hidden)]
5001 impl ::core::convert::From<getBurnableSharesReturn> for UnderlyingRustTuple<'_> {
5002 fn from(value: getBurnableSharesReturn) -> Self {
5003 (value._0,)
5004 }
5005 }
5006 #[automatically_derived]
5007 #[doc(hidden)]
5008 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getBurnableSharesReturn {
5009 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5010 Self { _0: tuple.0 }
5011 }
5012 }
5013 }
5014 #[automatically_derived]
5015 impl alloy_sol_types::SolCall for getBurnableSharesCall {
5016 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
5017 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5018 type Return = alloy::sol_types::private::primitives::aliases::U256;
5019 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
5020 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5021 const SIGNATURE: &'static str = "getBurnableShares(address)";
5022 const SELECTOR: [u8; 4] = [253u8, 152u8, 4u8, 35u8];
5023 #[inline]
5024 fn new<'a>(
5025 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5026 ) -> Self {
5027 tuple.into()
5028 }
5029 #[inline]
5030 fn tokenize(&self) -> Self::Token<'_> {
5031 (
5032 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5033 &self.strategy,
5034 ),
5035 )
5036 }
5037 #[inline]
5038 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
5039 (
5040 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
5041 ret,
5042 ),
5043 )
5044 }
5045 #[inline]
5046 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5047 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
5048 |r| {
5049 let r: getBurnableSharesReturn = r.into();
5050 r._0
5051 },
5052 )
5053 }
5054 #[inline]
5055 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5056 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
5057 data,
5058 )
5059 .map(|r| {
5060 let r: getBurnableSharesReturn = r.into();
5061 r._0
5062 })
5063 }
5064 }
5065 };
5066 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5067 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5072 #[derive(Clone)]
5073 pub struct getDepositsCall {
5074 #[allow(missing_docs)]
5075 pub staker: alloy::sol_types::private::Address,
5076 }
5077 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5078 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5080 #[derive(Clone)]
5081 pub struct getDepositsReturn {
5082 #[allow(missing_docs)]
5083 pub _0: alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
5084 #[allow(missing_docs)]
5085 pub _1:
5086 alloy::sol_types::private::Vec<alloy::sol_types::private::primitives::aliases::U256>,
5087 }
5088 #[allow(
5089 non_camel_case_types,
5090 non_snake_case,
5091 clippy::pub_underscore_fields,
5092 clippy::style
5093 )]
5094 const _: () = {
5095 use alloy::sol_types as alloy_sol_types;
5096 {
5097 #[doc(hidden)]
5098 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
5099 #[doc(hidden)]
5100 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
5101 #[cfg(test)]
5102 #[allow(dead_code, unreachable_patterns)]
5103 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5104 match _t {
5105 alloy_sol_types::private::AssertTypeEq::<
5106 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5107 >(_) => {}
5108 }
5109 }
5110 #[automatically_derived]
5111 #[doc(hidden)]
5112 impl ::core::convert::From<getDepositsCall> for UnderlyingRustTuple<'_> {
5113 fn from(value: getDepositsCall) -> Self {
5114 (value.staker,)
5115 }
5116 }
5117 #[automatically_derived]
5118 #[doc(hidden)]
5119 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getDepositsCall {
5120 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5121 Self { staker: tuple.0 }
5122 }
5123 }
5124 }
5125 {
5126 #[doc(hidden)]
5127 type UnderlyingSolTuple<'a> = (
5128 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
5129 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
5130 );
5131 #[doc(hidden)]
5132 type UnderlyingRustTuple<'a> = (
5133 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
5134 alloy::sol_types::private::Vec<
5135 alloy::sol_types::private::primitives::aliases::U256,
5136 >,
5137 );
5138 #[cfg(test)]
5139 #[allow(dead_code, unreachable_patterns)]
5140 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5141 match _t {
5142 alloy_sol_types::private::AssertTypeEq::<
5143 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5144 >(_) => {}
5145 }
5146 }
5147 #[automatically_derived]
5148 #[doc(hidden)]
5149 impl ::core::convert::From<getDepositsReturn> for UnderlyingRustTuple<'_> {
5150 fn from(value: getDepositsReturn) -> Self {
5151 (value._0, value._1)
5152 }
5153 }
5154 #[automatically_derived]
5155 #[doc(hidden)]
5156 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getDepositsReturn {
5157 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5158 Self {
5159 _0: tuple.0,
5160 _1: tuple.1,
5161 }
5162 }
5163 }
5164 }
5165 impl getDepositsReturn {
5166 fn _tokenize(&self) -> <getDepositsCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
5167 (
5168 <alloy::sol_types::sol_data::Array<
5169 alloy::sol_types::sol_data::Address,
5170 > as alloy_sol_types::SolType>::tokenize(&self._0),
5171 <alloy::sol_types::sol_data::Array<
5172 alloy::sol_types::sol_data::Uint<256>,
5173 > as alloy_sol_types::SolType>::tokenize(&self._1),
5174 )
5175 }
5176 }
5177 #[automatically_derived]
5178 impl alloy_sol_types::SolCall for getDepositsCall {
5179 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
5180 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5181 type Return = getDepositsReturn;
5182 type ReturnTuple<'a> = (
5183 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
5184 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
5185 );
5186 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5187 const SIGNATURE: &'static str = "getDeposits(address)";
5188 const SELECTOR: [u8; 4] = [148u8, 246u8, 73u8, 221u8];
5189 #[inline]
5190 fn new<'a>(
5191 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5192 ) -> Self {
5193 tuple.into()
5194 }
5195 #[inline]
5196 fn tokenize(&self) -> Self::Token<'_> {
5197 (
5198 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5199 &self.staker,
5200 ),
5201 )
5202 }
5203 #[inline]
5204 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
5205 getDepositsReturn::_tokenize(ret)
5206 }
5207 #[inline]
5208 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5209 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
5210 .map(Into::into)
5211 }
5212 #[inline]
5213 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5214 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
5215 data,
5216 )
5217 .map(Into::into)
5218 }
5219 }
5220 };
5221 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5222 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5227 #[derive(Clone)]
5228 pub struct getStakerStrategyListCall {
5229 #[allow(missing_docs)]
5230 pub staker: alloy::sol_types::private::Address,
5231 }
5232 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5233 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5235 #[derive(Clone)]
5236 pub struct getStakerStrategyListReturn {
5237 #[allow(missing_docs)]
5238 pub _0: alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
5239 }
5240 #[allow(
5241 non_camel_case_types,
5242 non_snake_case,
5243 clippy::pub_underscore_fields,
5244 clippy::style
5245 )]
5246 const _: () = {
5247 use alloy::sol_types as alloy_sol_types;
5248 {
5249 #[doc(hidden)]
5250 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
5251 #[doc(hidden)]
5252 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
5253 #[cfg(test)]
5254 #[allow(dead_code, unreachable_patterns)]
5255 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5256 match _t {
5257 alloy_sol_types::private::AssertTypeEq::<
5258 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5259 >(_) => {}
5260 }
5261 }
5262 #[automatically_derived]
5263 #[doc(hidden)]
5264 impl ::core::convert::From<getStakerStrategyListCall> for UnderlyingRustTuple<'_> {
5265 fn from(value: getStakerStrategyListCall) -> Self {
5266 (value.staker,)
5267 }
5268 }
5269 #[automatically_derived]
5270 #[doc(hidden)]
5271 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getStakerStrategyListCall {
5272 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5273 Self { staker: tuple.0 }
5274 }
5275 }
5276 }
5277 {
5278 #[doc(hidden)]
5279 type UnderlyingSolTuple<'a> =
5280 (alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,);
5281 #[doc(hidden)]
5282 type UnderlyingRustTuple<'a> =
5283 (alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,);
5284 #[cfg(test)]
5285 #[allow(dead_code, unreachable_patterns)]
5286 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5287 match _t {
5288 alloy_sol_types::private::AssertTypeEq::<
5289 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5290 >(_) => {}
5291 }
5292 }
5293 #[automatically_derived]
5294 #[doc(hidden)]
5295 impl ::core::convert::From<getStakerStrategyListReturn> for UnderlyingRustTuple<'_> {
5296 fn from(value: getStakerStrategyListReturn) -> Self {
5297 (value._0,)
5298 }
5299 }
5300 #[automatically_derived]
5301 #[doc(hidden)]
5302 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getStakerStrategyListReturn {
5303 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5304 Self { _0: tuple.0 }
5305 }
5306 }
5307 }
5308 #[automatically_derived]
5309 impl alloy_sol_types::SolCall for getStakerStrategyListCall {
5310 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
5311 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5312 type Return = alloy::sol_types::private::Vec<alloy::sol_types::private::Address>;
5313 type ReturnTuple<'a> =
5314 (alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,);
5315 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5316 const SIGNATURE: &'static str = "getStakerStrategyList(address)";
5317 const SELECTOR: [u8; 4] = [222u8, 68u8, 172u8, 182u8];
5318 #[inline]
5319 fn new<'a>(
5320 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5321 ) -> Self {
5322 tuple.into()
5323 }
5324 #[inline]
5325 fn tokenize(&self) -> Self::Token<'_> {
5326 (
5327 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5328 &self.staker,
5329 ),
5330 )
5331 }
5332 #[inline]
5333 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
5334 (<alloy::sol_types::sol_data::Array<
5335 alloy::sol_types::sol_data::Address,
5336 > as alloy_sol_types::SolType>::tokenize(ret),)
5337 }
5338 #[inline]
5339 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5340 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
5341 |r| {
5342 let r: getStakerStrategyListReturn = r.into();
5343 r._0
5344 },
5345 )
5346 }
5347 #[inline]
5348 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5349 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
5350 data,
5351 )
5352 .map(|r| {
5353 let r: getStakerStrategyListReturn = r.into();
5354 r._0
5355 })
5356 }
5357 }
5358 };
5359 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5360 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5365 #[derive(Clone)]
5366 pub struct getStrategiesWithBurnableSharesCall;
5367 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5368 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5370 #[derive(Clone)]
5371 pub struct getStrategiesWithBurnableSharesReturn {
5372 #[allow(missing_docs)]
5373 pub _0: alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
5374 #[allow(missing_docs)]
5375 pub _1:
5376 alloy::sol_types::private::Vec<alloy::sol_types::private::primitives::aliases::U256>,
5377 }
5378 #[allow(
5379 non_camel_case_types,
5380 non_snake_case,
5381 clippy::pub_underscore_fields,
5382 clippy::style
5383 )]
5384 const _: () = {
5385 use alloy::sol_types as alloy_sol_types;
5386 {
5387 #[doc(hidden)]
5388 type UnderlyingSolTuple<'a> = ();
5389 #[doc(hidden)]
5390 type UnderlyingRustTuple<'a> = ();
5391 #[cfg(test)]
5392 #[allow(dead_code, unreachable_patterns)]
5393 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5394 match _t {
5395 alloy_sol_types::private::AssertTypeEq::<
5396 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5397 >(_) => {}
5398 }
5399 }
5400 #[automatically_derived]
5401 #[doc(hidden)]
5402 impl ::core::convert::From<getStrategiesWithBurnableSharesCall> for UnderlyingRustTuple<'_> {
5403 fn from(value: getStrategiesWithBurnableSharesCall) -> Self {
5404 ()
5405 }
5406 }
5407 #[automatically_derived]
5408 #[doc(hidden)]
5409 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getStrategiesWithBurnableSharesCall {
5410 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5411 Self
5412 }
5413 }
5414 }
5415 {
5416 #[doc(hidden)]
5417 type UnderlyingSolTuple<'a> = (
5418 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
5419 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
5420 );
5421 #[doc(hidden)]
5422 type UnderlyingRustTuple<'a> = (
5423 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
5424 alloy::sol_types::private::Vec<
5425 alloy::sol_types::private::primitives::aliases::U256,
5426 >,
5427 );
5428 #[cfg(test)]
5429 #[allow(dead_code, unreachable_patterns)]
5430 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5431 match _t {
5432 alloy_sol_types::private::AssertTypeEq::<
5433 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5434 >(_) => {}
5435 }
5436 }
5437 #[automatically_derived]
5438 #[doc(hidden)]
5439 impl ::core::convert::From<getStrategiesWithBurnableSharesReturn> for UnderlyingRustTuple<'_> {
5440 fn from(value: getStrategiesWithBurnableSharesReturn) -> Self {
5441 (value._0, value._1)
5442 }
5443 }
5444 #[automatically_derived]
5445 #[doc(hidden)]
5446 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getStrategiesWithBurnableSharesReturn {
5447 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5448 Self {
5449 _0: tuple.0,
5450 _1: tuple.1,
5451 }
5452 }
5453 }
5454 }
5455 impl getStrategiesWithBurnableSharesReturn {
5456 fn _tokenize(
5457 &self,
5458 ) -> <getStrategiesWithBurnableSharesCall as alloy_sol_types::SolCall>::ReturnToken<'_>
5459 {
5460 (
5461 <alloy::sol_types::sol_data::Array<
5462 alloy::sol_types::sol_data::Address,
5463 > as alloy_sol_types::SolType>::tokenize(&self._0),
5464 <alloy::sol_types::sol_data::Array<
5465 alloy::sol_types::sol_data::Uint<256>,
5466 > as alloy_sol_types::SolType>::tokenize(&self._1),
5467 )
5468 }
5469 }
5470 #[automatically_derived]
5471 impl alloy_sol_types::SolCall for getStrategiesWithBurnableSharesCall {
5472 type Parameters<'a> = ();
5473 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5474 type Return = getStrategiesWithBurnableSharesReturn;
5475 type ReturnTuple<'a> = (
5476 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,
5477 alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Uint<256>>,
5478 );
5479 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5480 const SIGNATURE: &'static str = "getStrategiesWithBurnableShares()";
5481 const SELECTOR: [u8; 4] = [54u8, 168u8, 197u8, 0u8];
5482 #[inline]
5483 fn new<'a>(
5484 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5485 ) -> Self {
5486 tuple.into()
5487 }
5488 #[inline]
5489 fn tokenize(&self) -> Self::Token<'_> {
5490 ()
5491 }
5492 #[inline]
5493 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
5494 getStrategiesWithBurnableSharesReturn::_tokenize(ret)
5495 }
5496 #[inline]
5497 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5498 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
5499 .map(Into::into)
5500 }
5501 #[inline]
5502 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5503 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
5504 data,
5505 )
5506 .map(Into::into)
5507 }
5508 }
5509 };
5510 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5511 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5516 #[derive(Clone)]
5517 pub struct increaseBurnableSharesCall {
5518 #[allow(missing_docs)]
5519 pub strategy: alloy::sol_types::private::Address,
5520 #[allow(missing_docs)]
5521 pub addedSharesToBurn: alloy::sol_types::private::primitives::aliases::U256,
5522 }
5523 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5525 #[derive(Clone)]
5526 pub struct increaseBurnableSharesReturn {}
5527 #[allow(
5528 non_camel_case_types,
5529 non_snake_case,
5530 clippy::pub_underscore_fields,
5531 clippy::style
5532 )]
5533 const _: () = {
5534 use alloy::sol_types as alloy_sol_types;
5535 {
5536 #[doc(hidden)]
5537 type UnderlyingSolTuple<'a> = (
5538 alloy::sol_types::sol_data::Address,
5539 alloy::sol_types::sol_data::Uint<256>,
5540 );
5541 #[doc(hidden)]
5542 type UnderlyingRustTuple<'a> = (
5543 alloy::sol_types::private::Address,
5544 alloy::sol_types::private::primitives::aliases::U256,
5545 );
5546 #[cfg(test)]
5547 #[allow(dead_code, unreachable_patterns)]
5548 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5549 match _t {
5550 alloy_sol_types::private::AssertTypeEq::<
5551 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5552 >(_) => {}
5553 }
5554 }
5555 #[automatically_derived]
5556 #[doc(hidden)]
5557 impl ::core::convert::From<increaseBurnableSharesCall> for UnderlyingRustTuple<'_> {
5558 fn from(value: increaseBurnableSharesCall) -> Self {
5559 (value.strategy, value.addedSharesToBurn)
5560 }
5561 }
5562 #[automatically_derived]
5563 #[doc(hidden)]
5564 impl ::core::convert::From<UnderlyingRustTuple<'_>> for increaseBurnableSharesCall {
5565 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5566 Self {
5567 strategy: tuple.0,
5568 addedSharesToBurn: tuple.1,
5569 }
5570 }
5571 }
5572 }
5573 {
5574 #[doc(hidden)]
5575 type UnderlyingSolTuple<'a> = ();
5576 #[doc(hidden)]
5577 type UnderlyingRustTuple<'a> = ();
5578 #[cfg(test)]
5579 #[allow(dead_code, unreachable_patterns)]
5580 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5581 match _t {
5582 alloy_sol_types::private::AssertTypeEq::<
5583 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5584 >(_) => {}
5585 }
5586 }
5587 #[automatically_derived]
5588 #[doc(hidden)]
5589 impl ::core::convert::From<increaseBurnableSharesReturn> for UnderlyingRustTuple<'_> {
5590 fn from(value: increaseBurnableSharesReturn) -> Self {
5591 ()
5592 }
5593 }
5594 #[automatically_derived]
5595 #[doc(hidden)]
5596 impl ::core::convert::From<UnderlyingRustTuple<'_>> for increaseBurnableSharesReturn {
5597 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5598 Self {}
5599 }
5600 }
5601 }
5602 impl increaseBurnableSharesReturn {
5603 fn _tokenize(
5604 &self,
5605 ) -> <increaseBurnableSharesCall as alloy_sol_types::SolCall>::ReturnToken<'_>
5606 {
5607 ()
5608 }
5609 }
5610 #[automatically_derived]
5611 impl alloy_sol_types::SolCall for increaseBurnableSharesCall {
5612 type Parameters<'a> = (
5613 alloy::sol_types::sol_data::Address,
5614 alloy::sol_types::sol_data::Uint<256>,
5615 );
5616 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5617 type Return = increaseBurnableSharesReturn;
5618 type ReturnTuple<'a> = ();
5619 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5620 const SIGNATURE: &'static str = "increaseBurnableShares(address,uint256)";
5621 const SELECTOR: [u8; 4] = [222u8, 190u8, 30u8, 171u8];
5622 #[inline]
5623 fn new<'a>(
5624 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5625 ) -> Self {
5626 tuple.into()
5627 }
5628 #[inline]
5629 fn tokenize(&self) -> Self::Token<'_> {
5630 (
5631 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5632 &self.strategy,
5633 ),
5634 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
5635 &self.addedSharesToBurn,
5636 ),
5637 )
5638 }
5639 #[inline]
5640 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
5641 increaseBurnableSharesReturn::_tokenize(ret)
5642 }
5643 #[inline]
5644 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5645 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
5646 .map(Into::into)
5647 }
5648 #[inline]
5649 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5650 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
5651 data,
5652 )
5653 .map(Into::into)
5654 }
5655 }
5656 };
5657 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5658 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5663 #[derive(Clone)]
5664 pub struct initializeCall {
5665 #[allow(missing_docs)]
5666 pub initialOwner: alloy::sol_types::private::Address,
5667 #[allow(missing_docs)]
5668 pub initialStrategyWhitelister: alloy::sol_types::private::Address,
5669 #[allow(missing_docs)]
5670 pub initialPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
5671 }
5672 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5674 #[derive(Clone)]
5675 pub struct initializeReturn {}
5676 #[allow(
5677 non_camel_case_types,
5678 non_snake_case,
5679 clippy::pub_underscore_fields,
5680 clippy::style
5681 )]
5682 const _: () = {
5683 use alloy::sol_types as alloy_sol_types;
5684 {
5685 #[doc(hidden)]
5686 type UnderlyingSolTuple<'a> = (
5687 alloy::sol_types::sol_data::Address,
5688 alloy::sol_types::sol_data::Address,
5689 alloy::sol_types::sol_data::Uint<256>,
5690 );
5691 #[doc(hidden)]
5692 type UnderlyingRustTuple<'a> = (
5693 alloy::sol_types::private::Address,
5694 alloy::sol_types::private::Address,
5695 alloy::sol_types::private::primitives::aliases::U256,
5696 );
5697 #[cfg(test)]
5698 #[allow(dead_code, unreachable_patterns)]
5699 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5700 match _t {
5701 alloy_sol_types::private::AssertTypeEq::<
5702 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5703 >(_) => {}
5704 }
5705 }
5706 #[automatically_derived]
5707 #[doc(hidden)]
5708 impl ::core::convert::From<initializeCall> for UnderlyingRustTuple<'_> {
5709 fn from(value: initializeCall) -> Self {
5710 (
5711 value.initialOwner,
5712 value.initialStrategyWhitelister,
5713 value.initialPausedStatus,
5714 )
5715 }
5716 }
5717 #[automatically_derived]
5718 #[doc(hidden)]
5719 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeCall {
5720 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5721 Self {
5722 initialOwner: tuple.0,
5723 initialStrategyWhitelister: tuple.1,
5724 initialPausedStatus: tuple.2,
5725 }
5726 }
5727 }
5728 }
5729 {
5730 #[doc(hidden)]
5731 type UnderlyingSolTuple<'a> = ();
5732 #[doc(hidden)]
5733 type UnderlyingRustTuple<'a> = ();
5734 #[cfg(test)]
5735 #[allow(dead_code, unreachable_patterns)]
5736 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5737 match _t {
5738 alloy_sol_types::private::AssertTypeEq::<
5739 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5740 >(_) => {}
5741 }
5742 }
5743 #[automatically_derived]
5744 #[doc(hidden)]
5745 impl ::core::convert::From<initializeReturn> for UnderlyingRustTuple<'_> {
5746 fn from(value: initializeReturn) -> Self {
5747 ()
5748 }
5749 }
5750 #[automatically_derived]
5751 #[doc(hidden)]
5752 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeReturn {
5753 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5754 Self {}
5755 }
5756 }
5757 }
5758 impl initializeReturn {
5759 fn _tokenize(&self) -> <initializeCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
5760 ()
5761 }
5762 }
5763 #[automatically_derived]
5764 impl alloy_sol_types::SolCall for initializeCall {
5765 type Parameters<'a> = (
5766 alloy::sol_types::sol_data::Address,
5767 alloy::sol_types::sol_data::Address,
5768 alloy::sol_types::sol_data::Uint<256>,
5769 );
5770 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5771 type Return = initializeReturn;
5772 type ReturnTuple<'a> = ();
5773 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5774 const SIGNATURE: &'static str = "initialize(address,address,uint256)";
5775 const SELECTOR: [u8; 4] = [23u8, 148u8, 187u8, 60u8];
5776 #[inline]
5777 fn new<'a>(
5778 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5779 ) -> Self {
5780 tuple.into()
5781 }
5782 #[inline]
5783 fn tokenize(&self) -> Self::Token<'_> {
5784 (
5785 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5786 &self.initialOwner,
5787 ),
5788 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5789 &self.initialStrategyWhitelister,
5790 ),
5791 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
5792 &self.initialPausedStatus,
5793 ),
5794 )
5795 }
5796 #[inline]
5797 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
5798 initializeReturn::_tokenize(ret)
5799 }
5800 #[inline]
5801 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5802 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
5803 .map(Into::into)
5804 }
5805 #[inline]
5806 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5807 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
5808 data,
5809 )
5810 .map(Into::into)
5811 }
5812 }
5813 };
5814 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5815 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5820 #[derive(Clone)]
5821 pub struct noncesCall {
5822 #[allow(missing_docs)]
5823 pub signer: alloy::sol_types::private::Address,
5824 }
5825 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5826 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5828 #[derive(Clone)]
5829 pub struct noncesReturn {
5830 #[allow(missing_docs)]
5831 pub nonce: alloy::sol_types::private::primitives::aliases::U256,
5832 }
5833 #[allow(
5834 non_camel_case_types,
5835 non_snake_case,
5836 clippy::pub_underscore_fields,
5837 clippy::style
5838 )]
5839 const _: () = {
5840 use alloy::sol_types as alloy_sol_types;
5841 {
5842 #[doc(hidden)]
5843 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
5844 #[doc(hidden)]
5845 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
5846 #[cfg(test)]
5847 #[allow(dead_code, unreachable_patterns)]
5848 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5849 match _t {
5850 alloy_sol_types::private::AssertTypeEq::<
5851 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5852 >(_) => {}
5853 }
5854 }
5855 #[automatically_derived]
5856 #[doc(hidden)]
5857 impl ::core::convert::From<noncesCall> for UnderlyingRustTuple<'_> {
5858 fn from(value: noncesCall) -> Self {
5859 (value.signer,)
5860 }
5861 }
5862 #[automatically_derived]
5863 #[doc(hidden)]
5864 impl ::core::convert::From<UnderlyingRustTuple<'_>> for noncesCall {
5865 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5866 Self { signer: tuple.0 }
5867 }
5868 }
5869 }
5870 {
5871 #[doc(hidden)]
5872 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
5873 #[doc(hidden)]
5874 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
5875 #[cfg(test)]
5876 #[allow(dead_code, unreachable_patterns)]
5877 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5878 match _t {
5879 alloy_sol_types::private::AssertTypeEq::<
5880 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5881 >(_) => {}
5882 }
5883 }
5884 #[automatically_derived]
5885 #[doc(hidden)]
5886 impl ::core::convert::From<noncesReturn> for UnderlyingRustTuple<'_> {
5887 fn from(value: noncesReturn) -> Self {
5888 (value.nonce,)
5889 }
5890 }
5891 #[automatically_derived]
5892 #[doc(hidden)]
5893 impl ::core::convert::From<UnderlyingRustTuple<'_>> for noncesReturn {
5894 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5895 Self { nonce: tuple.0 }
5896 }
5897 }
5898 }
5899 #[automatically_derived]
5900 impl alloy_sol_types::SolCall for noncesCall {
5901 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
5902 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5903 type Return = alloy::sol_types::private::primitives::aliases::U256;
5904 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
5905 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5906 const SIGNATURE: &'static str = "nonces(address)";
5907 const SELECTOR: [u8; 4] = [126u8, 206u8, 190u8, 0u8];
5908 #[inline]
5909 fn new<'a>(
5910 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5911 ) -> Self {
5912 tuple.into()
5913 }
5914 #[inline]
5915 fn tokenize(&self) -> Self::Token<'_> {
5916 (
5917 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5918 &self.signer,
5919 ),
5920 )
5921 }
5922 #[inline]
5923 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
5924 (
5925 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
5926 ret,
5927 ),
5928 )
5929 }
5930 #[inline]
5931 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5932 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
5933 |r| {
5934 let r: noncesReturn = r.into();
5935 r.nonce
5936 },
5937 )
5938 }
5939 #[inline]
5940 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
5941 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
5942 data,
5943 )
5944 .map(|r| {
5945 let r: noncesReturn = r.into();
5946 r.nonce
5947 })
5948 }
5949 }
5950 };
5951 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5952 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5957 #[derive(Clone)]
5958 pub struct ownerCall;
5959 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
5960 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5962 #[derive(Clone)]
5963 pub struct ownerReturn {
5964 #[allow(missing_docs)]
5965 pub _0: alloy::sol_types::private::Address,
5966 }
5967 #[allow(
5968 non_camel_case_types,
5969 non_snake_case,
5970 clippy::pub_underscore_fields,
5971 clippy::style
5972 )]
5973 const _: () = {
5974 use alloy::sol_types as alloy_sol_types;
5975 {
5976 #[doc(hidden)]
5977 type UnderlyingSolTuple<'a> = ();
5978 #[doc(hidden)]
5979 type UnderlyingRustTuple<'a> = ();
5980 #[cfg(test)]
5981 #[allow(dead_code, unreachable_patterns)]
5982 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5983 match _t {
5984 alloy_sol_types::private::AssertTypeEq::<
5985 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5986 >(_) => {}
5987 }
5988 }
5989 #[automatically_derived]
5990 #[doc(hidden)]
5991 impl ::core::convert::From<ownerCall> for UnderlyingRustTuple<'_> {
5992 fn from(value: ownerCall) -> Self {
5993 ()
5994 }
5995 }
5996 #[automatically_derived]
5997 #[doc(hidden)]
5998 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerCall {
5999 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6000 Self
6001 }
6002 }
6003 }
6004 {
6005 #[doc(hidden)]
6006 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
6007 #[doc(hidden)]
6008 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
6009 #[cfg(test)]
6010 #[allow(dead_code, unreachable_patterns)]
6011 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6012 match _t {
6013 alloy_sol_types::private::AssertTypeEq::<
6014 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6015 >(_) => {}
6016 }
6017 }
6018 #[automatically_derived]
6019 #[doc(hidden)]
6020 impl ::core::convert::From<ownerReturn> for UnderlyingRustTuple<'_> {
6021 fn from(value: ownerReturn) -> Self {
6022 (value._0,)
6023 }
6024 }
6025 #[automatically_derived]
6026 #[doc(hidden)]
6027 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerReturn {
6028 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6029 Self { _0: tuple.0 }
6030 }
6031 }
6032 }
6033 #[automatically_derived]
6034 impl alloy_sol_types::SolCall for ownerCall {
6035 type Parameters<'a> = ();
6036 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6037 type Return = alloy::sol_types::private::Address;
6038 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
6039 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6040 const SIGNATURE: &'static str = "owner()";
6041 const SELECTOR: [u8; 4] = [141u8, 165u8, 203u8, 91u8];
6042 #[inline]
6043 fn new<'a>(
6044 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6045 ) -> Self {
6046 tuple.into()
6047 }
6048 #[inline]
6049 fn tokenize(&self) -> Self::Token<'_> {
6050 ()
6051 }
6052 #[inline]
6053 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6054 (
6055 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6056 ret,
6057 ),
6058 )
6059 }
6060 #[inline]
6061 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6062 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
6063 |r| {
6064 let r: ownerReturn = r.into();
6065 r._0
6066 },
6067 )
6068 }
6069 #[inline]
6070 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6071 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
6072 data,
6073 )
6074 .map(|r| {
6075 let r: ownerReturn = r.into();
6076 r._0
6077 })
6078 }
6079 }
6080 };
6081 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
6082 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6087 #[derive(Clone)]
6088 pub struct pauseCall {
6089 #[allow(missing_docs)]
6090 pub newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
6091 }
6092 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6094 #[derive(Clone)]
6095 pub struct pauseReturn {}
6096 #[allow(
6097 non_camel_case_types,
6098 non_snake_case,
6099 clippy::pub_underscore_fields,
6100 clippy::style
6101 )]
6102 const _: () = {
6103 use alloy::sol_types as alloy_sol_types;
6104 {
6105 #[doc(hidden)]
6106 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6107 #[doc(hidden)]
6108 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
6109 #[cfg(test)]
6110 #[allow(dead_code, unreachable_patterns)]
6111 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6112 match _t {
6113 alloy_sol_types::private::AssertTypeEq::<
6114 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6115 >(_) => {}
6116 }
6117 }
6118 #[automatically_derived]
6119 #[doc(hidden)]
6120 impl ::core::convert::From<pauseCall> for UnderlyingRustTuple<'_> {
6121 fn from(value: pauseCall) -> Self {
6122 (value.newPausedStatus,)
6123 }
6124 }
6125 #[automatically_derived]
6126 #[doc(hidden)]
6127 impl ::core::convert::From<UnderlyingRustTuple<'_>> for pauseCall {
6128 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6129 Self {
6130 newPausedStatus: tuple.0,
6131 }
6132 }
6133 }
6134 }
6135 {
6136 #[doc(hidden)]
6137 type UnderlyingSolTuple<'a> = ();
6138 #[doc(hidden)]
6139 type UnderlyingRustTuple<'a> = ();
6140 #[cfg(test)]
6141 #[allow(dead_code, unreachable_patterns)]
6142 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6143 match _t {
6144 alloy_sol_types::private::AssertTypeEq::<
6145 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6146 >(_) => {}
6147 }
6148 }
6149 #[automatically_derived]
6150 #[doc(hidden)]
6151 impl ::core::convert::From<pauseReturn> for UnderlyingRustTuple<'_> {
6152 fn from(value: pauseReturn) -> Self {
6153 ()
6154 }
6155 }
6156 #[automatically_derived]
6157 #[doc(hidden)]
6158 impl ::core::convert::From<UnderlyingRustTuple<'_>> for pauseReturn {
6159 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6160 Self {}
6161 }
6162 }
6163 }
6164 impl pauseReturn {
6165 fn _tokenize(&self) -> <pauseCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
6166 ()
6167 }
6168 }
6169 #[automatically_derived]
6170 impl alloy_sol_types::SolCall for pauseCall {
6171 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6172 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6173 type Return = pauseReturn;
6174 type ReturnTuple<'a> = ();
6175 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6176 const SIGNATURE: &'static str = "pause(uint256)";
6177 const SELECTOR: [u8; 4] = [19u8, 100u8, 57u8, 221u8];
6178 #[inline]
6179 fn new<'a>(
6180 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6181 ) -> Self {
6182 tuple.into()
6183 }
6184 #[inline]
6185 fn tokenize(&self) -> Self::Token<'_> {
6186 (
6187 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
6188 &self.newPausedStatus,
6189 ),
6190 )
6191 }
6192 #[inline]
6193 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6194 pauseReturn::_tokenize(ret)
6195 }
6196 #[inline]
6197 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6198 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
6199 .map(Into::into)
6200 }
6201 #[inline]
6202 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6203 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
6204 data,
6205 )
6206 .map(Into::into)
6207 }
6208 }
6209 };
6210 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
6211 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6216 #[derive(Clone)]
6217 pub struct pauseAllCall;
6218 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6220 #[derive(Clone)]
6221 pub struct pauseAllReturn {}
6222 #[allow(
6223 non_camel_case_types,
6224 non_snake_case,
6225 clippy::pub_underscore_fields,
6226 clippy::style
6227 )]
6228 const _: () = {
6229 use alloy::sol_types as alloy_sol_types;
6230 {
6231 #[doc(hidden)]
6232 type UnderlyingSolTuple<'a> = ();
6233 #[doc(hidden)]
6234 type UnderlyingRustTuple<'a> = ();
6235 #[cfg(test)]
6236 #[allow(dead_code, unreachable_patterns)]
6237 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6238 match _t {
6239 alloy_sol_types::private::AssertTypeEq::<
6240 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6241 >(_) => {}
6242 }
6243 }
6244 #[automatically_derived]
6245 #[doc(hidden)]
6246 impl ::core::convert::From<pauseAllCall> for UnderlyingRustTuple<'_> {
6247 fn from(value: pauseAllCall) -> Self {
6248 ()
6249 }
6250 }
6251 #[automatically_derived]
6252 #[doc(hidden)]
6253 impl ::core::convert::From<UnderlyingRustTuple<'_>> for pauseAllCall {
6254 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6255 Self
6256 }
6257 }
6258 }
6259 {
6260 #[doc(hidden)]
6261 type UnderlyingSolTuple<'a> = ();
6262 #[doc(hidden)]
6263 type UnderlyingRustTuple<'a> = ();
6264 #[cfg(test)]
6265 #[allow(dead_code, unreachable_patterns)]
6266 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6267 match _t {
6268 alloy_sol_types::private::AssertTypeEq::<
6269 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6270 >(_) => {}
6271 }
6272 }
6273 #[automatically_derived]
6274 #[doc(hidden)]
6275 impl ::core::convert::From<pauseAllReturn> for UnderlyingRustTuple<'_> {
6276 fn from(value: pauseAllReturn) -> Self {
6277 ()
6278 }
6279 }
6280 #[automatically_derived]
6281 #[doc(hidden)]
6282 impl ::core::convert::From<UnderlyingRustTuple<'_>> for pauseAllReturn {
6283 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6284 Self {}
6285 }
6286 }
6287 }
6288 impl pauseAllReturn {
6289 fn _tokenize(&self) -> <pauseAllCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
6290 ()
6291 }
6292 }
6293 #[automatically_derived]
6294 impl alloy_sol_types::SolCall for pauseAllCall {
6295 type Parameters<'a> = ();
6296 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6297 type Return = pauseAllReturn;
6298 type ReturnTuple<'a> = ();
6299 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6300 const SIGNATURE: &'static str = "pauseAll()";
6301 const SELECTOR: [u8; 4] = [89u8, 92u8, 106u8, 103u8];
6302 #[inline]
6303 fn new<'a>(
6304 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6305 ) -> Self {
6306 tuple.into()
6307 }
6308 #[inline]
6309 fn tokenize(&self) -> Self::Token<'_> {
6310 ()
6311 }
6312 #[inline]
6313 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6314 pauseAllReturn::_tokenize(ret)
6315 }
6316 #[inline]
6317 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6318 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
6319 .map(Into::into)
6320 }
6321 #[inline]
6322 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6323 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
6324 data,
6325 )
6326 .map(Into::into)
6327 }
6328 }
6329 };
6330 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
6331 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6336 #[derive(Clone)]
6337 pub struct paused_0Call {
6338 #[allow(missing_docs)]
6339 pub index: u8,
6340 }
6341 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
6342 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6344 #[derive(Clone)]
6345 pub struct paused_0Return {
6346 #[allow(missing_docs)]
6347 pub _0: bool,
6348 }
6349 #[allow(
6350 non_camel_case_types,
6351 non_snake_case,
6352 clippy::pub_underscore_fields,
6353 clippy::style
6354 )]
6355 const _: () = {
6356 use alloy::sol_types as alloy_sol_types;
6357 {
6358 #[doc(hidden)]
6359 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<8>,);
6360 #[doc(hidden)]
6361 type UnderlyingRustTuple<'a> = (u8,);
6362 #[cfg(test)]
6363 #[allow(dead_code, unreachable_patterns)]
6364 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6365 match _t {
6366 alloy_sol_types::private::AssertTypeEq::<
6367 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6368 >(_) => {}
6369 }
6370 }
6371 #[automatically_derived]
6372 #[doc(hidden)]
6373 impl ::core::convert::From<paused_0Call> for UnderlyingRustTuple<'_> {
6374 fn from(value: paused_0Call) -> Self {
6375 (value.index,)
6376 }
6377 }
6378 #[automatically_derived]
6379 #[doc(hidden)]
6380 impl ::core::convert::From<UnderlyingRustTuple<'_>> for paused_0Call {
6381 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6382 Self { index: tuple.0 }
6383 }
6384 }
6385 }
6386 {
6387 #[doc(hidden)]
6388 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
6389 #[doc(hidden)]
6390 type UnderlyingRustTuple<'a> = (bool,);
6391 #[cfg(test)]
6392 #[allow(dead_code, unreachable_patterns)]
6393 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6394 match _t {
6395 alloy_sol_types::private::AssertTypeEq::<
6396 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6397 >(_) => {}
6398 }
6399 }
6400 #[automatically_derived]
6401 #[doc(hidden)]
6402 impl ::core::convert::From<paused_0Return> for UnderlyingRustTuple<'_> {
6403 fn from(value: paused_0Return) -> Self {
6404 (value._0,)
6405 }
6406 }
6407 #[automatically_derived]
6408 #[doc(hidden)]
6409 impl ::core::convert::From<UnderlyingRustTuple<'_>> for paused_0Return {
6410 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6411 Self { _0: tuple.0 }
6412 }
6413 }
6414 }
6415 #[automatically_derived]
6416 impl alloy_sol_types::SolCall for paused_0Call {
6417 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<8>,);
6418 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6419 type Return = bool;
6420 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
6421 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6422 const SIGNATURE: &'static str = "paused(uint8)";
6423 const SELECTOR: [u8; 4] = [90u8, 200u8, 106u8, 183u8];
6424 #[inline]
6425 fn new<'a>(
6426 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6427 ) -> Self {
6428 tuple.into()
6429 }
6430 #[inline]
6431 fn tokenize(&self) -> Self::Token<'_> {
6432 (
6433 <alloy::sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::tokenize(
6434 &self.index,
6435 ),
6436 )
6437 }
6438 #[inline]
6439 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6440 (<alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(ret),)
6441 }
6442 #[inline]
6443 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6444 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
6445 |r| {
6446 let r: paused_0Return = r.into();
6447 r._0
6448 },
6449 )
6450 }
6451 #[inline]
6452 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6453 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
6454 data,
6455 )
6456 .map(|r| {
6457 let r: paused_0Return = r.into();
6458 r._0
6459 })
6460 }
6461 }
6462 };
6463 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
6464 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6469 #[derive(Clone)]
6470 pub struct paused_1Call;
6471 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
6472 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6474 #[derive(Clone)]
6475 pub struct paused_1Return {
6476 #[allow(missing_docs)]
6477 pub _0: alloy::sol_types::private::primitives::aliases::U256,
6478 }
6479 #[allow(
6480 non_camel_case_types,
6481 non_snake_case,
6482 clippy::pub_underscore_fields,
6483 clippy::style
6484 )]
6485 const _: () = {
6486 use alloy::sol_types as alloy_sol_types;
6487 {
6488 #[doc(hidden)]
6489 type UnderlyingSolTuple<'a> = ();
6490 #[doc(hidden)]
6491 type UnderlyingRustTuple<'a> = ();
6492 #[cfg(test)]
6493 #[allow(dead_code, unreachable_patterns)]
6494 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6495 match _t {
6496 alloy_sol_types::private::AssertTypeEq::<
6497 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6498 >(_) => {}
6499 }
6500 }
6501 #[automatically_derived]
6502 #[doc(hidden)]
6503 impl ::core::convert::From<paused_1Call> for UnderlyingRustTuple<'_> {
6504 fn from(value: paused_1Call) -> Self {
6505 ()
6506 }
6507 }
6508 #[automatically_derived]
6509 #[doc(hidden)]
6510 impl ::core::convert::From<UnderlyingRustTuple<'_>> for paused_1Call {
6511 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6512 Self
6513 }
6514 }
6515 }
6516 {
6517 #[doc(hidden)]
6518 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6519 #[doc(hidden)]
6520 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
6521 #[cfg(test)]
6522 #[allow(dead_code, unreachable_patterns)]
6523 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6524 match _t {
6525 alloy_sol_types::private::AssertTypeEq::<
6526 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6527 >(_) => {}
6528 }
6529 }
6530 #[automatically_derived]
6531 #[doc(hidden)]
6532 impl ::core::convert::From<paused_1Return> for UnderlyingRustTuple<'_> {
6533 fn from(value: paused_1Return) -> Self {
6534 (value._0,)
6535 }
6536 }
6537 #[automatically_derived]
6538 #[doc(hidden)]
6539 impl ::core::convert::From<UnderlyingRustTuple<'_>> for paused_1Return {
6540 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6541 Self { _0: tuple.0 }
6542 }
6543 }
6544 }
6545 #[automatically_derived]
6546 impl alloy_sol_types::SolCall for paused_1Call {
6547 type Parameters<'a> = ();
6548 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6549 type Return = alloy::sol_types::private::primitives::aliases::U256;
6550 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6551 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6552 const SIGNATURE: &'static str = "paused()";
6553 const SELECTOR: [u8; 4] = [92u8, 151u8, 90u8, 187u8];
6554 #[inline]
6555 fn new<'a>(
6556 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6557 ) -> Self {
6558 tuple.into()
6559 }
6560 #[inline]
6561 fn tokenize(&self) -> Self::Token<'_> {
6562 ()
6563 }
6564 #[inline]
6565 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6566 (
6567 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
6568 ret,
6569 ),
6570 )
6571 }
6572 #[inline]
6573 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6574 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
6575 |r| {
6576 let r: paused_1Return = r.into();
6577 r._0
6578 },
6579 )
6580 }
6581 #[inline]
6582 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6583 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
6584 data,
6585 )
6586 .map(|r| {
6587 let r: paused_1Return = r.into();
6588 r._0
6589 })
6590 }
6591 }
6592 };
6593 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
6594 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6599 #[derive(Clone)]
6600 pub struct pauserRegistryCall;
6601 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
6602 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6604 #[derive(Clone)]
6605 pub struct pauserRegistryReturn {
6606 #[allow(missing_docs)]
6607 pub _0: alloy::sol_types::private::Address,
6608 }
6609 #[allow(
6610 non_camel_case_types,
6611 non_snake_case,
6612 clippy::pub_underscore_fields,
6613 clippy::style
6614 )]
6615 const _: () = {
6616 use alloy::sol_types as alloy_sol_types;
6617 {
6618 #[doc(hidden)]
6619 type UnderlyingSolTuple<'a> = ();
6620 #[doc(hidden)]
6621 type UnderlyingRustTuple<'a> = ();
6622 #[cfg(test)]
6623 #[allow(dead_code, unreachable_patterns)]
6624 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6625 match _t {
6626 alloy_sol_types::private::AssertTypeEq::<
6627 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6628 >(_) => {}
6629 }
6630 }
6631 #[automatically_derived]
6632 #[doc(hidden)]
6633 impl ::core::convert::From<pauserRegistryCall> for UnderlyingRustTuple<'_> {
6634 fn from(value: pauserRegistryCall) -> Self {
6635 ()
6636 }
6637 }
6638 #[automatically_derived]
6639 #[doc(hidden)]
6640 impl ::core::convert::From<UnderlyingRustTuple<'_>> for pauserRegistryCall {
6641 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6642 Self
6643 }
6644 }
6645 }
6646 {
6647 #[doc(hidden)]
6648 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
6649 #[doc(hidden)]
6650 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
6651 #[cfg(test)]
6652 #[allow(dead_code, unreachable_patterns)]
6653 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6654 match _t {
6655 alloy_sol_types::private::AssertTypeEq::<
6656 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6657 >(_) => {}
6658 }
6659 }
6660 #[automatically_derived]
6661 #[doc(hidden)]
6662 impl ::core::convert::From<pauserRegistryReturn> for UnderlyingRustTuple<'_> {
6663 fn from(value: pauserRegistryReturn) -> Self {
6664 (value._0,)
6665 }
6666 }
6667 #[automatically_derived]
6668 #[doc(hidden)]
6669 impl ::core::convert::From<UnderlyingRustTuple<'_>> for pauserRegistryReturn {
6670 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6671 Self { _0: tuple.0 }
6672 }
6673 }
6674 }
6675 #[automatically_derived]
6676 impl alloy_sol_types::SolCall for pauserRegistryCall {
6677 type Parameters<'a> = ();
6678 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6679 type Return = alloy::sol_types::private::Address;
6680 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
6681 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6682 const SIGNATURE: &'static str = "pauserRegistry()";
6683 const SELECTOR: [u8; 4] = [136u8, 111u8, 17u8, 149u8];
6684 #[inline]
6685 fn new<'a>(
6686 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6687 ) -> Self {
6688 tuple.into()
6689 }
6690 #[inline]
6691 fn tokenize(&self) -> Self::Token<'_> {
6692 ()
6693 }
6694 #[inline]
6695 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6696 (
6697 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6698 ret,
6699 ),
6700 )
6701 }
6702 #[inline]
6703 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6704 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
6705 |r| {
6706 let r: pauserRegistryReturn = r.into();
6707 r._0
6708 },
6709 )
6710 }
6711 #[inline]
6712 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6713 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
6714 data,
6715 )
6716 .map(|r| {
6717 let r: pauserRegistryReturn = r.into();
6718 r._0
6719 })
6720 }
6721 }
6722 };
6723 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
6724 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6729 #[derive(Clone)]
6730 pub struct removeDepositSharesCall {
6731 #[allow(missing_docs)]
6732 pub staker: alloy::sol_types::private::Address,
6733 #[allow(missing_docs)]
6734 pub strategy: alloy::sol_types::private::Address,
6735 #[allow(missing_docs)]
6736 pub depositSharesToRemove: alloy::sol_types::private::primitives::aliases::U256,
6737 }
6738 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
6739 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6741 #[derive(Clone)]
6742 pub struct removeDepositSharesReturn {
6743 #[allow(missing_docs)]
6744 pub _0: alloy::sol_types::private::primitives::aliases::U256,
6745 }
6746 #[allow(
6747 non_camel_case_types,
6748 non_snake_case,
6749 clippy::pub_underscore_fields,
6750 clippy::style
6751 )]
6752 const _: () = {
6753 use alloy::sol_types as alloy_sol_types;
6754 {
6755 #[doc(hidden)]
6756 type UnderlyingSolTuple<'a> = (
6757 alloy::sol_types::sol_data::Address,
6758 alloy::sol_types::sol_data::Address,
6759 alloy::sol_types::sol_data::Uint<256>,
6760 );
6761 #[doc(hidden)]
6762 type UnderlyingRustTuple<'a> = (
6763 alloy::sol_types::private::Address,
6764 alloy::sol_types::private::Address,
6765 alloy::sol_types::private::primitives::aliases::U256,
6766 );
6767 #[cfg(test)]
6768 #[allow(dead_code, unreachable_patterns)]
6769 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6770 match _t {
6771 alloy_sol_types::private::AssertTypeEq::<
6772 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6773 >(_) => {}
6774 }
6775 }
6776 #[automatically_derived]
6777 #[doc(hidden)]
6778 impl ::core::convert::From<removeDepositSharesCall> for UnderlyingRustTuple<'_> {
6779 fn from(value: removeDepositSharesCall) -> Self {
6780 (value.staker, value.strategy, value.depositSharesToRemove)
6781 }
6782 }
6783 #[automatically_derived]
6784 #[doc(hidden)]
6785 impl ::core::convert::From<UnderlyingRustTuple<'_>> for removeDepositSharesCall {
6786 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6787 Self {
6788 staker: tuple.0,
6789 strategy: tuple.1,
6790 depositSharesToRemove: tuple.2,
6791 }
6792 }
6793 }
6794 }
6795 {
6796 #[doc(hidden)]
6797 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6798 #[doc(hidden)]
6799 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
6800 #[cfg(test)]
6801 #[allow(dead_code, unreachable_patterns)]
6802 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6803 match _t {
6804 alloy_sol_types::private::AssertTypeEq::<
6805 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6806 >(_) => {}
6807 }
6808 }
6809 #[automatically_derived]
6810 #[doc(hidden)]
6811 impl ::core::convert::From<removeDepositSharesReturn> for UnderlyingRustTuple<'_> {
6812 fn from(value: removeDepositSharesReturn) -> Self {
6813 (value._0,)
6814 }
6815 }
6816 #[automatically_derived]
6817 #[doc(hidden)]
6818 impl ::core::convert::From<UnderlyingRustTuple<'_>> for removeDepositSharesReturn {
6819 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6820 Self { _0: tuple.0 }
6821 }
6822 }
6823 }
6824 #[automatically_derived]
6825 impl alloy_sol_types::SolCall for removeDepositSharesCall {
6826 type Parameters<'a> = (
6827 alloy::sol_types::sol_data::Address,
6828 alloy::sol_types::sol_data::Address,
6829 alloy::sol_types::sol_data::Uint<256>,
6830 );
6831 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6832 type Return = alloy::sol_types::private::primitives::aliases::U256;
6833 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6834 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6835 const SIGNATURE: &'static str = "removeDepositShares(address,address,uint256)";
6836 const SELECTOR: [u8; 4] = [114u8, 74u8, 244u8, 35u8];
6837 #[inline]
6838 fn new<'a>(
6839 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6840 ) -> Self {
6841 tuple.into()
6842 }
6843 #[inline]
6844 fn tokenize(&self) -> Self::Token<'_> {
6845 (
6846 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6847 &self.staker,
6848 ),
6849 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6850 &self.strategy,
6851 ),
6852 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
6853 &self.depositSharesToRemove,
6854 ),
6855 )
6856 }
6857 #[inline]
6858 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6859 (
6860 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
6861 ret,
6862 ),
6863 )
6864 }
6865 #[inline]
6866 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6867 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
6868 |r| {
6869 let r: removeDepositSharesReturn = r.into();
6870 r._0
6871 },
6872 )
6873 }
6874 #[inline]
6875 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6876 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
6877 data,
6878 )
6879 .map(|r| {
6880 let r: removeDepositSharesReturn = r.into();
6881 r._0
6882 })
6883 }
6884 }
6885 };
6886 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
6887 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6892 #[derive(Clone)]
6893 pub struct removeStrategiesFromDepositWhitelistCall {
6894 #[allow(missing_docs)]
6895 pub strategiesToRemoveFromWhitelist:
6896 alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,
6897 }
6898 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6900 #[derive(Clone)]
6901 pub struct removeStrategiesFromDepositWhitelistReturn {}
6902 #[allow(
6903 non_camel_case_types,
6904 non_snake_case,
6905 clippy::pub_underscore_fields,
6906 clippy::style
6907 )]
6908 const _: () = {
6909 use alloy::sol_types as alloy_sol_types;
6910 {
6911 #[doc(hidden)]
6912 type UnderlyingSolTuple<'a> =
6913 (alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,);
6914 #[doc(hidden)]
6915 type UnderlyingRustTuple<'a> =
6916 (alloy::sol_types::private::Vec<alloy::sol_types::private::Address>,);
6917 #[cfg(test)]
6918 #[allow(dead_code, unreachable_patterns)]
6919 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6920 match _t {
6921 alloy_sol_types::private::AssertTypeEq::<
6922 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6923 >(_) => {}
6924 }
6925 }
6926 #[automatically_derived]
6927 #[doc(hidden)]
6928 impl ::core::convert::From<removeStrategiesFromDepositWhitelistCall> for UnderlyingRustTuple<'_> {
6929 fn from(value: removeStrategiesFromDepositWhitelistCall) -> Self {
6930 (value.strategiesToRemoveFromWhitelist,)
6931 }
6932 }
6933 #[automatically_derived]
6934 #[doc(hidden)]
6935 impl ::core::convert::From<UnderlyingRustTuple<'_>> for removeStrategiesFromDepositWhitelistCall {
6936 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6937 Self {
6938 strategiesToRemoveFromWhitelist: tuple.0,
6939 }
6940 }
6941 }
6942 }
6943 {
6944 #[doc(hidden)]
6945 type UnderlyingSolTuple<'a> = ();
6946 #[doc(hidden)]
6947 type UnderlyingRustTuple<'a> = ();
6948 #[cfg(test)]
6949 #[allow(dead_code, unreachable_patterns)]
6950 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6951 match _t {
6952 alloy_sol_types::private::AssertTypeEq::<
6953 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6954 >(_) => {}
6955 }
6956 }
6957 #[automatically_derived]
6958 #[doc(hidden)]
6959 impl ::core::convert::From<removeStrategiesFromDepositWhitelistReturn> for UnderlyingRustTuple<'_> {
6960 fn from(value: removeStrategiesFromDepositWhitelistReturn) -> Self {
6961 ()
6962 }
6963 }
6964 #[automatically_derived]
6965 #[doc(hidden)]
6966 impl ::core::convert::From<UnderlyingRustTuple<'_>> for removeStrategiesFromDepositWhitelistReturn {
6967 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6968 Self {}
6969 }
6970 }
6971 }
6972 impl removeStrategiesFromDepositWhitelistReturn {
6973 fn _tokenize(
6974 &self,
6975 ) -> <removeStrategiesFromDepositWhitelistCall as alloy_sol_types::SolCall>::ReturnToken<
6976 '_,
6977 >{
6978 ()
6979 }
6980 }
6981 #[automatically_derived]
6982 impl alloy_sol_types::SolCall for removeStrategiesFromDepositWhitelistCall {
6983 type Parameters<'a> =
6984 (alloy::sol_types::sol_data::Array<alloy::sol_types::sol_data::Address>,);
6985 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6986 type Return = removeStrategiesFromDepositWhitelistReturn;
6987 type ReturnTuple<'a> = ();
6988 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6989 const SIGNATURE: &'static str = "removeStrategiesFromDepositWhitelist(address[])";
6990 const SELECTOR: [u8; 4] = [181u8, 216u8, 181u8, 184u8];
6991 #[inline]
6992 fn new<'a>(
6993 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6994 ) -> Self {
6995 tuple.into()
6996 }
6997 #[inline]
6998 fn tokenize(&self) -> Self::Token<'_> {
6999 (<alloy::sol_types::sol_data::Array<
7000 alloy::sol_types::sol_data::Address,
7001 > as alloy_sol_types::SolType>::tokenize(
7002 &self.strategiesToRemoveFromWhitelist,
7003 ),)
7004 }
7005 #[inline]
7006 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7007 removeStrategiesFromDepositWhitelistReturn::_tokenize(ret)
7008 }
7009 #[inline]
7010 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7011 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
7012 .map(Into::into)
7013 }
7014 #[inline]
7015 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7016 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
7017 data,
7018 )
7019 .map(Into::into)
7020 }
7021 }
7022 };
7023 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7024 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7029 #[derive(Clone)]
7030 pub struct renounceOwnershipCall;
7031 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7033 #[derive(Clone)]
7034 pub struct renounceOwnershipReturn {}
7035 #[allow(
7036 non_camel_case_types,
7037 non_snake_case,
7038 clippy::pub_underscore_fields,
7039 clippy::style
7040 )]
7041 const _: () = {
7042 use alloy::sol_types as alloy_sol_types;
7043 {
7044 #[doc(hidden)]
7045 type UnderlyingSolTuple<'a> = ();
7046 #[doc(hidden)]
7047 type UnderlyingRustTuple<'a> = ();
7048 #[cfg(test)]
7049 #[allow(dead_code, unreachable_patterns)]
7050 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7051 match _t {
7052 alloy_sol_types::private::AssertTypeEq::<
7053 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7054 >(_) => {}
7055 }
7056 }
7057 #[automatically_derived]
7058 #[doc(hidden)]
7059 impl ::core::convert::From<renounceOwnershipCall> for UnderlyingRustTuple<'_> {
7060 fn from(value: renounceOwnershipCall) -> Self {
7061 ()
7062 }
7063 }
7064 #[automatically_derived]
7065 #[doc(hidden)]
7066 impl ::core::convert::From<UnderlyingRustTuple<'_>> for renounceOwnershipCall {
7067 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7068 Self
7069 }
7070 }
7071 }
7072 {
7073 #[doc(hidden)]
7074 type UnderlyingSolTuple<'a> = ();
7075 #[doc(hidden)]
7076 type UnderlyingRustTuple<'a> = ();
7077 #[cfg(test)]
7078 #[allow(dead_code, unreachable_patterns)]
7079 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7080 match _t {
7081 alloy_sol_types::private::AssertTypeEq::<
7082 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7083 >(_) => {}
7084 }
7085 }
7086 #[automatically_derived]
7087 #[doc(hidden)]
7088 impl ::core::convert::From<renounceOwnershipReturn> for UnderlyingRustTuple<'_> {
7089 fn from(value: renounceOwnershipReturn) -> Self {
7090 ()
7091 }
7092 }
7093 #[automatically_derived]
7094 #[doc(hidden)]
7095 impl ::core::convert::From<UnderlyingRustTuple<'_>> for renounceOwnershipReturn {
7096 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7097 Self {}
7098 }
7099 }
7100 }
7101 impl renounceOwnershipReturn {
7102 fn _tokenize(
7103 &self,
7104 ) -> <renounceOwnershipCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
7105 ()
7106 }
7107 }
7108 #[automatically_derived]
7109 impl alloy_sol_types::SolCall for renounceOwnershipCall {
7110 type Parameters<'a> = ();
7111 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7112 type Return = renounceOwnershipReturn;
7113 type ReturnTuple<'a> = ();
7114 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7115 const SIGNATURE: &'static str = "renounceOwnership()";
7116 const SELECTOR: [u8; 4] = [113u8, 80u8, 24u8, 166u8];
7117 #[inline]
7118 fn new<'a>(
7119 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7120 ) -> Self {
7121 tuple.into()
7122 }
7123 #[inline]
7124 fn tokenize(&self) -> Self::Token<'_> {
7125 ()
7126 }
7127 #[inline]
7128 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7129 renounceOwnershipReturn::_tokenize(ret)
7130 }
7131 #[inline]
7132 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7133 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
7134 .map(Into::into)
7135 }
7136 #[inline]
7137 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7138 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
7139 data,
7140 )
7141 .map(Into::into)
7142 }
7143 }
7144 };
7145 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7146 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7151 #[derive(Clone)]
7152 pub struct setStrategyWhitelisterCall {
7153 #[allow(missing_docs)]
7154 pub newStrategyWhitelister: alloy::sol_types::private::Address,
7155 }
7156 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7158 #[derive(Clone)]
7159 pub struct setStrategyWhitelisterReturn {}
7160 #[allow(
7161 non_camel_case_types,
7162 non_snake_case,
7163 clippy::pub_underscore_fields,
7164 clippy::style
7165 )]
7166 const _: () = {
7167 use alloy::sol_types as alloy_sol_types;
7168 {
7169 #[doc(hidden)]
7170 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7171 #[doc(hidden)]
7172 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7173 #[cfg(test)]
7174 #[allow(dead_code, unreachable_patterns)]
7175 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7176 match _t {
7177 alloy_sol_types::private::AssertTypeEq::<
7178 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7179 >(_) => {}
7180 }
7181 }
7182 #[automatically_derived]
7183 #[doc(hidden)]
7184 impl ::core::convert::From<setStrategyWhitelisterCall> for UnderlyingRustTuple<'_> {
7185 fn from(value: setStrategyWhitelisterCall) -> Self {
7186 (value.newStrategyWhitelister,)
7187 }
7188 }
7189 #[automatically_derived]
7190 #[doc(hidden)]
7191 impl ::core::convert::From<UnderlyingRustTuple<'_>> for setStrategyWhitelisterCall {
7192 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7193 Self {
7194 newStrategyWhitelister: tuple.0,
7195 }
7196 }
7197 }
7198 }
7199 {
7200 #[doc(hidden)]
7201 type UnderlyingSolTuple<'a> = ();
7202 #[doc(hidden)]
7203 type UnderlyingRustTuple<'a> = ();
7204 #[cfg(test)]
7205 #[allow(dead_code, unreachable_patterns)]
7206 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7207 match _t {
7208 alloy_sol_types::private::AssertTypeEq::<
7209 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7210 >(_) => {}
7211 }
7212 }
7213 #[automatically_derived]
7214 #[doc(hidden)]
7215 impl ::core::convert::From<setStrategyWhitelisterReturn> for UnderlyingRustTuple<'_> {
7216 fn from(value: setStrategyWhitelisterReturn) -> Self {
7217 ()
7218 }
7219 }
7220 #[automatically_derived]
7221 #[doc(hidden)]
7222 impl ::core::convert::From<UnderlyingRustTuple<'_>> for setStrategyWhitelisterReturn {
7223 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7224 Self {}
7225 }
7226 }
7227 }
7228 impl setStrategyWhitelisterReturn {
7229 fn _tokenize(
7230 &self,
7231 ) -> <setStrategyWhitelisterCall as alloy_sol_types::SolCall>::ReturnToken<'_>
7232 {
7233 ()
7234 }
7235 }
7236 #[automatically_derived]
7237 impl alloy_sol_types::SolCall for setStrategyWhitelisterCall {
7238 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
7239 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7240 type Return = setStrategyWhitelisterReturn;
7241 type ReturnTuple<'a> = ();
7242 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7243 const SIGNATURE: &'static str = "setStrategyWhitelister(address)";
7244 const SELECTOR: [u8; 4] = [198u8, 101u8, 103u8, 2u8];
7245 #[inline]
7246 fn new<'a>(
7247 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7248 ) -> Self {
7249 tuple.into()
7250 }
7251 #[inline]
7252 fn tokenize(&self) -> Self::Token<'_> {
7253 (
7254 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7255 &self.newStrategyWhitelister,
7256 ),
7257 )
7258 }
7259 #[inline]
7260 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7261 setStrategyWhitelisterReturn::_tokenize(ret)
7262 }
7263 #[inline]
7264 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7265 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
7266 .map(Into::into)
7267 }
7268 #[inline]
7269 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7270 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
7271 data,
7272 )
7273 .map(Into::into)
7274 }
7275 }
7276 };
7277 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7278 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7283 #[derive(Clone)]
7284 pub struct stakerDepositSharesCall {
7285 #[allow(missing_docs)]
7286 pub staker: alloy::sol_types::private::Address,
7287 #[allow(missing_docs)]
7288 pub strategy: alloy::sol_types::private::Address,
7289 }
7290 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7291 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7293 #[derive(Clone)]
7294 pub struct stakerDepositSharesReturn {
7295 #[allow(missing_docs)]
7296 pub shares: alloy::sol_types::private::primitives::aliases::U256,
7297 }
7298 #[allow(
7299 non_camel_case_types,
7300 non_snake_case,
7301 clippy::pub_underscore_fields,
7302 clippy::style
7303 )]
7304 const _: () = {
7305 use alloy::sol_types as alloy_sol_types;
7306 {
7307 #[doc(hidden)]
7308 type UnderlyingSolTuple<'a> = (
7309 alloy::sol_types::sol_data::Address,
7310 alloy::sol_types::sol_data::Address,
7311 );
7312 #[doc(hidden)]
7313 type UnderlyingRustTuple<'a> = (
7314 alloy::sol_types::private::Address,
7315 alloy::sol_types::private::Address,
7316 );
7317 #[cfg(test)]
7318 #[allow(dead_code, unreachable_patterns)]
7319 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7320 match _t {
7321 alloy_sol_types::private::AssertTypeEq::<
7322 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7323 >(_) => {}
7324 }
7325 }
7326 #[automatically_derived]
7327 #[doc(hidden)]
7328 impl ::core::convert::From<stakerDepositSharesCall> for UnderlyingRustTuple<'_> {
7329 fn from(value: stakerDepositSharesCall) -> Self {
7330 (value.staker, value.strategy)
7331 }
7332 }
7333 #[automatically_derived]
7334 #[doc(hidden)]
7335 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stakerDepositSharesCall {
7336 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7337 Self {
7338 staker: tuple.0,
7339 strategy: tuple.1,
7340 }
7341 }
7342 }
7343 }
7344 {
7345 #[doc(hidden)]
7346 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
7347 #[doc(hidden)]
7348 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
7349 #[cfg(test)]
7350 #[allow(dead_code, unreachable_patterns)]
7351 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7352 match _t {
7353 alloy_sol_types::private::AssertTypeEq::<
7354 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7355 >(_) => {}
7356 }
7357 }
7358 #[automatically_derived]
7359 #[doc(hidden)]
7360 impl ::core::convert::From<stakerDepositSharesReturn> for UnderlyingRustTuple<'_> {
7361 fn from(value: stakerDepositSharesReturn) -> Self {
7362 (value.shares,)
7363 }
7364 }
7365 #[automatically_derived]
7366 #[doc(hidden)]
7367 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stakerDepositSharesReturn {
7368 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7369 Self { shares: tuple.0 }
7370 }
7371 }
7372 }
7373 #[automatically_derived]
7374 impl alloy_sol_types::SolCall for stakerDepositSharesCall {
7375 type Parameters<'a> = (
7376 alloy::sol_types::sol_data::Address,
7377 alloy::sol_types::sol_data::Address,
7378 );
7379 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7380 type Return = alloy::sol_types::private::primitives::aliases::U256;
7381 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
7382 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7383 const SIGNATURE: &'static str = "stakerDepositShares(address,address)";
7384 const SELECTOR: [u8; 4] = [254u8, 36u8, 58u8, 23u8];
7385 #[inline]
7386 fn new<'a>(
7387 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7388 ) -> Self {
7389 tuple.into()
7390 }
7391 #[inline]
7392 fn tokenize(&self) -> Self::Token<'_> {
7393 (
7394 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7395 &self.staker,
7396 ),
7397 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7398 &self.strategy,
7399 ),
7400 )
7401 }
7402 #[inline]
7403 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7404 (
7405 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
7406 ret,
7407 ),
7408 )
7409 }
7410 #[inline]
7411 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7412 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
7413 |r| {
7414 let r: stakerDepositSharesReturn = r.into();
7415 r.shares
7416 },
7417 )
7418 }
7419 #[inline]
7420 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7421 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
7422 data,
7423 )
7424 .map(|r| {
7425 let r: stakerDepositSharesReturn = r.into();
7426 r.shares
7427 })
7428 }
7429 }
7430 };
7431 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7432 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7437 #[derive(Clone)]
7438 pub struct stakerStrategyListCall {
7439 #[allow(missing_docs)]
7440 pub staker: alloy::sol_types::private::Address,
7441 #[allow(missing_docs)]
7442 pub _1: alloy::sol_types::private::primitives::aliases::U256,
7443 }
7444 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7445 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7447 #[derive(Clone)]
7448 pub struct stakerStrategyListReturn {
7449 #[allow(missing_docs)]
7450 pub strategies: alloy::sol_types::private::Address,
7451 }
7452 #[allow(
7453 non_camel_case_types,
7454 non_snake_case,
7455 clippy::pub_underscore_fields,
7456 clippy::style
7457 )]
7458 const _: () = {
7459 use alloy::sol_types as alloy_sol_types;
7460 {
7461 #[doc(hidden)]
7462 type UnderlyingSolTuple<'a> = (
7463 alloy::sol_types::sol_data::Address,
7464 alloy::sol_types::sol_data::Uint<256>,
7465 );
7466 #[doc(hidden)]
7467 type UnderlyingRustTuple<'a> = (
7468 alloy::sol_types::private::Address,
7469 alloy::sol_types::private::primitives::aliases::U256,
7470 );
7471 #[cfg(test)]
7472 #[allow(dead_code, unreachable_patterns)]
7473 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7474 match _t {
7475 alloy_sol_types::private::AssertTypeEq::<
7476 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7477 >(_) => {}
7478 }
7479 }
7480 #[automatically_derived]
7481 #[doc(hidden)]
7482 impl ::core::convert::From<stakerStrategyListCall> for UnderlyingRustTuple<'_> {
7483 fn from(value: stakerStrategyListCall) -> Self {
7484 (value.staker, value._1)
7485 }
7486 }
7487 #[automatically_derived]
7488 #[doc(hidden)]
7489 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stakerStrategyListCall {
7490 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7491 Self {
7492 staker: tuple.0,
7493 _1: tuple.1,
7494 }
7495 }
7496 }
7497 }
7498 {
7499 #[doc(hidden)]
7500 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7501 #[doc(hidden)]
7502 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7503 #[cfg(test)]
7504 #[allow(dead_code, unreachable_patterns)]
7505 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7506 match _t {
7507 alloy_sol_types::private::AssertTypeEq::<
7508 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7509 >(_) => {}
7510 }
7511 }
7512 #[automatically_derived]
7513 #[doc(hidden)]
7514 impl ::core::convert::From<stakerStrategyListReturn> for UnderlyingRustTuple<'_> {
7515 fn from(value: stakerStrategyListReturn) -> Self {
7516 (value.strategies,)
7517 }
7518 }
7519 #[automatically_derived]
7520 #[doc(hidden)]
7521 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stakerStrategyListReturn {
7522 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7523 Self {
7524 strategies: tuple.0,
7525 }
7526 }
7527 }
7528 }
7529 #[automatically_derived]
7530 impl alloy_sol_types::SolCall for stakerStrategyListCall {
7531 type Parameters<'a> = (
7532 alloy::sol_types::sol_data::Address,
7533 alloy::sol_types::sol_data::Uint<256>,
7534 );
7535 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7536 type Return = alloy::sol_types::private::Address;
7537 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
7538 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7539 const SIGNATURE: &'static str = "stakerStrategyList(address,uint256)";
7540 const SELECTOR: [u8; 4] = [203u8, 194u8, 189u8, 98u8];
7541 #[inline]
7542 fn new<'a>(
7543 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7544 ) -> Self {
7545 tuple.into()
7546 }
7547 #[inline]
7548 fn tokenize(&self) -> Self::Token<'_> {
7549 (
7550 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7551 &self.staker,
7552 ),
7553 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
7554 &self._1,
7555 ),
7556 )
7557 }
7558 #[inline]
7559 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7560 (
7561 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7562 ret,
7563 ),
7564 )
7565 }
7566 #[inline]
7567 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7568 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
7569 |r| {
7570 let r: stakerStrategyListReturn = r.into();
7571 r.strategies
7572 },
7573 )
7574 }
7575 #[inline]
7576 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7577 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
7578 data,
7579 )
7580 .map(|r| {
7581 let r: stakerStrategyListReturn = r.into();
7582 r.strategies
7583 })
7584 }
7585 }
7586 };
7587 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7588 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7593 #[derive(Clone)]
7594 pub struct stakerStrategyListLengthCall {
7595 #[allow(missing_docs)]
7596 pub staker: alloy::sol_types::private::Address,
7597 }
7598 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7599 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7601 #[derive(Clone)]
7602 pub struct stakerStrategyListLengthReturn {
7603 #[allow(missing_docs)]
7604 pub _0: alloy::sol_types::private::primitives::aliases::U256,
7605 }
7606 #[allow(
7607 non_camel_case_types,
7608 non_snake_case,
7609 clippy::pub_underscore_fields,
7610 clippy::style
7611 )]
7612 const _: () = {
7613 use alloy::sol_types as alloy_sol_types;
7614 {
7615 #[doc(hidden)]
7616 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7617 #[doc(hidden)]
7618 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7619 #[cfg(test)]
7620 #[allow(dead_code, unreachable_patterns)]
7621 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7622 match _t {
7623 alloy_sol_types::private::AssertTypeEq::<
7624 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7625 >(_) => {}
7626 }
7627 }
7628 #[automatically_derived]
7629 #[doc(hidden)]
7630 impl ::core::convert::From<stakerStrategyListLengthCall> for UnderlyingRustTuple<'_> {
7631 fn from(value: stakerStrategyListLengthCall) -> Self {
7632 (value.staker,)
7633 }
7634 }
7635 #[automatically_derived]
7636 #[doc(hidden)]
7637 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stakerStrategyListLengthCall {
7638 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7639 Self { staker: tuple.0 }
7640 }
7641 }
7642 }
7643 {
7644 #[doc(hidden)]
7645 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
7646 #[doc(hidden)]
7647 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
7648 #[cfg(test)]
7649 #[allow(dead_code, unreachable_patterns)]
7650 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7651 match _t {
7652 alloy_sol_types::private::AssertTypeEq::<
7653 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7654 >(_) => {}
7655 }
7656 }
7657 #[automatically_derived]
7658 #[doc(hidden)]
7659 impl ::core::convert::From<stakerStrategyListLengthReturn> for UnderlyingRustTuple<'_> {
7660 fn from(value: stakerStrategyListLengthReturn) -> Self {
7661 (value._0,)
7662 }
7663 }
7664 #[automatically_derived]
7665 #[doc(hidden)]
7666 impl ::core::convert::From<UnderlyingRustTuple<'_>> for stakerStrategyListLengthReturn {
7667 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7668 Self { _0: tuple.0 }
7669 }
7670 }
7671 }
7672 #[automatically_derived]
7673 impl alloy_sol_types::SolCall for stakerStrategyListLengthCall {
7674 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
7675 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7676 type Return = alloy::sol_types::private::primitives::aliases::U256;
7677 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
7678 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7679 const SIGNATURE: &'static str = "stakerStrategyListLength(address)";
7680 const SELECTOR: [u8; 4] = [139u8, 138u8, 172u8, 60u8];
7681 #[inline]
7682 fn new<'a>(
7683 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7684 ) -> Self {
7685 tuple.into()
7686 }
7687 #[inline]
7688 fn tokenize(&self) -> Self::Token<'_> {
7689 (
7690 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7691 &self.staker,
7692 ),
7693 )
7694 }
7695 #[inline]
7696 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7697 (
7698 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
7699 ret,
7700 ),
7701 )
7702 }
7703 #[inline]
7704 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7705 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
7706 |r| {
7707 let r: stakerStrategyListLengthReturn = r.into();
7708 r._0
7709 },
7710 )
7711 }
7712 #[inline]
7713 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7714 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
7715 data,
7716 )
7717 .map(|r| {
7718 let r: stakerStrategyListLengthReturn = r.into();
7719 r._0
7720 })
7721 }
7722 }
7723 };
7724 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7725 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7730 #[derive(Clone)]
7731 pub struct strategyIsWhitelistedForDepositCall {
7732 #[allow(missing_docs)]
7733 pub strategy: alloy::sol_types::private::Address,
7734 }
7735 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7736 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7738 #[derive(Clone)]
7739 pub struct strategyIsWhitelistedForDepositReturn {
7740 #[allow(missing_docs)]
7741 pub whitelisted: bool,
7742 }
7743 #[allow(
7744 non_camel_case_types,
7745 non_snake_case,
7746 clippy::pub_underscore_fields,
7747 clippy::style
7748 )]
7749 const _: () = {
7750 use alloy::sol_types as alloy_sol_types;
7751 {
7752 #[doc(hidden)]
7753 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7754 #[doc(hidden)]
7755 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7756 #[cfg(test)]
7757 #[allow(dead_code, unreachable_patterns)]
7758 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7759 match _t {
7760 alloy_sol_types::private::AssertTypeEq::<
7761 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7762 >(_) => {}
7763 }
7764 }
7765 #[automatically_derived]
7766 #[doc(hidden)]
7767 impl ::core::convert::From<strategyIsWhitelistedForDepositCall> for UnderlyingRustTuple<'_> {
7768 fn from(value: strategyIsWhitelistedForDepositCall) -> Self {
7769 (value.strategy,)
7770 }
7771 }
7772 #[automatically_derived]
7773 #[doc(hidden)]
7774 impl ::core::convert::From<UnderlyingRustTuple<'_>> for strategyIsWhitelistedForDepositCall {
7775 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7776 Self { strategy: tuple.0 }
7777 }
7778 }
7779 }
7780 {
7781 #[doc(hidden)]
7782 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
7783 #[doc(hidden)]
7784 type UnderlyingRustTuple<'a> = (bool,);
7785 #[cfg(test)]
7786 #[allow(dead_code, unreachable_patterns)]
7787 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7788 match _t {
7789 alloy_sol_types::private::AssertTypeEq::<
7790 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7791 >(_) => {}
7792 }
7793 }
7794 #[automatically_derived]
7795 #[doc(hidden)]
7796 impl ::core::convert::From<strategyIsWhitelistedForDepositReturn> for UnderlyingRustTuple<'_> {
7797 fn from(value: strategyIsWhitelistedForDepositReturn) -> Self {
7798 (value.whitelisted,)
7799 }
7800 }
7801 #[automatically_derived]
7802 #[doc(hidden)]
7803 impl ::core::convert::From<UnderlyingRustTuple<'_>> for strategyIsWhitelistedForDepositReturn {
7804 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7805 Self {
7806 whitelisted: tuple.0,
7807 }
7808 }
7809 }
7810 }
7811 #[automatically_derived]
7812 impl alloy_sol_types::SolCall for strategyIsWhitelistedForDepositCall {
7813 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
7814 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7815 type Return = bool;
7816 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
7817 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7818 const SIGNATURE: &'static str = "strategyIsWhitelistedForDeposit(address)";
7819 const SELECTOR: [u8; 4] = [102u8, 60u8, 29u8, 228u8];
7820 #[inline]
7821 fn new<'a>(
7822 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7823 ) -> Self {
7824 tuple.into()
7825 }
7826 #[inline]
7827 fn tokenize(&self) -> Self::Token<'_> {
7828 (
7829 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7830 &self.strategy,
7831 ),
7832 )
7833 }
7834 #[inline]
7835 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7836 (<alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(ret),)
7837 }
7838 #[inline]
7839 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7840 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
7841 |r| {
7842 let r: strategyIsWhitelistedForDepositReturn = r.into();
7843 r.whitelisted
7844 },
7845 )
7846 }
7847 #[inline]
7848 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7849 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
7850 data,
7851 )
7852 .map(|r| {
7853 let r: strategyIsWhitelistedForDepositReturn = r.into();
7854 r.whitelisted
7855 })
7856 }
7857 }
7858 };
7859 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7860 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7865 #[derive(Clone)]
7866 pub struct strategyWhitelisterCall;
7867 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7868 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7870 #[derive(Clone)]
7871 pub struct strategyWhitelisterReturn {
7872 #[allow(missing_docs)]
7873 pub _0: alloy::sol_types::private::Address,
7874 }
7875 #[allow(
7876 non_camel_case_types,
7877 non_snake_case,
7878 clippy::pub_underscore_fields,
7879 clippy::style
7880 )]
7881 const _: () = {
7882 use alloy::sol_types as alloy_sol_types;
7883 {
7884 #[doc(hidden)]
7885 type UnderlyingSolTuple<'a> = ();
7886 #[doc(hidden)]
7887 type UnderlyingRustTuple<'a> = ();
7888 #[cfg(test)]
7889 #[allow(dead_code, unreachable_patterns)]
7890 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7891 match _t {
7892 alloy_sol_types::private::AssertTypeEq::<
7893 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7894 >(_) => {}
7895 }
7896 }
7897 #[automatically_derived]
7898 #[doc(hidden)]
7899 impl ::core::convert::From<strategyWhitelisterCall> for UnderlyingRustTuple<'_> {
7900 fn from(value: strategyWhitelisterCall) -> Self {
7901 ()
7902 }
7903 }
7904 #[automatically_derived]
7905 #[doc(hidden)]
7906 impl ::core::convert::From<UnderlyingRustTuple<'_>> for strategyWhitelisterCall {
7907 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7908 Self
7909 }
7910 }
7911 }
7912 {
7913 #[doc(hidden)]
7914 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7915 #[doc(hidden)]
7916 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7917 #[cfg(test)]
7918 #[allow(dead_code, unreachable_patterns)]
7919 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7920 match _t {
7921 alloy_sol_types::private::AssertTypeEq::<
7922 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7923 >(_) => {}
7924 }
7925 }
7926 #[automatically_derived]
7927 #[doc(hidden)]
7928 impl ::core::convert::From<strategyWhitelisterReturn> for UnderlyingRustTuple<'_> {
7929 fn from(value: strategyWhitelisterReturn) -> Self {
7930 (value._0,)
7931 }
7932 }
7933 #[automatically_derived]
7934 #[doc(hidden)]
7935 impl ::core::convert::From<UnderlyingRustTuple<'_>> for strategyWhitelisterReturn {
7936 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7937 Self { _0: tuple.0 }
7938 }
7939 }
7940 }
7941 #[automatically_derived]
7942 impl alloy_sol_types::SolCall for strategyWhitelisterCall {
7943 type Parameters<'a> = ();
7944 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7945 type Return = alloy::sol_types::private::Address;
7946 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
7947 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7948 const SIGNATURE: &'static str = "strategyWhitelister()";
7949 const SELECTOR: [u8; 4] = [150u8, 127u8, 192u8, 210u8];
7950 #[inline]
7951 fn new<'a>(
7952 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7953 ) -> Self {
7954 tuple.into()
7955 }
7956 #[inline]
7957 fn tokenize(&self) -> Self::Token<'_> {
7958 ()
7959 }
7960 #[inline]
7961 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7962 (
7963 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7964 ret,
7965 ),
7966 )
7967 }
7968 #[inline]
7969 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7970 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
7971 |r| {
7972 let r: strategyWhitelisterReturn = r.into();
7973 r._0
7974 },
7975 )
7976 }
7977 #[inline]
7978 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7979 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
7980 data,
7981 )
7982 .map(|r| {
7983 let r: strategyWhitelisterReturn = r.into();
7984 r._0
7985 })
7986 }
7987 }
7988 };
7989 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
7990 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7995 #[derive(Clone)]
7996 pub struct transferOwnershipCall {
7997 #[allow(missing_docs)]
7998 pub newOwner: alloy::sol_types::private::Address,
7999 }
8000 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8002 #[derive(Clone)]
8003 pub struct transferOwnershipReturn {}
8004 #[allow(
8005 non_camel_case_types,
8006 non_snake_case,
8007 clippy::pub_underscore_fields,
8008 clippy::style
8009 )]
8010 const _: () = {
8011 use alloy::sol_types as alloy_sol_types;
8012 {
8013 #[doc(hidden)]
8014 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
8015 #[doc(hidden)]
8016 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
8017 #[cfg(test)]
8018 #[allow(dead_code, unreachable_patterns)]
8019 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8020 match _t {
8021 alloy_sol_types::private::AssertTypeEq::<
8022 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8023 >(_) => {}
8024 }
8025 }
8026 #[automatically_derived]
8027 #[doc(hidden)]
8028 impl ::core::convert::From<transferOwnershipCall> for UnderlyingRustTuple<'_> {
8029 fn from(value: transferOwnershipCall) -> Self {
8030 (value.newOwner,)
8031 }
8032 }
8033 #[automatically_derived]
8034 #[doc(hidden)]
8035 impl ::core::convert::From<UnderlyingRustTuple<'_>> for transferOwnershipCall {
8036 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8037 Self { newOwner: tuple.0 }
8038 }
8039 }
8040 }
8041 {
8042 #[doc(hidden)]
8043 type UnderlyingSolTuple<'a> = ();
8044 #[doc(hidden)]
8045 type UnderlyingRustTuple<'a> = ();
8046 #[cfg(test)]
8047 #[allow(dead_code, unreachable_patterns)]
8048 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8049 match _t {
8050 alloy_sol_types::private::AssertTypeEq::<
8051 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8052 >(_) => {}
8053 }
8054 }
8055 #[automatically_derived]
8056 #[doc(hidden)]
8057 impl ::core::convert::From<transferOwnershipReturn> for UnderlyingRustTuple<'_> {
8058 fn from(value: transferOwnershipReturn) -> Self {
8059 ()
8060 }
8061 }
8062 #[automatically_derived]
8063 #[doc(hidden)]
8064 impl ::core::convert::From<UnderlyingRustTuple<'_>> for transferOwnershipReturn {
8065 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8066 Self {}
8067 }
8068 }
8069 }
8070 impl transferOwnershipReturn {
8071 fn _tokenize(
8072 &self,
8073 ) -> <transferOwnershipCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
8074 ()
8075 }
8076 }
8077 #[automatically_derived]
8078 impl alloy_sol_types::SolCall for transferOwnershipCall {
8079 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
8080 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8081 type Return = transferOwnershipReturn;
8082 type ReturnTuple<'a> = ();
8083 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8084 const SIGNATURE: &'static str = "transferOwnership(address)";
8085 const SELECTOR: [u8; 4] = [242u8, 253u8, 227u8, 139u8];
8086 #[inline]
8087 fn new<'a>(
8088 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8089 ) -> Self {
8090 tuple.into()
8091 }
8092 #[inline]
8093 fn tokenize(&self) -> Self::Token<'_> {
8094 (
8095 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8096 &self.newOwner,
8097 ),
8098 )
8099 }
8100 #[inline]
8101 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8102 transferOwnershipReturn::_tokenize(ret)
8103 }
8104 #[inline]
8105 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8106 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
8107 .map(Into::into)
8108 }
8109 #[inline]
8110 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8111 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
8112 data,
8113 )
8114 .map(Into::into)
8115 }
8116 }
8117 };
8118 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
8119 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8124 #[derive(Clone)]
8125 pub struct unpauseCall {
8126 #[allow(missing_docs)]
8127 pub newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
8128 }
8129 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8131 #[derive(Clone)]
8132 pub struct unpauseReturn {}
8133 #[allow(
8134 non_camel_case_types,
8135 non_snake_case,
8136 clippy::pub_underscore_fields,
8137 clippy::style
8138 )]
8139 const _: () = {
8140 use alloy::sol_types as alloy_sol_types;
8141 {
8142 #[doc(hidden)]
8143 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
8144 #[doc(hidden)]
8145 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
8146 #[cfg(test)]
8147 #[allow(dead_code, unreachable_patterns)]
8148 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8149 match _t {
8150 alloy_sol_types::private::AssertTypeEq::<
8151 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8152 >(_) => {}
8153 }
8154 }
8155 #[automatically_derived]
8156 #[doc(hidden)]
8157 impl ::core::convert::From<unpauseCall> for UnderlyingRustTuple<'_> {
8158 fn from(value: unpauseCall) -> Self {
8159 (value.newPausedStatus,)
8160 }
8161 }
8162 #[automatically_derived]
8163 #[doc(hidden)]
8164 impl ::core::convert::From<UnderlyingRustTuple<'_>> for unpauseCall {
8165 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8166 Self {
8167 newPausedStatus: tuple.0,
8168 }
8169 }
8170 }
8171 }
8172 {
8173 #[doc(hidden)]
8174 type UnderlyingSolTuple<'a> = ();
8175 #[doc(hidden)]
8176 type UnderlyingRustTuple<'a> = ();
8177 #[cfg(test)]
8178 #[allow(dead_code, unreachable_patterns)]
8179 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8180 match _t {
8181 alloy_sol_types::private::AssertTypeEq::<
8182 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8183 >(_) => {}
8184 }
8185 }
8186 #[automatically_derived]
8187 #[doc(hidden)]
8188 impl ::core::convert::From<unpauseReturn> for UnderlyingRustTuple<'_> {
8189 fn from(value: unpauseReturn) -> Self {
8190 ()
8191 }
8192 }
8193 #[automatically_derived]
8194 #[doc(hidden)]
8195 impl ::core::convert::From<UnderlyingRustTuple<'_>> for unpauseReturn {
8196 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8197 Self {}
8198 }
8199 }
8200 }
8201 impl unpauseReturn {
8202 fn _tokenize(&self) -> <unpauseCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
8203 ()
8204 }
8205 }
8206 #[automatically_derived]
8207 impl alloy_sol_types::SolCall for unpauseCall {
8208 type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,);
8209 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8210 type Return = unpauseReturn;
8211 type ReturnTuple<'a> = ();
8212 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8213 const SIGNATURE: &'static str = "unpause(uint256)";
8214 const SELECTOR: [u8; 4] = [250u8, 188u8, 28u8, 188u8];
8215 #[inline]
8216 fn new<'a>(
8217 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8218 ) -> Self {
8219 tuple.into()
8220 }
8221 #[inline]
8222 fn tokenize(&self) -> Self::Token<'_> {
8223 (
8224 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
8225 &self.newPausedStatus,
8226 ),
8227 )
8228 }
8229 #[inline]
8230 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8231 unpauseReturn::_tokenize(ret)
8232 }
8233 #[inline]
8234 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8235 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
8236 .map(Into::into)
8237 }
8238 #[inline]
8239 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8240 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
8241 data,
8242 )
8243 .map(Into::into)
8244 }
8245 }
8246 };
8247 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
8248 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8253 #[derive(Clone)]
8254 pub struct versionCall;
8255 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
8256 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8258 #[derive(Clone)]
8259 pub struct versionReturn {
8260 #[allow(missing_docs)]
8261 pub _0: alloy::sol_types::private::String,
8262 }
8263 #[allow(
8264 non_camel_case_types,
8265 non_snake_case,
8266 clippy::pub_underscore_fields,
8267 clippy::style
8268 )]
8269 const _: () = {
8270 use alloy::sol_types as alloy_sol_types;
8271 {
8272 #[doc(hidden)]
8273 type UnderlyingSolTuple<'a> = ();
8274 #[doc(hidden)]
8275 type UnderlyingRustTuple<'a> = ();
8276 #[cfg(test)]
8277 #[allow(dead_code, unreachable_patterns)]
8278 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8279 match _t {
8280 alloy_sol_types::private::AssertTypeEq::<
8281 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8282 >(_) => {}
8283 }
8284 }
8285 #[automatically_derived]
8286 #[doc(hidden)]
8287 impl ::core::convert::From<versionCall> for UnderlyingRustTuple<'_> {
8288 fn from(value: versionCall) -> Self {
8289 ()
8290 }
8291 }
8292 #[automatically_derived]
8293 #[doc(hidden)]
8294 impl ::core::convert::From<UnderlyingRustTuple<'_>> for versionCall {
8295 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8296 Self
8297 }
8298 }
8299 }
8300 {
8301 #[doc(hidden)]
8302 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,);
8303 #[doc(hidden)]
8304 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,);
8305 #[cfg(test)]
8306 #[allow(dead_code, unreachable_patterns)]
8307 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8308 match _t {
8309 alloy_sol_types::private::AssertTypeEq::<
8310 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8311 >(_) => {}
8312 }
8313 }
8314 #[automatically_derived]
8315 #[doc(hidden)]
8316 impl ::core::convert::From<versionReturn> for UnderlyingRustTuple<'_> {
8317 fn from(value: versionReturn) -> Self {
8318 (value._0,)
8319 }
8320 }
8321 #[automatically_derived]
8322 #[doc(hidden)]
8323 impl ::core::convert::From<UnderlyingRustTuple<'_>> for versionReturn {
8324 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8325 Self { _0: tuple.0 }
8326 }
8327 }
8328 }
8329 #[automatically_derived]
8330 impl alloy_sol_types::SolCall for versionCall {
8331 type Parameters<'a> = ();
8332 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8333 type Return = alloy::sol_types::private::String;
8334 type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,);
8335 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8336 const SIGNATURE: &'static str = "version()";
8337 const SELECTOR: [u8; 4] = [84u8, 253u8, 77u8, 80u8];
8338 #[inline]
8339 fn new<'a>(
8340 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8341 ) -> Self {
8342 tuple.into()
8343 }
8344 #[inline]
8345 fn tokenize(&self) -> Self::Token<'_> {
8346 ()
8347 }
8348 #[inline]
8349 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8350 (<alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(ret),)
8351 }
8352 #[inline]
8353 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8354 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data).map(
8355 |r| {
8356 let r: versionReturn = r.into();
8357 r._0
8358 },
8359 )
8360 }
8361 #[inline]
8362 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8363 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
8364 data,
8365 )
8366 .map(|r| {
8367 let r: versionReturn = r.into();
8368 r._0
8369 })
8370 }
8371 }
8372 };
8373 #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)]
8374 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8379 #[derive(Clone)]
8380 pub struct withdrawSharesAsTokensCall {
8381 #[allow(missing_docs)]
8382 pub staker: alloy::sol_types::private::Address,
8383 #[allow(missing_docs)]
8384 pub strategy: alloy::sol_types::private::Address,
8385 #[allow(missing_docs)]
8386 pub token: alloy::sol_types::private::Address,
8387 #[allow(missing_docs)]
8388 pub shares: alloy::sol_types::private::primitives::aliases::U256,
8389 }
8390 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8392 #[derive(Clone)]
8393 pub struct withdrawSharesAsTokensReturn {}
8394 #[allow(
8395 non_camel_case_types,
8396 non_snake_case,
8397 clippy::pub_underscore_fields,
8398 clippy::style
8399 )]
8400 const _: () = {
8401 use alloy::sol_types as alloy_sol_types;
8402 {
8403 #[doc(hidden)]
8404 type UnderlyingSolTuple<'a> = (
8405 alloy::sol_types::sol_data::Address,
8406 alloy::sol_types::sol_data::Address,
8407 alloy::sol_types::sol_data::Address,
8408 alloy::sol_types::sol_data::Uint<256>,
8409 );
8410 #[doc(hidden)]
8411 type UnderlyingRustTuple<'a> = (
8412 alloy::sol_types::private::Address,
8413 alloy::sol_types::private::Address,
8414 alloy::sol_types::private::Address,
8415 alloy::sol_types::private::primitives::aliases::U256,
8416 );
8417 #[cfg(test)]
8418 #[allow(dead_code, unreachable_patterns)]
8419 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8420 match _t {
8421 alloy_sol_types::private::AssertTypeEq::<
8422 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8423 >(_) => {}
8424 }
8425 }
8426 #[automatically_derived]
8427 #[doc(hidden)]
8428 impl ::core::convert::From<withdrawSharesAsTokensCall> for UnderlyingRustTuple<'_> {
8429 fn from(value: withdrawSharesAsTokensCall) -> Self {
8430 (value.staker, value.strategy, value.token, value.shares)
8431 }
8432 }
8433 #[automatically_derived]
8434 #[doc(hidden)]
8435 impl ::core::convert::From<UnderlyingRustTuple<'_>> for withdrawSharesAsTokensCall {
8436 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8437 Self {
8438 staker: tuple.0,
8439 strategy: tuple.1,
8440 token: tuple.2,
8441 shares: tuple.3,
8442 }
8443 }
8444 }
8445 }
8446 {
8447 #[doc(hidden)]
8448 type UnderlyingSolTuple<'a> = ();
8449 #[doc(hidden)]
8450 type UnderlyingRustTuple<'a> = ();
8451 #[cfg(test)]
8452 #[allow(dead_code, unreachable_patterns)]
8453 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
8454 match _t {
8455 alloy_sol_types::private::AssertTypeEq::<
8456 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8457 >(_) => {}
8458 }
8459 }
8460 #[automatically_derived]
8461 #[doc(hidden)]
8462 impl ::core::convert::From<withdrawSharesAsTokensReturn> for UnderlyingRustTuple<'_> {
8463 fn from(value: withdrawSharesAsTokensReturn) -> Self {
8464 ()
8465 }
8466 }
8467 #[automatically_derived]
8468 #[doc(hidden)]
8469 impl ::core::convert::From<UnderlyingRustTuple<'_>> for withdrawSharesAsTokensReturn {
8470 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8471 Self {}
8472 }
8473 }
8474 }
8475 impl withdrawSharesAsTokensReturn {
8476 fn _tokenize(
8477 &self,
8478 ) -> <withdrawSharesAsTokensCall as alloy_sol_types::SolCall>::ReturnToken<'_>
8479 {
8480 ()
8481 }
8482 }
8483 #[automatically_derived]
8484 impl alloy_sol_types::SolCall for withdrawSharesAsTokensCall {
8485 type Parameters<'a> = (
8486 alloy::sol_types::sol_data::Address,
8487 alloy::sol_types::sol_data::Address,
8488 alloy::sol_types::sol_data::Address,
8489 alloy::sol_types::sol_data::Uint<256>,
8490 );
8491 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8492 type Return = withdrawSharesAsTokensReturn;
8493 type ReturnTuple<'a> = ();
8494 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8495 const SIGNATURE: &'static str =
8496 "withdrawSharesAsTokens(address,address,address,uint256)";
8497 const SELECTOR: [u8; 4] = [46u8, 174u8, 65u8, 140u8];
8498 #[inline]
8499 fn new<'a>(
8500 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8501 ) -> Self {
8502 tuple.into()
8503 }
8504 #[inline]
8505 fn tokenize(&self) -> Self::Token<'_> {
8506 (
8507 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8508 &self.staker,
8509 ),
8510 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8511 &self.strategy,
8512 ),
8513 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8514 &self.token,
8515 ),
8516 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
8517 &self.shares,
8518 ),
8519 )
8520 }
8521 #[inline]
8522 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8523 withdrawSharesAsTokensReturn::_tokenize(ret)
8524 }
8525 #[inline]
8526 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8527 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(data)
8528 .map(Into::into)
8529 }
8530 #[inline]
8531 fn abi_decode_returns_validate(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8532 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence_validate(
8533 data,
8534 )
8535 .map(Into::into)
8536 }
8537 }
8538 };
8539 #[derive(serde::Serialize, serde::Deserialize)]
8541 pub enum StrategyManagerCalls {
8542 #[allow(missing_docs)]
8543 DEFAULT_BURN_ADDRESS(DEFAULT_BURN_ADDRESSCall),
8544 #[allow(missing_docs)]
8545 DEPOSIT_TYPEHASH(DEPOSIT_TYPEHASHCall),
8546 #[allow(missing_docs)]
8547 addShares(addSharesCall),
8548 #[allow(missing_docs)]
8549 addStrategiesToDepositWhitelist(addStrategiesToDepositWhitelistCall),
8550 #[allow(missing_docs)]
8551 burnShares(burnSharesCall),
8552 #[allow(missing_docs)]
8553 calculateStrategyDepositDigestHash(calculateStrategyDepositDigestHashCall),
8554 #[allow(missing_docs)]
8555 delegation(delegationCall),
8556 #[allow(missing_docs)]
8557 depositIntoStrategy(depositIntoStrategyCall),
8558 #[allow(missing_docs)]
8559 depositIntoStrategyWithSignature(depositIntoStrategyWithSignatureCall),
8560 #[allow(missing_docs)]
8561 domainSeparator(domainSeparatorCall),
8562 #[allow(missing_docs)]
8563 getBurnableShares(getBurnableSharesCall),
8564 #[allow(missing_docs)]
8565 getDeposits(getDepositsCall),
8566 #[allow(missing_docs)]
8567 getStakerStrategyList(getStakerStrategyListCall),
8568 #[allow(missing_docs)]
8569 getStrategiesWithBurnableShares(getStrategiesWithBurnableSharesCall),
8570 #[allow(missing_docs)]
8571 increaseBurnableShares(increaseBurnableSharesCall),
8572 #[allow(missing_docs)]
8573 initialize(initializeCall),
8574 #[allow(missing_docs)]
8575 nonces(noncesCall),
8576 #[allow(missing_docs)]
8577 owner(ownerCall),
8578 #[allow(missing_docs)]
8579 pause(pauseCall),
8580 #[allow(missing_docs)]
8581 pauseAll(pauseAllCall),
8582 #[allow(missing_docs)]
8583 paused_0(paused_0Call),
8584 #[allow(missing_docs)]
8585 paused_1(paused_1Call),
8586 #[allow(missing_docs)]
8587 pauserRegistry(pauserRegistryCall),
8588 #[allow(missing_docs)]
8589 removeDepositShares(removeDepositSharesCall),
8590 #[allow(missing_docs)]
8591 removeStrategiesFromDepositWhitelist(removeStrategiesFromDepositWhitelistCall),
8592 #[allow(missing_docs)]
8593 renounceOwnership(renounceOwnershipCall),
8594 #[allow(missing_docs)]
8595 setStrategyWhitelister(setStrategyWhitelisterCall),
8596 #[allow(missing_docs)]
8597 stakerDepositShares(stakerDepositSharesCall),
8598 #[allow(missing_docs)]
8599 stakerStrategyList(stakerStrategyListCall),
8600 #[allow(missing_docs)]
8601 stakerStrategyListLength(stakerStrategyListLengthCall),
8602 #[allow(missing_docs)]
8603 strategyIsWhitelistedForDeposit(strategyIsWhitelistedForDepositCall),
8604 #[allow(missing_docs)]
8605 strategyWhitelister(strategyWhitelisterCall),
8606 #[allow(missing_docs)]
8607 transferOwnership(transferOwnershipCall),
8608 #[allow(missing_docs)]
8609 unpause(unpauseCall),
8610 #[allow(missing_docs)]
8611 version(versionCall),
8612 #[allow(missing_docs)]
8613 withdrawSharesAsTokens(withdrawSharesAsTokensCall),
8614 }
8615 #[automatically_derived]
8616 impl StrategyManagerCalls {
8617 pub const SELECTORS: &'static [[u8; 4usize]] = &[
8624 [19u8, 100u8, 57u8, 221u8],
8625 [23u8, 148u8, 187u8, 60u8],
8626 [46u8, 174u8, 65u8, 140u8],
8627 [50u8, 232u8, 154u8, 206u8],
8628 [54u8, 168u8, 197u8, 0u8],
8629 [72u8, 130u8, 94u8, 148u8],
8630 [75u8, 109u8, 93u8, 110u8],
8631 [80u8, 255u8, 114u8, 37u8],
8632 [84u8, 253u8, 77u8, 80u8],
8633 [89u8, 92u8, 106u8, 103u8],
8634 [90u8, 200u8, 106u8, 183u8],
8635 [92u8, 151u8, 90u8, 187u8],
8636 [93u8, 224u8, 143u8, 242u8],
8637 [102u8, 60u8, 29u8, 228u8],
8638 [113u8, 80u8, 24u8, 166u8],
8639 [114u8, 74u8, 244u8, 35u8],
8640 [126u8, 206u8, 190u8, 0u8],
8641 [136u8, 111u8, 17u8, 149u8],
8642 [139u8, 138u8, 172u8, 60u8],
8643 [141u8, 165u8, 203u8, 91u8],
8644 [148u8, 246u8, 73u8, 221u8],
8645 [150u8, 127u8, 192u8, 210u8],
8646 [154u8, 192u8, 29u8, 97u8],
8647 [181u8, 216u8, 181u8, 184u8],
8648 [198u8, 101u8, 103u8, 2u8],
8649 [203u8, 194u8, 189u8, 98u8],
8650 [222u8, 68u8, 172u8, 182u8],
8651 [222u8, 190u8, 30u8, 171u8],
8652 [223u8, 92u8, 247u8, 35u8],
8653 [231u8, 160u8, 80u8, 170u8],
8654 [242u8, 253u8, 227u8, 139u8],
8655 [243u8, 180u8, 160u8, 0u8],
8656 [246u8, 152u8, 218u8, 37u8],
8657 [250u8, 188u8, 28u8, 188u8],
8658 [253u8, 152u8, 4u8, 35u8],
8659 [254u8, 36u8, 58u8, 23u8],
8660 ];
8661 }
8662 #[automatically_derived]
8663 impl alloy_sol_types::SolInterface for StrategyManagerCalls {
8664 const NAME: &'static str = "StrategyManagerCalls";
8665 const MIN_DATA_LENGTH: usize = 0usize;
8666 const COUNT: usize = 36usize;
8667 #[inline]
8668 fn selector(&self) -> [u8; 4] {
8669 match self {
8670 Self::DEFAULT_BURN_ADDRESS(_) => {
8671 <DEFAULT_BURN_ADDRESSCall as alloy_sol_types::SolCall>::SELECTOR
8672 }
8673 Self::DEPOSIT_TYPEHASH(_) => {
8674 <DEPOSIT_TYPEHASHCall as alloy_sol_types::SolCall>::SELECTOR
8675 }
8676 Self::addShares(_) => <addSharesCall as alloy_sol_types::SolCall>::SELECTOR,
8677 Self::addStrategiesToDepositWhitelist(_) => {
8678 <addStrategiesToDepositWhitelistCall as alloy_sol_types::SolCall>::SELECTOR
8679 }
8680 Self::burnShares(_) => <burnSharesCall as alloy_sol_types::SolCall>::SELECTOR,
8681 Self::calculateStrategyDepositDigestHash(_) => {
8682 <calculateStrategyDepositDigestHashCall as alloy_sol_types::SolCall>::SELECTOR
8683 }
8684 Self::delegation(_) => <delegationCall as alloy_sol_types::SolCall>::SELECTOR,
8685 Self::depositIntoStrategy(_) => {
8686 <depositIntoStrategyCall as alloy_sol_types::SolCall>::SELECTOR
8687 }
8688 Self::depositIntoStrategyWithSignature(_) => {
8689 <depositIntoStrategyWithSignatureCall as alloy_sol_types::SolCall>::SELECTOR
8690 }
8691 Self::domainSeparator(_) => {
8692 <domainSeparatorCall as alloy_sol_types::SolCall>::SELECTOR
8693 }
8694 Self::getBurnableShares(_) => {
8695 <getBurnableSharesCall as alloy_sol_types::SolCall>::SELECTOR
8696 }
8697 Self::getDeposits(_) => <getDepositsCall as alloy_sol_types::SolCall>::SELECTOR,
8698 Self::getStakerStrategyList(_) => {
8699 <getStakerStrategyListCall as alloy_sol_types::SolCall>::SELECTOR
8700 }
8701 Self::getStrategiesWithBurnableShares(_) => {
8702 <getStrategiesWithBurnableSharesCall as alloy_sol_types::SolCall>::SELECTOR
8703 }
8704 Self::increaseBurnableShares(_) => {
8705 <increaseBurnableSharesCall as alloy_sol_types::SolCall>::SELECTOR
8706 }
8707 Self::initialize(_) => <initializeCall as alloy_sol_types::SolCall>::SELECTOR,
8708 Self::nonces(_) => <noncesCall as alloy_sol_types::SolCall>::SELECTOR,
8709 Self::owner(_) => <ownerCall as alloy_sol_types::SolCall>::SELECTOR,
8710 Self::pause(_) => <pauseCall as alloy_sol_types::SolCall>::SELECTOR,
8711 Self::pauseAll(_) => <pauseAllCall as alloy_sol_types::SolCall>::SELECTOR,
8712 Self::paused_0(_) => <paused_0Call as alloy_sol_types::SolCall>::SELECTOR,
8713 Self::paused_1(_) => <paused_1Call as alloy_sol_types::SolCall>::SELECTOR,
8714 Self::pauserRegistry(_) => {
8715 <pauserRegistryCall as alloy_sol_types::SolCall>::SELECTOR
8716 }
8717 Self::removeDepositShares(_) => {
8718 <removeDepositSharesCall as alloy_sol_types::SolCall>::SELECTOR
8719 }
8720 Self::removeStrategiesFromDepositWhitelist(_) => {
8721 <removeStrategiesFromDepositWhitelistCall as alloy_sol_types::SolCall>::SELECTOR
8722 }
8723 Self::renounceOwnership(_) => {
8724 <renounceOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
8725 }
8726 Self::setStrategyWhitelister(_) => {
8727 <setStrategyWhitelisterCall as alloy_sol_types::SolCall>::SELECTOR
8728 }
8729 Self::stakerDepositShares(_) => {
8730 <stakerDepositSharesCall as alloy_sol_types::SolCall>::SELECTOR
8731 }
8732 Self::stakerStrategyList(_) => {
8733 <stakerStrategyListCall as alloy_sol_types::SolCall>::SELECTOR
8734 }
8735 Self::stakerStrategyListLength(_) => {
8736 <stakerStrategyListLengthCall as alloy_sol_types::SolCall>::SELECTOR
8737 }
8738 Self::strategyIsWhitelistedForDeposit(_) => {
8739 <strategyIsWhitelistedForDepositCall as alloy_sol_types::SolCall>::SELECTOR
8740 }
8741 Self::strategyWhitelister(_) => {
8742 <strategyWhitelisterCall as alloy_sol_types::SolCall>::SELECTOR
8743 }
8744 Self::transferOwnership(_) => {
8745 <transferOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
8746 }
8747 Self::unpause(_) => <unpauseCall as alloy_sol_types::SolCall>::SELECTOR,
8748 Self::version(_) => <versionCall as alloy_sol_types::SolCall>::SELECTOR,
8749 Self::withdrawSharesAsTokens(_) => {
8750 <withdrawSharesAsTokensCall as alloy_sol_types::SolCall>::SELECTOR
8751 }
8752 }
8753 }
8754 #[inline]
8755 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
8756 Self::SELECTORS.get(i).copied()
8757 }
8758 #[inline]
8759 fn valid_selector(selector: [u8; 4]) -> bool {
8760 Self::SELECTORS.binary_search(&selector).is_ok()
8761 }
8762 #[inline]
8763 #[allow(non_snake_case)]
8764 fn abi_decode_raw(selector: [u8; 4], data: &[u8]) -> alloy_sol_types::Result<Self> {
8765 static DECODE_SHIMS: &[fn(&[u8]) -> alloy_sol_types::Result<StrategyManagerCalls>] = &[
8766 {
8767 fn pause(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
8768 <pauseCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8769 .map(StrategyManagerCalls::pause)
8770 }
8771 pause
8772 },
8773 {
8774 fn initialize(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
8775 <initializeCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8776 .map(StrategyManagerCalls::initialize)
8777 }
8778 initialize
8779 },
8780 {
8781 fn withdrawSharesAsTokens(
8782 data: &[u8],
8783 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8784 <withdrawSharesAsTokensCall as alloy_sol_types::SolCall>::abi_decode_raw(
8785 data,
8786 )
8787 .map(StrategyManagerCalls::withdrawSharesAsTokens)
8788 }
8789 withdrawSharesAsTokens
8790 },
8791 {
8792 fn depositIntoStrategyWithSignature(
8793 data: &[u8],
8794 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8795 <depositIntoStrategyWithSignatureCall as alloy_sol_types::SolCall>::abi_decode_raw(
8796 data,
8797 )
8798 .map(StrategyManagerCalls::depositIntoStrategyWithSignature)
8799 }
8800 depositIntoStrategyWithSignature
8801 },
8802 {
8803 fn getStrategiesWithBurnableShares(
8804 data: &[u8],
8805 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8806 <getStrategiesWithBurnableSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(
8807 data,
8808 )
8809 .map(StrategyManagerCalls::getStrategiesWithBurnableShares)
8810 }
8811 getStrategiesWithBurnableShares
8812 },
8813 {
8814 fn DEPOSIT_TYPEHASH(
8815 data: &[u8],
8816 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8817 <DEPOSIT_TYPEHASHCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8818 .map(StrategyManagerCalls::DEPOSIT_TYPEHASH)
8819 }
8820 DEPOSIT_TYPEHASH
8821 },
8822 {
8823 fn burnShares(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
8824 <burnSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8825 .map(StrategyManagerCalls::burnShares)
8826 }
8827 burnShares
8828 },
8829 {
8830 fn addShares(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
8831 <addSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8832 .map(StrategyManagerCalls::addShares)
8833 }
8834 addShares
8835 },
8836 {
8837 fn version(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
8838 <versionCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8839 .map(StrategyManagerCalls::version)
8840 }
8841 version
8842 },
8843 {
8844 fn pauseAll(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
8845 <pauseAllCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8846 .map(StrategyManagerCalls::pauseAll)
8847 }
8848 pauseAll
8849 },
8850 {
8851 fn paused_0(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
8852 <paused_0Call as alloy_sol_types::SolCall>::abi_decode_raw(data)
8853 .map(StrategyManagerCalls::paused_0)
8854 }
8855 paused_0
8856 },
8857 {
8858 fn paused_1(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
8859 <paused_1Call as alloy_sol_types::SolCall>::abi_decode_raw(data)
8860 .map(StrategyManagerCalls::paused_1)
8861 }
8862 paused_1
8863 },
8864 {
8865 fn addStrategiesToDepositWhitelist(
8866 data: &[u8],
8867 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8868 <addStrategiesToDepositWhitelistCall as alloy_sol_types::SolCall>::abi_decode_raw(
8869 data,
8870 )
8871 .map(StrategyManagerCalls::addStrategiesToDepositWhitelist)
8872 }
8873 addStrategiesToDepositWhitelist
8874 },
8875 {
8876 fn strategyIsWhitelistedForDeposit(
8877 data: &[u8],
8878 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8879 <strategyIsWhitelistedForDepositCall as alloy_sol_types::SolCall>::abi_decode_raw(
8880 data,
8881 )
8882 .map(StrategyManagerCalls::strategyIsWhitelistedForDeposit)
8883 }
8884 strategyIsWhitelistedForDeposit
8885 },
8886 {
8887 fn renounceOwnership(
8888 data: &[u8],
8889 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8890 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8891 .map(StrategyManagerCalls::renounceOwnership)
8892 }
8893 renounceOwnership
8894 },
8895 {
8896 fn removeDepositShares(
8897 data: &[u8],
8898 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8899 <removeDepositSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8900 .map(StrategyManagerCalls::removeDepositShares)
8901 }
8902 removeDepositShares
8903 },
8904 {
8905 fn nonces(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
8906 <noncesCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8907 .map(StrategyManagerCalls::nonces)
8908 }
8909 nonces
8910 },
8911 {
8912 fn pauserRegistry(
8913 data: &[u8],
8914 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8915 <pauserRegistryCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8916 .map(StrategyManagerCalls::pauserRegistry)
8917 }
8918 pauserRegistry
8919 },
8920 {
8921 fn stakerStrategyListLength(
8922 data: &[u8],
8923 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8924 <stakerStrategyListLengthCall as alloy_sol_types::SolCall>::abi_decode_raw(
8925 data,
8926 )
8927 .map(StrategyManagerCalls::stakerStrategyListLength)
8928 }
8929 stakerStrategyListLength
8930 },
8931 {
8932 fn owner(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
8933 <ownerCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8934 .map(StrategyManagerCalls::owner)
8935 }
8936 owner
8937 },
8938 {
8939 fn getDeposits(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
8940 <getDepositsCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8941 .map(StrategyManagerCalls::getDeposits)
8942 }
8943 getDeposits
8944 },
8945 {
8946 fn strategyWhitelister(
8947 data: &[u8],
8948 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8949 <strategyWhitelisterCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8950 .map(StrategyManagerCalls::strategyWhitelister)
8951 }
8952 strategyWhitelister
8953 },
8954 {
8955 fn calculateStrategyDepositDigestHash(
8956 data: &[u8],
8957 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8958 <calculateStrategyDepositDigestHashCall as alloy_sol_types::SolCall>::abi_decode_raw(
8959 data,
8960 )
8961 .map(
8962 StrategyManagerCalls::calculateStrategyDepositDigestHash,
8963 )
8964 }
8965 calculateStrategyDepositDigestHash
8966 },
8967 {
8968 fn removeStrategiesFromDepositWhitelist(
8969 data: &[u8],
8970 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8971 <removeStrategiesFromDepositWhitelistCall as alloy_sol_types::SolCall>::abi_decode_raw(
8972 data,
8973 )
8974 .map(
8975 StrategyManagerCalls::removeStrategiesFromDepositWhitelist,
8976 )
8977 }
8978 removeStrategiesFromDepositWhitelist
8979 },
8980 {
8981 fn setStrategyWhitelister(
8982 data: &[u8],
8983 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8984 <setStrategyWhitelisterCall as alloy_sol_types::SolCall>::abi_decode_raw(
8985 data,
8986 )
8987 .map(StrategyManagerCalls::setStrategyWhitelister)
8988 }
8989 setStrategyWhitelister
8990 },
8991 {
8992 fn stakerStrategyList(
8993 data: &[u8],
8994 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
8995 <stakerStrategyListCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
8996 .map(StrategyManagerCalls::stakerStrategyList)
8997 }
8998 stakerStrategyList
8999 },
9000 {
9001 fn getStakerStrategyList(
9002 data: &[u8],
9003 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9004 <getStakerStrategyListCall as alloy_sol_types::SolCall>::abi_decode_raw(
9005 data,
9006 )
9007 .map(StrategyManagerCalls::getStakerStrategyList)
9008 }
9009 getStakerStrategyList
9010 },
9011 {
9012 fn increaseBurnableShares(
9013 data: &[u8],
9014 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9015 <increaseBurnableSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(
9016 data,
9017 )
9018 .map(StrategyManagerCalls::increaseBurnableShares)
9019 }
9020 increaseBurnableShares
9021 },
9022 {
9023 fn delegation(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9024 <delegationCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
9025 .map(StrategyManagerCalls::delegation)
9026 }
9027 delegation
9028 },
9029 {
9030 fn depositIntoStrategy(
9031 data: &[u8],
9032 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9033 <depositIntoStrategyCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
9034 .map(StrategyManagerCalls::depositIntoStrategy)
9035 }
9036 depositIntoStrategy
9037 },
9038 {
9039 fn transferOwnership(
9040 data: &[u8],
9041 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9042 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
9043 .map(StrategyManagerCalls::transferOwnership)
9044 }
9045 transferOwnership
9046 },
9047 {
9048 fn DEFAULT_BURN_ADDRESS(
9049 data: &[u8],
9050 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9051 <DEFAULT_BURN_ADDRESSCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
9052 .map(StrategyManagerCalls::DEFAULT_BURN_ADDRESS)
9053 }
9054 DEFAULT_BURN_ADDRESS
9055 },
9056 {
9057 fn domainSeparator(
9058 data: &[u8],
9059 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9060 <domainSeparatorCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
9061 .map(StrategyManagerCalls::domainSeparator)
9062 }
9063 domainSeparator
9064 },
9065 {
9066 fn unpause(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9067 <unpauseCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
9068 .map(StrategyManagerCalls::unpause)
9069 }
9070 unpause
9071 },
9072 {
9073 fn getBurnableShares(
9074 data: &[u8],
9075 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9076 <getBurnableSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
9077 .map(StrategyManagerCalls::getBurnableShares)
9078 }
9079 getBurnableShares
9080 },
9081 {
9082 fn stakerDepositShares(
9083 data: &[u8],
9084 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9085 <stakerDepositSharesCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
9086 .map(StrategyManagerCalls::stakerDepositShares)
9087 }
9088 stakerDepositShares
9089 },
9090 ];
9091 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
9092 return Err(alloy_sol_types::Error::unknown_selector(
9093 <Self as alloy_sol_types::SolInterface>::NAME,
9094 selector,
9095 ));
9096 };
9097 DECODE_SHIMS[idx](data)
9098 }
9099 #[inline]
9100 #[allow(non_snake_case)]
9101 fn abi_decode_raw_validate(
9102 selector: [u8; 4],
9103 data: &[u8],
9104 ) -> alloy_sol_types::Result<Self> {
9105 static DECODE_VALIDATE_SHIMS: &[fn(
9106 &[u8],
9107 )
9108 -> alloy_sol_types::Result<StrategyManagerCalls>] = &[
9109 {
9110 fn pause(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9111 <pauseCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9112 .map(StrategyManagerCalls::pause)
9113 }
9114 pause
9115 },
9116 {
9117 fn initialize(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9118 <initializeCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9119 .map(StrategyManagerCalls::initialize)
9120 }
9121 initialize
9122 },
9123 {
9124 fn withdrawSharesAsTokens(
9125 data: &[u8],
9126 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9127 <withdrawSharesAsTokensCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9128 data,
9129 )
9130 .map(StrategyManagerCalls::withdrawSharesAsTokens)
9131 }
9132 withdrawSharesAsTokens
9133 },
9134 {
9135 fn depositIntoStrategyWithSignature(
9136 data: &[u8],
9137 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9138 <depositIntoStrategyWithSignatureCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9139 data,
9140 )
9141 .map(StrategyManagerCalls::depositIntoStrategyWithSignature)
9142 }
9143 depositIntoStrategyWithSignature
9144 },
9145 {
9146 fn getStrategiesWithBurnableShares(
9147 data: &[u8],
9148 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9149 <getStrategiesWithBurnableSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9150 data,
9151 )
9152 .map(StrategyManagerCalls::getStrategiesWithBurnableShares)
9153 }
9154 getStrategiesWithBurnableShares
9155 },
9156 {
9157 fn DEPOSIT_TYPEHASH(
9158 data: &[u8],
9159 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9160 <DEPOSIT_TYPEHASHCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9161 data,
9162 )
9163 .map(StrategyManagerCalls::DEPOSIT_TYPEHASH)
9164 }
9165 DEPOSIT_TYPEHASH
9166 },
9167 {
9168 fn burnShares(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9169 <burnSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9170 .map(StrategyManagerCalls::burnShares)
9171 }
9172 burnShares
9173 },
9174 {
9175 fn addShares(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9176 <addSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9177 .map(StrategyManagerCalls::addShares)
9178 }
9179 addShares
9180 },
9181 {
9182 fn version(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9183 <versionCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9184 .map(StrategyManagerCalls::version)
9185 }
9186 version
9187 },
9188 {
9189 fn pauseAll(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9190 <pauseAllCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9191 .map(StrategyManagerCalls::pauseAll)
9192 }
9193 pauseAll
9194 },
9195 {
9196 fn paused_0(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9197 <paused_0Call as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9198 .map(StrategyManagerCalls::paused_0)
9199 }
9200 paused_0
9201 },
9202 {
9203 fn paused_1(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9204 <paused_1Call as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9205 .map(StrategyManagerCalls::paused_1)
9206 }
9207 paused_1
9208 },
9209 {
9210 fn addStrategiesToDepositWhitelist(
9211 data: &[u8],
9212 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9213 <addStrategiesToDepositWhitelistCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9214 data,
9215 )
9216 .map(StrategyManagerCalls::addStrategiesToDepositWhitelist)
9217 }
9218 addStrategiesToDepositWhitelist
9219 },
9220 {
9221 fn strategyIsWhitelistedForDeposit(
9222 data: &[u8],
9223 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9224 <strategyIsWhitelistedForDepositCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9225 data,
9226 )
9227 .map(StrategyManagerCalls::strategyIsWhitelistedForDeposit)
9228 }
9229 strategyIsWhitelistedForDeposit
9230 },
9231 {
9232 fn renounceOwnership(
9233 data: &[u8],
9234 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9235 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9236 data,
9237 )
9238 .map(StrategyManagerCalls::renounceOwnership)
9239 }
9240 renounceOwnership
9241 },
9242 {
9243 fn removeDepositShares(
9244 data: &[u8],
9245 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9246 <removeDepositSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9247 data,
9248 )
9249 .map(StrategyManagerCalls::removeDepositShares)
9250 }
9251 removeDepositShares
9252 },
9253 {
9254 fn nonces(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9255 <noncesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9256 .map(StrategyManagerCalls::nonces)
9257 }
9258 nonces
9259 },
9260 {
9261 fn pauserRegistry(
9262 data: &[u8],
9263 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9264 <pauserRegistryCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9265 data,
9266 )
9267 .map(StrategyManagerCalls::pauserRegistry)
9268 }
9269 pauserRegistry
9270 },
9271 {
9272 fn stakerStrategyListLength(
9273 data: &[u8],
9274 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9275 <stakerStrategyListLengthCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9276 data,
9277 )
9278 .map(StrategyManagerCalls::stakerStrategyListLength)
9279 }
9280 stakerStrategyListLength
9281 },
9282 {
9283 fn owner(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9284 <ownerCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9285 .map(StrategyManagerCalls::owner)
9286 }
9287 owner
9288 },
9289 {
9290 fn getDeposits(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9291 <getDepositsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9292 .map(StrategyManagerCalls::getDeposits)
9293 }
9294 getDeposits
9295 },
9296 {
9297 fn strategyWhitelister(
9298 data: &[u8],
9299 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9300 <strategyWhitelisterCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9301 data,
9302 )
9303 .map(StrategyManagerCalls::strategyWhitelister)
9304 }
9305 strategyWhitelister
9306 },
9307 {
9308 fn calculateStrategyDepositDigestHash(
9309 data: &[u8],
9310 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9311 <calculateStrategyDepositDigestHashCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9312 data,
9313 )
9314 .map(
9315 StrategyManagerCalls::calculateStrategyDepositDigestHash,
9316 )
9317 }
9318 calculateStrategyDepositDigestHash
9319 },
9320 {
9321 fn removeStrategiesFromDepositWhitelist(
9322 data: &[u8],
9323 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9324 <removeStrategiesFromDepositWhitelistCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9325 data,
9326 )
9327 .map(
9328 StrategyManagerCalls::removeStrategiesFromDepositWhitelist,
9329 )
9330 }
9331 removeStrategiesFromDepositWhitelist
9332 },
9333 {
9334 fn setStrategyWhitelister(
9335 data: &[u8],
9336 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9337 <setStrategyWhitelisterCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9338 data,
9339 )
9340 .map(StrategyManagerCalls::setStrategyWhitelister)
9341 }
9342 setStrategyWhitelister
9343 },
9344 {
9345 fn stakerStrategyList(
9346 data: &[u8],
9347 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9348 <stakerStrategyListCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9349 data,
9350 )
9351 .map(StrategyManagerCalls::stakerStrategyList)
9352 }
9353 stakerStrategyList
9354 },
9355 {
9356 fn getStakerStrategyList(
9357 data: &[u8],
9358 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9359 <getStakerStrategyListCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9360 data,
9361 )
9362 .map(StrategyManagerCalls::getStakerStrategyList)
9363 }
9364 getStakerStrategyList
9365 },
9366 {
9367 fn increaseBurnableShares(
9368 data: &[u8],
9369 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9370 <increaseBurnableSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9371 data,
9372 )
9373 .map(StrategyManagerCalls::increaseBurnableShares)
9374 }
9375 increaseBurnableShares
9376 },
9377 {
9378 fn delegation(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9379 <delegationCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9380 .map(StrategyManagerCalls::delegation)
9381 }
9382 delegation
9383 },
9384 {
9385 fn depositIntoStrategy(
9386 data: &[u8],
9387 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9388 <depositIntoStrategyCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9389 data,
9390 )
9391 .map(StrategyManagerCalls::depositIntoStrategy)
9392 }
9393 depositIntoStrategy
9394 },
9395 {
9396 fn transferOwnership(
9397 data: &[u8],
9398 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9399 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9400 data,
9401 )
9402 .map(StrategyManagerCalls::transferOwnership)
9403 }
9404 transferOwnership
9405 },
9406 {
9407 fn DEFAULT_BURN_ADDRESS(
9408 data: &[u8],
9409 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9410 <DEFAULT_BURN_ADDRESSCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9411 data,
9412 )
9413 .map(StrategyManagerCalls::DEFAULT_BURN_ADDRESS)
9414 }
9415 DEFAULT_BURN_ADDRESS
9416 },
9417 {
9418 fn domainSeparator(
9419 data: &[u8],
9420 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9421 <domainSeparatorCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9422 data,
9423 )
9424 .map(StrategyManagerCalls::domainSeparator)
9425 }
9426 domainSeparator
9427 },
9428 {
9429 fn unpause(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerCalls> {
9430 <unpauseCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(data)
9431 .map(StrategyManagerCalls::unpause)
9432 }
9433 unpause
9434 },
9435 {
9436 fn getBurnableShares(
9437 data: &[u8],
9438 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9439 <getBurnableSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9440 data,
9441 )
9442 .map(StrategyManagerCalls::getBurnableShares)
9443 }
9444 getBurnableShares
9445 },
9446 {
9447 fn stakerDepositShares(
9448 data: &[u8],
9449 ) -> alloy_sol_types::Result<StrategyManagerCalls> {
9450 <stakerDepositSharesCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
9451 data,
9452 )
9453 .map(StrategyManagerCalls::stakerDepositShares)
9454 }
9455 stakerDepositShares
9456 },
9457 ];
9458 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
9459 return Err(alloy_sol_types::Error::unknown_selector(
9460 <Self as alloy_sol_types::SolInterface>::NAME,
9461 selector,
9462 ));
9463 };
9464 DECODE_VALIDATE_SHIMS[idx](data)
9465 }
9466 #[inline]
9467 fn abi_encoded_size(&self) -> usize {
9468 match self {
9469 Self::DEFAULT_BURN_ADDRESS(inner) => {
9470 <DEFAULT_BURN_ADDRESSCall as alloy_sol_types::SolCall>::abi_encoded_size(
9471 inner,
9472 )
9473 }
9474 Self::DEPOSIT_TYPEHASH(inner) => {
9475 <DEPOSIT_TYPEHASHCall as alloy_sol_types::SolCall>::abi_encoded_size(
9476 inner,
9477 )
9478 }
9479 Self::addShares(inner) => {
9480 <addSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9481 }
9482 Self::addStrategiesToDepositWhitelist(inner) => {
9483 <addStrategiesToDepositWhitelistCall as alloy_sol_types::SolCall>::abi_encoded_size(
9484 inner,
9485 )
9486 }
9487 Self::burnShares(inner) => {
9488 <burnSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9489 }
9490 Self::calculateStrategyDepositDigestHash(inner) => {
9491 <calculateStrategyDepositDigestHashCall as alloy_sol_types::SolCall>::abi_encoded_size(
9492 inner,
9493 )
9494 }
9495 Self::delegation(inner) => {
9496 <delegationCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9497 }
9498 Self::depositIntoStrategy(inner) => {
9499 <depositIntoStrategyCall as alloy_sol_types::SolCall>::abi_encoded_size(
9500 inner,
9501 )
9502 }
9503 Self::depositIntoStrategyWithSignature(inner) => {
9504 <depositIntoStrategyWithSignatureCall as alloy_sol_types::SolCall>::abi_encoded_size(
9505 inner,
9506 )
9507 }
9508 Self::domainSeparator(inner) => {
9509 <domainSeparatorCall as alloy_sol_types::SolCall>::abi_encoded_size(
9510 inner,
9511 )
9512 }
9513 Self::getBurnableShares(inner) => {
9514 <getBurnableSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
9515 inner,
9516 )
9517 }
9518 Self::getDeposits(inner) => {
9519 <getDepositsCall as alloy_sol_types::SolCall>::abi_encoded_size(
9520 inner,
9521 )
9522 }
9523 Self::getStakerStrategyList(inner) => {
9524 <getStakerStrategyListCall as alloy_sol_types::SolCall>::abi_encoded_size(
9525 inner,
9526 )
9527 }
9528 Self::getStrategiesWithBurnableShares(inner) => {
9529 <getStrategiesWithBurnableSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
9530 inner,
9531 )
9532 }
9533 Self::increaseBurnableShares(inner) => {
9534 <increaseBurnableSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
9535 inner,
9536 )
9537 }
9538 Self::initialize(inner) => {
9539 <initializeCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9540 }
9541 Self::nonces(inner) => {
9542 <noncesCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9543 }
9544 Self::owner(inner) => {
9545 <ownerCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9546 }
9547 Self::pause(inner) => {
9548 <pauseCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9549 }
9550 Self::pauseAll(inner) => {
9551 <pauseAllCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9552 }
9553 Self::paused_0(inner) => {
9554 <paused_0Call as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9555 }
9556 Self::paused_1(inner) => {
9557 <paused_1Call as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9558 }
9559 Self::pauserRegistry(inner) => {
9560 <pauserRegistryCall as alloy_sol_types::SolCall>::abi_encoded_size(
9561 inner,
9562 )
9563 }
9564 Self::removeDepositShares(inner) => {
9565 <removeDepositSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
9566 inner,
9567 )
9568 }
9569 Self::removeStrategiesFromDepositWhitelist(inner) => {
9570 <removeStrategiesFromDepositWhitelistCall as alloy_sol_types::SolCall>::abi_encoded_size(
9571 inner,
9572 )
9573 }
9574 Self::renounceOwnership(inner) => {
9575 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(
9576 inner,
9577 )
9578 }
9579 Self::setStrategyWhitelister(inner) => {
9580 <setStrategyWhitelisterCall as alloy_sol_types::SolCall>::abi_encoded_size(
9581 inner,
9582 )
9583 }
9584 Self::stakerDepositShares(inner) => {
9585 <stakerDepositSharesCall as alloy_sol_types::SolCall>::abi_encoded_size(
9586 inner,
9587 )
9588 }
9589 Self::stakerStrategyList(inner) => {
9590 <stakerStrategyListCall as alloy_sol_types::SolCall>::abi_encoded_size(
9591 inner,
9592 )
9593 }
9594 Self::stakerStrategyListLength(inner) => {
9595 <stakerStrategyListLengthCall as alloy_sol_types::SolCall>::abi_encoded_size(
9596 inner,
9597 )
9598 }
9599 Self::strategyIsWhitelistedForDeposit(inner) => {
9600 <strategyIsWhitelistedForDepositCall as alloy_sol_types::SolCall>::abi_encoded_size(
9601 inner,
9602 )
9603 }
9604 Self::strategyWhitelister(inner) => {
9605 <strategyWhitelisterCall as alloy_sol_types::SolCall>::abi_encoded_size(
9606 inner,
9607 )
9608 }
9609 Self::transferOwnership(inner) => {
9610 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(
9611 inner,
9612 )
9613 }
9614 Self::unpause(inner) => {
9615 <unpauseCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9616 }
9617 Self::version(inner) => {
9618 <versionCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
9619 }
9620 Self::withdrawSharesAsTokens(inner) => {
9621 <withdrawSharesAsTokensCall as alloy_sol_types::SolCall>::abi_encoded_size(
9622 inner,
9623 )
9624 }
9625 }
9626 }
9627 #[inline]
9628 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
9629 match self {
9630 Self::DEFAULT_BURN_ADDRESS(inner) => {
9631 <DEFAULT_BURN_ADDRESSCall as alloy_sol_types::SolCall>::abi_encode_raw(
9632 inner,
9633 out,
9634 )
9635 }
9636 Self::DEPOSIT_TYPEHASH(inner) => {
9637 <DEPOSIT_TYPEHASHCall as alloy_sol_types::SolCall>::abi_encode_raw(
9638 inner,
9639 out,
9640 )
9641 }
9642 Self::addShares(inner) => {
9643 <addSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
9644 inner,
9645 out,
9646 )
9647 }
9648 Self::addStrategiesToDepositWhitelist(inner) => {
9649 <addStrategiesToDepositWhitelistCall as alloy_sol_types::SolCall>::abi_encode_raw(
9650 inner,
9651 out,
9652 )
9653 }
9654 Self::burnShares(inner) => {
9655 <burnSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
9656 inner,
9657 out,
9658 )
9659 }
9660 Self::calculateStrategyDepositDigestHash(inner) => {
9661 <calculateStrategyDepositDigestHashCall as alloy_sol_types::SolCall>::abi_encode_raw(
9662 inner,
9663 out,
9664 )
9665 }
9666 Self::delegation(inner) => {
9667 <delegationCall as alloy_sol_types::SolCall>::abi_encode_raw(
9668 inner,
9669 out,
9670 )
9671 }
9672 Self::depositIntoStrategy(inner) => {
9673 <depositIntoStrategyCall as alloy_sol_types::SolCall>::abi_encode_raw(
9674 inner,
9675 out,
9676 )
9677 }
9678 Self::depositIntoStrategyWithSignature(inner) => {
9679 <depositIntoStrategyWithSignatureCall as alloy_sol_types::SolCall>::abi_encode_raw(
9680 inner,
9681 out,
9682 )
9683 }
9684 Self::domainSeparator(inner) => {
9685 <domainSeparatorCall as alloy_sol_types::SolCall>::abi_encode_raw(
9686 inner,
9687 out,
9688 )
9689 }
9690 Self::getBurnableShares(inner) => {
9691 <getBurnableSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
9692 inner,
9693 out,
9694 )
9695 }
9696 Self::getDeposits(inner) => {
9697 <getDepositsCall as alloy_sol_types::SolCall>::abi_encode_raw(
9698 inner,
9699 out,
9700 )
9701 }
9702 Self::getStakerStrategyList(inner) => {
9703 <getStakerStrategyListCall as alloy_sol_types::SolCall>::abi_encode_raw(
9704 inner,
9705 out,
9706 )
9707 }
9708 Self::getStrategiesWithBurnableShares(inner) => {
9709 <getStrategiesWithBurnableSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
9710 inner,
9711 out,
9712 )
9713 }
9714 Self::increaseBurnableShares(inner) => {
9715 <increaseBurnableSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
9716 inner,
9717 out,
9718 )
9719 }
9720 Self::initialize(inner) => {
9721 <initializeCall as alloy_sol_types::SolCall>::abi_encode_raw(
9722 inner,
9723 out,
9724 )
9725 }
9726 Self::nonces(inner) => {
9727 <noncesCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9728 }
9729 Self::owner(inner) => {
9730 <ownerCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9731 }
9732 Self::pause(inner) => {
9733 <pauseCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9734 }
9735 Self::pauseAll(inner) => {
9736 <pauseAllCall as alloy_sol_types::SolCall>::abi_encode_raw(
9737 inner,
9738 out,
9739 )
9740 }
9741 Self::paused_0(inner) => {
9742 <paused_0Call as alloy_sol_types::SolCall>::abi_encode_raw(
9743 inner,
9744 out,
9745 )
9746 }
9747 Self::paused_1(inner) => {
9748 <paused_1Call as alloy_sol_types::SolCall>::abi_encode_raw(
9749 inner,
9750 out,
9751 )
9752 }
9753 Self::pauserRegistry(inner) => {
9754 <pauserRegistryCall as alloy_sol_types::SolCall>::abi_encode_raw(
9755 inner,
9756 out,
9757 )
9758 }
9759 Self::removeDepositShares(inner) => {
9760 <removeDepositSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
9761 inner,
9762 out,
9763 )
9764 }
9765 Self::removeStrategiesFromDepositWhitelist(inner) => {
9766 <removeStrategiesFromDepositWhitelistCall as alloy_sol_types::SolCall>::abi_encode_raw(
9767 inner,
9768 out,
9769 )
9770 }
9771 Self::renounceOwnership(inner) => {
9772 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(
9773 inner,
9774 out,
9775 )
9776 }
9777 Self::setStrategyWhitelister(inner) => {
9778 <setStrategyWhitelisterCall as alloy_sol_types::SolCall>::abi_encode_raw(
9779 inner,
9780 out,
9781 )
9782 }
9783 Self::stakerDepositShares(inner) => {
9784 <stakerDepositSharesCall as alloy_sol_types::SolCall>::abi_encode_raw(
9785 inner,
9786 out,
9787 )
9788 }
9789 Self::stakerStrategyList(inner) => {
9790 <stakerStrategyListCall as alloy_sol_types::SolCall>::abi_encode_raw(
9791 inner,
9792 out,
9793 )
9794 }
9795 Self::stakerStrategyListLength(inner) => {
9796 <stakerStrategyListLengthCall as alloy_sol_types::SolCall>::abi_encode_raw(
9797 inner,
9798 out,
9799 )
9800 }
9801 Self::strategyIsWhitelistedForDeposit(inner) => {
9802 <strategyIsWhitelistedForDepositCall as alloy_sol_types::SolCall>::abi_encode_raw(
9803 inner,
9804 out,
9805 )
9806 }
9807 Self::strategyWhitelister(inner) => {
9808 <strategyWhitelisterCall as alloy_sol_types::SolCall>::abi_encode_raw(
9809 inner,
9810 out,
9811 )
9812 }
9813 Self::transferOwnership(inner) => {
9814 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(
9815 inner,
9816 out,
9817 )
9818 }
9819 Self::unpause(inner) => {
9820 <unpauseCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9821 }
9822 Self::version(inner) => {
9823 <versionCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
9824 }
9825 Self::withdrawSharesAsTokens(inner) => {
9826 <withdrawSharesAsTokensCall as alloy_sol_types::SolCall>::abi_encode_raw(
9827 inner,
9828 out,
9829 )
9830 }
9831 }
9832 }
9833 }
9834 #[derive(serde::Serialize, serde::Deserialize, Debug, PartialEq, Eq, Hash)]
9836 pub enum StrategyManagerErrors {
9837 #[allow(missing_docs)]
9838 CurrentlyPaused(CurrentlyPaused),
9839 #[allow(missing_docs)]
9840 InputAddressZero(InputAddressZero),
9841 #[allow(missing_docs)]
9842 InvalidNewPausedStatus(InvalidNewPausedStatus),
9843 #[allow(missing_docs)]
9844 InvalidShortString(InvalidShortString),
9845 #[allow(missing_docs)]
9846 InvalidSignature(InvalidSignature),
9847 #[allow(missing_docs)]
9848 MaxStrategiesExceeded(MaxStrategiesExceeded),
9849 #[allow(missing_docs)]
9850 OnlyDelegationManager(OnlyDelegationManager),
9851 #[allow(missing_docs)]
9852 OnlyPauser(OnlyPauser),
9853 #[allow(missing_docs)]
9854 OnlyStrategyWhitelister(OnlyStrategyWhitelister),
9855 #[allow(missing_docs)]
9856 OnlyUnpauser(OnlyUnpauser),
9857 #[allow(missing_docs)]
9858 SharesAmountTooHigh(SharesAmountTooHigh),
9859 #[allow(missing_docs)]
9860 SharesAmountZero(SharesAmountZero),
9861 #[allow(missing_docs)]
9862 SignatureExpired(SignatureExpired),
9863 #[allow(missing_docs)]
9864 StakerAddressZero(StakerAddressZero),
9865 #[allow(missing_docs)]
9866 StrategyNotFound(StrategyNotFound),
9867 #[allow(missing_docs)]
9868 StrategyNotWhitelisted(StrategyNotWhitelisted),
9869 #[allow(missing_docs)]
9870 StringTooLong(StringTooLong),
9871 }
9872 #[automatically_derived]
9873 impl StrategyManagerErrors {
9874 pub const SELECTORS: &'static [[u8; 4usize]] = &[
9881 [8u8, 25u8, 189u8, 205u8],
9882 [13u8, 10u8, 33u8, 200u8],
9883 [22u8, 242u8, 204u8, 201u8],
9884 [48u8, 90u8, 39u8, 169u8],
9885 [75u8, 24u8, 177u8, 147u8],
9886 [91u8, 226u8, 180u8, 130u8],
9887 [93u8, 251u8, 44u8, 162u8],
9888 [115u8, 99u8, 33u8, 118u8],
9889 [117u8, 223u8, 81u8, 220u8],
9890 [121u8, 72u8, 33u8, 255u8],
9891 [130u8, 232u8, 255u8, 228u8],
9892 [132u8, 10u8, 72u8, 213u8],
9893 [132u8, 12u8, 54u8, 74u8],
9894 [139u8, 170u8, 87u8, 159u8],
9895 [179u8, 81u8, 43u8, 12u8],
9896 [198u8, 29u8, 202u8, 93u8],
9897 [247u8, 57u8, 88u8, 155u8],
9898 ];
9899 }
9900 #[automatically_derived]
9901 impl alloy_sol_types::SolInterface for StrategyManagerErrors {
9902 const NAME: &'static str = "StrategyManagerErrors";
9903 const MIN_DATA_LENGTH: usize = 0usize;
9904 const COUNT: usize = 17usize;
9905 #[inline]
9906 fn selector(&self) -> [u8; 4] {
9907 match self {
9908 Self::CurrentlyPaused(_) => {
9909 <CurrentlyPaused as alloy_sol_types::SolError>::SELECTOR
9910 }
9911 Self::InputAddressZero(_) => {
9912 <InputAddressZero as alloy_sol_types::SolError>::SELECTOR
9913 }
9914 Self::InvalidNewPausedStatus(_) => {
9915 <InvalidNewPausedStatus as alloy_sol_types::SolError>::SELECTOR
9916 }
9917 Self::InvalidShortString(_) => {
9918 <InvalidShortString as alloy_sol_types::SolError>::SELECTOR
9919 }
9920 Self::InvalidSignature(_) => {
9921 <InvalidSignature as alloy_sol_types::SolError>::SELECTOR
9922 }
9923 Self::MaxStrategiesExceeded(_) => {
9924 <MaxStrategiesExceeded as alloy_sol_types::SolError>::SELECTOR
9925 }
9926 Self::OnlyDelegationManager(_) => {
9927 <OnlyDelegationManager as alloy_sol_types::SolError>::SELECTOR
9928 }
9929 Self::OnlyPauser(_) => <OnlyPauser as alloy_sol_types::SolError>::SELECTOR,
9930 Self::OnlyStrategyWhitelister(_) => {
9931 <OnlyStrategyWhitelister as alloy_sol_types::SolError>::SELECTOR
9932 }
9933 Self::OnlyUnpauser(_) => <OnlyUnpauser as alloy_sol_types::SolError>::SELECTOR,
9934 Self::SharesAmountTooHigh(_) => {
9935 <SharesAmountTooHigh as alloy_sol_types::SolError>::SELECTOR
9936 }
9937 Self::SharesAmountZero(_) => {
9938 <SharesAmountZero as alloy_sol_types::SolError>::SELECTOR
9939 }
9940 Self::SignatureExpired(_) => {
9941 <SignatureExpired as alloy_sol_types::SolError>::SELECTOR
9942 }
9943 Self::StakerAddressZero(_) => {
9944 <StakerAddressZero as alloy_sol_types::SolError>::SELECTOR
9945 }
9946 Self::StrategyNotFound(_) => {
9947 <StrategyNotFound as alloy_sol_types::SolError>::SELECTOR
9948 }
9949 Self::StrategyNotWhitelisted(_) => {
9950 <StrategyNotWhitelisted as alloy_sol_types::SolError>::SELECTOR
9951 }
9952 Self::StringTooLong(_) => <StringTooLong as alloy_sol_types::SolError>::SELECTOR,
9953 }
9954 }
9955 #[inline]
9956 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
9957 Self::SELECTORS.get(i).copied()
9958 }
9959 #[inline]
9960 fn valid_selector(selector: [u8; 4]) -> bool {
9961 Self::SELECTORS.binary_search(&selector).is_ok()
9962 }
9963 #[inline]
9964 #[allow(non_snake_case)]
9965 fn abi_decode_raw(selector: [u8; 4], data: &[u8]) -> alloy_sol_types::Result<Self> {
9966 static DECODE_SHIMS: &[fn(&[u8]) -> alloy_sol_types::Result<StrategyManagerErrors>] = &[
9967 {
9968 fn SignatureExpired(
9969 data: &[u8],
9970 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
9971 <SignatureExpired as alloy_sol_types::SolError>::abi_decode_raw(data)
9972 .map(StrategyManagerErrors::SignatureExpired)
9973 }
9974 SignatureExpired
9975 },
9976 {
9977 fn MaxStrategiesExceeded(
9978 data: &[u8],
9979 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
9980 <MaxStrategiesExceeded as alloy_sol_types::SolError>::abi_decode_raw(data)
9981 .map(StrategyManagerErrors::MaxStrategiesExceeded)
9982 }
9983 MaxStrategiesExceeded
9984 },
9985 {
9986 fn StakerAddressZero(
9987 data: &[u8],
9988 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
9989 <StakerAddressZero as alloy_sol_types::SolError>::abi_decode_raw(data)
9990 .map(StrategyManagerErrors::StakerAddressZero)
9991 }
9992 StakerAddressZero
9993 },
9994 {
9995 fn StringTooLong(
9996 data: &[u8],
9997 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
9998 <StringTooLong as alloy_sol_types::SolError>::abi_decode_raw(data)
9999 .map(StrategyManagerErrors::StringTooLong)
10000 }
10001 StringTooLong
10002 },
10003 {
10004 fn SharesAmountTooHigh(
10005 data: &[u8],
10006 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10007 <SharesAmountTooHigh as alloy_sol_types::SolError>::abi_decode_raw(data)
10008 .map(StrategyManagerErrors::SharesAmountTooHigh)
10009 }
10010 SharesAmountTooHigh
10011 },
10012 {
10013 fn StrategyNotFound(
10014 data: &[u8],
10015 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10016 <StrategyNotFound as alloy_sol_types::SolError>::abi_decode_raw(data)
10017 .map(StrategyManagerErrors::StrategyNotFound)
10018 }
10019 StrategyNotFound
10020 },
10021 {
10022 fn StrategyNotWhitelisted(
10023 data: &[u8],
10024 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10025 <StrategyNotWhitelisted as alloy_sol_types::SolError>::abi_decode_raw(data)
10026 .map(StrategyManagerErrors::StrategyNotWhitelisted)
10027 }
10028 StrategyNotWhitelisted
10029 },
10030 {
10031 fn InputAddressZero(
10032 data: &[u8],
10033 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10034 <InputAddressZero as alloy_sol_types::SolError>::abi_decode_raw(data)
10035 .map(StrategyManagerErrors::InputAddressZero)
10036 }
10037 InputAddressZero
10038 },
10039 {
10040 fn OnlyPauser(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerErrors> {
10041 <OnlyPauser as alloy_sol_types::SolError>::abi_decode_raw(data)
10042 .map(StrategyManagerErrors::OnlyPauser)
10043 }
10044 OnlyPauser
10045 },
10046 {
10047 fn OnlyUnpauser(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerErrors> {
10048 <OnlyUnpauser as alloy_sol_types::SolError>::abi_decode_raw(data)
10049 .map(StrategyManagerErrors::OnlyUnpauser)
10050 }
10051 OnlyUnpauser
10052 },
10053 {
10054 fn OnlyStrategyWhitelister(
10055 data: &[u8],
10056 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10057 <OnlyStrategyWhitelister as alloy_sol_types::SolError>::abi_decode_raw(data)
10058 .map(StrategyManagerErrors::OnlyStrategyWhitelister)
10059 }
10060 OnlyStrategyWhitelister
10061 },
10062 {
10063 fn CurrentlyPaused(
10064 data: &[u8],
10065 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10066 <CurrentlyPaused as alloy_sol_types::SolError>::abi_decode_raw(data)
10067 .map(StrategyManagerErrors::CurrentlyPaused)
10068 }
10069 CurrentlyPaused
10070 },
10071 {
10072 fn SharesAmountZero(
10073 data: &[u8],
10074 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10075 <SharesAmountZero as alloy_sol_types::SolError>::abi_decode_raw(data)
10076 .map(StrategyManagerErrors::SharesAmountZero)
10077 }
10078 SharesAmountZero
10079 },
10080 {
10081 fn InvalidSignature(
10082 data: &[u8],
10083 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10084 <InvalidSignature as alloy_sol_types::SolError>::abi_decode_raw(data)
10085 .map(StrategyManagerErrors::InvalidSignature)
10086 }
10087 InvalidSignature
10088 },
10089 {
10090 fn InvalidShortString(
10091 data: &[u8],
10092 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10093 <InvalidShortString as alloy_sol_types::SolError>::abi_decode_raw(data)
10094 .map(StrategyManagerErrors::InvalidShortString)
10095 }
10096 InvalidShortString
10097 },
10098 {
10099 fn InvalidNewPausedStatus(
10100 data: &[u8],
10101 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10102 <InvalidNewPausedStatus as alloy_sol_types::SolError>::abi_decode_raw(data)
10103 .map(StrategyManagerErrors::InvalidNewPausedStatus)
10104 }
10105 InvalidNewPausedStatus
10106 },
10107 {
10108 fn OnlyDelegationManager(
10109 data: &[u8],
10110 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10111 <OnlyDelegationManager as alloy_sol_types::SolError>::abi_decode_raw(data)
10112 .map(StrategyManagerErrors::OnlyDelegationManager)
10113 }
10114 OnlyDelegationManager
10115 },
10116 ];
10117 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
10118 return Err(alloy_sol_types::Error::unknown_selector(
10119 <Self as alloy_sol_types::SolInterface>::NAME,
10120 selector,
10121 ));
10122 };
10123 DECODE_SHIMS[idx](data)
10124 }
10125 #[inline]
10126 #[allow(non_snake_case)]
10127 fn abi_decode_raw_validate(
10128 selector: [u8; 4],
10129 data: &[u8],
10130 ) -> alloy_sol_types::Result<Self> {
10131 static DECODE_VALIDATE_SHIMS: &[fn(
10132 &[u8],
10133 ) -> alloy_sol_types::Result<
10134 StrategyManagerErrors,
10135 >] = &[
10136 {
10137 fn SignatureExpired(
10138 data: &[u8],
10139 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10140 <SignatureExpired as alloy_sol_types::SolError>::abi_decode_raw_validate(
10141 data,
10142 )
10143 .map(StrategyManagerErrors::SignatureExpired)
10144 }
10145 SignatureExpired
10146 },
10147 {
10148 fn MaxStrategiesExceeded(
10149 data: &[u8],
10150 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10151 <MaxStrategiesExceeded as alloy_sol_types::SolError>::abi_decode_raw_validate(
10152 data,
10153 )
10154 .map(StrategyManagerErrors::MaxStrategiesExceeded)
10155 }
10156 MaxStrategiesExceeded
10157 },
10158 {
10159 fn StakerAddressZero(
10160 data: &[u8],
10161 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10162 <StakerAddressZero as alloy_sol_types::SolError>::abi_decode_raw_validate(
10163 data,
10164 )
10165 .map(StrategyManagerErrors::StakerAddressZero)
10166 }
10167 StakerAddressZero
10168 },
10169 {
10170 fn StringTooLong(
10171 data: &[u8],
10172 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10173 <StringTooLong as alloy_sol_types::SolError>::abi_decode_raw_validate(data)
10174 .map(StrategyManagerErrors::StringTooLong)
10175 }
10176 StringTooLong
10177 },
10178 {
10179 fn SharesAmountTooHigh(
10180 data: &[u8],
10181 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10182 <SharesAmountTooHigh as alloy_sol_types::SolError>::abi_decode_raw_validate(
10183 data,
10184 )
10185 .map(StrategyManagerErrors::SharesAmountTooHigh)
10186 }
10187 SharesAmountTooHigh
10188 },
10189 {
10190 fn StrategyNotFound(
10191 data: &[u8],
10192 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10193 <StrategyNotFound as alloy_sol_types::SolError>::abi_decode_raw_validate(
10194 data,
10195 )
10196 .map(StrategyManagerErrors::StrategyNotFound)
10197 }
10198 StrategyNotFound
10199 },
10200 {
10201 fn StrategyNotWhitelisted(
10202 data: &[u8],
10203 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10204 <StrategyNotWhitelisted as alloy_sol_types::SolError>::abi_decode_raw_validate(
10205 data,
10206 )
10207 .map(StrategyManagerErrors::StrategyNotWhitelisted)
10208 }
10209 StrategyNotWhitelisted
10210 },
10211 {
10212 fn InputAddressZero(
10213 data: &[u8],
10214 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10215 <InputAddressZero as alloy_sol_types::SolError>::abi_decode_raw_validate(
10216 data,
10217 )
10218 .map(StrategyManagerErrors::InputAddressZero)
10219 }
10220 InputAddressZero
10221 },
10222 {
10223 fn OnlyPauser(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerErrors> {
10224 <OnlyPauser as alloy_sol_types::SolError>::abi_decode_raw_validate(data)
10225 .map(StrategyManagerErrors::OnlyPauser)
10226 }
10227 OnlyPauser
10228 },
10229 {
10230 fn OnlyUnpauser(data: &[u8]) -> alloy_sol_types::Result<StrategyManagerErrors> {
10231 <OnlyUnpauser as alloy_sol_types::SolError>::abi_decode_raw_validate(data)
10232 .map(StrategyManagerErrors::OnlyUnpauser)
10233 }
10234 OnlyUnpauser
10235 },
10236 {
10237 fn OnlyStrategyWhitelister(
10238 data: &[u8],
10239 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10240 <OnlyStrategyWhitelister as alloy_sol_types::SolError>::abi_decode_raw_validate(
10241 data,
10242 )
10243 .map(StrategyManagerErrors::OnlyStrategyWhitelister)
10244 }
10245 OnlyStrategyWhitelister
10246 },
10247 {
10248 fn CurrentlyPaused(
10249 data: &[u8],
10250 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10251 <CurrentlyPaused as alloy_sol_types::SolError>::abi_decode_raw_validate(
10252 data,
10253 )
10254 .map(StrategyManagerErrors::CurrentlyPaused)
10255 }
10256 CurrentlyPaused
10257 },
10258 {
10259 fn SharesAmountZero(
10260 data: &[u8],
10261 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10262 <SharesAmountZero as alloy_sol_types::SolError>::abi_decode_raw_validate(
10263 data,
10264 )
10265 .map(StrategyManagerErrors::SharesAmountZero)
10266 }
10267 SharesAmountZero
10268 },
10269 {
10270 fn InvalidSignature(
10271 data: &[u8],
10272 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10273 <InvalidSignature as alloy_sol_types::SolError>::abi_decode_raw_validate(
10274 data,
10275 )
10276 .map(StrategyManagerErrors::InvalidSignature)
10277 }
10278 InvalidSignature
10279 },
10280 {
10281 fn InvalidShortString(
10282 data: &[u8],
10283 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10284 <InvalidShortString as alloy_sol_types::SolError>::abi_decode_raw_validate(
10285 data,
10286 )
10287 .map(StrategyManagerErrors::InvalidShortString)
10288 }
10289 InvalidShortString
10290 },
10291 {
10292 fn InvalidNewPausedStatus(
10293 data: &[u8],
10294 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10295 <InvalidNewPausedStatus as alloy_sol_types::SolError>::abi_decode_raw_validate(
10296 data,
10297 )
10298 .map(StrategyManagerErrors::InvalidNewPausedStatus)
10299 }
10300 InvalidNewPausedStatus
10301 },
10302 {
10303 fn OnlyDelegationManager(
10304 data: &[u8],
10305 ) -> alloy_sol_types::Result<StrategyManagerErrors> {
10306 <OnlyDelegationManager as alloy_sol_types::SolError>::abi_decode_raw_validate(
10307 data,
10308 )
10309 .map(StrategyManagerErrors::OnlyDelegationManager)
10310 }
10311 OnlyDelegationManager
10312 },
10313 ];
10314 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
10315 return Err(alloy_sol_types::Error::unknown_selector(
10316 <Self as alloy_sol_types::SolInterface>::NAME,
10317 selector,
10318 ));
10319 };
10320 DECODE_VALIDATE_SHIMS[idx](data)
10321 }
10322 #[inline]
10323 fn abi_encoded_size(&self) -> usize {
10324 match self {
10325 Self::CurrentlyPaused(inner) => {
10326 <CurrentlyPaused as alloy_sol_types::SolError>::abi_encoded_size(inner)
10327 }
10328 Self::InputAddressZero(inner) => {
10329 <InputAddressZero as alloy_sol_types::SolError>::abi_encoded_size(inner)
10330 }
10331 Self::InvalidNewPausedStatus(inner) => {
10332 <InvalidNewPausedStatus as alloy_sol_types::SolError>::abi_encoded_size(inner)
10333 }
10334 Self::InvalidShortString(inner) => {
10335 <InvalidShortString as alloy_sol_types::SolError>::abi_encoded_size(inner)
10336 }
10337 Self::InvalidSignature(inner) => {
10338 <InvalidSignature as alloy_sol_types::SolError>::abi_encoded_size(inner)
10339 }
10340 Self::MaxStrategiesExceeded(inner) => {
10341 <MaxStrategiesExceeded as alloy_sol_types::SolError>::abi_encoded_size(inner)
10342 }
10343 Self::OnlyDelegationManager(inner) => {
10344 <OnlyDelegationManager as alloy_sol_types::SolError>::abi_encoded_size(inner)
10345 }
10346 Self::OnlyPauser(inner) => {
10347 <OnlyPauser as alloy_sol_types::SolError>::abi_encoded_size(inner)
10348 }
10349 Self::OnlyStrategyWhitelister(inner) => {
10350 <OnlyStrategyWhitelister as alloy_sol_types::SolError>::abi_encoded_size(inner)
10351 }
10352 Self::OnlyUnpauser(inner) => {
10353 <OnlyUnpauser as alloy_sol_types::SolError>::abi_encoded_size(inner)
10354 }
10355 Self::SharesAmountTooHigh(inner) => {
10356 <SharesAmountTooHigh as alloy_sol_types::SolError>::abi_encoded_size(inner)
10357 }
10358 Self::SharesAmountZero(inner) => {
10359 <SharesAmountZero as alloy_sol_types::SolError>::abi_encoded_size(inner)
10360 }
10361 Self::SignatureExpired(inner) => {
10362 <SignatureExpired as alloy_sol_types::SolError>::abi_encoded_size(inner)
10363 }
10364 Self::StakerAddressZero(inner) => {
10365 <StakerAddressZero as alloy_sol_types::SolError>::abi_encoded_size(inner)
10366 }
10367 Self::StrategyNotFound(inner) => {
10368 <StrategyNotFound as alloy_sol_types::SolError>::abi_encoded_size(inner)
10369 }
10370 Self::StrategyNotWhitelisted(inner) => {
10371 <StrategyNotWhitelisted as alloy_sol_types::SolError>::abi_encoded_size(inner)
10372 }
10373 Self::StringTooLong(inner) => {
10374 <StringTooLong as alloy_sol_types::SolError>::abi_encoded_size(inner)
10375 }
10376 }
10377 }
10378 #[inline]
10379 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
10380 match self {
10381 Self::CurrentlyPaused(inner) => {
10382 <CurrentlyPaused as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10383 }
10384 Self::InputAddressZero(inner) => {
10385 <InputAddressZero as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10386 }
10387 Self::InvalidNewPausedStatus(inner) => {
10388 <InvalidNewPausedStatus as alloy_sol_types::SolError>::abi_encode_raw(
10389 inner, out,
10390 )
10391 }
10392 Self::InvalidShortString(inner) => {
10393 <InvalidShortString as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10394 }
10395 Self::InvalidSignature(inner) => {
10396 <InvalidSignature as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10397 }
10398 Self::MaxStrategiesExceeded(inner) => {
10399 <MaxStrategiesExceeded as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10400 }
10401 Self::OnlyDelegationManager(inner) => {
10402 <OnlyDelegationManager as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10403 }
10404 Self::OnlyPauser(inner) => {
10405 <OnlyPauser as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10406 }
10407 Self::OnlyStrategyWhitelister(inner) => {
10408 <OnlyStrategyWhitelister as alloy_sol_types::SolError>::abi_encode_raw(
10409 inner, out,
10410 )
10411 }
10412 Self::OnlyUnpauser(inner) => {
10413 <OnlyUnpauser as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10414 }
10415 Self::SharesAmountTooHigh(inner) => {
10416 <SharesAmountTooHigh as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10417 }
10418 Self::SharesAmountZero(inner) => {
10419 <SharesAmountZero as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10420 }
10421 Self::SignatureExpired(inner) => {
10422 <SignatureExpired as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10423 }
10424 Self::StakerAddressZero(inner) => {
10425 <StakerAddressZero as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10426 }
10427 Self::StrategyNotFound(inner) => {
10428 <StrategyNotFound as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10429 }
10430 Self::StrategyNotWhitelisted(inner) => {
10431 <StrategyNotWhitelisted as alloy_sol_types::SolError>::abi_encode_raw(
10432 inner, out,
10433 )
10434 }
10435 Self::StringTooLong(inner) => {
10436 <StringTooLong as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
10437 }
10438 }
10439 }
10440 }
10441 #[derive(serde::Serialize, serde::Deserialize, Debug, PartialEq, Eq, Hash)]
10443 pub enum StrategyManagerEvents {
10444 #[allow(missing_docs)]
10445 BurnableSharesDecreased(BurnableSharesDecreased),
10446 #[allow(missing_docs)]
10447 BurnableSharesIncreased(BurnableSharesIncreased),
10448 #[allow(missing_docs)]
10449 Deposit(Deposit),
10450 #[allow(missing_docs)]
10451 Initialized(Initialized),
10452 #[allow(missing_docs)]
10453 OwnershipTransferred(OwnershipTransferred),
10454 #[allow(missing_docs)]
10455 Paused(Paused),
10456 #[allow(missing_docs)]
10457 StrategyAddedToDepositWhitelist(StrategyAddedToDepositWhitelist),
10458 #[allow(missing_docs)]
10459 StrategyRemovedFromDepositWhitelist(StrategyRemovedFromDepositWhitelist),
10460 #[allow(missing_docs)]
10461 StrategyWhitelisterChanged(StrategyWhitelisterChanged),
10462 #[allow(missing_docs)]
10463 Unpaused(Unpaused),
10464 }
10465 #[automatically_derived]
10466 impl StrategyManagerEvents {
10467 pub const SELECTORS: &'static [[u8; 32usize]] = &[
10474 [
10475 12u8, 53u8, 177u8, 125u8, 145u8, 201u8, 110u8, 178u8, 117u8, 28u8, 212u8, 86u8,
10476 225u8, 37u8, 47u8, 66u8, 163u8, 134u8, 229u8, 36u8, 239u8, 159u8, 242u8, 110u8,
10477 204u8, 153u8, 80u8, 133u8, 159u8, 220u8, 4u8, 254u8,
10478 ],
10479 [
10480 53u8, 130u8, 209u8, 130u8, 142u8, 38u8, 191u8, 86u8, 189u8, 128u8, 21u8, 2u8,
10481 188u8, 2u8, 26u8, 192u8, 188u8, 138u8, 251u8, 87u8, 200u8, 38u8, 228u8, 152u8,
10482 107u8, 69u8, 89u8, 60u8, 143u8, 173u8, 56u8, 156u8,
10483 ],
10484 [
10485 64u8, 116u8, 65u8, 59u8, 75u8, 68u8, 62u8, 78u8, 88u8, 1u8, 159u8, 40u8, 85u8,
10486 168u8, 118u8, 81u8, 19u8, 53u8, 140u8, 124u8, 114u8, 227u8, 149u8, 9u8, 198u8,
10487 175u8, 69u8, 252u8, 15u8, 91u8, 160u8, 48u8,
10488 ],
10489 [
10490 66u8, 100u8, 39u8, 94u8, 89u8, 57u8, 85u8, 255u8, 157u8, 97u8, 70u8, 165u8, 26u8,
10491 69u8, 37u8, 246u8, 221u8, 172u8, 226u8, 232u8, 29u8, 185u8, 57u8, 26u8, 188u8,
10492 201u8, 209u8, 202u8, 72u8, 4u8, 125u8, 41u8,
10493 ],
10494 [
10495 85u8, 72u8, 200u8, 55u8, 171u8, 6u8, 140u8, 245u8, 106u8, 44u8, 36u8, 121u8, 223u8,
10496 8u8, 130u8, 164u8, 146u8, 47u8, 210u8, 3u8, 237u8, 183u8, 81u8, 115u8, 33u8, 131u8,
10497 29u8, 149u8, 7u8, 140u8, 95u8, 98u8,
10498 ],
10499 [
10500 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8, 19u8, 56u8,
10501 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8, 146u8, 20u8, 96u8,
10502 206u8, 251u8, 56u8, 71u8, 64u8, 36u8, 152u8,
10503 ],
10504 [
10505 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8, 31u8, 208u8,
10506 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8, 218u8, 175u8, 227u8,
10507 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
10508 ],
10509 [
10510 171u8, 64u8, 163u8, 116u8, 188u8, 81u8, 222u8, 55u8, 34u8, 0u8, 168u8, 188u8,
10511 152u8, 26u8, 248u8, 201u8, 236u8, 220u8, 8u8, 223u8, 218u8, 239u8, 11u8, 182u8,
10512 224u8, 159u8, 136u8, 243u8, 198u8, 22u8, 239u8, 61u8,
10513 ],
10514 [
10515 202u8, 62u8, 2u8, 164u8, 171u8, 122u8, 211u8, 196u8, 122u8, 142u8, 54u8, 229u8,
10516 166u8, 36u8, 195u8, 1u8, 112u8, 121u8, 23u8, 38u8, 171u8, 114u8, 15u8, 27u8, 171u8,
10517 254u8, 242u8, 16u8, 70u8, 217u8, 83u8, 255u8,
10518 ],
10519 [
10520 217u8, 208u8, 130u8, 195u8, 236u8, 79u8, 58u8, 63u8, 250u8, 85u8, 195u8, 36u8,
10521 147u8, 154u8, 6u8, 64u8, 127u8, 95u8, 188u8, 184u8, 125u8, 94u8, 12u8, 227u8,
10522 185u8, 80u8, 140u8, 146u8, 200u8, 78u8, 216u8, 57u8,
10523 ],
10524 ];
10525 }
10526 #[automatically_derived]
10527 impl alloy_sol_types::SolEventInterface for StrategyManagerEvents {
10528 const NAME: &'static str = "StrategyManagerEvents";
10529 const COUNT: usize = 10usize;
10530 fn decode_raw_log(
10531 topics: &[alloy_sol_types::Word],
10532 data: &[u8],
10533 ) -> alloy_sol_types::Result<Self> {
10534 match topics.first().copied() {
10535 Some(
10536 <BurnableSharesDecreased as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
10537 ) => {
10538 <BurnableSharesDecreased as alloy_sol_types::SolEvent>::decode_raw_log(
10539 topics,
10540 data,
10541 )
10542 .map(Self::BurnableSharesDecreased)
10543 }
10544 Some(
10545 <BurnableSharesIncreased as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
10546 ) => {
10547 <BurnableSharesIncreased as alloy_sol_types::SolEvent>::decode_raw_log(
10548 topics,
10549 data,
10550 )
10551 .map(Self::BurnableSharesIncreased)
10552 }
10553 Some(<Deposit as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
10554 <Deposit as alloy_sol_types::SolEvent>::decode_raw_log(topics, data)
10555 .map(Self::Deposit)
10556 }
10557 Some(<Initialized as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
10558 <Initialized as alloy_sol_types::SolEvent>::decode_raw_log(
10559 topics,
10560 data,
10561 )
10562 .map(Self::Initialized)
10563 }
10564 Some(
10565 <OwnershipTransferred as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
10566 ) => {
10567 <OwnershipTransferred as alloy_sol_types::SolEvent>::decode_raw_log(
10568 topics,
10569 data,
10570 )
10571 .map(Self::OwnershipTransferred)
10572 }
10573 Some(<Paused as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
10574 <Paused as alloy_sol_types::SolEvent>::decode_raw_log(topics, data)
10575 .map(Self::Paused)
10576 }
10577 Some(
10578 <StrategyAddedToDepositWhitelist as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
10579 ) => {
10580 <StrategyAddedToDepositWhitelist as alloy_sol_types::SolEvent>::decode_raw_log(
10581 topics,
10582 data,
10583 )
10584 .map(Self::StrategyAddedToDepositWhitelist)
10585 }
10586 Some(
10587 <StrategyRemovedFromDepositWhitelist as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
10588 ) => {
10589 <StrategyRemovedFromDepositWhitelist as alloy_sol_types::SolEvent>::decode_raw_log(
10590 topics,
10591 data,
10592 )
10593 .map(Self::StrategyRemovedFromDepositWhitelist)
10594 }
10595 Some(
10596 <StrategyWhitelisterChanged as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
10597 ) => {
10598 <StrategyWhitelisterChanged as alloy_sol_types::SolEvent>::decode_raw_log(
10599 topics,
10600 data,
10601 )
10602 .map(Self::StrategyWhitelisterChanged)
10603 }
10604 Some(<Unpaused as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
10605 <Unpaused as alloy_sol_types::SolEvent>::decode_raw_log(topics, data)
10606 .map(Self::Unpaused)
10607 }
10608 _ => {
10609 alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog {
10610 name: <Self as alloy_sol_types::SolEventInterface>::NAME,
10611 log: alloy_sol_types::private::Box::new(
10612 alloy_sol_types::private::LogData::new_unchecked(
10613 topics.to_vec(),
10614 data.to_vec().into(),
10615 ),
10616 ),
10617 })
10618 }
10619 }
10620 }
10621 }
10622 #[automatically_derived]
10623 impl alloy_sol_types::private::IntoLogData for StrategyManagerEvents {
10624 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
10625 match self {
10626 Self::BurnableSharesDecreased(inner) => {
10627 alloy_sol_types::private::IntoLogData::to_log_data(inner)
10628 }
10629 Self::BurnableSharesIncreased(inner) => {
10630 alloy_sol_types::private::IntoLogData::to_log_data(inner)
10631 }
10632 Self::Deposit(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner),
10633 Self::Initialized(inner) => {
10634 alloy_sol_types::private::IntoLogData::to_log_data(inner)
10635 }
10636 Self::OwnershipTransferred(inner) => {
10637 alloy_sol_types::private::IntoLogData::to_log_data(inner)
10638 }
10639 Self::Paused(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner),
10640 Self::StrategyAddedToDepositWhitelist(inner) => {
10641 alloy_sol_types::private::IntoLogData::to_log_data(inner)
10642 }
10643 Self::StrategyRemovedFromDepositWhitelist(inner) => {
10644 alloy_sol_types::private::IntoLogData::to_log_data(inner)
10645 }
10646 Self::StrategyWhitelisterChanged(inner) => {
10647 alloy_sol_types::private::IntoLogData::to_log_data(inner)
10648 }
10649 Self::Unpaused(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner),
10650 }
10651 }
10652 fn into_log_data(self) -> alloy_sol_types::private::LogData {
10653 match self {
10654 Self::BurnableSharesDecreased(inner) => {
10655 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10656 }
10657 Self::BurnableSharesIncreased(inner) => {
10658 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10659 }
10660 Self::Deposit(inner) => alloy_sol_types::private::IntoLogData::into_log_data(inner),
10661 Self::Initialized(inner) => {
10662 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10663 }
10664 Self::OwnershipTransferred(inner) => {
10665 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10666 }
10667 Self::Paused(inner) => alloy_sol_types::private::IntoLogData::into_log_data(inner),
10668 Self::StrategyAddedToDepositWhitelist(inner) => {
10669 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10670 }
10671 Self::StrategyRemovedFromDepositWhitelist(inner) => {
10672 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10673 }
10674 Self::StrategyWhitelisterChanged(inner) => {
10675 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10676 }
10677 Self::Unpaused(inner) => {
10678 alloy_sol_types::private::IntoLogData::into_log_data(inner)
10679 }
10680 }
10681 }
10682 }
10683 use alloy::contract as alloy_contract;
10684 #[inline]
10688 pub const fn new<
10689 P: alloy_contract::private::Provider<N>,
10690 N: alloy_contract::private::Network,
10691 >(
10692 address: alloy_sol_types::private::Address,
10693 provider: P,
10694 ) -> StrategyManagerInstance<P, N> {
10695 StrategyManagerInstance::<P, N>::new(address, provider)
10696 }
10697 #[inline]
10703 pub fn deploy<P: alloy_contract::private::Provider<N>, N: alloy_contract::private::Network>(
10704 provider: P,
10705 _delegation: alloy::sol_types::private::Address,
10706 _pauserRegistry: alloy::sol_types::private::Address,
10707 _version: alloy::sol_types::private::String,
10708 ) -> impl ::core::future::Future<Output = alloy_contract::Result<StrategyManagerInstance<P, N>>>
10709 {
10710 StrategyManagerInstance::<P, N>::deploy(provider, _delegation, _pauserRegistry, _version)
10711 }
10712 #[inline]
10718 pub fn deploy_builder<
10719 P: alloy_contract::private::Provider<N>,
10720 N: alloy_contract::private::Network,
10721 >(
10722 provider: P,
10723 _delegation: alloy::sol_types::private::Address,
10724 _pauserRegistry: alloy::sol_types::private::Address,
10725 _version: alloy::sol_types::private::String,
10726 ) -> alloy_contract::RawCallBuilder<P, N> {
10727 StrategyManagerInstance::<P, N>::deploy_builder(
10728 provider,
10729 _delegation,
10730 _pauserRegistry,
10731 _version,
10732 )
10733 }
10734 #[derive(Clone)]
10746 pub struct StrategyManagerInstance<P, N = alloy_contract::private::Ethereum> {
10747 address: alloy_sol_types::private::Address,
10748 provider: P,
10749 _network: ::core::marker::PhantomData<N>,
10750 }
10751 #[automatically_derived]
10752 impl<P, N> ::core::fmt::Debug for StrategyManagerInstance<P, N> {
10753 #[inline]
10754 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
10755 f.debug_tuple("StrategyManagerInstance")
10756 .field(&self.address)
10757 .finish()
10758 }
10759 }
10760 #[automatically_derived]
10762 impl<P: alloy_contract::private::Provider<N>, N: alloy_contract::private::Network>
10763 StrategyManagerInstance<P, N>
10764 {
10765 #[inline]
10769 pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self {
10770 Self {
10771 address,
10772 provider,
10773 _network: ::core::marker::PhantomData,
10774 }
10775 }
10776 #[inline]
10782 pub async fn deploy(
10783 provider: P,
10784 _delegation: alloy::sol_types::private::Address,
10785 _pauserRegistry: alloy::sol_types::private::Address,
10786 _version: alloy::sol_types::private::String,
10787 ) -> alloy_contract::Result<StrategyManagerInstance<P, N>> {
10788 let call_builder =
10789 Self::deploy_builder(provider, _delegation, _pauserRegistry, _version);
10790 let contract_address = call_builder.deploy().await?;
10791 Ok(Self::new(contract_address, call_builder.provider))
10792 }
10793 #[inline]
10799 pub fn deploy_builder(
10800 provider: P,
10801 _delegation: alloy::sol_types::private::Address,
10802 _pauserRegistry: alloy::sol_types::private::Address,
10803 _version: alloy::sol_types::private::String,
10804 ) -> alloy_contract::RawCallBuilder<P, N> {
10805 alloy_contract::RawCallBuilder::new_raw_deploy(
10806 provider,
10807 [
10808 &BYTECODE[..],
10809 &alloy_sol_types::SolConstructor::abi_encode(&constructorCall {
10810 _delegation,
10811 _pauserRegistry,
10812 _version,
10813 })[..],
10814 ]
10815 .concat()
10816 .into(),
10817 )
10818 }
10819 #[inline]
10821 pub const fn address(&self) -> &alloy_sol_types::private::Address {
10822 &self.address
10823 }
10824 #[inline]
10826 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
10827 self.address = address;
10828 }
10829 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
10831 self.set_address(address);
10832 self
10833 }
10834 #[inline]
10836 pub const fn provider(&self) -> &P {
10837 &self.provider
10838 }
10839 }
10840 impl<P: ::core::clone::Clone, N> StrategyManagerInstance<&P, N> {
10841 #[inline]
10843 pub fn with_cloned_provider(self) -> StrategyManagerInstance<P, N> {
10844 StrategyManagerInstance {
10845 address: self.address,
10846 provider: ::core::clone::Clone::clone(&self.provider),
10847 _network: ::core::marker::PhantomData,
10848 }
10849 }
10850 }
10851 #[automatically_derived]
10853 impl<P: alloy_contract::private::Provider<N>, N: alloy_contract::private::Network>
10854 StrategyManagerInstance<P, N>
10855 {
10856 pub fn call_builder<C: alloy_sol_types::SolCall>(
10861 &self,
10862 call: &C,
10863 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
10864 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
10865 }
10866 pub fn DEFAULT_BURN_ADDRESS(
10868 &self,
10869 ) -> alloy_contract::SolCallBuilder<&P, DEFAULT_BURN_ADDRESSCall, N> {
10870 self.call_builder(&DEFAULT_BURN_ADDRESSCall)
10871 }
10872 pub fn DEPOSIT_TYPEHASH(
10874 &self,
10875 ) -> alloy_contract::SolCallBuilder<&P, DEPOSIT_TYPEHASHCall, N> {
10876 self.call_builder(&DEPOSIT_TYPEHASHCall)
10877 }
10878 pub fn addShares(
10880 &self,
10881 staker: alloy::sol_types::private::Address,
10882 strategy: alloy::sol_types::private::Address,
10883 shares: alloy::sol_types::private::primitives::aliases::U256,
10884 ) -> alloy_contract::SolCallBuilder<&P, addSharesCall, N> {
10885 self.call_builder(&addSharesCall {
10886 staker,
10887 strategy,
10888 shares,
10889 })
10890 }
10891 pub fn addStrategiesToDepositWhitelist(
10893 &self,
10894 strategiesToWhitelist: alloy::sol_types::private::Vec<
10895 alloy::sol_types::private::Address,
10896 >,
10897 ) -> alloy_contract::SolCallBuilder<&P, addStrategiesToDepositWhitelistCall, N> {
10898 self.call_builder(&addStrategiesToDepositWhitelistCall {
10899 strategiesToWhitelist,
10900 })
10901 }
10902 pub fn burnShares(
10904 &self,
10905 strategy: alloy::sol_types::private::Address,
10906 ) -> alloy_contract::SolCallBuilder<&P, burnSharesCall, N> {
10907 self.call_builder(&burnSharesCall { strategy })
10908 }
10909 pub fn calculateStrategyDepositDigestHash(
10911 &self,
10912 staker: alloy::sol_types::private::Address,
10913 strategy: alloy::sol_types::private::Address,
10914 token: alloy::sol_types::private::Address,
10915 amount: alloy::sol_types::private::primitives::aliases::U256,
10916 nonce: alloy::sol_types::private::primitives::aliases::U256,
10917 expiry: alloy::sol_types::private::primitives::aliases::U256,
10918 ) -> alloy_contract::SolCallBuilder<&P, calculateStrategyDepositDigestHashCall, N> {
10919 self.call_builder(&calculateStrategyDepositDigestHashCall {
10920 staker,
10921 strategy,
10922 token,
10923 amount,
10924 nonce,
10925 expiry,
10926 })
10927 }
10928 pub fn delegation(&self) -> alloy_contract::SolCallBuilder<&P, delegationCall, N> {
10930 self.call_builder(&delegationCall)
10931 }
10932 pub fn depositIntoStrategy(
10934 &self,
10935 strategy: alloy::sol_types::private::Address,
10936 token: alloy::sol_types::private::Address,
10937 amount: alloy::sol_types::private::primitives::aliases::U256,
10938 ) -> alloy_contract::SolCallBuilder<&P, depositIntoStrategyCall, N> {
10939 self.call_builder(&depositIntoStrategyCall {
10940 strategy,
10941 token,
10942 amount,
10943 })
10944 }
10945 pub fn depositIntoStrategyWithSignature(
10947 &self,
10948 strategy: alloy::sol_types::private::Address,
10949 token: alloy::sol_types::private::Address,
10950 amount: alloy::sol_types::private::primitives::aliases::U256,
10951 staker: alloy::sol_types::private::Address,
10952 expiry: alloy::sol_types::private::primitives::aliases::U256,
10953 signature: alloy::sol_types::private::Bytes,
10954 ) -> alloy_contract::SolCallBuilder<&P, depositIntoStrategyWithSignatureCall, N> {
10955 self.call_builder(&depositIntoStrategyWithSignatureCall {
10956 strategy,
10957 token,
10958 amount,
10959 staker,
10960 expiry,
10961 signature,
10962 })
10963 }
10964 pub fn domainSeparator(
10966 &self,
10967 ) -> alloy_contract::SolCallBuilder<&P, domainSeparatorCall, N> {
10968 self.call_builder(&domainSeparatorCall)
10969 }
10970 pub fn getBurnableShares(
10972 &self,
10973 strategy: alloy::sol_types::private::Address,
10974 ) -> alloy_contract::SolCallBuilder<&P, getBurnableSharesCall, N> {
10975 self.call_builder(&getBurnableSharesCall { strategy })
10976 }
10977 pub fn getDeposits(
10979 &self,
10980 staker: alloy::sol_types::private::Address,
10981 ) -> alloy_contract::SolCallBuilder<&P, getDepositsCall, N> {
10982 self.call_builder(&getDepositsCall { staker })
10983 }
10984 pub fn getStakerStrategyList(
10986 &self,
10987 staker: alloy::sol_types::private::Address,
10988 ) -> alloy_contract::SolCallBuilder<&P, getStakerStrategyListCall, N> {
10989 self.call_builder(&getStakerStrategyListCall { staker })
10990 }
10991 pub fn getStrategiesWithBurnableShares(
10993 &self,
10994 ) -> alloy_contract::SolCallBuilder<&P, getStrategiesWithBurnableSharesCall, N> {
10995 self.call_builder(&getStrategiesWithBurnableSharesCall)
10996 }
10997 pub fn increaseBurnableShares(
10999 &self,
11000 strategy: alloy::sol_types::private::Address,
11001 addedSharesToBurn: alloy::sol_types::private::primitives::aliases::U256,
11002 ) -> alloy_contract::SolCallBuilder<&P, increaseBurnableSharesCall, N> {
11003 self.call_builder(&increaseBurnableSharesCall {
11004 strategy,
11005 addedSharesToBurn,
11006 })
11007 }
11008 pub fn initialize(
11010 &self,
11011 initialOwner: alloy::sol_types::private::Address,
11012 initialStrategyWhitelister: alloy::sol_types::private::Address,
11013 initialPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
11014 ) -> alloy_contract::SolCallBuilder<&P, initializeCall, N> {
11015 self.call_builder(&initializeCall {
11016 initialOwner,
11017 initialStrategyWhitelister,
11018 initialPausedStatus,
11019 })
11020 }
11021 pub fn nonces(
11023 &self,
11024 signer: alloy::sol_types::private::Address,
11025 ) -> alloy_contract::SolCallBuilder<&P, noncesCall, N> {
11026 self.call_builder(&noncesCall { signer })
11027 }
11028 pub fn owner(&self) -> alloy_contract::SolCallBuilder<&P, ownerCall, N> {
11030 self.call_builder(&ownerCall)
11031 }
11032 pub fn pause(
11034 &self,
11035 newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
11036 ) -> alloy_contract::SolCallBuilder<&P, pauseCall, N> {
11037 self.call_builder(&pauseCall { newPausedStatus })
11038 }
11039 pub fn pauseAll(&self) -> alloy_contract::SolCallBuilder<&P, pauseAllCall, N> {
11041 self.call_builder(&pauseAllCall)
11042 }
11043 pub fn paused_0(&self, index: u8) -> alloy_contract::SolCallBuilder<&P, paused_0Call, N> {
11045 self.call_builder(&paused_0Call { index })
11046 }
11047 pub fn paused_1(&self) -> alloy_contract::SolCallBuilder<&P, paused_1Call, N> {
11049 self.call_builder(&paused_1Call)
11050 }
11051 pub fn pauserRegistry(&self) -> alloy_contract::SolCallBuilder<&P, pauserRegistryCall, N> {
11053 self.call_builder(&pauserRegistryCall)
11054 }
11055 pub fn removeDepositShares(
11057 &self,
11058 staker: alloy::sol_types::private::Address,
11059 strategy: alloy::sol_types::private::Address,
11060 depositSharesToRemove: alloy::sol_types::private::primitives::aliases::U256,
11061 ) -> alloy_contract::SolCallBuilder<&P, removeDepositSharesCall, N> {
11062 self.call_builder(&removeDepositSharesCall {
11063 staker,
11064 strategy,
11065 depositSharesToRemove,
11066 })
11067 }
11068 pub fn removeStrategiesFromDepositWhitelist(
11070 &self,
11071 strategiesToRemoveFromWhitelist: alloy::sol_types::private::Vec<
11072 alloy::sol_types::private::Address,
11073 >,
11074 ) -> alloy_contract::SolCallBuilder<&P, removeStrategiesFromDepositWhitelistCall, N>
11075 {
11076 self.call_builder(&removeStrategiesFromDepositWhitelistCall {
11077 strategiesToRemoveFromWhitelist,
11078 })
11079 }
11080 pub fn renounceOwnership(
11082 &self,
11083 ) -> alloy_contract::SolCallBuilder<&P, renounceOwnershipCall, N> {
11084 self.call_builder(&renounceOwnershipCall)
11085 }
11086 pub fn setStrategyWhitelister(
11088 &self,
11089 newStrategyWhitelister: alloy::sol_types::private::Address,
11090 ) -> alloy_contract::SolCallBuilder<&P, setStrategyWhitelisterCall, N> {
11091 self.call_builder(&setStrategyWhitelisterCall {
11092 newStrategyWhitelister,
11093 })
11094 }
11095 pub fn stakerDepositShares(
11097 &self,
11098 staker: alloy::sol_types::private::Address,
11099 strategy: alloy::sol_types::private::Address,
11100 ) -> alloy_contract::SolCallBuilder<&P, stakerDepositSharesCall, N> {
11101 self.call_builder(&stakerDepositSharesCall { staker, strategy })
11102 }
11103 pub fn stakerStrategyList(
11105 &self,
11106 staker: alloy::sol_types::private::Address,
11107 _1: alloy::sol_types::private::primitives::aliases::U256,
11108 ) -> alloy_contract::SolCallBuilder<&P, stakerStrategyListCall, N> {
11109 self.call_builder(&stakerStrategyListCall { staker, _1 })
11110 }
11111 pub fn stakerStrategyListLength(
11113 &self,
11114 staker: alloy::sol_types::private::Address,
11115 ) -> alloy_contract::SolCallBuilder<&P, stakerStrategyListLengthCall, N> {
11116 self.call_builder(&stakerStrategyListLengthCall { staker })
11117 }
11118 pub fn strategyIsWhitelistedForDeposit(
11120 &self,
11121 strategy: alloy::sol_types::private::Address,
11122 ) -> alloy_contract::SolCallBuilder<&P, strategyIsWhitelistedForDepositCall, N> {
11123 self.call_builder(&strategyIsWhitelistedForDepositCall { strategy })
11124 }
11125 pub fn strategyWhitelister(
11127 &self,
11128 ) -> alloy_contract::SolCallBuilder<&P, strategyWhitelisterCall, N> {
11129 self.call_builder(&strategyWhitelisterCall)
11130 }
11131 pub fn transferOwnership(
11133 &self,
11134 newOwner: alloy::sol_types::private::Address,
11135 ) -> alloy_contract::SolCallBuilder<&P, transferOwnershipCall, N> {
11136 self.call_builder(&transferOwnershipCall { newOwner })
11137 }
11138 pub fn unpause(
11140 &self,
11141 newPausedStatus: alloy::sol_types::private::primitives::aliases::U256,
11142 ) -> alloy_contract::SolCallBuilder<&P, unpauseCall, N> {
11143 self.call_builder(&unpauseCall { newPausedStatus })
11144 }
11145 pub fn version(&self) -> alloy_contract::SolCallBuilder<&P, versionCall, N> {
11147 self.call_builder(&versionCall)
11148 }
11149 pub fn withdrawSharesAsTokens(
11151 &self,
11152 staker: alloy::sol_types::private::Address,
11153 strategy: alloy::sol_types::private::Address,
11154 token: alloy::sol_types::private::Address,
11155 shares: alloy::sol_types::private::primitives::aliases::U256,
11156 ) -> alloy_contract::SolCallBuilder<&P, withdrawSharesAsTokensCall, N> {
11157 self.call_builder(&withdrawSharesAsTokensCall {
11158 staker,
11159 strategy,
11160 token,
11161 shares,
11162 })
11163 }
11164 }
11165 #[automatically_derived]
11167 impl<P: alloy_contract::private::Provider<N>, N: alloy_contract::private::Network>
11168 StrategyManagerInstance<P, N>
11169 {
11170 pub fn event_filter<E: alloy_sol_types::SolEvent>(
11175 &self,
11176 ) -> alloy_contract::Event<&P, E, N> {
11177 alloy_contract::Event::new_sol(&self.provider, &self.address)
11178 }
11179 pub fn BurnableSharesDecreased_filter(
11181 &self,
11182 ) -> alloy_contract::Event<&P, BurnableSharesDecreased, N> {
11183 self.event_filter::<BurnableSharesDecreased>()
11184 }
11185 pub fn BurnableSharesIncreased_filter(
11187 &self,
11188 ) -> alloy_contract::Event<&P, BurnableSharesIncreased, N> {
11189 self.event_filter::<BurnableSharesIncreased>()
11190 }
11191 pub fn Deposit_filter(&self) -> alloy_contract::Event<&P, Deposit, N> {
11193 self.event_filter::<Deposit>()
11194 }
11195 pub fn Initialized_filter(&self) -> alloy_contract::Event<&P, Initialized, N> {
11197 self.event_filter::<Initialized>()
11198 }
11199 pub fn OwnershipTransferred_filter(
11201 &self,
11202 ) -> alloy_contract::Event<&P, OwnershipTransferred, N> {
11203 self.event_filter::<OwnershipTransferred>()
11204 }
11205 pub fn Paused_filter(&self) -> alloy_contract::Event<&P, Paused, N> {
11207 self.event_filter::<Paused>()
11208 }
11209 pub fn StrategyAddedToDepositWhitelist_filter(
11211 &self,
11212 ) -> alloy_contract::Event<&P, StrategyAddedToDepositWhitelist, N> {
11213 self.event_filter::<StrategyAddedToDepositWhitelist>()
11214 }
11215 pub fn StrategyRemovedFromDepositWhitelist_filter(
11217 &self,
11218 ) -> alloy_contract::Event<&P, StrategyRemovedFromDepositWhitelist, N> {
11219 self.event_filter::<StrategyRemovedFromDepositWhitelist>()
11220 }
11221 pub fn StrategyWhitelisterChanged_filter(
11223 &self,
11224 ) -> alloy_contract::Event<&P, StrategyWhitelisterChanged, N> {
11225 self.event_filter::<StrategyWhitelisterChanged>()
11226 }
11227 pub fn Unpaused_filter(&self) -> alloy_contract::Event<&P, Unpaused, N> {
11229 self.event_filter::<Unpaused>()
11230 }
11231 }
11232}