assoc implemented