A C implementation for Piper