using bool where possible, and true/false