Hi, I was writing an upgradeable contract using openzeppelin's upgrades contract.
Is it possible to change the storage of the upgrade implementation ?
I was thinking of adding new variables to the end. Will it work?
For example if my contract is something like this
contract TestContract is Initializable {
    address public DAO;
    address public Treasury;
    struct Protocol{
        mapping(address => bool) protocolAssets;
        address depositor;
        uint256[] whitelistGroup;
        address admin;
 
    }
    mapping(address => bool) assets;
    function something() public {
    dao = address(0)
}
Will adding a new variable after the assets mapping, for the new upgrade implementation, work?