The PuzzleWallet solution is quite confusing for me
How come calling the proposeAdmin function inside PuzzleProxy contract changes the storage of PuzzleWallet contract. Even if the storage is clashing how is it possible to change the storage of logic contract??
Here is the link to problem and solution as well.
Solution - https://github.com/t4sk/ethernaut/blob/main/src/24-puzzle-wallet.sol