free constraint