Forráskód Böngészése

Remove autogenerated files

Alexey Edelev 5 éve
szülő
commit
dee098e34c

+ 2 - 0
.gitignore

@@ -2,3 +2,5 @@ src
 bin
 pkg
 CMakeLists.txt.user
+*.pb.go
+

+ 0 - 389
handwriting/handwriting/handwriting.pb.go

@@ -1,389 +0,0 @@
-// Code generated by protoc-gen-go. DO NOT EDIT.
-// source: handwriting.proto
-
-package handwriting
-
-import (
-	context "context"
-	fmt "fmt"
-	proto "github.com/golang/protobuf/proto"
-	grpc "google.golang.org/grpc"
-	codes "google.golang.org/grpc/codes"
-	status "google.golang.org/grpc/status"
-	math "math"
-)
-
-// Reference imports to suppress errors if they are not otherwise used.
-var _ = proto.Marshal
-var _ = fmt.Errorf
-var _ = math.Inf
-
-// This is a compile-time assertion to ensure that this generated file
-// is compatible with the proto package it is being compiled against.
-// A compilation error at this line likely means your copy of the
-// proto package needs to be updated.
-const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
-
-type Matrix struct {
-	Data                 []float64 `protobuf:"fixed64,1,rep,packed,name=data,proto3" json:"data,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
-	XXX_unrecognized     []byte    `json:"-"`
-	XXX_sizecache        int32     `json:"-"`
-}
-
-func (m *Matrix) Reset()         { *m = Matrix{} }
-func (m *Matrix) String() string { return proto.CompactTextString(m) }
-func (*Matrix) ProtoMessage()    {}
-func (*Matrix) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d3287f4c1e120e43, []int{0}
-}
-
-func (m *Matrix) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_Matrix.Unmarshal(m, b)
-}
-func (m *Matrix) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_Matrix.Marshal(b, m, deterministic)
-}
-func (m *Matrix) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_Matrix.Merge(m, src)
-}
-func (m *Matrix) XXX_Size() int {
-	return xxx_messageInfo_Matrix.Size(m)
-}
-func (m *Matrix) XXX_DiscardUnknown() {
-	xxx_messageInfo_Matrix.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_Matrix proto.InternalMessageInfo
-
-func (m *Matrix) GetData() []float64 {
-	if m != nil {
-		return m.Data
-	}
-	return nil
-}
-
-type Result struct {
-	ResultCharacter      uint32   `protobuf:"varint,1,opt,name=resultCharacter,proto3" json:"resultCharacter,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *Result) Reset()         { *m = Result{} }
-func (m *Result) String() string { return proto.CompactTextString(m) }
-func (*Result) ProtoMessage()    {}
-func (*Result) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d3287f4c1e120e43, []int{1}
-}
-
-func (m *Result) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_Result.Unmarshal(m, b)
-}
-func (m *Result) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_Result.Marshal(b, m, deterministic)
-}
-func (m *Result) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_Result.Merge(m, src)
-}
-func (m *Result) XXX_Size() int {
-	return xxx_messageInfo_Result.Size(m)
-}
-func (m *Result) XXX_DiscardUnknown() {
-	xxx_messageInfo_Result.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_Result proto.InternalMessageInfo
-
-func (m *Result) GetResultCharacter() uint32 {
-	if m != nil {
-		return m.ResultCharacter
-	}
-	return 0
-}
-
-type NeuralNetworkRaw struct {
-	Data                 []byte   `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *NeuralNetworkRaw) Reset()         { *m = NeuralNetworkRaw{} }
-func (m *NeuralNetworkRaw) String() string { return proto.CompactTextString(m) }
-func (*NeuralNetworkRaw) ProtoMessage()    {}
-func (*NeuralNetworkRaw) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d3287f4c1e120e43, []int{2}
-}
-
-func (m *NeuralNetworkRaw) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_NeuralNetworkRaw.Unmarshal(m, b)
-}
-func (m *NeuralNetworkRaw) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_NeuralNetworkRaw.Marshal(b, m, deterministic)
-}
-func (m *NeuralNetworkRaw) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_NeuralNetworkRaw.Merge(m, src)
-}
-func (m *NeuralNetworkRaw) XXX_Size() int {
-	return xxx_messageInfo_NeuralNetworkRaw.Size(m)
-}
-func (m *NeuralNetworkRaw) XXX_DiscardUnknown() {
-	xxx_messageInfo_NeuralNetworkRaw.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_NeuralNetworkRaw proto.InternalMessageInfo
-
-func (m *NeuralNetworkRaw) GetData() []byte {
-	if m != nil {
-		return m.Data
-	}
-	return nil
-}
-
-type None struct {
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *None) Reset()         { *m = None{} }
-func (m *None) String() string { return proto.CompactTextString(m) }
-func (*None) ProtoMessage()    {}
-func (*None) Descriptor() ([]byte, []int) {
-	return fileDescriptor_d3287f4c1e120e43, []int{3}
-}
-
-func (m *None) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_None.Unmarshal(m, b)
-}
-func (m *None) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_None.Marshal(b, m, deterministic)
-}
-func (m *None) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_None.Merge(m, src)
-}
-func (m *None) XXX_Size() int {
-	return xxx_messageInfo_None.Size(m)
-}
-func (m *None) XXX_DiscardUnknown() {
-	xxx_messageInfo_None.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_None proto.InternalMessageInfo
-
-func init() {
-	proto.RegisterType((*Matrix)(nil), "handwriting.Matrix")
-	proto.RegisterType((*Result)(nil), "handwriting.Result")
-	proto.RegisterType((*NeuralNetworkRaw)(nil), "handwriting.NeuralNetworkRaw")
-	proto.RegisterType((*None)(nil), "handwriting.None")
-}
-
-func init() { proto.RegisterFile("handwriting.proto", fileDescriptor_d3287f4c1e120e43) }
-
-var fileDescriptor_d3287f4c1e120e43 = []byte{
-	// 238 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x91, 0xc1, 0x4a, 0xc3, 0x40,
-	0x10, 0x86, 0xbb, 0x5a, 0x22, 0x4e, 0x15, 0xed, 0xe8, 0xa1, 0x04, 0x85, 0xb2, 0x07, 0xc9, 0xa9,
-	0x60, 0x3d, 0xf8, 0x00, 0x7a, 0x10, 0xc1, 0x1c, 0x16, 0x5f, 0x60, 0x6c, 0x87, 0x74, 0xb1, 0xec,
-	0xca, 0x74, 0x4a, 0xc4, 0xb7, 0xf0, 0x8d, 0x85, 0x44, 0x30, 0x5b, 0x43, 0x6f, 0xc3, 0xbf, 0xb3,
-	0xdf, 0xff, 0xc1, 0xc0, 0x78, 0x45, 0x61, 0x59, 0x8b, 0x57, 0x1f, 0xaa, 0xd9, 0x87, 0x44, 0x8d,
-	0x38, 0xea, 0x44, 0xf6, 0x0a, 0xb2, 0x17, 0x52, 0xf1, 0x9f, 0x88, 0x30, 0x5c, 0x92, 0xd2, 0xc4,
-	0x4c, 0x0f, 0x0b, 0xe3, 0x9a, 0xd9, 0xce, 0x21, 0x73, 0xbc, 0xd9, 0xae, 0x15, 0x0b, 0x38, 0x93,
-	0x66, 0x7a, 0x58, 0x91, 0xd0, 0x42, 0x59, 0x26, 0x66, 0x6a, 0x8a, 0x53, 0xb7, 0x1b, 0xdb, 0x1b,
-	0x38, 0x2f, 0x79, 0x2b, 0xb4, 0x2e, 0x59, 0xeb, 0x28, 0xef, 0x8e, 0xea, 0x0e, 0xdb, 0x14, 0x27,
-	0xbf, 0xec, 0x0c, 0x86, 0x65, 0x0c, 0x3c, 0xff, 0x3e, 0x80, 0xd1, 0xd3, 0x9f, 0x11, 0xde, 0xc3,
-	0xb1, 0xf0, 0x22, 0x56, 0xc1, 0x7f, 0x31, 0x5e, 0xcc, 0xba, 0xfe, 0xad, 0x69, 0x9e, 0x86, 0xad,
-	0xa0, 0x1d, 0xe0, 0x33, 0x5c, 0x6e, 0x58, 0x93, 0xee, 0x47, 0x52, 0xc2, 0xeb, 0x64, 0x7d, 0xd7,
-	0x2d, 0x1f, 0xa7, 0xcf, 0x31, 0x70, 0xcb, 0xaa, 0xfa, 0x58, 0xff, 0x97, 0xf3, 0xfd, 0x78, 0x3b,
-	0xc0, 0x5b, 0x38, 0x12, 0x7e, 0x15, 0xf2, 0xa1, 0xef, 0x7b, 0x5f, 0xfd, 0x5b, 0xd6, 0x5c, 0xea,
-	0xee, 0x27, 0x00, 0x00, 0xff, 0xff, 0x5d, 0x71, 0x43, 0xa8, 0xbe, 0x01, 0x00, 0x00,
-}
-
-// Reference imports to suppress errors if they are not otherwise used.
-var _ context.Context
-var _ grpc.ClientConn
-
-// This is a compile-time assertion to ensure that this generated file
-// is compatible with the grpc package it is being compiled against.
-const _ = grpc.SupportPackageIsVersion4
-
-// HandwritingClient is the client API for Handwriting service.
-//
-// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
-type HandwritingClient interface {
-	Recognize(ctx context.Context, in *Matrix, opts ...grpc.CallOption) (*Result, error)
-	SetNeuralNetworkData(ctx context.Context, in *NeuralNetworkRaw, opts ...grpc.CallOption) (*None, error)
-	GetNeuralNetworkData(ctx context.Context, in *None, opts ...grpc.CallOption) (*NeuralNetworkRaw, error)
-	ReTrain(ctx context.Context, in *None, opts ...grpc.CallOption) (*None, error)
-}
-
-type handwritingClient struct {
-	cc *grpc.ClientConn
-}
-
-func NewHandwritingClient(cc *grpc.ClientConn) HandwritingClient {
-	return &handwritingClient{cc}
-}
-
-func (c *handwritingClient) Recognize(ctx context.Context, in *Matrix, opts ...grpc.CallOption) (*Result, error) {
-	out := new(Result)
-	err := c.cc.Invoke(ctx, "/handwriting.Handwriting/recognize", in, out, opts...)
-	if err != nil {
-		return nil, err
-	}
-	return out, nil
-}
-
-func (c *handwritingClient) SetNeuralNetworkData(ctx context.Context, in *NeuralNetworkRaw, opts ...grpc.CallOption) (*None, error) {
-	out := new(None)
-	err := c.cc.Invoke(ctx, "/handwriting.Handwriting/setNeuralNetworkData", in, out, opts...)
-	if err != nil {
-		return nil, err
-	}
-	return out, nil
-}
-
-func (c *handwritingClient) GetNeuralNetworkData(ctx context.Context, in *None, opts ...grpc.CallOption) (*NeuralNetworkRaw, error) {
-	out := new(NeuralNetworkRaw)
-	err := c.cc.Invoke(ctx, "/handwriting.Handwriting/getNeuralNetworkData", in, out, opts...)
-	if err != nil {
-		return nil, err
-	}
-	return out, nil
-}
-
-func (c *handwritingClient) ReTrain(ctx context.Context, in *None, opts ...grpc.CallOption) (*None, error) {
-	out := new(None)
-	err := c.cc.Invoke(ctx, "/handwriting.Handwriting/reTrain", in, out, opts...)
-	if err != nil {
-		return nil, err
-	}
-	return out, nil
-}
-
-// HandwritingServer is the server API for Handwriting service.
-type HandwritingServer interface {
-	Recognize(context.Context, *Matrix) (*Result, error)
-	SetNeuralNetworkData(context.Context, *NeuralNetworkRaw) (*None, error)
-	GetNeuralNetworkData(context.Context, *None) (*NeuralNetworkRaw, error)
-	ReTrain(context.Context, *None) (*None, error)
-}
-
-// UnimplementedHandwritingServer can be embedded to have forward compatible implementations.
-type UnimplementedHandwritingServer struct {
-}
-
-func (*UnimplementedHandwritingServer) Recognize(ctx context.Context, req *Matrix) (*Result, error) {
-	return nil, status.Errorf(codes.Unimplemented, "method Recognize not implemented")
-}
-func (*UnimplementedHandwritingServer) SetNeuralNetworkData(ctx context.Context, req *NeuralNetworkRaw) (*None, error) {
-	return nil, status.Errorf(codes.Unimplemented, "method SetNeuralNetworkData not implemented")
-}
-func (*UnimplementedHandwritingServer) GetNeuralNetworkData(ctx context.Context, req *None) (*NeuralNetworkRaw, error) {
-	return nil, status.Errorf(codes.Unimplemented, "method GetNeuralNetworkData not implemented")
-}
-func (*UnimplementedHandwritingServer) ReTrain(ctx context.Context, req *None) (*None, error) {
-	return nil, status.Errorf(codes.Unimplemented, "method ReTrain not implemented")
-}
-
-func RegisterHandwritingServer(s *grpc.Server, srv HandwritingServer) {
-	s.RegisterService(&_Handwriting_serviceDesc, srv)
-}
-
-func _Handwriting_Recognize_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
-	in := new(Matrix)
-	if err := dec(in); err != nil {
-		return nil, err
-	}
-	if interceptor == nil {
-		return srv.(HandwritingServer).Recognize(ctx, in)
-	}
-	info := &grpc.UnaryServerInfo{
-		Server:     srv,
-		FullMethod: "/handwriting.Handwriting/Recognize",
-	}
-	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
-		return srv.(HandwritingServer).Recognize(ctx, req.(*Matrix))
-	}
-	return interceptor(ctx, in, info, handler)
-}
-
-func _Handwriting_SetNeuralNetworkData_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
-	in := new(NeuralNetworkRaw)
-	if err := dec(in); err != nil {
-		return nil, err
-	}
-	if interceptor == nil {
-		return srv.(HandwritingServer).SetNeuralNetworkData(ctx, in)
-	}
-	info := &grpc.UnaryServerInfo{
-		Server:     srv,
-		FullMethod: "/handwriting.Handwriting/SetNeuralNetworkData",
-	}
-	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
-		return srv.(HandwritingServer).SetNeuralNetworkData(ctx, req.(*NeuralNetworkRaw))
-	}
-	return interceptor(ctx, in, info, handler)
-}
-
-func _Handwriting_GetNeuralNetworkData_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
-	in := new(None)
-	if err := dec(in); err != nil {
-		return nil, err
-	}
-	if interceptor == nil {
-		return srv.(HandwritingServer).GetNeuralNetworkData(ctx, in)
-	}
-	info := &grpc.UnaryServerInfo{
-		Server:     srv,
-		FullMethod: "/handwriting.Handwriting/GetNeuralNetworkData",
-	}
-	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
-		return srv.(HandwritingServer).GetNeuralNetworkData(ctx, req.(*None))
-	}
-	return interceptor(ctx, in, info, handler)
-}
-
-func _Handwriting_ReTrain_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
-	in := new(None)
-	if err := dec(in); err != nil {
-		return nil, err
-	}
-	if interceptor == nil {
-		return srv.(HandwritingServer).ReTrain(ctx, in)
-	}
-	info := &grpc.UnaryServerInfo{
-		Server:     srv,
-		FullMethod: "/handwriting.Handwriting/ReTrain",
-	}
-	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
-		return srv.(HandwritingServer).ReTrain(ctx, req.(*None))
-	}
-	return interceptor(ctx, in, info, handler)
-}
-
-var _Handwriting_serviceDesc = grpc.ServiceDesc{
-	ServiceName: "handwriting.Handwriting",
-	HandlerType: (*HandwritingServer)(nil),
-	Methods: []grpc.MethodDesc{
-		{
-			MethodName: "recognize",
-			Handler:    _Handwriting_Recognize_Handler,
-		},
-		{
-			MethodName: "setNeuralNetworkData",
-			Handler:    _Handwriting_SetNeuralNetworkData_Handler,
-		},
-		{
-			MethodName: "getNeuralNetworkData",
-			Handler:    _Handwriting_GetNeuralNetworkData_Handler,
-		},
-		{
-			MethodName: "reTrain",
-			Handler:    _Handwriting_ReTrain_Handler,
-		},
-	},
-	Streams:  []grpc.StreamDesc{},
-	Metadata: "handwriting.proto",
-}

+ 0 - 738
neuralnetwork/remotecontrol/remotecontrol.pb.go

@@ -1,738 +0,0 @@
-// Code generated by protoc-gen-go. DO NOT EDIT.
-// source: remotecontrol.proto
-
-package remotecontrol
-
-import (
-	context "context"
-	fmt "fmt"
-	proto "github.com/golang/protobuf/proto"
-	grpc "google.golang.org/grpc"
-	codes "google.golang.org/grpc/codes"
-	status "google.golang.org/grpc/status"
-	math "math"
-)
-
-// Reference imports to suppress errors if they are not otherwise used.
-var _ = proto.Marshal
-var _ = fmt.Errorf
-var _ = math.Inf
-
-// This is a compile-time assertion to ensure that this generated file
-// is compatible with the proto package it is being compiled against.
-// A compilation error at this line likely means your copy of the
-// proto package needs to be updated.
-const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
-
-type NetworkState_State int32
-
-const (
-	NetworkState_None       NetworkState_State = 0
-	NetworkState_Idle       NetworkState_State = 1
-	NetworkState_Learning   NetworkState_State = 2
-	NetworkState_Validation NetworkState_State = 3
-	NetworkState_Predict    NetworkState_State = 4
-)
-
-var NetworkState_State_name = map[int32]string{
-	0: "None",
-	1: "Idle",
-	2: "Learning",
-	3: "Validation",
-	4: "Predict",
-}
-
-var NetworkState_State_value = map[string]int32{
-	"None":       0,
-	"Idle":       1,
-	"Learning":   2,
-	"Validation": 3,
-	"Predict":    4,
-}
-
-func (x NetworkState_State) String() string {
-	return proto.EnumName(NetworkState_State_name, int32(x))
-}
-
-func (NetworkState_State) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_9e7470c0107e56c6, []int{0, 0}
-}
-
-type LayerMatrix_ContentType int32
-
-const (
-	LayerMatrix_Activations LayerMatrix_ContentType = 0
-	LayerMatrix_Weights     LayerMatrix_ContentType = 1
-	LayerMatrix_Biases      LayerMatrix_ContentType = 2
-)
-
-var LayerMatrix_ContentType_name = map[int32]string{
-	0: "Activations",
-	1: "Weights",
-	2: "Biases",
-}
-
-var LayerMatrix_ContentType_value = map[string]int32{
-	"Activations": 0,
-	"Weights":     1,
-	"Biases":      2,
-}
-
-func (x LayerMatrix_ContentType) String() string {
-	return proto.EnumName(LayerMatrix_ContentType_name, int32(x))
-}
-
-func (LayerMatrix_ContentType) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_9e7470c0107e56c6, []int{2, 0}
-}
-
-type NetworkState struct {
-	State                NetworkState_State `protobuf:"varint,1,opt,name=state,proto3,enum=remotecontrol.NetworkState_State" json:"state,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
-	XXX_unrecognized     []byte             `json:"-"`
-	XXX_sizecache        int32              `json:"-"`
-}
-
-func (m *NetworkState) Reset()         { *m = NetworkState{} }
-func (m *NetworkState) String() string { return proto.CompactTextString(m) }
-func (*NetworkState) ProtoMessage()    {}
-func (*NetworkState) Descriptor() ([]byte, []int) {
-	return fileDescriptor_9e7470c0107e56c6, []int{0}
-}
-
-func (m *NetworkState) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_NetworkState.Unmarshal(m, b)
-}
-func (m *NetworkState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_NetworkState.Marshal(b, m, deterministic)
-}
-func (m *NetworkState) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_NetworkState.Merge(m, src)
-}
-func (m *NetworkState) XXX_Size() int {
-	return xxx_messageInfo_NetworkState.Size(m)
-}
-func (m *NetworkState) XXX_DiscardUnknown() {
-	xxx_messageInfo_NetworkState.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_NetworkState proto.InternalMessageInfo
-
-func (m *NetworkState) GetState() NetworkState_State {
-	if m != nil {
-		return m.State
-	}
-	return NetworkState_None
-}
-
-type Matrix struct {
-	Matrix               []byte   `protobuf:"bytes,1,opt,name=matrix,proto3" json:"matrix,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *Matrix) Reset()         { *m = Matrix{} }
-func (m *Matrix) String() string { return proto.CompactTextString(m) }
-func (*Matrix) ProtoMessage()    {}
-func (*Matrix) Descriptor() ([]byte, []int) {
-	return fileDescriptor_9e7470c0107e56c6, []int{1}
-}
-
-func (m *Matrix) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_Matrix.Unmarshal(m, b)
-}
-func (m *Matrix) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_Matrix.Marshal(b, m, deterministic)
-}
-func (m *Matrix) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_Matrix.Merge(m, src)
-}
-func (m *Matrix) XXX_Size() int {
-	return xxx_messageInfo_Matrix.Size(m)
-}
-func (m *Matrix) XXX_DiscardUnknown() {
-	xxx_messageInfo_Matrix.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_Matrix proto.InternalMessageInfo
-
-func (m *Matrix) GetMatrix() []byte {
-	if m != nil {
-		return m.Matrix
-	}
-	return nil
-}
-
-type LayerMatrix struct {
-	ContentType          LayerMatrix_ContentType `protobuf:"varint,1,opt,name=contentType,proto3,enum=remotecontrol.LayerMatrix_ContentType" json:"contentType,omitempty"`
-	Layer                int32                   `protobuf:"zigzag32,2,opt,name=layer,proto3" json:"layer,omitempty"`
-	Matrix               *Matrix                 `protobuf:"bytes,3,opt,name=matrix,proto3" json:"matrix,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
-	XXX_unrecognized     []byte                  `json:"-"`
-	XXX_sizecache        int32                   `json:"-"`
-}
-
-func (m *LayerMatrix) Reset()         { *m = LayerMatrix{} }
-func (m *LayerMatrix) String() string { return proto.CompactTextString(m) }
-func (*LayerMatrix) ProtoMessage()    {}
-func (*LayerMatrix) Descriptor() ([]byte, []int) {
-	return fileDescriptor_9e7470c0107e56c6, []int{2}
-}
-
-func (m *LayerMatrix) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_LayerMatrix.Unmarshal(m, b)
-}
-func (m *LayerMatrix) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_LayerMatrix.Marshal(b, m, deterministic)
-}
-func (m *LayerMatrix) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_LayerMatrix.Merge(m, src)
-}
-func (m *LayerMatrix) XXX_Size() int {
-	return xxx_messageInfo_LayerMatrix.Size(m)
-}
-func (m *LayerMatrix) XXX_DiscardUnknown() {
-	xxx_messageInfo_LayerMatrix.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_LayerMatrix proto.InternalMessageInfo
-
-func (m *LayerMatrix) GetContentType() LayerMatrix_ContentType {
-	if m != nil {
-		return m.ContentType
-	}
-	return LayerMatrix_Activations
-}
-
-func (m *LayerMatrix) GetLayer() int32 {
-	if m != nil {
-		return m.Layer
-	}
-	return 0
-}
-
-func (m *LayerMatrix) GetMatrix() *Matrix {
-	if m != nil {
-		return m.Matrix
-	}
-	return nil
-}
-
-type Configuration struct {
-	Sizes                []int32  `protobuf:"zigzag32,1,rep,packed,name=sizes,proto3" json:"sizes,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *Configuration) Reset()         { *m = Configuration{} }
-func (m *Configuration) String() string { return proto.CompactTextString(m) }
-func (*Configuration) ProtoMessage()    {}
-func (*Configuration) Descriptor() ([]byte, []int) {
-	return fileDescriptor_9e7470c0107e56c6, []int{3}
-}
-
-func (m *Configuration) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_Configuration.Unmarshal(m, b)
-}
-func (m *Configuration) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_Configuration.Marshal(b, m, deterministic)
-}
-func (m *Configuration) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_Configuration.Merge(m, src)
-}
-func (m *Configuration) XXX_Size() int {
-	return xxx_messageInfo_Configuration.Size(m)
-}
-func (m *Configuration) XXX_DiscardUnknown() {
-	xxx_messageInfo_Configuration.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_Configuration proto.InternalMessageInfo
-
-func (m *Configuration) GetSizes() []int32 {
-	if m != nil {
-		return m.Sizes
-	}
-	return nil
-}
-
-type None struct {
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *None) Reset()         { *m = None{} }
-func (m *None) String() string { return proto.CompactTextString(m) }
-func (*None) ProtoMessage()    {}
-func (*None) Descriptor() ([]byte, []int) {
-	return fileDescriptor_9e7470c0107e56c6, []int{4}
-}
-
-func (m *None) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_None.Unmarshal(m, b)
-}
-func (m *None) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_None.Marshal(b, m, deterministic)
-}
-func (m *None) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_None.Merge(m, src)
-}
-func (m *None) XXX_Size() int {
-	return xxx_messageInfo_None.Size(m)
-}
-func (m *None) XXX_DiscardUnknown() {
-	xxx_messageInfo_None.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_None proto.InternalMessageInfo
-
-func init() {
-	proto.RegisterEnum("remotecontrol.NetworkState_State", NetworkState_State_name, NetworkState_State_value)
-	proto.RegisterEnum("remotecontrol.LayerMatrix_ContentType", LayerMatrix_ContentType_name, LayerMatrix_ContentType_value)
-	proto.RegisterType((*NetworkState)(nil), "remotecontrol.NetworkState")
-	proto.RegisterType((*Matrix)(nil), "remotecontrol.Matrix")
-	proto.RegisterType((*LayerMatrix)(nil), "remotecontrol.LayerMatrix")
-	proto.RegisterType((*Configuration)(nil), "remotecontrol.Configuration")
-	proto.RegisterType((*None)(nil), "remotecontrol.None")
-}
-
-func init() { proto.RegisterFile("remotecontrol.proto", fileDescriptor_9e7470c0107e56c6) }
-
-var fileDescriptor_9e7470c0107e56c6 = []byte{
-	// 422 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x53, 0x4f, 0xef, 0xd2, 0x40,
-	0x10, 0xed, 0xd2, 0x1f, 0xfd, 0xfd, 0x32, 0x05, 0x5c, 0x17, 0x35, 0x04, 0x3d, 0xd4, 0x4d, 0x34,
-	0x5c, 0x6c, 0x0c, 0x1e, 0xd0, 0x83, 0x26, 0x42, 0xe2, 0x9f, 0x04, 0x89, 0x29, 0x46, 0xcf, 0x2b,
-	0x5d, 0xeb, 0xc6, 0x76, 0x97, 0x6c, 0x17, 0x15, 0xbf, 0x84, 0x1f, 0xcd, 0x93, 0xdf, 0xc7, 0x74,
-	0x0b, 0xd8, 0x36, 0xd5, 0x03, 0x97, 0x66, 0x66, 0xf2, 0xde, 0x9b, 0x37, 0xb3, 0x53, 0x18, 0x6a,
-	0x9e, 0x29, 0xc3, 0x37, 0x4a, 0x1a, 0xad, 0xd2, 0x70, 0xab, 0x95, 0x51, 0xa4, 0x5f, 0x2b, 0xd2,
-	0x9f, 0x08, 0x7a, 0x2b, 0x6e, 0xbe, 0x29, 0xfd, 0x65, 0x6d, 0x98, 0xe1, 0x64, 0x06, 0xdd, 0xbc,
-	0x08, 0x46, 0x28, 0x40, 0x93, 0xc1, 0xf4, 0x6e, 0x58, 0x17, 0xa9, 0x62, 0x43, 0xfb, 0x8d, 0x4a,
-	0x3c, 0x7d, 0x01, 0xdd, 0x52, 0xe1, 0x0a, 0x2e, 0x56, 0x4a, 0x72, 0xec, 0x14, 0xd1, 0xeb, 0x38,
-	0xe5, 0x18, 0x91, 0x1e, 0x5c, 0x2d, 0x39, 0xd3, 0x52, 0xc8, 0x04, 0x77, 0xc8, 0x00, 0xe0, 0x3d,
-	0x4b, 0x45, 0xcc, 0x8c, 0x50, 0x12, 0xbb, 0xc4, 0x87, 0xcb, 0xb7, 0x9a, 0xc7, 0x62, 0x63, 0xf0,
-	0x05, 0x0d, 0xc0, 0x7b, 0xc3, 0x8c, 0x16, 0xdf, 0xc9, 0x2d, 0xf0, 0x32, 0x1b, 0x59, 0x2f, 0xbd,
-	0xe8, 0x90, 0xd1, 0xdf, 0x08, 0xfc, 0x25, 0xdb, 0x73, 0x7d, 0xc0, 0xbd, 0x02, 0xbf, 0xb0, 0xc7,
-	0xa5, 0x79, 0xb7, 0xdf, 0x1e, 0x8d, 0xdf, 0x6f, 0x18, 0xaf, 0x10, 0xc2, 0xc5, 0x5f, 0x74, 0x54,
-	0xa5, 0x92, 0x1b, 0xd0, 0x4d, 0x0b, 0xdc, 0xa8, 0x13, 0xa0, 0xc9, 0xf5, 0xa8, 0x4c, 0xc8, 0x83,
-	0x93, 0x0f, 0x37, 0x40, 0x13, 0x7f, 0x7a, 0xb3, 0x21, 0x5d, 0xaa, 0x9e, 0xec, 0xcd, 0xc0, 0xaf,
-	0x34, 0x20, 0xd7, 0xc0, 0x7f, 0xbe, 0x31, 0xe2, 0xab, 0x1d, 0x36, 0xc7, 0x4e, 0x31, 0xed, 0x07,
-	0x2e, 0x92, 0xcf, 0x26, 0xc7, 0x88, 0x00, 0x78, 0x73, 0xc1, 0x72, 0x9e, 0xe3, 0x0e, 0xbd, 0x07,
-	0xfd, 0x85, 0x92, 0x9f, 0x44, 0xb2, 0xd3, 0x16, 0x5c, 0xd8, 0xc9, 0xc5, 0x0f, 0x9e, 0x8f, 0x50,
-	0xe0, 0x16, 0x76, 0x6c, 0x42, 0xbd, 0x72, 0xbf, 0xd3, 0x5f, 0x2e, 0xf4, 0x23, 0x6b, 0x64, 0x51,
-	0x1a, 0x21, 0x2f, 0x01, 0x27, 0xdc, 0xd4, 0x35, 0x86, 0xcd, 0x07, 0x54, 0x92, 0x8f, 0xef, 0x34,
-	0x8a, 0x35, 0x0a, 0x75, 0xc8, 0xbc, 0xe6, 0xb9, 0x5d, 0x63, 0xfc, 0xef, 0x05, 0x53, 0xe7, 0x21,
-	0x22, 0x4f, 0x8f, 0x93, 0x9d, 0x47, 0x7f, 0x76, 0xda, 0xd2, 0xb9, 0xed, 0x0f, 0xe7, 0xd8, 0xca,
-	0xbe, 0xfd, 0x9f, 0xb3, 0xb6, 0xf4, 0x27, 0x70, 0xb9, 0x2d, 0x4f, 0x92, 0xb4, 0x3f, 0xf7, 0xb8,
-	0xbd, 0x4c, 0x1d, 0xf2, 0x18, 0x20, 0xde, 0x65, 0xd9, 0x7e, 0x6d, 0x98, 0x36, 0xed, 0xed, 0xdb,
-	0x8a, 0xd4, 0xf9, 0xe8, 0xd9, 0x5f, 0xf4, 0xd1, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x5f, 0x9d,
-	0x2f, 0xb4, 0xb9, 0x03, 0x00, 0x00,
-}
-
-// Reference imports to suppress errors if they are not otherwise used.
-var _ context.Context
-var _ grpc.ClientConn
-
-// This is a compile-time assertion to ensure that this generated file
-// is compatible with the grpc package it is being compiled against.
-const _ = grpc.SupportPackageIsVersion4
-
-// RemoteControlClient is the client API for RemoteControl service.
-//
-// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
-type RemoteControlClient interface {
-	GetConfiguration(ctx context.Context, in *None, opts ...grpc.CallOption) (*Configuration, error)
-	Activations(ctx context.Context, in *None, opts ...grpc.CallOption) (RemoteControl_ActivationsClient, error)
-	Biases(ctx context.Context, in *None, opts ...grpc.CallOption) (RemoteControl_BiasesClient, error)
-	Weights(ctx context.Context, in *None, opts ...grpc.CallOption) (RemoteControl_WeightsClient, error)
-	State(ctx context.Context, in *None, opts ...grpc.CallOption) (RemoteControl_StateClient, error)
-	Predict(ctx context.Context, in *Matrix, opts ...grpc.CallOption) (*Matrix, error)
-	DummyStart(ctx context.Context, in *None, opts ...grpc.CallOption) (*None, error)
-}
-
-type remoteControlClient struct {
-	cc *grpc.ClientConn
-}
-
-func NewRemoteControlClient(cc *grpc.ClientConn) RemoteControlClient {
-	return &remoteControlClient{cc}
-}
-
-func (c *remoteControlClient) GetConfiguration(ctx context.Context, in *None, opts ...grpc.CallOption) (*Configuration, error) {
-	out := new(Configuration)
-	err := c.cc.Invoke(ctx, "/remotecontrol.RemoteControl/getConfiguration", in, out, opts...)
-	if err != nil {
-		return nil, err
-	}
-	return out, nil
-}
-
-func (c *remoteControlClient) Activations(ctx context.Context, in *None, opts ...grpc.CallOption) (RemoteControl_ActivationsClient, error) {
-	stream, err := c.cc.NewStream(ctx, &_RemoteControl_serviceDesc.Streams[0], "/remotecontrol.RemoteControl/Activations", opts...)
-	if err != nil {
-		return nil, err
-	}
-	x := &remoteControlActivationsClient{stream}
-	if err := x.ClientStream.SendMsg(in); err != nil {
-		return nil, err
-	}
-	if err := x.ClientStream.CloseSend(); err != nil {
-		return nil, err
-	}
-	return x, nil
-}
-
-type RemoteControl_ActivationsClient interface {
-	Recv() (*LayerMatrix, error)
-	grpc.ClientStream
-}
-
-type remoteControlActivationsClient struct {
-	grpc.ClientStream
-}
-
-func (x *remoteControlActivationsClient) Recv() (*LayerMatrix, error) {
-	m := new(LayerMatrix)
-	if err := x.ClientStream.RecvMsg(m); err != nil {
-		return nil, err
-	}
-	return m, nil
-}
-
-func (c *remoteControlClient) Biases(ctx context.Context, in *None, opts ...grpc.CallOption) (RemoteControl_BiasesClient, error) {
-	stream, err := c.cc.NewStream(ctx, &_RemoteControl_serviceDesc.Streams[1], "/remotecontrol.RemoteControl/Biases", opts...)
-	if err != nil {
-		return nil, err
-	}
-	x := &remoteControlBiasesClient{stream}
-	if err := x.ClientStream.SendMsg(in); err != nil {
-		return nil, err
-	}
-	if err := x.ClientStream.CloseSend(); err != nil {
-		return nil, err
-	}
-	return x, nil
-}
-
-type RemoteControl_BiasesClient interface {
-	Recv() (*LayerMatrix, error)
-	grpc.ClientStream
-}
-
-type remoteControlBiasesClient struct {
-	grpc.ClientStream
-}
-
-func (x *remoteControlBiasesClient) Recv() (*LayerMatrix, error) {
-	m := new(LayerMatrix)
-	if err := x.ClientStream.RecvMsg(m); err != nil {
-		return nil, err
-	}
-	return m, nil
-}
-
-func (c *remoteControlClient) Weights(ctx context.Context, in *None, opts ...grpc.CallOption) (RemoteControl_WeightsClient, error) {
-	stream, err := c.cc.NewStream(ctx, &_RemoteControl_serviceDesc.Streams[2], "/remotecontrol.RemoteControl/Weights", opts...)
-	if err != nil {
-		return nil, err
-	}
-	x := &remoteControlWeightsClient{stream}
-	if err := x.ClientStream.SendMsg(in); err != nil {
-		return nil, err
-	}
-	if err := x.ClientStream.CloseSend(); err != nil {
-		return nil, err
-	}
-	return x, nil
-}
-
-type RemoteControl_WeightsClient interface {
-	Recv() (*LayerMatrix, error)
-	grpc.ClientStream
-}
-
-type remoteControlWeightsClient struct {
-	grpc.ClientStream
-}
-
-func (x *remoteControlWeightsClient) Recv() (*LayerMatrix, error) {
-	m := new(LayerMatrix)
-	if err := x.ClientStream.RecvMsg(m); err != nil {
-		return nil, err
-	}
-	return m, nil
-}
-
-func (c *remoteControlClient) State(ctx context.Context, in *None, opts ...grpc.CallOption) (RemoteControl_StateClient, error) {
-	stream, err := c.cc.NewStream(ctx, &_RemoteControl_serviceDesc.Streams[3], "/remotecontrol.RemoteControl/State", opts...)
-	if err != nil {
-		return nil, err
-	}
-	x := &remoteControlStateClient{stream}
-	if err := x.ClientStream.SendMsg(in); err != nil {
-		return nil, err
-	}
-	if err := x.ClientStream.CloseSend(); err != nil {
-		return nil, err
-	}
-	return x, nil
-}
-
-type RemoteControl_StateClient interface {
-	Recv() (*NetworkState, error)
-	grpc.ClientStream
-}
-
-type remoteControlStateClient struct {
-	grpc.ClientStream
-}
-
-func (x *remoteControlStateClient) Recv() (*NetworkState, error) {
-	m := new(NetworkState)
-	if err := x.ClientStream.RecvMsg(m); err != nil {
-		return nil, err
-	}
-	return m, nil
-}
-
-func (c *remoteControlClient) Predict(ctx context.Context, in *Matrix, opts ...grpc.CallOption) (*Matrix, error) {
-	out := new(Matrix)
-	err := c.cc.Invoke(ctx, "/remotecontrol.RemoteControl/predict", in, out, opts...)
-	if err != nil {
-		return nil, err
-	}
-	return out, nil
-}
-
-func (c *remoteControlClient) DummyStart(ctx context.Context, in *None, opts ...grpc.CallOption) (*None, error) {
-	out := new(None)
-	err := c.cc.Invoke(ctx, "/remotecontrol.RemoteControl/dummyStart", in, out, opts...)
-	if err != nil {
-		return nil, err
-	}
-	return out, nil
-}
-
-// RemoteControlServer is the server API for RemoteControl service.
-type RemoteControlServer interface {
-	GetConfiguration(context.Context, *None) (*Configuration, error)
-	Activations(*None, RemoteControl_ActivationsServer) error
-	Biases(*None, RemoteControl_BiasesServer) error
-	Weights(*None, RemoteControl_WeightsServer) error
-	State(*None, RemoteControl_StateServer) error
-	Predict(context.Context, *Matrix) (*Matrix, error)
-	DummyStart(context.Context, *None) (*None, error)
-}
-
-// UnimplementedRemoteControlServer can be embedded to have forward compatible implementations.
-type UnimplementedRemoteControlServer struct {
-}
-
-func (*UnimplementedRemoteControlServer) GetConfiguration(ctx context.Context, req *None) (*Configuration, error) {
-	return nil, status.Errorf(codes.Unimplemented, "method GetConfiguration not implemented")
-}
-func (*UnimplementedRemoteControlServer) Activations(req *None, srv RemoteControl_ActivationsServer) error {
-	return status.Errorf(codes.Unimplemented, "method Activations not implemented")
-}
-func (*UnimplementedRemoteControlServer) Biases(req *None, srv RemoteControl_BiasesServer) error {
-	return status.Errorf(codes.Unimplemented, "method Biases not implemented")
-}
-func (*UnimplementedRemoteControlServer) Weights(req *None, srv RemoteControl_WeightsServer) error {
-	return status.Errorf(codes.Unimplemented, "method Weights not implemented")
-}
-func (*UnimplementedRemoteControlServer) State(req *None, srv RemoteControl_StateServer) error {
-	return status.Errorf(codes.Unimplemented, "method State not implemented")
-}
-func (*UnimplementedRemoteControlServer) Predict(ctx context.Context, req *Matrix) (*Matrix, error) {
-	return nil, status.Errorf(codes.Unimplemented, "method Predict not implemented")
-}
-func (*UnimplementedRemoteControlServer) DummyStart(ctx context.Context, req *None) (*None, error) {
-	return nil, status.Errorf(codes.Unimplemented, "method DummyStart not implemented")
-}
-
-func RegisterRemoteControlServer(s *grpc.Server, srv RemoteControlServer) {
-	s.RegisterService(&_RemoteControl_serviceDesc, srv)
-}
-
-func _RemoteControl_GetConfiguration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
-	in := new(None)
-	if err := dec(in); err != nil {
-		return nil, err
-	}
-	if interceptor == nil {
-		return srv.(RemoteControlServer).GetConfiguration(ctx, in)
-	}
-	info := &grpc.UnaryServerInfo{
-		Server:     srv,
-		FullMethod: "/remotecontrol.RemoteControl/GetConfiguration",
-	}
-	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
-		return srv.(RemoteControlServer).GetConfiguration(ctx, req.(*None))
-	}
-	return interceptor(ctx, in, info, handler)
-}
-
-func _RemoteControl_Activations_Handler(srv interface{}, stream grpc.ServerStream) error {
-	m := new(None)
-	if err := stream.RecvMsg(m); err != nil {
-		return err
-	}
-	return srv.(RemoteControlServer).Activations(m, &remoteControlActivationsServer{stream})
-}
-
-type RemoteControl_ActivationsServer interface {
-	Send(*LayerMatrix) error
-	grpc.ServerStream
-}
-
-type remoteControlActivationsServer struct {
-	grpc.ServerStream
-}
-
-func (x *remoteControlActivationsServer) Send(m *LayerMatrix) error {
-	return x.ServerStream.SendMsg(m)
-}
-
-func _RemoteControl_Biases_Handler(srv interface{}, stream grpc.ServerStream) error {
-	m := new(None)
-	if err := stream.RecvMsg(m); err != nil {
-		return err
-	}
-	return srv.(RemoteControlServer).Biases(m, &remoteControlBiasesServer{stream})
-}
-
-type RemoteControl_BiasesServer interface {
-	Send(*LayerMatrix) error
-	grpc.ServerStream
-}
-
-type remoteControlBiasesServer struct {
-	grpc.ServerStream
-}
-
-func (x *remoteControlBiasesServer) Send(m *LayerMatrix) error {
-	return x.ServerStream.SendMsg(m)
-}
-
-func _RemoteControl_Weights_Handler(srv interface{}, stream grpc.ServerStream) error {
-	m := new(None)
-	if err := stream.RecvMsg(m); err != nil {
-		return err
-	}
-	return srv.(RemoteControlServer).Weights(m, &remoteControlWeightsServer{stream})
-}
-
-type RemoteControl_WeightsServer interface {
-	Send(*LayerMatrix) error
-	grpc.ServerStream
-}
-
-type remoteControlWeightsServer struct {
-	grpc.ServerStream
-}
-
-func (x *remoteControlWeightsServer) Send(m *LayerMatrix) error {
-	return x.ServerStream.SendMsg(m)
-}
-
-func _RemoteControl_State_Handler(srv interface{}, stream grpc.ServerStream) error {
-	m := new(None)
-	if err := stream.RecvMsg(m); err != nil {
-		return err
-	}
-	return srv.(RemoteControlServer).State(m, &remoteControlStateServer{stream})
-}
-
-type RemoteControl_StateServer interface {
-	Send(*NetworkState) error
-	grpc.ServerStream
-}
-
-type remoteControlStateServer struct {
-	grpc.ServerStream
-}
-
-func (x *remoteControlStateServer) Send(m *NetworkState) error {
-	return x.ServerStream.SendMsg(m)
-}
-
-func _RemoteControl_Predict_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
-	in := new(Matrix)
-	if err := dec(in); err != nil {
-		return nil, err
-	}
-	if interceptor == nil {
-		return srv.(RemoteControlServer).Predict(ctx, in)
-	}
-	info := &grpc.UnaryServerInfo{
-		Server:     srv,
-		FullMethod: "/remotecontrol.RemoteControl/Predict",
-	}
-	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
-		return srv.(RemoteControlServer).Predict(ctx, req.(*Matrix))
-	}
-	return interceptor(ctx, in, info, handler)
-}
-
-func _RemoteControl_DummyStart_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
-	in := new(None)
-	if err := dec(in); err != nil {
-		return nil, err
-	}
-	if interceptor == nil {
-		return srv.(RemoteControlServer).DummyStart(ctx, in)
-	}
-	info := &grpc.UnaryServerInfo{
-		Server:     srv,
-		FullMethod: "/remotecontrol.RemoteControl/DummyStart",
-	}
-	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
-		return srv.(RemoteControlServer).DummyStart(ctx, req.(*None))
-	}
-	return interceptor(ctx, in, info, handler)
-}
-
-var _RemoteControl_serviceDesc = grpc.ServiceDesc{
-	ServiceName: "remotecontrol.RemoteControl",
-	HandlerType: (*RemoteControlServer)(nil),
-	Methods: []grpc.MethodDesc{
-		{
-			MethodName: "getConfiguration",
-			Handler:    _RemoteControl_GetConfiguration_Handler,
-		},
-		{
-			MethodName: "predict",
-			Handler:    _RemoteControl_Predict_Handler,
-		},
-		{
-			MethodName: "dummyStart",
-			Handler:    _RemoteControl_DummyStart_Handler,
-		},
-	},
-	Streams: []grpc.StreamDesc{
-		{
-			StreamName:    "Activations",
-			Handler:       _RemoteControl_Activations_Handler,
-			ServerStreams: true,
-		},
-		{
-			StreamName:    "Biases",
-			Handler:       _RemoteControl_Biases_Handler,
-			ServerStreams: true,
-		},
-		{
-			StreamName:    "Weights",
-			Handler:       _RemoteControl_Weights_Handler,
-			ServerStreams: true,
-		},
-		{
-			StreamName:    "State",
-			Handler:       _RemoteControl_State_Handler,
-			ServerStreams: true,
-		},
-	},
-	Metadata: "remotecontrol.proto",
-}

+ 0 - 634
snakesimulator/snakesimulator/snakesimulator.pb.go

@@ -1,634 +0,0 @@
-// Code generated by protoc-gen-go. DO NOT EDIT.
-// source: snakesimulator.proto
-
-package snakesimulator
-
-import (
-	context "context"
-	fmt "fmt"
-	proto "github.com/golang/protobuf/proto"
-	grpc "google.golang.org/grpc"
-	codes "google.golang.org/grpc/codes"
-	status "google.golang.org/grpc/status"
-	math "math"
-)
-
-// Reference imports to suppress errors if they are not otherwise used.
-var _ = proto.Marshal
-var _ = fmt.Errorf
-var _ = math.Inf
-
-// This is a compile-time assertion to ensure that this generated file
-// is compatible with the proto package it is being compiled against.
-// A compilation error at this line likely means your copy of the
-// proto package needs to be updated.
-const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
-
-type Direction int32
-
-const (
-	Direction_Unknown Direction = 0
-	Direction_Up      Direction = 1
-	Direction_Down    Direction = 2
-	Direction_Left    Direction = 3
-	Direction_Right   Direction = 4
-)
-
-var Direction_name = map[int32]string{
-	0: "Unknown",
-	1: "Up",
-	2: "Down",
-	3: "Left",
-	4: "Right",
-}
-
-var Direction_value = map[string]int32{
-	"Unknown": 0,
-	"Up":      1,
-	"Down":    2,
-	"Left":    3,
-	"Right":   4,
-}
-
-func (x Direction) String() string {
-	return proto.EnumName(Direction_name, int32(x))
-}
-
-func (Direction) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_b704e55df18a3970, []int{0}
-}
-
-type Point struct {
-	X                    uint32   `protobuf:"varint,1,opt,name=x,proto3" json:"x,omitempty"`
-	Y                    uint32   `protobuf:"varint,2,opt,name=y,proto3" json:"y,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *Point) Reset()         { *m = Point{} }
-func (m *Point) String() string { return proto.CompactTextString(m) }
-func (*Point) ProtoMessage()    {}
-func (*Point) Descriptor() ([]byte, []int) {
-	return fileDescriptor_b704e55df18a3970, []int{0}
-}
-
-func (m *Point) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_Point.Unmarshal(m, b)
-}
-func (m *Point) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_Point.Marshal(b, m, deterministic)
-}
-func (m *Point) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_Point.Merge(m, src)
-}
-func (m *Point) XXX_Size() int {
-	return xxx_messageInfo_Point.Size(m)
-}
-func (m *Point) XXX_DiscardUnknown() {
-	xxx_messageInfo_Point.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_Point proto.InternalMessageInfo
-
-func (m *Point) GetX() uint32 {
-	if m != nil {
-		return m.X
-	}
-	return 0
-}
-
-func (m *Point) GetY() uint32 {
-	if m != nil {
-		return m.Y
-	}
-	return 0
-}
-
-type Snake struct {
-	Points               []*Point `protobuf:"bytes,1,rep,name=points,proto3" json:"points,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *Snake) Reset()         { *m = Snake{} }
-func (m *Snake) String() string { return proto.CompactTextString(m) }
-func (*Snake) ProtoMessage()    {}
-func (*Snake) Descriptor() ([]byte, []int) {
-	return fileDescriptor_b704e55df18a3970, []int{1}
-}
-
-func (m *Snake) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_Snake.Unmarshal(m, b)
-}
-func (m *Snake) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_Snake.Marshal(b, m, deterministic)
-}
-func (m *Snake) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_Snake.Merge(m, src)
-}
-func (m *Snake) XXX_Size() int {
-	return xxx_messageInfo_Snake.Size(m)
-}
-func (m *Snake) XXX_DiscardUnknown() {
-	xxx_messageInfo_Snake.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_Snake proto.InternalMessageInfo
-
-func (m *Snake) GetPoints() []*Point {
-	if m != nil {
-		return m.Points
-	}
-	return nil
-}
-
-type Field struct {
-	Width                uint32   `protobuf:"varint,1,opt,name=width,proto3" json:"width,omitempty"`
-	Height               uint32   `protobuf:"varint,2,opt,name=height,proto3" json:"height,omitempty"`
-	Food                 *Point   `protobuf:"bytes,3,opt,name=food,proto3" json:"food,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *Field) Reset()         { *m = Field{} }
-func (m *Field) String() string { return proto.CompactTextString(m) }
-func (*Field) ProtoMessage()    {}
-func (*Field) Descriptor() ([]byte, []int) {
-	return fileDescriptor_b704e55df18a3970, []int{2}
-}
-
-func (m *Field) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_Field.Unmarshal(m, b)
-}
-func (m *Field) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_Field.Marshal(b, m, deterministic)
-}
-func (m *Field) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_Field.Merge(m, src)
-}
-func (m *Field) XXX_Size() int {
-	return xxx_messageInfo_Field.Size(m)
-}
-func (m *Field) XXX_DiscardUnknown() {
-	xxx_messageInfo_Field.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_Field proto.InternalMessageInfo
-
-func (m *Field) GetWidth() uint32 {
-	if m != nil {
-		return m.Width
-	}
-	return 0
-}
-
-func (m *Field) GetHeight() uint32 {
-	if m != nil {
-		return m.Height
-	}
-	return 0
-}
-
-func (m *Field) GetFood() *Point {
-	if m != nil {
-		return m.Food
-	}
-	return nil
-}
-
-type Stats struct {
-	Generation           uint32   `protobuf:"varint,1,opt,name=generation,proto3" json:"generation,omitempty"`
-	Individual           uint32   `protobuf:"varint,2,opt,name=individual,proto3" json:"individual,omitempty"`
-	Move                 uint32   `protobuf:"varint,3,opt,name=move,proto3" json:"move,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *Stats) Reset()         { *m = Stats{} }
-func (m *Stats) String() string { return proto.CompactTextString(m) }
-func (*Stats) ProtoMessage()    {}
-func (*Stats) Descriptor() ([]byte, []int) {
-	return fileDescriptor_b704e55df18a3970, []int{3}
-}
-
-func (m *Stats) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_Stats.Unmarshal(m, b)
-}
-func (m *Stats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_Stats.Marshal(b, m, deterministic)
-}
-func (m *Stats) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_Stats.Merge(m, src)
-}
-func (m *Stats) XXX_Size() int {
-	return xxx_messageInfo_Stats.Size(m)
-}
-func (m *Stats) XXX_DiscardUnknown() {
-	xxx_messageInfo_Stats.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_Stats proto.InternalMessageInfo
-
-func (m *Stats) GetGeneration() uint32 {
-	if m != nil {
-		return m.Generation
-	}
-	return 0
-}
-
-func (m *Stats) GetIndividual() uint32 {
-	if m != nil {
-		return m.Individual
-	}
-	return 0
-}
-
-func (m *Stats) GetMove() uint32 {
-	if m != nil {
-		return m.Move
-	}
-	return 0
-}
-
-type Speed struct {
-	Speed                uint32   `protobuf:"varint,1,opt,name=speed,proto3" json:"speed,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *Speed) Reset()         { *m = Speed{} }
-func (m *Speed) String() string { return proto.CompactTextString(m) }
-func (*Speed) ProtoMessage()    {}
-func (*Speed) Descriptor() ([]byte, []int) {
-	return fileDescriptor_b704e55df18a3970, []int{4}
-}
-
-func (m *Speed) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_Speed.Unmarshal(m, b)
-}
-func (m *Speed) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_Speed.Marshal(b, m, deterministic)
-}
-func (m *Speed) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_Speed.Merge(m, src)
-}
-func (m *Speed) XXX_Size() int {
-	return xxx_messageInfo_Speed.Size(m)
-}
-func (m *Speed) XXX_DiscardUnknown() {
-	xxx_messageInfo_Speed.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_Speed proto.InternalMessageInfo
-
-func (m *Speed) GetSpeed() uint32 {
-	if m != nil {
-		return m.Speed
-	}
-	return 0
-}
-
-type None struct {
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
-}
-
-func (m *None) Reset()         { *m = None{} }
-func (m *None) String() string { return proto.CompactTextString(m) }
-func (*None) ProtoMessage()    {}
-func (*None) Descriptor() ([]byte, []int) {
-	return fileDescriptor_b704e55df18a3970, []int{5}
-}
-
-func (m *None) XXX_Unmarshal(b []byte) error {
-	return xxx_messageInfo_None.Unmarshal(m, b)
-}
-func (m *None) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
-	return xxx_messageInfo_None.Marshal(b, m, deterministic)
-}
-func (m *None) XXX_Merge(src proto.Message) {
-	xxx_messageInfo_None.Merge(m, src)
-}
-func (m *None) XXX_Size() int {
-	return xxx_messageInfo_None.Size(m)
-}
-func (m *None) XXX_DiscardUnknown() {
-	xxx_messageInfo_None.DiscardUnknown(m)
-}
-
-var xxx_messageInfo_None proto.InternalMessageInfo
-
-func init() {
-	proto.RegisterEnum("snakesimulator.Direction", Direction_name, Direction_value)
-	proto.RegisterType((*Point)(nil), "snakesimulator.Point")
-	proto.RegisterType((*Snake)(nil), "snakesimulator.Snake")
-	proto.RegisterType((*Field)(nil), "snakesimulator.Field")
-	proto.RegisterType((*Stats)(nil), "snakesimulator.Stats")
-	proto.RegisterType((*Speed)(nil), "snakesimulator.Speed")
-	proto.RegisterType((*None)(nil), "snakesimulator.None")
-}
-
-func init() { proto.RegisterFile("snakesimulator.proto", fileDescriptor_b704e55df18a3970) }
-
-var fileDescriptor_b704e55df18a3970 = []byte{
-	// 357 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x92, 0xcf, 0x6b, 0xfa, 0x40,
-	0x10, 0xc5, 0x5d, 0xcd, 0xe6, 0xab, 0xe3, 0x57, 0x09, 0x8b, 0x2d, 0x41, 0x68, 0x91, 0xed, 0xc5,
-	0x16, 0x2a, 0xc5, 0x42, 0x69, 0x4f, 0xbd, 0x48, 0x4f, 0xa5, 0x94, 0x04, 0x4f, 0xbd, 0x34, 0x6d,
-	0x56, 0x5d, 0xd4, 0xdd, 0x90, 0xac, 0xbf, 0xfe, 0xf4, 0xde, 0xca, 0x4e, 0x22, 0x58, 0x6d, 0xc1,
-	0xdb, 0xcc, 0xe4, 0xbd, 0xfd, 0xec, 0xbc, 0x2c, 0xb4, 0x32, 0x15, 0x4d, 0x45, 0x26, 0xe7, 0x8b,
-	0x59, 0x64, 0x74, 0xda, 0x4b, 0x52, 0x6d, 0x34, 0x6b, 0xfe, 0x9c, 0xf2, 0x0b, 0xa0, 0xaf, 0x5a,
-	0x2a, 0xc3, 0xfe, 0x03, 0x59, 0xfb, 0xa4, 0x43, 0xba, 0x8d, 0x80, 0xac, 0x6d, 0xb7, 0xf1, 0xcb,
-	0x79, 0xb7, 0xe1, 0x77, 0x40, 0x43, 0x6b, 0x63, 0xd7, 0xe0, 0x26, 0x56, 0x9d, 0xf9, 0xa4, 0x53,
-	0xe9, 0xd6, 0xfb, 0x27, 0xbd, 0x3d, 0x08, 0x9e, 0x15, 0x14, 0x22, 0xfe, 0x0e, 0xf4, 0x49, 0x8a,
-	0x59, 0xcc, 0x5a, 0x40, 0x57, 0x32, 0x36, 0x93, 0x02, 0x90, 0x37, 0xec, 0x14, 0xdc, 0x89, 0x90,
-	0xe3, 0x89, 0x29, 0x48, 0x45, 0xc7, 0x2e, 0xc1, 0x19, 0x69, 0x1d, 0xfb, 0x95, 0x0e, 0xf9, 0x9b,
-	0x81, 0x12, 0xfe, 0x06, 0x34, 0x34, 0x91, 0xc9, 0xd8, 0x39, 0xc0, 0x58, 0x28, 0x91, 0x46, 0x46,
-	0x6a, 0x55, 0x60, 0x76, 0x26, 0xf6, 0xbb, 0x54, 0xb1, 0x5c, 0xca, 0x78, 0x11, 0xcd, 0x0a, 0xde,
-	0xce, 0x84, 0x31, 0x70, 0xe6, 0x7a, 0x29, 0x90, 0xd9, 0x08, 0xb0, 0xe6, 0x67, 0x40, 0xc3, 0x44,
-	0x08, 0xbc, 0x7e, 0x66, 0x8b, 0xed, 0xf5, 0xb1, 0xe1, 0x2e, 0x38, 0x2f, 0x5a, 0x89, 0xab, 0x47,
-	0xa8, 0x0d, 0x64, 0x2a, 0x3e, 0x91, 0x53, 0x87, 0x7f, 0x43, 0x35, 0x55, 0x7a, 0xa5, 0xbc, 0x12,
-	0x73, 0xa1, 0x3c, 0x4c, 0x3c, 0xc2, 0xaa, 0xe0, 0x0c, 0xec, 0xa4, 0x6c, 0xab, 0x67, 0x31, 0x32,
-	0x5e, 0x85, 0xd5, 0x80, 0x06, 0x76, 0x5b, 0xcf, 0xe9, 0x7f, 0x11, 0x68, 0x62, 0xbe, 0xe1, 0x76,
-	0x47, 0x76, 0x0f, 0x14, 0xb7, 0x66, 0xad, 0xfd, 0xed, 0x2d, 0xb2, 0x7d, 0x90, 0x09, 0xda, 0x79,
-	0xe9, 0x86, 0x58, 0xe7, 0x28, 0xcf, 0xfc, 0x38, 0x27, 0xfe, 0xa0, 0xad, 0x33, 0xc3, 0x2c, 0x8f,
-	0x65, 0x5a, 0x31, 0x3a, 0x1f, 0xa0, 0x9a, 0x09, 0x93, 0x67, 0x75, 0x28, 0xb3, 0xe3, 0xf6, 0xaf,
-	0x67, 0xf2, 0xd2, 0x87, 0x8b, 0xcf, 0xf2, 0xf6, 0x3b, 0x00, 0x00, 0xff, 0xff, 0x27, 0xde, 0x83,
-	0x77, 0xae, 0x02, 0x00, 0x00,
-}
-
-// Reference imports to suppress errors if they are not otherwise used.
-var _ context.Context
-var _ grpc.ClientConn
-
-// This is a compile-time assertion to ensure that this generated file
-// is compatible with the grpc package it is being compiled against.
-const _ = grpc.SupportPackageIsVersion4
-
-// SnakeSimulatorClient is the client API for SnakeSimulator service.
-//
-// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
-type SnakeSimulatorClient interface {
-	Snake(ctx context.Context, in *None, opts ...grpc.CallOption) (SnakeSimulator_SnakeClient, error)
-	Field(ctx context.Context, in *None, opts ...grpc.CallOption) (SnakeSimulator_FieldClient, error)
-	Stats(ctx context.Context, in *None, opts ...grpc.CallOption) (SnakeSimulator_StatsClient, error)
-	SetSpeed(ctx context.Context, in *Speed, opts ...grpc.CallOption) (*None, error)
-}
-
-type snakeSimulatorClient struct {
-	cc *grpc.ClientConn
-}
-
-func NewSnakeSimulatorClient(cc *grpc.ClientConn) SnakeSimulatorClient {
-	return &snakeSimulatorClient{cc}
-}
-
-func (c *snakeSimulatorClient) Snake(ctx context.Context, in *None, opts ...grpc.CallOption) (SnakeSimulator_SnakeClient, error) {
-	stream, err := c.cc.NewStream(ctx, &_SnakeSimulator_serviceDesc.Streams[0], "/snakesimulator.SnakeSimulator/snake", opts...)
-	if err != nil {
-		return nil, err
-	}
-	x := &snakeSimulatorSnakeClient{stream}
-	if err := x.ClientStream.SendMsg(in); err != nil {
-		return nil, err
-	}
-	if err := x.ClientStream.CloseSend(); err != nil {
-		return nil, err
-	}
-	return x, nil
-}
-
-type SnakeSimulator_SnakeClient interface {
-	Recv() (*Snake, error)
-	grpc.ClientStream
-}
-
-type snakeSimulatorSnakeClient struct {
-	grpc.ClientStream
-}
-
-func (x *snakeSimulatorSnakeClient) Recv() (*Snake, error) {
-	m := new(Snake)
-	if err := x.ClientStream.RecvMsg(m); err != nil {
-		return nil, err
-	}
-	return m, nil
-}
-
-func (c *snakeSimulatorClient) Field(ctx context.Context, in *None, opts ...grpc.CallOption) (SnakeSimulator_FieldClient, error) {
-	stream, err := c.cc.NewStream(ctx, &_SnakeSimulator_serviceDesc.Streams[1], "/snakesimulator.SnakeSimulator/field", opts...)
-	if err != nil {
-		return nil, err
-	}
-	x := &snakeSimulatorFieldClient{stream}
-	if err := x.ClientStream.SendMsg(in); err != nil {
-		return nil, err
-	}
-	if err := x.ClientStream.CloseSend(); err != nil {
-		return nil, err
-	}
-	return x, nil
-}
-
-type SnakeSimulator_FieldClient interface {
-	Recv() (*Field, error)
-	grpc.ClientStream
-}
-
-type snakeSimulatorFieldClient struct {
-	grpc.ClientStream
-}
-
-func (x *snakeSimulatorFieldClient) Recv() (*Field, error) {
-	m := new(Field)
-	if err := x.ClientStream.RecvMsg(m); err != nil {
-		return nil, err
-	}
-	return m, nil
-}
-
-func (c *snakeSimulatorClient) Stats(ctx context.Context, in *None, opts ...grpc.CallOption) (SnakeSimulator_StatsClient, error) {
-	stream, err := c.cc.NewStream(ctx, &_SnakeSimulator_serviceDesc.Streams[2], "/snakesimulator.SnakeSimulator/stats", opts...)
-	if err != nil {
-		return nil, err
-	}
-	x := &snakeSimulatorStatsClient{stream}
-	if err := x.ClientStream.SendMsg(in); err != nil {
-		return nil, err
-	}
-	if err := x.ClientStream.CloseSend(); err != nil {
-		return nil, err
-	}
-	return x, nil
-}
-
-type SnakeSimulator_StatsClient interface {
-	Recv() (*Stats, error)
-	grpc.ClientStream
-}
-
-type snakeSimulatorStatsClient struct {
-	grpc.ClientStream
-}
-
-func (x *snakeSimulatorStatsClient) Recv() (*Stats, error) {
-	m := new(Stats)
-	if err := x.ClientStream.RecvMsg(m); err != nil {
-		return nil, err
-	}
-	return m, nil
-}
-
-func (c *snakeSimulatorClient) SetSpeed(ctx context.Context, in *Speed, opts ...grpc.CallOption) (*None, error) {
-	out := new(None)
-	err := c.cc.Invoke(ctx, "/snakesimulator.SnakeSimulator/setSpeed", in, out, opts...)
-	if err != nil {
-		return nil, err
-	}
-	return out, nil
-}
-
-// SnakeSimulatorServer is the server API for SnakeSimulator service.
-type SnakeSimulatorServer interface {
-	Snake(*None, SnakeSimulator_SnakeServer) error
-	Field(*None, SnakeSimulator_FieldServer) error
-	Stats(*None, SnakeSimulator_StatsServer) error
-	SetSpeed(context.Context, *Speed) (*None, error)
-}
-
-// UnimplementedSnakeSimulatorServer can be embedded to have forward compatible implementations.
-type UnimplementedSnakeSimulatorServer struct {
-}
-
-func (*UnimplementedSnakeSimulatorServer) Snake(req *None, srv SnakeSimulator_SnakeServer) error {
-	return status.Errorf(codes.Unimplemented, "method Snake not implemented")
-}
-func (*UnimplementedSnakeSimulatorServer) Field(req *None, srv SnakeSimulator_FieldServer) error {
-	return status.Errorf(codes.Unimplemented, "method Field not implemented")
-}
-func (*UnimplementedSnakeSimulatorServer) Stats(req *None, srv SnakeSimulator_StatsServer) error {
-	return status.Errorf(codes.Unimplemented, "method Stats not implemented")
-}
-func (*UnimplementedSnakeSimulatorServer) SetSpeed(ctx context.Context, req *Speed) (*None, error) {
-	return nil, status.Errorf(codes.Unimplemented, "method SetSpeed not implemented")
-}
-
-func RegisterSnakeSimulatorServer(s *grpc.Server, srv SnakeSimulatorServer) {
-	s.RegisterService(&_SnakeSimulator_serviceDesc, srv)
-}
-
-func _SnakeSimulator_Snake_Handler(srv interface{}, stream grpc.ServerStream) error {
-	m := new(None)
-	if err := stream.RecvMsg(m); err != nil {
-		return err
-	}
-	return srv.(SnakeSimulatorServer).Snake(m, &snakeSimulatorSnakeServer{stream})
-}
-
-type SnakeSimulator_SnakeServer interface {
-	Send(*Snake) error
-	grpc.ServerStream
-}
-
-type snakeSimulatorSnakeServer struct {
-	grpc.ServerStream
-}
-
-func (x *snakeSimulatorSnakeServer) Send(m *Snake) error {
-	return x.ServerStream.SendMsg(m)
-}
-
-func _SnakeSimulator_Field_Handler(srv interface{}, stream grpc.ServerStream) error {
-	m := new(None)
-	if err := stream.RecvMsg(m); err != nil {
-		return err
-	}
-	return srv.(SnakeSimulatorServer).Field(m, &snakeSimulatorFieldServer{stream})
-}
-
-type SnakeSimulator_FieldServer interface {
-	Send(*Field) error
-	grpc.ServerStream
-}
-
-type snakeSimulatorFieldServer struct {
-	grpc.ServerStream
-}
-
-func (x *snakeSimulatorFieldServer) Send(m *Field) error {
-	return x.ServerStream.SendMsg(m)
-}
-
-func _SnakeSimulator_Stats_Handler(srv interface{}, stream grpc.ServerStream) error {
-	m := new(None)
-	if err := stream.RecvMsg(m); err != nil {
-		return err
-	}
-	return srv.(SnakeSimulatorServer).Stats(m, &snakeSimulatorStatsServer{stream})
-}
-
-type SnakeSimulator_StatsServer interface {
-	Send(*Stats) error
-	grpc.ServerStream
-}
-
-type snakeSimulatorStatsServer struct {
-	grpc.ServerStream
-}
-
-func (x *snakeSimulatorStatsServer) Send(m *Stats) error {
-	return x.ServerStream.SendMsg(m)
-}
-
-func _SnakeSimulator_SetSpeed_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
-	in := new(Speed)
-	if err := dec(in); err != nil {
-		return nil, err
-	}
-	if interceptor == nil {
-		return srv.(SnakeSimulatorServer).SetSpeed(ctx, in)
-	}
-	info := &grpc.UnaryServerInfo{
-		Server:     srv,
-		FullMethod: "/snakesimulator.SnakeSimulator/SetSpeed",
-	}
-	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
-		return srv.(SnakeSimulatorServer).SetSpeed(ctx, req.(*Speed))
-	}
-	return interceptor(ctx, in, info, handler)
-}
-
-var _SnakeSimulator_serviceDesc = grpc.ServiceDesc{
-	ServiceName: "snakesimulator.SnakeSimulator",
-	HandlerType: (*SnakeSimulatorServer)(nil),
-	Methods: []grpc.MethodDesc{
-		{
-			MethodName: "setSpeed",
-			Handler:    _SnakeSimulator_SetSpeed_Handler,
-		},
-	},
-	Streams: []grpc.StreamDesc{
-		{
-			StreamName:    "snake",
-			Handler:       _SnakeSimulator_Snake_Handler,
-			ServerStreams: true,
-		},
-		{
-			StreamName:    "field",
-			Handler:       _SnakeSimulator_Field_Handler,
-			ServerStreams: true,
-		},
-		{
-			StreamName:    "stats",
-			Handler:       _SnakeSimulator_Stats_Handler,
-			ServerStreams: true,
-		},
-	},
-	Metadata: "snakesimulator.proto",
-}