validate types and ops straight away.