updated relational()