add template argument to unique_descriptor