skeleton of change_size, still need to complete function add_block, remove_block