0001 template <typename T> static bool lt ( T* a, T* b ) { return lt ( *a, *b ); } //less than 0002 template <typename T> static bool lt ( T& a, T& b ) { return a < b; } //less than 0003 template <typename T> static bool eq ( T* a, T* b ) { return eq ( *a, *b ); } //equal 0004 template <typename T> static bool eq ( T& a, T& b ) { return a == b; } //equal