cleanup / refactor