constraint is public