consistent type