v.2.0, thanks to Eric Biggers (ebiggers3@gmail.com).