added auto-constraints