cmp_properties
std::sort(property_begin(), property_end(), cmp_properties);
static inline bool cmp_properties(property_ptr &p1, property_ptr &p2);