being to templatetize the creation of the library