use better constraint for common