add width / height checking