valid/invalid inputs. closes #52