Optimize Inheritance and Variable Packing
mainWhen extending a contract, variables in the child contract can be packed with variables in the parent contract.
Variables are ordered based on C3 linearization, meaning child variables are placed after parent variables in the storage layout. Designing your inheritance hierarchy with this in mind allows for better variable packing across the hierarchy.