groupoid with setoid restriction for Type