allow no square sizes and validate input