I know smart contract state is being added in block, Does this true always ? When I add or update an array of struct in contract what happens under the hood ? Is there any limit for such data structure ? Will this not be going to exhausted soon ? Block size will be very huge after years right ? Is there a scalability issue ?