starting to write utility functions