Update

Updated to support a new way to implement this library