1#![allow(clippy::all, clippy::pedantic, clippy::nursery, warnings, unknown_lints, rustdoc::all, elided_lifetimes_in_paths)]
2use TransparentUpgradeableProxy::*;
3
4#[allow(
101 non_camel_case_types,
102 non_snake_case,
103 clippy::pub_underscore_fields,
104 clippy::style,
105 clippy::empty_structs_with_brackets
106)]
107pub mod TransparentUpgradeableProxy {
108 use super::*;
109 use alloy::sol_types as alloy_sol_types;
110 #[rustfmt::skip]
116 #[allow(clippy::all)]
117 pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
118 b"`\x80`@R`@Qa\r\xBD8\x03\x80a\r\xBD\x839\x81\x01`@\x81\x90Ra\0\"\x91a\x03\xE5V[\x82\x81a\0/\x82\x82_a\0CV[Pa\0;\x90P\x82a\0nV[PPPa\x05\x02V[a\0L\x83a\0\xDBV[_\x82Q\x11\x80a\0XWP\x80[\x15a\0iWa\0g\x83\x83a\x01\x1AV[P[PPPV[\x7F~dMyB/\x17\xC0\x1EH\x94\xB5\xF4\xF5\x88\xD31\xEB\xFA(e=B\xAE\x83-\xC5\x9E8\xC9y\x8Fa\0\xAD_Q` a\rv_9_Q\x90_RT`\x01`\x01`\xA0\x1B\x03\x16\x90V[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x92\x83\x16\x81R\x91\x84\x16` \x83\x01R\x01`@Q\x80\x91\x03\x90\xA1a\0\xD8\x81a\x01FV[PV[a\0\xE4\x81a\x01\xE1V[`@Q`\x01`\x01`\xA0\x1B\x03\x82\x16\x90\x7F\xBC|\xD7Z \xEE'\xFD\x9A\xDE\xBA\xB3 A\xF7U!M\xBCk\xFF\xA9\x0C\xC0\"[9\xDA.\\-;\x90_\x90\xA2PV[``a\x01?\x83\x83`@Q\x80``\x01`@R\x80`'\x81R` \x01a\r\x96`'\x919a\x02uV[\x93\x92PPPV[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x01\xB0W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FERC1967: new admin is the zero a`D\x82\x01Reddress`\xD0\x1B`d\x82\x01R`\x84\x01[`@Q\x80\x91\x03\x90\xFD[\x80_Q` a\rv_9_Q\x90_R[\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x92\x90\x92\x16\x91\x90\x91\x17\x90UPV[`\x01`\x01`\xA0\x1B\x03\x81\x16;a\x02NW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`-`$\x82\x01R\x7FERC1967: new implementation is n`D\x82\x01Rl\x1B\xDD\x08\x18H\x18\xDB\xDB\x9D\x1C\x98X\xDD`\x9A\x1B`d\x82\x01R`\x84\x01a\x01\xA7V[\x80\x7F6\x08\x94\xA1;\xA1\xA3!\x06g\xC8(I-\xB9\x8D\xCA> v\xCC75\xA9 \xA3\xCAP]8+\xBCa\x01\xC0V[``__\x85`\x01`\x01`\xA0\x1B\x03\x16\x85`@Qa\x02\x91\x91\x90a\x04\xB5V[_`@Q\x80\x83\x03\x81\x85Z\xF4\x91PP=\x80_\x81\x14a\x02\xC9W`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a\x02\xCEV[``\x91P[P\x90\x92P\x90Pa\x02\xE0\x86\x83\x83\x87a\x02\xEAV[\x96\x95PPPPPPV[``\x83\x15a\x03XW\x82Q_\x03a\x03QW`\x01`\x01`\xA0\x1B\x03\x85\x16;a\x03QW`@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\x01\xA7V[P\x81a\x03bV[a\x03b\x83\x83a\x03jV[\x94\x93PPPPV[\x81Q\x15a\x03zW\x81Q\x80\x83` \x01\xFD[\x80`@QbF\x1B\xCD`\xE5\x1B\x81R`\x04\x01a\x01\xA7\x91\x90a\x04\xD0V[\x80Q`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x03\xAAW__\xFD[\x91\x90PV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[_[\x83\x81\x10\x15a\x03\xDDW\x81\x81\x01Q\x83\x82\x01R` \x01a\x03\xC5V[PP_\x91\x01RV[___``\x84\x86\x03\x12\x15a\x03\xF7W__\xFD[a\x04\0\x84a\x03\x94V[\x92Pa\x04\x0E` \x85\x01a\x03\x94V[`@\x85\x01Q\x90\x92P`\x01`\x01`@\x1B\x03\x81\x11\x15a\x04)W__\xFD[\x84\x01`\x1F\x81\x01\x86\x13a\x049W__\xFD[\x80Q`\x01`\x01`@\x1B\x03\x81\x11\x15a\x04RWa\x04Ra\x03\xAFV[`@Q`\x1F\x82\x01`\x1F\x19\x90\x81\x16`?\x01\x16\x81\x01`\x01`\x01`@\x1B\x03\x81\x11\x82\x82\x10\x17\x15a\x04\x80Wa\x04\x80a\x03\xAFV[`@R\x81\x81R\x82\x82\x01` \x01\x88\x10\x15a\x04\x97W__\xFD[a\x04\xA8\x82` \x83\x01` \x86\x01a\x03\xC3V[\x80\x93PPPP\x92P\x92P\x92V[_\x82Qa\x04\xC6\x81\x84` \x87\x01a\x03\xC3V[\x91\x90\x91\x01\x92\x91PPV[` \x81R_\x82Q\x80` \x84\x01Ra\x04\xEE\x81`@\x85\x01` \x87\x01a\x03\xC3V[`\x1F\x01`\x1F\x19\x16\x91\x90\x91\x01`@\x01\x92\x91PPV[a\x08g\x80a\x05\x0F_9_\xF3\xFE`\x80`@R6a\0\x13Wa\0\x11a\0\x17V[\0[a\0\x11[a\0\x1Fa\x01hV[`\x01`\x01`\xA0\x1B\x03\x163\x03a\x01^W```\x01`\x01`\xE0\x1B\x03\x19_5\x16cd\xD3\x18\r`\xE1\x1B\x81\x01a\0YWa\0Ra\x01\x9AV[\x91Pa\x01VV[cXp\x86\xBD`\xE1\x1B`\x01`\x01`\xE0\x1B\x03\x19\x82\x16\x01a\0yWa\0Ra\x01\xEDV[c\x07\r|i`\xE4\x1B`\x01`\x01`\xE0\x1B\x03\x19\x82\x16\x01a\0\x99Wa\0Ra\x021V[b\x1E\xB9o`\xE6\x1B`\x01`\x01`\xE0\x1B\x03\x19\x82\x16\x01a\0\xB8Wa\0Ra\x02aV[c\xA3\x9F%\xE5`\xE0\x1B`\x01`\x01`\xE0\x1B\x03\x19\x82\x16\x01a\0\xD8Wa\0Ra\x02\xA0V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`B`$\x82\x01R\x7FTransparentUpgradeableProxy: adm`D\x82\x01R\x7Fin cannot fallback to proxy targ`d\x82\x01Ra\x19]`\xF2\x1B`\x84\x82\x01R`\xA4\x01[`@Q\x80\x91\x03\x90\xFD[\x81Q` \x83\x01\xF3[a\x01fa\x02\xB3V[V[_\x7F\xB51'hJV\x8B1s\xAE\x13\xB9\xF8\xA6\x01n$>c\xB6\xE8\xEE\x11x\xD6\xA7\x17\x85\x0B]a\x03[T`\x01`\x01`\xA0\x1B\x03\x16\x91\x90PV[``a\x01\xA4a\x02\xC3V[_a\x01\xB26`\x04\x81\x84a\x06hV[\x81\x01\x90a\x01\xBF\x91\x90a\x06\xAAV[\x90Pa\x01\xDA\x81`@Q\x80` \x01`@R\x80_\x81RP_a\x02\xCDV[PP`@\x80Q` \x81\x01\x90\x91R_\x81R\x90V[``_\x80a\x01\xFE6`\x04\x81\x84a\x06hV[\x81\x01\x90a\x02\x0B\x91\x90a\x06\xD7V[\x91P\x91Pa\x02\x1B\x82\x82`\x01a\x02\xCDV[`@Q\x80` \x01`@R\x80_\x81RP\x92PPP\x90V[``a\x02;a\x02\xC3V[_a\x02I6`\x04\x81\x84a\x06hV[\x81\x01\x90a\x02V\x91\x90a\x06\xAAV[\x90Pa\x01\xDA\x81a\x02\xF8V[``a\x02ka\x02\xC3V[_a\x02ta\x01hV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x83\x16` \x82\x01R\x91\x92P\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x91PP\x90V[``a\x02\xAAa\x02\xC3V[_a\x02ta\x03OV[a\x01fa\x02\xBEa\x03OV[a\x03]V[4\x15a\x01fW__\xFD[a\x02\xD6\x83a\x03{V[_\x82Q\x11\x80a\x02\xE2WP\x80[\x15a\x02\xF3Wa\x02\xF1\x83\x83a\x03\xBAV[P[PPPV[\x7F~dMyB/\x17\xC0\x1EH\x94\xB5\xF4\xF5\x88\xD31\xEB\xFA(e=B\xAE\x83-\xC5\x9E8\xC9y\x8Fa\x03!a\x01hV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x92\x83\x16\x81R\x91\x84\x16` \x83\x01R\x01`@Q\x80\x91\x03\x90\xA1a\x03L\x81a\x03\xE6V[PV[_a\x03Xa\x04\x8FV[\x90P\x90V[6__7__6_\x84Z\xF4=__>\x80\x80\x15a\x03wW=_\xF3[=_\xFD[a\x03\x84\x81a\x04\xB6V[`@Q`\x01`\x01`\xA0\x1B\x03\x82\x16\x90\x7F\xBC|\xD7Z \xEE'\xFD\x9A\xDE\xBA\xB3 A\xF7U!M\xBCk\xFF\xA9\x0C\xC0\"[9\xDA.\\-;\x90_\x90\xA2PV[``a\x03\xDF\x83\x83`@Q\x80``\x01`@R\x80`'\x81R` \x01a\x08\x0B`'\x919a\x05JV[\x93\x92PPPV[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x04KW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FERC1967: new admin is the zero a`D\x82\x01Reddress`\xD0\x1B`d\x82\x01R`\x84\x01a\x01MV[\x80\x7F\xB51'hJV\x8B1s\xAE\x13\xB9\xF8\xA6\x01n$>c\xB6\xE8\xEE\x11x\xD6\xA7\x17\x85\x0B]a\x03[\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x92\x90\x92\x16\x91\x90\x91\x17\x90UPV[_\x7F6\x08\x94\xA1;\xA1\xA3!\x06g\xC8(I-\xB9\x8D\xCA> v\xCC75\xA9 \xA3\xCAP]8+\xBCa\x01\x8BV[`\x01`\x01`\xA0\x1B\x03\x81\x16;a\x05#W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`-`$\x82\x01R\x7FERC1967: new implementation is n`D\x82\x01Rl\x1B\xDD\x08\x18H\x18\xDB\xDB\x9D\x1C\x98X\xDD`\x9A\x1B`d\x82\x01R`\x84\x01a\x01MV[\x80\x7F6\x08\x94\xA1;\xA1\xA3!\x06g\xC8(I-\xB9\x8D\xCA> v\xCC75\xA9 \xA3\xCAP]8+\xBCa\x04nV[``__\x85`\x01`\x01`\xA0\x1B\x03\x16\x85`@Qa\x05f\x91\x90a\x07\xBDV[_`@Q\x80\x83\x03\x81\x85Z\xF4\x91PP=\x80_\x81\x14a\x05\x9EW`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a\x05\xA3V[``\x91P[P\x91P\x91Pa\x05\xB4\x86\x83\x83\x87a\x05\xBEV[\x96\x95PPPPPPV[``\x83\x15a\x06,W\x82Q_\x03a\x06%W`\x01`\x01`\xA0\x1B\x03\x85\x16;a\x06%W`@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\x01MV[P\x81a\x066V[a\x066\x83\x83a\x06>V[\x94\x93PPPPV[\x81Q\x15a\x06NW\x81Q\x80\x83` \x01\xFD[\x80`@QbF\x1B\xCD`\xE5\x1B\x81R`\x04\x01a\x01M\x91\x90a\x07\xD8V[__\x85\x85\x11\x15a\x06vW__\xFD[\x83\x86\x11\x15a\x06\x82W__\xFD[PP\x82\x01\x93\x91\x90\x92\x03\x91PV[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x06\xA5W__\xFD[\x91\x90PV[_` \x82\x84\x03\x12\x15a\x06\xBAW__\xFD[a\x03\xDF\x82a\x06\x8FV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[__`@\x83\x85\x03\x12\x15a\x06\xE8W__\xFD[a\x06\xF1\x83a\x06\x8FV[\x91P` \x83\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x07\x0CW__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a\x07\x1CW__\xFD[\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x076Wa\x076a\x06\xC3V[`@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\x07eWa\x07ea\x06\xC3V[`@R\x81\x81R\x82\x82\x01` \x01\x87\x10\x15a\x07|W__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92P\x92\x90PV[_[\x83\x81\x10\x15a\x07\xB5W\x81\x81\x01Q\x83\x82\x01R` \x01a\x07\x9DV[PP_\x91\x01RV[_\x82Qa\x07\xCE\x81\x84` \x87\x01a\x07\x9BV[\x91\x90\x91\x01\x92\x91PPV[` \x81R_\x82Q\x80` \x84\x01Ra\x07\xF6\x81`@\x85\x01` \x87\x01a\x07\x9BV[`\x1F\x01`\x1F\x19\x16\x91\x90\x91\x01`@\x01\x92\x91PPV\xFEAddress: low-level delegate call failed\xA2dipfsX\"\x12 \xEAq\xD5\xD4\xAD\xAD$0W\xEA\x89m\x7F\xF8\xE0\x17{>\x974\xD5%\xFB\x9F\xD5\xEAH\x9C\xCE\x82Q\xF3dsolcC\0\x08\x1B\x003\xB51'hJV\x8B1s\xAE\x13\xB9\xF8\xA6\x01n$>c\xB6\xE8\xEE\x11x\xD6\xA7\x17\x85\x0B]a\x03Address: low-level delegate call failed",
119 );
120 #[rustfmt::skip]
126 #[allow(clippy::all)]
127 pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
128 b"`\x80`@R6a\0\x13Wa\0\x11a\0\x17V[\0[a\0\x11[a\0\x1Fa\x01hV[`\x01`\x01`\xA0\x1B\x03\x163\x03a\x01^W```\x01`\x01`\xE0\x1B\x03\x19_5\x16cd\xD3\x18\r`\xE1\x1B\x81\x01a\0YWa\0Ra\x01\x9AV[\x91Pa\x01VV[cXp\x86\xBD`\xE1\x1B`\x01`\x01`\xE0\x1B\x03\x19\x82\x16\x01a\0yWa\0Ra\x01\xEDV[c\x07\r|i`\xE4\x1B`\x01`\x01`\xE0\x1B\x03\x19\x82\x16\x01a\0\x99Wa\0Ra\x021V[b\x1E\xB9o`\xE6\x1B`\x01`\x01`\xE0\x1B\x03\x19\x82\x16\x01a\0\xB8Wa\0Ra\x02aV[c\xA3\x9F%\xE5`\xE0\x1B`\x01`\x01`\xE0\x1B\x03\x19\x82\x16\x01a\0\xD8Wa\0Ra\x02\xA0V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`B`$\x82\x01R\x7FTransparentUpgradeableProxy: adm`D\x82\x01R\x7Fin cannot fallback to proxy targ`d\x82\x01Ra\x19]`\xF2\x1B`\x84\x82\x01R`\xA4\x01[`@Q\x80\x91\x03\x90\xFD[\x81Q` \x83\x01\xF3[a\x01fa\x02\xB3V[V[_\x7F\xB51'hJV\x8B1s\xAE\x13\xB9\xF8\xA6\x01n$>c\xB6\xE8\xEE\x11x\xD6\xA7\x17\x85\x0B]a\x03[T`\x01`\x01`\xA0\x1B\x03\x16\x91\x90PV[``a\x01\xA4a\x02\xC3V[_a\x01\xB26`\x04\x81\x84a\x06hV[\x81\x01\x90a\x01\xBF\x91\x90a\x06\xAAV[\x90Pa\x01\xDA\x81`@Q\x80` \x01`@R\x80_\x81RP_a\x02\xCDV[PP`@\x80Q` \x81\x01\x90\x91R_\x81R\x90V[``_\x80a\x01\xFE6`\x04\x81\x84a\x06hV[\x81\x01\x90a\x02\x0B\x91\x90a\x06\xD7V[\x91P\x91Pa\x02\x1B\x82\x82`\x01a\x02\xCDV[`@Q\x80` \x01`@R\x80_\x81RP\x92PPP\x90V[``a\x02;a\x02\xC3V[_a\x02I6`\x04\x81\x84a\x06hV[\x81\x01\x90a\x02V\x91\x90a\x06\xAAV[\x90Pa\x01\xDA\x81a\x02\xF8V[``a\x02ka\x02\xC3V[_a\x02ta\x01hV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x83\x16` \x82\x01R\x91\x92P\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x91PP\x90V[``a\x02\xAAa\x02\xC3V[_a\x02ta\x03OV[a\x01fa\x02\xBEa\x03OV[a\x03]V[4\x15a\x01fW__\xFD[a\x02\xD6\x83a\x03{V[_\x82Q\x11\x80a\x02\xE2WP\x80[\x15a\x02\xF3Wa\x02\xF1\x83\x83a\x03\xBAV[P[PPPV[\x7F~dMyB/\x17\xC0\x1EH\x94\xB5\xF4\xF5\x88\xD31\xEB\xFA(e=B\xAE\x83-\xC5\x9E8\xC9y\x8Fa\x03!a\x01hV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x92\x83\x16\x81R\x91\x84\x16` \x83\x01R\x01`@Q\x80\x91\x03\x90\xA1a\x03L\x81a\x03\xE6V[PV[_a\x03Xa\x04\x8FV[\x90P\x90V[6__7__6_\x84Z\xF4=__>\x80\x80\x15a\x03wW=_\xF3[=_\xFD[a\x03\x84\x81a\x04\xB6V[`@Q`\x01`\x01`\xA0\x1B\x03\x82\x16\x90\x7F\xBC|\xD7Z \xEE'\xFD\x9A\xDE\xBA\xB3 A\xF7U!M\xBCk\xFF\xA9\x0C\xC0\"[9\xDA.\\-;\x90_\x90\xA2PV[``a\x03\xDF\x83\x83`@Q\x80``\x01`@R\x80`'\x81R` \x01a\x08\x0B`'\x919a\x05JV[\x93\x92PPPV[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x04KW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FERC1967: new admin is the zero a`D\x82\x01Reddress`\xD0\x1B`d\x82\x01R`\x84\x01a\x01MV[\x80\x7F\xB51'hJV\x8B1s\xAE\x13\xB9\xF8\xA6\x01n$>c\xB6\xE8\xEE\x11x\xD6\xA7\x17\x85\x0B]a\x03[\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x92\x90\x92\x16\x91\x90\x91\x17\x90UPV[_\x7F6\x08\x94\xA1;\xA1\xA3!\x06g\xC8(I-\xB9\x8D\xCA> v\xCC75\xA9 \xA3\xCAP]8+\xBCa\x01\x8BV[`\x01`\x01`\xA0\x1B\x03\x81\x16;a\x05#W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`-`$\x82\x01R\x7FERC1967: new implementation is n`D\x82\x01Rl\x1B\xDD\x08\x18H\x18\xDB\xDB\x9D\x1C\x98X\xDD`\x9A\x1B`d\x82\x01R`\x84\x01a\x01MV[\x80\x7F6\x08\x94\xA1;\xA1\xA3!\x06g\xC8(I-\xB9\x8D\xCA> v\xCC75\xA9 \xA3\xCAP]8+\xBCa\x04nV[``__\x85`\x01`\x01`\xA0\x1B\x03\x16\x85`@Qa\x05f\x91\x90a\x07\xBDV[_`@Q\x80\x83\x03\x81\x85Z\xF4\x91PP=\x80_\x81\x14a\x05\x9EW`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a\x05\xA3V[``\x91P[P\x91P\x91Pa\x05\xB4\x86\x83\x83\x87a\x05\xBEV[\x96\x95PPPPPPV[``\x83\x15a\x06,W\x82Q_\x03a\x06%W`\x01`\x01`\xA0\x1B\x03\x85\x16;a\x06%W`@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\x01MV[P\x81a\x066V[a\x066\x83\x83a\x06>V[\x94\x93PPPPV[\x81Q\x15a\x06NW\x81Q\x80\x83` \x01\xFD[\x80`@QbF\x1B\xCD`\xE5\x1B\x81R`\x04\x01a\x01M\x91\x90a\x07\xD8V[__\x85\x85\x11\x15a\x06vW__\xFD[\x83\x86\x11\x15a\x06\x82W__\xFD[PP\x82\x01\x93\x91\x90\x92\x03\x91PV[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x06\xA5W__\xFD[\x91\x90PV[_` \x82\x84\x03\x12\x15a\x06\xBAW__\xFD[a\x03\xDF\x82a\x06\x8FV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[__`@\x83\x85\x03\x12\x15a\x06\xE8W__\xFD[a\x06\xF1\x83a\x06\x8FV[\x91P` \x83\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x07\x0CW__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a\x07\x1CW__\xFD[\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x076Wa\x076a\x06\xC3V[`@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\x07eWa\x07ea\x06\xC3V[`@R\x81\x81R\x82\x82\x01` \x01\x87\x10\x15a\x07|W__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92P\x92\x90PV[_[\x83\x81\x10\x15a\x07\xB5W\x81\x81\x01Q\x83\x82\x01R` \x01a\x07\x9DV[PP_\x91\x01RV[_\x82Qa\x07\xCE\x81\x84` \x87\x01a\x07\x9BV[\x91\x90\x91\x01\x92\x91PPV[` \x81R_\x82Q\x80` \x84\x01Ra\x07\xF6\x81`@\x85\x01` \x87\x01a\x07\x9BV[`\x1F\x01`\x1F\x19\x16\x91\x90\x91\x01`@\x01\x92\x91PPV\xFEAddress: low-level delegate call failed\xA2dipfsX\"\x12 \xEAq\xD5\xD4\xAD\xAD$0W\xEA\x89m\x7F\xF8\xE0\x17{>\x974\xD5%\xFB\x9F\xD5\xEAH\x9C\xCE\x82Q\xF3dsolcC\0\x08\x1B\x003",
129 );
130 #[derive(Default, Debug, PartialEq, Eq, Hash)]
131 #[allow(
136 non_camel_case_types,
137 non_snake_case,
138 clippy::pub_underscore_fields,
139 clippy::style
140 )]
141 #[derive(Clone)]
142 pub struct AdminChanged {
143 #[allow(missing_docs)]
144 pub previousAdmin: alloy::sol_types::private::Address,
145 #[allow(missing_docs)]
146 pub newAdmin: alloy::sol_types::private::Address,
147 }
148 #[allow(
149 non_camel_case_types,
150 non_snake_case,
151 clippy::pub_underscore_fields,
152 clippy::style
153 )]
154 const _: () = {
155 use alloy::sol_types as alloy_sol_types;
156 #[automatically_derived]
157 impl alloy_sol_types::SolEvent for AdminChanged {
158 type DataTuple<'a> = (
159 alloy::sol_types::sol_data::Address,
160 alloy::sol_types::sol_data::Address,
161 );
162 type DataToken<'a> = <Self::DataTuple<
163 'a,
164 > as alloy_sol_types::SolType>::Token<'a>;
165 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
166 const SIGNATURE: &'static str = "AdminChanged(address,address)";
167 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
168 126u8, 100u8, 77u8, 121u8, 66u8, 47u8, 23u8, 192u8, 30u8, 72u8, 148u8,
169 181u8, 244u8, 245u8, 136u8, 211u8, 49u8, 235u8, 250u8, 40u8, 101u8, 61u8,
170 66u8, 174u8, 131u8, 45u8, 197u8, 158u8, 56u8, 201u8, 121u8, 143u8,
171 ]);
172 const ANONYMOUS: bool = false;
173 #[allow(unused_variables)]
174 #[inline]
175 fn new(
176 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
177 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
178 ) -> Self {
179 Self {
180 previousAdmin: data.0,
181 newAdmin: data.1,
182 }
183 }
184 #[inline]
185 fn check_signature(
186 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
187 ) -> alloy_sol_types::Result<()> {
188 if topics.0 != Self::SIGNATURE_HASH {
189 return Err(
190 alloy_sol_types::Error::invalid_event_signature_hash(
191 Self::SIGNATURE,
192 topics.0,
193 Self::SIGNATURE_HASH,
194 ),
195 );
196 }
197 Ok(())
198 }
199 #[inline]
200 fn tokenize_body(&self) -> Self::DataToken<'_> {
201 (
202 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
203 &self.previousAdmin,
204 ),
205 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
206 &self.newAdmin,
207 ),
208 )
209 }
210 #[inline]
211 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
212 (Self::SIGNATURE_HASH.into(),)
213 }
214 #[inline]
215 fn encode_topics_raw(
216 &self,
217 out: &mut [alloy_sol_types::abi::token::WordToken],
218 ) -> alloy_sol_types::Result<()> {
219 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
220 return Err(alloy_sol_types::Error::Overrun);
221 }
222 out[0usize] = alloy_sol_types::abi::token::WordToken(
223 Self::SIGNATURE_HASH,
224 );
225 Ok(())
226 }
227 }
228 #[automatically_derived]
229 impl alloy_sol_types::private::IntoLogData for AdminChanged {
230 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
231 From::from(self)
232 }
233 fn into_log_data(self) -> alloy_sol_types::private::LogData {
234 From::from(&self)
235 }
236 }
237 #[automatically_derived]
238 impl From<&AdminChanged> for alloy_sol_types::private::LogData {
239 #[inline]
240 fn from(this: &AdminChanged) -> alloy_sol_types::private::LogData {
241 alloy_sol_types::SolEvent::encode_log_data(this)
242 }
243 }
244 };
245 #[derive(Default, Debug, PartialEq, Eq, Hash)]
246 #[allow(
251 non_camel_case_types,
252 non_snake_case,
253 clippy::pub_underscore_fields,
254 clippy::style
255 )]
256 #[derive(Clone)]
257 pub struct BeaconUpgraded {
258 #[allow(missing_docs)]
259 pub beacon: alloy::sol_types::private::Address,
260 }
261 #[allow(
262 non_camel_case_types,
263 non_snake_case,
264 clippy::pub_underscore_fields,
265 clippy::style
266 )]
267 const _: () = {
268 use alloy::sol_types as alloy_sol_types;
269 #[automatically_derived]
270 impl alloy_sol_types::SolEvent for BeaconUpgraded {
271 type DataTuple<'a> = ();
272 type DataToken<'a> = <Self::DataTuple<
273 'a,
274 > as alloy_sol_types::SolType>::Token<'a>;
275 type TopicList = (
276 alloy_sol_types::sol_data::FixedBytes<32>,
277 alloy::sol_types::sol_data::Address,
278 );
279 const SIGNATURE: &'static str = "BeaconUpgraded(address)";
280 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
281 28u8, 243u8, 176u8, 58u8, 108u8, 241u8, 159u8, 162u8, 186u8, 186u8, 77u8,
282 241u8, 72u8, 233u8, 220u8, 171u8, 237u8, 234u8, 127u8, 138u8, 92u8, 7u8,
283 132u8, 14u8, 32u8, 126u8, 92u8, 8u8, 155u8, 233u8, 93u8, 62u8,
284 ]);
285 const ANONYMOUS: bool = false;
286 #[allow(unused_variables)]
287 #[inline]
288 fn new(
289 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
290 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
291 ) -> Self {
292 Self { beacon: topics.1 }
293 }
294 #[inline]
295 fn check_signature(
296 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
297 ) -> alloy_sol_types::Result<()> {
298 if topics.0 != Self::SIGNATURE_HASH {
299 return Err(
300 alloy_sol_types::Error::invalid_event_signature_hash(
301 Self::SIGNATURE,
302 topics.0,
303 Self::SIGNATURE_HASH,
304 ),
305 );
306 }
307 Ok(())
308 }
309 #[inline]
310 fn tokenize_body(&self) -> Self::DataToken<'_> {
311 ()
312 }
313 #[inline]
314 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
315 (Self::SIGNATURE_HASH.into(), self.beacon.clone())
316 }
317 #[inline]
318 fn encode_topics_raw(
319 &self,
320 out: &mut [alloy_sol_types::abi::token::WordToken],
321 ) -> alloy_sol_types::Result<()> {
322 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
323 return Err(alloy_sol_types::Error::Overrun);
324 }
325 out[0usize] = alloy_sol_types::abi::token::WordToken(
326 Self::SIGNATURE_HASH,
327 );
328 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
329 &self.beacon,
330 );
331 Ok(())
332 }
333 }
334 #[automatically_derived]
335 impl alloy_sol_types::private::IntoLogData for BeaconUpgraded {
336 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
337 From::from(self)
338 }
339 fn into_log_data(self) -> alloy_sol_types::private::LogData {
340 From::from(&self)
341 }
342 }
343 #[automatically_derived]
344 impl From<&BeaconUpgraded> for alloy_sol_types::private::LogData {
345 #[inline]
346 fn from(this: &BeaconUpgraded) -> alloy_sol_types::private::LogData {
347 alloy_sol_types::SolEvent::encode_log_data(this)
348 }
349 }
350 };
351 #[derive(Default, Debug, PartialEq, Eq, Hash)]
352 #[allow(
357 non_camel_case_types,
358 non_snake_case,
359 clippy::pub_underscore_fields,
360 clippy::style
361 )]
362 #[derive(Clone)]
363 pub struct Upgraded {
364 #[allow(missing_docs)]
365 pub implementation: alloy::sol_types::private::Address,
366 }
367 #[allow(
368 non_camel_case_types,
369 non_snake_case,
370 clippy::pub_underscore_fields,
371 clippy::style
372 )]
373 const _: () = {
374 use alloy::sol_types as alloy_sol_types;
375 #[automatically_derived]
376 impl alloy_sol_types::SolEvent for Upgraded {
377 type DataTuple<'a> = ();
378 type DataToken<'a> = <Self::DataTuple<
379 'a,
380 > as alloy_sol_types::SolType>::Token<'a>;
381 type TopicList = (
382 alloy_sol_types::sol_data::FixedBytes<32>,
383 alloy::sol_types::sol_data::Address,
384 );
385 const SIGNATURE: &'static str = "Upgraded(address)";
386 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
387 188u8, 124u8, 215u8, 90u8, 32u8, 238u8, 39u8, 253u8, 154u8, 222u8, 186u8,
388 179u8, 32u8, 65u8, 247u8, 85u8, 33u8, 77u8, 188u8, 107u8, 255u8, 169u8,
389 12u8, 192u8, 34u8, 91u8, 57u8, 218u8, 46u8, 92u8, 45u8, 59u8,
390 ]);
391 const ANONYMOUS: bool = false;
392 #[allow(unused_variables)]
393 #[inline]
394 fn new(
395 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
396 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
397 ) -> Self {
398 Self { implementation: topics.1 }
399 }
400 #[inline]
401 fn check_signature(
402 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
403 ) -> alloy_sol_types::Result<()> {
404 if topics.0 != Self::SIGNATURE_HASH {
405 return Err(
406 alloy_sol_types::Error::invalid_event_signature_hash(
407 Self::SIGNATURE,
408 topics.0,
409 Self::SIGNATURE_HASH,
410 ),
411 );
412 }
413 Ok(())
414 }
415 #[inline]
416 fn tokenize_body(&self) -> Self::DataToken<'_> {
417 ()
418 }
419 #[inline]
420 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
421 (Self::SIGNATURE_HASH.into(), self.implementation.clone())
422 }
423 #[inline]
424 fn encode_topics_raw(
425 &self,
426 out: &mut [alloy_sol_types::abi::token::WordToken],
427 ) -> alloy_sol_types::Result<()> {
428 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
429 return Err(alloy_sol_types::Error::Overrun);
430 }
431 out[0usize] = alloy_sol_types::abi::token::WordToken(
432 Self::SIGNATURE_HASH,
433 );
434 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
435 &self.implementation,
436 );
437 Ok(())
438 }
439 }
440 #[automatically_derived]
441 impl alloy_sol_types::private::IntoLogData for Upgraded {
442 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
443 From::from(self)
444 }
445 fn into_log_data(self) -> alloy_sol_types::private::LogData {
446 From::from(&self)
447 }
448 }
449 #[automatically_derived]
450 impl From<&Upgraded> for alloy_sol_types::private::LogData {
451 #[inline]
452 fn from(this: &Upgraded) -> alloy_sol_types::private::LogData {
453 alloy_sol_types::SolEvent::encode_log_data(this)
454 }
455 }
456 };
457 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
462 #[derive(Clone)]
463 pub struct constructorCall {
464 #[allow(missing_docs)]
465 pub _logic: alloy::sol_types::private::Address,
466 #[allow(missing_docs)]
467 pub admin_: alloy::sol_types::private::Address,
468 #[allow(missing_docs)]
469 pub _data: alloy::sol_types::private::Bytes,
470 }
471 const _: () = {
472 use alloy::sol_types as alloy_sol_types;
473 {
474 #[doc(hidden)]
475 type UnderlyingSolTuple<'a> = (
476 alloy::sol_types::sol_data::Address,
477 alloy::sol_types::sol_data::Address,
478 alloy::sol_types::sol_data::Bytes,
479 );
480 #[doc(hidden)]
481 type UnderlyingRustTuple<'a> = (
482 alloy::sol_types::private::Address,
483 alloy::sol_types::private::Address,
484 alloy::sol_types::private::Bytes,
485 );
486 #[cfg(test)]
487 #[allow(dead_code, unreachable_patterns)]
488 fn _type_assertion(
489 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
490 ) {
491 match _t {
492 alloy_sol_types::private::AssertTypeEq::<
493 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
494 >(_) => {}
495 }
496 }
497 #[automatically_derived]
498 #[doc(hidden)]
499 impl ::core::convert::From<constructorCall> for UnderlyingRustTuple<'_> {
500 fn from(value: constructorCall) -> Self {
501 (value._logic, value.admin_, value._data)
502 }
503 }
504 #[automatically_derived]
505 #[doc(hidden)]
506 impl ::core::convert::From<UnderlyingRustTuple<'_>> for constructorCall {
507 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
508 Self {
509 _logic: tuple.0,
510 admin_: tuple.1,
511 _data: tuple.2,
512 }
513 }
514 }
515 }
516 #[automatically_derived]
517 impl alloy_sol_types::SolConstructor for constructorCall {
518 type Parameters<'a> = (
519 alloy::sol_types::sol_data::Address,
520 alloy::sol_types::sol_data::Address,
521 alloy::sol_types::sol_data::Bytes,
522 );
523 type Token<'a> = <Self::Parameters<
524 'a,
525 > as alloy_sol_types::SolType>::Token<'a>;
526 #[inline]
527 fn new<'a>(
528 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
529 ) -> Self {
530 tuple.into()
531 }
532 #[inline]
533 fn tokenize(&self) -> Self::Token<'_> {
534 (
535 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
536 &self._logic,
537 ),
538 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
539 &self.admin_,
540 ),
541 <alloy::sol_types::sol_data::Bytes as alloy_sol_types::SolType>::tokenize(
542 &self._data,
543 ),
544 )
545 }
546 }
547 };
548 #[derive(Debug, PartialEq, Eq, Hash)]
550 pub enum TransparentUpgradeableProxyEvents {
551 #[allow(missing_docs)]
552 AdminChanged(AdminChanged),
553 #[allow(missing_docs)]
554 BeaconUpgraded(BeaconUpgraded),
555 #[allow(missing_docs)]
556 Upgraded(Upgraded),
557 }
558 #[automatically_derived]
559 impl TransparentUpgradeableProxyEvents {
560 pub const SELECTORS: &'static [[u8; 32usize]] = &[
567 [
568 28u8, 243u8, 176u8, 58u8, 108u8, 241u8, 159u8, 162u8, 186u8, 186u8, 77u8,
569 241u8, 72u8, 233u8, 220u8, 171u8, 237u8, 234u8, 127u8, 138u8, 92u8, 7u8,
570 132u8, 14u8, 32u8, 126u8, 92u8, 8u8, 155u8, 233u8, 93u8, 62u8,
571 ],
572 [
573 126u8, 100u8, 77u8, 121u8, 66u8, 47u8, 23u8, 192u8, 30u8, 72u8, 148u8,
574 181u8, 244u8, 245u8, 136u8, 211u8, 49u8, 235u8, 250u8, 40u8, 101u8, 61u8,
575 66u8, 174u8, 131u8, 45u8, 197u8, 158u8, 56u8, 201u8, 121u8, 143u8,
576 ],
577 [
578 188u8, 124u8, 215u8, 90u8, 32u8, 238u8, 39u8, 253u8, 154u8, 222u8, 186u8,
579 179u8, 32u8, 65u8, 247u8, 85u8, 33u8, 77u8, 188u8, 107u8, 255u8, 169u8,
580 12u8, 192u8, 34u8, 91u8, 57u8, 218u8, 46u8, 92u8, 45u8, 59u8,
581 ],
582 ];
583 }
584 #[automatically_derived]
585 impl alloy_sol_types::SolEventInterface for TransparentUpgradeableProxyEvents {
586 const NAME: &'static str = "TransparentUpgradeableProxyEvents";
587 const COUNT: usize = 3usize;
588 fn decode_raw_log(
589 topics: &[alloy_sol_types::Word],
590 data: &[u8],
591 validate: bool,
592 ) -> alloy_sol_types::Result<Self> {
593 match topics.first().copied() {
594 Some(<AdminChanged as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
595 <AdminChanged as alloy_sol_types::SolEvent>::decode_raw_log(
596 topics,
597 data,
598 validate,
599 )
600 .map(Self::AdminChanged)
601 }
602 Some(<BeaconUpgraded as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
603 <BeaconUpgraded as alloy_sol_types::SolEvent>::decode_raw_log(
604 topics,
605 data,
606 validate,
607 )
608 .map(Self::BeaconUpgraded)
609 }
610 Some(<Upgraded as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
611 <Upgraded as alloy_sol_types::SolEvent>::decode_raw_log(
612 topics,
613 data,
614 validate,
615 )
616 .map(Self::Upgraded)
617 }
618 _ => {
619 alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog {
620 name: <Self as alloy_sol_types::SolEventInterface>::NAME,
621 log: alloy_sol_types::private::Box::new(
622 alloy_sol_types::private::LogData::new_unchecked(
623 topics.to_vec(),
624 data.to_vec().into(),
625 ),
626 ),
627 })
628 }
629 }
630 }
631 }
632 #[automatically_derived]
633 impl alloy_sol_types::private::IntoLogData for TransparentUpgradeableProxyEvents {
634 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
635 match self {
636 Self::AdminChanged(inner) => {
637 alloy_sol_types::private::IntoLogData::to_log_data(inner)
638 }
639 Self::BeaconUpgraded(inner) => {
640 alloy_sol_types::private::IntoLogData::to_log_data(inner)
641 }
642 Self::Upgraded(inner) => {
643 alloy_sol_types::private::IntoLogData::to_log_data(inner)
644 }
645 }
646 }
647 fn into_log_data(self) -> alloy_sol_types::private::LogData {
648 match self {
649 Self::AdminChanged(inner) => {
650 alloy_sol_types::private::IntoLogData::into_log_data(inner)
651 }
652 Self::BeaconUpgraded(inner) => {
653 alloy_sol_types::private::IntoLogData::into_log_data(inner)
654 }
655 Self::Upgraded(inner) => {
656 alloy_sol_types::private::IntoLogData::into_log_data(inner)
657 }
658 }
659 }
660 }
661 use alloy::contract as alloy_contract;
662 #[inline]
666 pub const fn new<
667 T: alloy_contract::private::Transport + ::core::clone::Clone,
668 P: alloy_contract::private::Provider<T, N>,
669 N: alloy_contract::private::Network,
670 >(
671 address: alloy_sol_types::private::Address,
672 provider: P,
673 ) -> TransparentUpgradeableProxyInstance<T, P, N> {
674 TransparentUpgradeableProxyInstance::<T, P, N>::new(address, provider)
675 }
676 #[inline]
682 pub fn deploy<
683 T: alloy_contract::private::Transport + ::core::clone::Clone,
684 P: alloy_contract::private::Provider<T, N>,
685 N: alloy_contract::private::Network,
686 >(
687 provider: P,
688 _logic: alloy::sol_types::private::Address,
689 admin_: alloy::sol_types::private::Address,
690 _data: alloy::sol_types::private::Bytes,
691 ) -> impl ::core::future::Future<
692 Output = alloy_contract::Result<TransparentUpgradeableProxyInstance<T, P, N>>,
693 > {
694 TransparentUpgradeableProxyInstance::<
695 T,
696 P,
697 N,
698 >::deploy(provider, _logic, admin_, _data)
699 }
700 #[inline]
706 pub fn deploy_builder<
707 T: alloy_contract::private::Transport + ::core::clone::Clone,
708 P: alloy_contract::private::Provider<T, N>,
709 N: alloy_contract::private::Network,
710 >(
711 provider: P,
712 _logic: alloy::sol_types::private::Address,
713 admin_: alloy::sol_types::private::Address,
714 _data: alloy::sol_types::private::Bytes,
715 ) -> alloy_contract::RawCallBuilder<T, P, N> {
716 TransparentUpgradeableProxyInstance::<
717 T,
718 P,
719 N,
720 >::deploy_builder(provider, _logic, admin_, _data)
721 }
722 #[derive(Clone)]
734 pub struct TransparentUpgradeableProxyInstance<
735 T,
736 P,
737 N = alloy_contract::private::Ethereum,
738 > {
739 address: alloy_sol_types::private::Address,
740 provider: P,
741 _network_transport: ::core::marker::PhantomData<(N, T)>,
742 }
743 #[automatically_derived]
744 impl<T, P, N> ::core::fmt::Debug for TransparentUpgradeableProxyInstance<T, P, N> {
745 #[inline]
746 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
747 f.debug_tuple("TransparentUpgradeableProxyInstance")
748 .field(&self.address)
749 .finish()
750 }
751 }
752 #[automatically_derived]
754 impl<
755 T: alloy_contract::private::Transport + ::core::clone::Clone,
756 P: alloy_contract::private::Provider<T, N>,
757 N: alloy_contract::private::Network,
758 > TransparentUpgradeableProxyInstance<T, P, N> {
759 #[inline]
763 pub const fn new(
764 address: alloy_sol_types::private::Address,
765 provider: P,
766 ) -> Self {
767 Self {
768 address,
769 provider,
770 _network_transport: ::core::marker::PhantomData,
771 }
772 }
773 #[inline]
779 pub async fn deploy(
780 provider: P,
781 _logic: alloy::sol_types::private::Address,
782 admin_: alloy::sol_types::private::Address,
783 _data: alloy::sol_types::private::Bytes,
784 ) -> alloy_contract::Result<TransparentUpgradeableProxyInstance<T, P, N>> {
785 let call_builder = Self::deploy_builder(provider, _logic, admin_, _data);
786 let contract_address = call_builder.deploy().await?;
787 Ok(Self::new(contract_address, call_builder.provider))
788 }
789 #[inline]
795 pub fn deploy_builder(
796 provider: P,
797 _logic: alloy::sol_types::private::Address,
798 admin_: alloy::sol_types::private::Address,
799 _data: alloy::sol_types::private::Bytes,
800 ) -> alloy_contract::RawCallBuilder<T, P, N> {
801 alloy_contract::RawCallBuilder::new_raw_deploy(
802 provider,
803 [
804 &BYTECODE[..],
805 &alloy_sol_types::SolConstructor::abi_encode(
806 &constructorCall {
807 _logic,
808 admin_,
809 _data,
810 },
811 )[..],
812 ]
813 .concat()
814 .into(),
815 )
816 }
817 #[inline]
819 pub const fn address(&self) -> &alloy_sol_types::private::Address {
820 &self.address
821 }
822 #[inline]
824 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
825 self.address = address;
826 }
827 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
829 self.set_address(address);
830 self
831 }
832 #[inline]
834 pub const fn provider(&self) -> &P {
835 &self.provider
836 }
837 }
838 impl<T, P: ::core::clone::Clone, N> TransparentUpgradeableProxyInstance<T, &P, N> {
839 #[inline]
841 pub fn with_cloned_provider(
842 self,
843 ) -> TransparentUpgradeableProxyInstance<T, P, N> {
844 TransparentUpgradeableProxyInstance {
845 address: self.address,
846 provider: ::core::clone::Clone::clone(&self.provider),
847 _network_transport: ::core::marker::PhantomData,
848 }
849 }
850 }
851 #[automatically_derived]
853 impl<
854 T: alloy_contract::private::Transport + ::core::clone::Clone,
855 P: alloy_contract::private::Provider<T, N>,
856 N: alloy_contract::private::Network,
857 > TransparentUpgradeableProxyInstance<T, P, N> {
858 pub fn call_builder<C: alloy_sol_types::SolCall>(
863 &self,
864 call: &C,
865 ) -> alloy_contract::SolCallBuilder<T, &P, C, N> {
866 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
867 }
868 }
869 #[automatically_derived]
871 impl<
872 T: alloy_contract::private::Transport + ::core::clone::Clone,
873 P: alloy_contract::private::Provider<T, N>,
874 N: alloy_contract::private::Network,
875 > TransparentUpgradeableProxyInstance<T, P, N> {
876 pub fn event_filter<E: alloy_sol_types::SolEvent>(
881 &self,
882 ) -> alloy_contract::Event<T, &P, E, N> {
883 alloy_contract::Event::new_sol(&self.provider, &self.address)
884 }
885 pub fn AdminChanged_filter(
887 &self,
888 ) -> alloy_contract::Event<T, &P, AdminChanged, N> {
889 self.event_filter::<AdminChanged>()
890 }
891 pub fn BeaconUpgraded_filter(
893 &self,
894 ) -> alloy_contract::Event<T, &P, BeaconUpgraded, N> {
895 self.event_filter::<BeaconUpgraded>()
896 }
897 pub fn Upgraded_filter(&self) -> alloy_contract::Event<T, &P, Upgraded, N> {
899 self.event_filter::<Upgraded>()
900 }
901 }
902}