added coextensive_properties function