Solves #27.