Possibly not working; starting implementation of efficient API in separate namespace.  Will merge namespaces later