singletons-th-3.5: A framework for generating singleton types