Imported from https://github.com/drewwilimitis/hyperbolic-learning