Do we want to specify precisely what library we use? It sort of adds an extra level to the contract we may not want to maintain.