add some snippets, and protobuf