https://github.com/sirikata/protojs