template<typename T>
class PFPlainCopies
{
public:
typedef T stored_type;
typedef T& reference_type;
typedef T cloning_result_type;
static cloning_result_type Clone(reference_type prototype)
{ return T(prototype); }
template<typename It>
static void DestroyProtoTypes(It beg, It end) {}
};
End of Listing