Van de Graaf canon (unit tests included)