adding some error handling, or trying to