reduce and improve spec