preset logic in; little rough around the edges