consolidation
* use && instead of and || instead of or
* shorten many of the functions