integrated google's protocol buffer