Completes #25