tidy
manage state from parent