planning, building, updating, thinking...