- maybe allow ability to return non-truth, reason value - make generatable docs