initial protobuf support