add comparison functions