added association precondition