random shit, validations and specs, and other garbage