packages feed

caffegraph 0.1.0.0 → 0.1.0.1

raw patch · 74 files changed

+5943/−107 lines, 74 files

Files

+ Gen/Caffe.hs view
@@ -0,0 +1,21 @@+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe (protoInfo, fileDescriptorProto) where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import Text.DescriptorProtos.FileDescriptorProto (FileDescriptorProto)+import Text.ProtocolBuffers.Reflections (ProtoInfo)+import qualified Text.ProtocolBuffers.WireMessage as P' (wireGet,getFromBS)+ +protoInfo :: ProtoInfo+protoInfo+ = Prelude'.read+    "ProtoInfo {protoMod = ProtoName {protobufName = FIName \".caffe\", haskellPrefix = [MName \"Gen\"], parentModule = [], baseName = MName \"Caffe\"}, protoFilePath = [\"Gen\",\"Caffe.hs\"], protoSource = \"caffe.proto\", extensionKeys = fromList [], messages = [DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}, descFilePath = [\"Gen\",\"Caffe\",\"BlobProto.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.num\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"num\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"channels\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"height\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"width\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.data\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"data'\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 42}, packedTag = Just (WireTag {getWireTag = 45},WireTag {getWireTag = 42}), wireTagLength = 1, isPacked = True, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.diff\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"diff\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 50}, packedTag = Just (WireTag {getWireTag = 53},WireTag {getWireTag = 50}), wireTagLength = 1, isPacked = True, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.BlobProtoVector\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProtoVector\"}, descFilePath = [\"Gen\",\"Caffe\",\"BlobProtoVector.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProtoVector.blobs\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProtoVector\"], baseName' = FName \"blobs\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.Datum\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"Datum\"}, descFilePath = [\"Gen\",\"Caffe\",\"Datum.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"channels\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"height\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"width\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.data\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"data'\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 12}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.label\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"label\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.float_data\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"float_data\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 53}, packedTag = Just (WireTag {getWireTag = 53},WireTag {getWireTag = 50}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.encoded\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"encoded\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"FillerParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"type'\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"constant\", hsDefault = Just (HsDef'ByteString \"constant\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.value\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"value\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.min\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"min\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 29}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.max\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"max\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 37}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.mean\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"mean\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 45}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.std\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"std\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 53}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.sparse\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"sparse\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"-1\", hsDefault = Just (HsDef'Integer (-1))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.NetParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"NetParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"name\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.input\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"input\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.input_dim\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"input_dim\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Just (WireTag {getWireTag = 32},WireTag {getWireTag = 34}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.force_backward\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"force_backward\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.state\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"state\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 50}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetState\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetState\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.debug_info\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"debug_info\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.layer\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"layer\"}, fieldNumber = FieldId {getFieldId = 100}, wireTag = WireTag {getWireTag = 802}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LayerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.layers\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"layers\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.V1LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"V1LayerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.SolverParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SolverParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"SolverParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.net\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"net\"}, fieldNumber = FieldId {getFieldId = 24}, wireTag = WireTag {getWireTag = 194}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.net_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"net_param\"}, fieldNumber = FieldId {getFieldId = 25}, wireTag = WireTag {getWireTag = 202}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.train_net\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"train_net\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_net\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_net\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.train_net_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"train_net_param\"}, fieldNumber = FieldId {getFieldId = 21}, wireTag = WireTag {getWireTag = 170}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_net_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_net_param\"}, fieldNumber = FieldId {getFieldId = 22}, wireTag = WireTag {getWireTag = 178}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.train_state\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"train_state\"}, fieldNumber = FieldId {getFieldId = 26}, wireTag = WireTag {getWireTag = 210}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetState\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetState\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_state\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_state\"}, fieldNumber = FieldId {getFieldId = 27}, wireTag = WireTag {getWireTag = 218}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetState\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetState\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_iter\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_iter\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Just (WireTag {getWireTag = 24},WireTag {getWireTag = 26}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_interval\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_interval\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_compute_loss\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_compute_loss\"}, fieldNumber = FieldId {getFieldId = 19}, wireTag = WireTag {getWireTag = 152}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_initialization\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_initialization\"}, fieldNumber = FieldId {getFieldId = 32}, wireTag = WireTag {getWireTag = 256}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.base_lr\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"base_lr\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 45}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.display\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"display\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.average_loss\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"average_loss\"}, fieldNumber = FieldId {getFieldId = 33}, wireTag = WireTag {getWireTag = 264}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.max_iter\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"max_iter\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.lr_policy\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"lr_policy\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 66}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.gamma\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"gamma\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 77}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.power\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"power\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 85}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.momentum\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"momentum\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 93}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.weight_decay\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"weight_decay\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 101}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.regularization_type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"regularization_type\"}, fieldNumber = FieldId {getFieldId = 29}, wireTag = WireTag {getWireTag = 234}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"L2\", hsDefault = Just (HsDef'ByteString \"L2\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.stepsize\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"stepsize\"}, fieldNumber = FieldId {getFieldId = 13}, wireTag = WireTag {getWireTag = 104}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.stepvalue\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"stepvalue\"}, fieldNumber = FieldId {getFieldId = 34}, wireTag = WireTag {getWireTag = 272}, packedTag = Just (WireTag {getWireTag = 272},WireTag {getWireTag = 274}), wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.snapshot\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"snapshot\"}, fieldNumber = FieldId {getFieldId = 14}, wireTag = WireTag {getWireTag = 112}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.snapshot_prefix\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"snapshot_prefix\"}, fieldNumber = FieldId {getFieldId = 15}, wireTag = WireTag {getWireTag = 122}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.snapshot_diff\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"snapshot_diff\"}, fieldNumber = FieldId {getFieldId = 16}, wireTag = WireTag {getWireTag = 128}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.solver_mode\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"solver_mode\"}, fieldNumber = FieldId {getFieldId = 17}, wireTag = WireTag {getWireTag = 136}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SolverParameter.SolverMode\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SolverParameter\"], baseName = MName \"SolverMode\"}), hsRawDefault = Just \"GPU\", hsDefault = Just (HsDef'Enum \"GPU\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.device_id\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"device_id\"}, fieldNumber = FieldId {getFieldId = 18}, wireTag = WireTag {getWireTag = 144}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.random_seed\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"random_seed\"}, fieldNumber = FieldId {getFieldId = 20}, wireTag = WireTag {getWireTag = 160}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 3}, typeName = Nothing, hsRawDefault = Just \"-1\", hsDefault = Just (HsDef'Integer (-1))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.solver_type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"solver_type\"}, fieldNumber = FieldId {getFieldId = 30}, wireTag = WireTag {getWireTag = 240}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SolverParameter.SolverType\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SolverParameter\"], baseName = MName \"SolverType\"}), hsRawDefault = Just \"SGD\", hsDefault = Just (HsDef'Enum \"SGD\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.delta\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"delta\"}, fieldNumber = FieldId {getFieldId = 31}, wireTag = WireTag {getWireTag = 253}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0e-8\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (11258999 % 1125899906842624)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.debug_info\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"debug_info\"}, fieldNumber = FieldId {getFieldId = 23}, wireTag = WireTag {getWireTag = 184}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.snapshot_after_train\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"snapshot_after_train\"}, fieldNumber = FieldId {getFieldId = 28}, wireTag = WireTag {getWireTag = 224}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.SolverState\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SolverState\"}, descFilePath = [\"Gen\",\"Caffe\",\"SolverState.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverState.iter\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverState\"], baseName' = FName \"iter\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverState.learned_net\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverState\"], baseName' = FName \"learned_net\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverState.history\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverState\"], baseName' = FName \"history\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverState.current_step\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverState\"], baseName' = FName \"current_step\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.NetState\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetState\"}, descFilePath = [\"Gen\",\"Caffe\",\"NetState.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetState.phase\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetState\"], baseName' = FName \"phase\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.Phase\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"Phase\"}), hsRawDefault = Just \"TEST\", hsDefault = Just (HsDef'Enum \"TEST\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetState.level\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetState\"], baseName' = FName \"level\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetState.stage\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetState\"], baseName' = FName \"stage\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.NetStateRule\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetStateRule\"}, descFilePath = [\"Gen\",\"Caffe\",\"NetStateRule.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetStateRule.phase\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetStateRule\"], baseName' = FName \"phase\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.Phase\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"Phase\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetStateRule.min_level\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetStateRule\"], baseName' = FName \"min_level\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetStateRule.max_level\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetStateRule\"], baseName' = FName \"max_level\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetStateRule.stage\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetStateRule\"], baseName' = FName \"stage\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetStateRule.not_stage\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetStateRule\"], baseName' = FName \"not_stage\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 42}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ParamSpec\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ParamSpec\"}, descFilePath = [\"Gen\",\"Caffe\",\"ParamSpec.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ParamSpec.name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ParamSpec\"], baseName' = FName \"name\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ParamSpec.share_mode\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ParamSpec\"], baseName' = FName \"share_mode\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ParamSpec.DimCheckMode\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"ParamSpec\"], baseName = MName \"DimCheckMode\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ParamSpec.lr_mult\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ParamSpec\"], baseName' = FName \"lr_mult\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 29}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ParamSpec.decay_mult\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ParamSpec\"], baseName' = FName \"decay_mult\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 37}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LayerParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"LayerParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"name\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"type'\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.bottom\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"bottom\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.top\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"top\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.loss_weight\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"loss_weight\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 45}, packedTag = Just (WireTag {getWireTag = 45},WireTag {getWireTag = 42}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"param\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 50}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ParamSpec\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ParamSpec\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.blobs\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"blobs\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 58}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.include\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"include\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 66}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetStateRule\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetStateRule\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.exclude\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"exclude\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 74}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetStateRule\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetStateRule\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.transform_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"transform_param\"}, fieldNumber = FieldId {getFieldId = 100}, wireTag = WireTag {getWireTag = 802}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.TransformationParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TransformationParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"loss_param\"}, fieldNumber = FieldId {getFieldId = 101}, wireTag = WireTag {getWireTag = 810}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.accuracy_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"accuracy_param\"}, fieldNumber = FieldId {getFieldId = 102}, wireTag = WireTag {getWireTag = 818}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.AccuracyParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"AccuracyParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.argmax_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"argmax_param\"}, fieldNumber = FieldId {getFieldId = 103}, wireTag = WireTag {getWireTag = 826}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ArgMaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ArgMaxParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.concat_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"concat_param\"}, fieldNumber = FieldId {getFieldId = 104}, wireTag = WireTag {getWireTag = 834}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ConcatParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConcatParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.contrastive_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"contrastive_loss_param\"}, fieldNumber = FieldId {getFieldId = 105}, wireTag = WireTag {getWireTag = 842}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ContrastiveLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ContrastiveLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.convolution_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"convolution_param\"}, fieldNumber = FieldId {getFieldId = 106}, wireTag = WireTag {getWireTag = 850}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ConvolutionParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConvolutionParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"data_param\"}, fieldNumber = FieldId {getFieldId = 107}, wireTag = WireTag {getWireTag = 858}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.dropout_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"dropout_param\"}, fieldNumber = FieldId {getFieldId = 108}, wireTag = WireTag {getWireTag = 866}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DropoutParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DropoutParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.dummy_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"dummy_data_param\"}, fieldNumber = FieldId {getFieldId = 109}, wireTag = WireTag {getWireTag = 874}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DummyDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DummyDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.eltwise_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"eltwise_param\"}, fieldNumber = FieldId {getFieldId = 110}, wireTag = WireTag {getWireTag = 882}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.EltwiseParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"EltwiseParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.exp_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"exp_param\"}, fieldNumber = FieldId {getFieldId = 111}, wireTag = WireTag {getWireTag = 890}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ExpParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ExpParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.hdf5_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"hdf5_data_param\"}, fieldNumber = FieldId {getFieldId = 112}, wireTag = WireTag {getWireTag = 898}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HDF5DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5DataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.hdf5_output_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"hdf5_output_param\"}, fieldNumber = FieldId {getFieldId = 113}, wireTag = WireTag {getWireTag = 906}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HDF5OutputParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5OutputParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.hinge_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"hinge_loss_param\"}, fieldNumber = FieldId {getFieldId = 114}, wireTag = WireTag {getWireTag = 914}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HingeLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HingeLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.image_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"image_data_param\"}, fieldNumber = FieldId {getFieldId = 115}, wireTag = WireTag {getWireTag = 922}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ImageDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ImageDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.infogain_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"infogain_loss_param\"}, fieldNumber = FieldId {getFieldId = 116}, wireTag = WireTag {getWireTag = 930}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.InfogainLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InfogainLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.inner_product_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"inner_product_param\"}, fieldNumber = FieldId {getFieldId = 117}, wireTag = WireTag {getWireTag = 938}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.InnerProductParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InnerProductParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.lrn_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"lrn_param\"}, fieldNumber = FieldId {getFieldId = 118}, wireTag = WireTag {getWireTag = 946}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LRNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LRNParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.memory_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"memory_data_param\"}, fieldNumber = FieldId {getFieldId = 119}, wireTag = WireTag {getWireTag = 954}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.MemoryDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MemoryDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.mvn_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"mvn_param\"}, fieldNumber = FieldId {getFieldId = 120}, wireTag = WireTag {getWireTag = 962}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.MVNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MVNParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.pooling_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"pooling_param\"}, fieldNumber = FieldId {getFieldId = 121}, wireTag = WireTag {getWireTag = 970}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PoolingParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PoolingParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.power_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"power_param\"}, fieldNumber = FieldId {getFieldId = 122}, wireTag = WireTag {getWireTag = 978}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PowerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PowerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.relu_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"relu_param\"}, fieldNumber = FieldId {getFieldId = 123}, wireTag = WireTag {getWireTag = 986}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ReLUParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ReLUParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.sigmoid_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"sigmoid_param\"}, fieldNumber = FieldId {getFieldId = 124}, wireTag = WireTag {getWireTag = 994}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SigmoidParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SigmoidParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.softmax_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"softmax_param\"}, fieldNumber = FieldId {getFieldId = 125}, wireTag = WireTag {getWireTag = 1002}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SoftmaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SoftmaxParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.slice_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"slice_param\"}, fieldNumber = FieldId {getFieldId = 126}, wireTag = WireTag {getWireTag = 1010}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SliceParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SliceParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.tanh_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"tanh_param\"}, fieldNumber = FieldId {getFieldId = 127}, wireTag = WireTag {getWireTag = 1018}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.TanHParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TanHParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.threshold_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"threshold_param\"}, fieldNumber = FieldId {getFieldId = 128}, wireTag = WireTag {getWireTag = 1026}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ThresholdParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ThresholdParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.window_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"window_data_param\"}, fieldNumber = FieldId {getFieldId = 129}, wireTag = WireTag {getWireTag = 1034}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.WindowDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"WindowDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.TransformationParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TransformationParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"TransformationParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TransformationParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TransformationParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TransformationParameter.mirror\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TransformationParameter\"], baseName' = FName \"mirror\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TransformationParameter.crop_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TransformationParameter\"], baseName' = FName \"crop_size\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TransformationParameter.mean_file\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TransformationParameter\"], baseName' = FName \"mean_file\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TransformationParameter.mean_value\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TransformationParameter\"], baseName' = FName \"mean_value\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 45}, packedTag = Just (WireTag {getWireTag = 45},WireTag {getWireTag = 42}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.LossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LossParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"LossParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LossParameter.ignore_label\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LossParameter\"], baseName' = FName \"ignore_label\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LossParameter.normalize\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LossParameter\"], baseName' = FName \"normalize\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.AccuracyParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"AccuracyParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"AccuracyParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.AccuracyParameter.top_k\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"AccuracyParameter\"], baseName' = FName \"top_k\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ArgMaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ArgMaxParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ArgMaxParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ArgMaxParameter.out_max_val\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ArgMaxParameter\"], baseName' = FName \"out_max_val\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ArgMaxParameter.top_k\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ArgMaxParameter\"], baseName' = FName \"top_k\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ConcatParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConcatParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ConcatParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConcatParameter.concat_dim\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConcatParameter\"], baseName' = FName \"concat_dim\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ContrastiveLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ContrastiveLossParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ContrastiveLossParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ContrastiveLossParameter.margin\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ContrastiveLossParameter\"], baseName' = FName \"margin\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ConvolutionParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConvolutionParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ConvolutionParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.num_output\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"num_output\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.bias_term\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"bias_term\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.pad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"pad\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.pad_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"pad_h\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 72}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.pad_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"pad_w\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 80}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.kernel_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"kernel_size\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.kernel_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"kernel_h\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 88}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.kernel_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"kernel_w\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 96}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.group\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"group\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.stride\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"stride\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.stride_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"stride_h\"}, fieldNumber = FieldId {getFieldId = 13}, wireTag = WireTag {getWireTag = 104}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.stride_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"stride_w\"}, fieldNumber = FieldId {getFieldId = 14}, wireTag = WireTag {getWireTag = 112}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.weight_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"weight_filler\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 58}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.bias_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"bias_filler\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 66}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 15}, wireTag = WireTag {getWireTag = 120}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ConvolutionParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"DataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.batch_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"batch_size\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.rand_skip\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"rand_skip\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.backend\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"backend\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 64}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DataParameter.DB\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"DataParameter\"], baseName = MName \"DB\"}), hsRawDefault = Just \"LEVELDB\", hsDefault = Just (HsDef'Enum \"LEVELDB\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.mean_file\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"mean_file\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.crop_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"crop_size\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.mirror\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"mirror\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.DropoutParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DropoutParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"DropoutParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DropoutParameter.dropout_ratio\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DropoutParameter\"], baseName' = FName \"dropout_ratio\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.DummyDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DummyDataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"DummyDataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DummyDataParameter.data_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DummyDataParameter\"], baseName' = FName \"data_filler\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DummyDataParameter.num\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DummyDataParameter\"], baseName' = FName \"num\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Just (WireTag {getWireTag = 16},WireTag {getWireTag = 18}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DummyDataParameter.channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DummyDataParameter\"], baseName' = FName \"channels\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Just (WireTag {getWireTag = 24},WireTag {getWireTag = 26}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DummyDataParameter.height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DummyDataParameter\"], baseName' = FName \"height\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Just (WireTag {getWireTag = 32},WireTag {getWireTag = 34}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DummyDataParameter.width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DummyDataParameter\"], baseName' = FName \"width\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Just (WireTag {getWireTag = 40},WireTag {getWireTag = 42}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.EltwiseParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"EltwiseParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"EltwiseParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.EltwiseParameter.operation\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"EltwiseParameter\"], baseName' = FName \"operation\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.EltwiseParameter.EltwiseOp\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"EltwiseParameter\"], baseName = MName \"EltwiseOp\"}), hsRawDefault = Just \"SUM\", hsDefault = Just (HsDef'Enum \"SUM\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.EltwiseParameter.coeff\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"EltwiseParameter\"], baseName' = FName \"coeff\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Just (WireTag {getWireTag = 21},WireTag {getWireTag = 18}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.EltwiseParameter.stable_prod_grad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"EltwiseParameter\"], baseName' = FName \"stable_prod_grad\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ExpParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ExpParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ExpParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ExpParameter.base\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ExpParameter\"], baseName' = FName \"base\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"-1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational ((-1) % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ExpParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ExpParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ExpParameter.shift\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ExpParameter\"], baseName' = FName \"shift\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 29}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.HDF5DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5DataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"HDF5DataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.HDF5DataParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"HDF5DataParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.HDF5DataParameter.batch_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"HDF5DataParameter\"], baseName' = FName \"batch_size\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.HDF5OutputParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5OutputParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"HDF5OutputParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.HDF5OutputParameter.file_name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"HDF5OutputParameter\"], baseName' = FName \"file_name\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.HingeLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HingeLossParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"HingeLossParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.HingeLossParameter.norm\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"HingeLossParameter\"], baseName' = FName \"norm\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HingeLossParameter.Norm\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"HingeLossParameter\"], baseName = MName \"Norm\"}), hsRawDefault = Just \"L1\", hsDefault = Just (HsDef'Enum \"L1\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ImageDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ImageDataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ImageDataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.batch_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"batch_size\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.rand_skip\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"rand_skip\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.shuffle\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"shuffle\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 64}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.new_height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"new_height\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 72}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.new_width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"new_width\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 80}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.is_color\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"is_color\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 88}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.mean_file\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"mean_file\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.crop_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"crop_size\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.mirror\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"mirror\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.root_folder\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"root_folder\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 98}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"\", hsDefault = Just (HsDef'ByteString \"\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.InfogainLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InfogainLossParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"InfogainLossParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.InfogainLossParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"InfogainLossParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.InnerProductParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InnerProductParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"InnerProductParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.InnerProductParameter.num_output\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"InnerProductParameter\"], baseName' = FName \"num_output\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.InnerProductParameter.bias_term\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"InnerProductParameter\"], baseName' = FName \"bias_term\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.InnerProductParameter.weight_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"InnerProductParameter\"], baseName' = FName \"weight_filler\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.InnerProductParameter.bias_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"InnerProductParameter\"], baseName' = FName \"bias_filler\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.LRNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LRNParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"LRNParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LRNParameter.local_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LRNParameter\"], baseName' = FName \"local_size\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"5\", hsDefault = Just (HsDef'Integer 5)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LRNParameter.alpha\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LRNParameter\"], baseName' = FName \"alpha\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LRNParameter.beta\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LRNParameter\"], baseName' = FName \"beta\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 29}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.75\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (3 % 4)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LRNParameter.norm_region\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LRNParameter\"], baseName' = FName \"norm_region\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LRNParameter.NormRegion\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"LRNParameter\"], baseName = MName \"NormRegion\"}), hsRawDefault = Just \"ACROSS_CHANNELS\", hsDefault = Just (HsDef'Enum \"ACROSS_CHANNELS\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LRNParameter.k\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LRNParameter\"], baseName' = FName \"k\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 45}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.MemoryDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MemoryDataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"MemoryDataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MemoryDataParameter.batch_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MemoryDataParameter\"], baseName' = FName \"batch_size\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MemoryDataParameter.channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MemoryDataParameter\"], baseName' = FName \"channels\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MemoryDataParameter.height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MemoryDataParameter\"], baseName' = FName \"height\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MemoryDataParameter.width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MemoryDataParameter\"], baseName' = FName \"width\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.MVNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MVNParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"MVNParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MVNParameter.normalize_variance\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MVNParameter\"], baseName' = FName \"normalize_variance\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MVNParameter.across_channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MVNParameter\"], baseName' = FName \"across_channels\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.PoolingParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PoolingParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"PoolingParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.pool\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"pool\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PoolingParameter.PoolMethod\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"PoolingParameter\"], baseName = MName \"PoolMethod\"}), hsRawDefault = Just \"MAX\", hsDefault = Just (HsDef'Enum \"MAX\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.pad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"pad\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.pad_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"pad_h\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 72}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.pad_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"pad_w\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 80}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.kernel_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"kernel_size\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.kernel_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"kernel_h\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.kernel_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"kernel_w\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.stride\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"stride\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.stride_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"stride_h\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.stride_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"stride_w\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 64}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 88}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PoolingParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"PoolingParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.global_pooling\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"global_pooling\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 96}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.PowerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PowerParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"PowerParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PowerParameter.power\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PowerParameter\"], baseName' = FName \"power\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PowerParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PowerParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PowerParameter.shift\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PowerParameter\"], baseName' = FName \"shift\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 29}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ReLUParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ReLUParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ReLUParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ReLUParameter.negative_slope\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ReLUParameter\"], baseName' = FName \"negative_slope\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ReLUParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ReLUParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ReLUParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"ReLUParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.SigmoidParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SigmoidParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"SigmoidParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SigmoidParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SigmoidParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SigmoidParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SigmoidParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.SliceParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SliceParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"SliceParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SliceParameter.slice_dim\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SliceParameter\"], baseName' = FName \"slice_dim\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SliceParameter.slice_point\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SliceParameter\"], baseName' = FName \"slice_point\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Just (WireTag {getWireTag = 16},WireTag {getWireTag = 18}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.SoftmaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SoftmaxParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"SoftmaxParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SoftmaxParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SoftmaxParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SoftmaxParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SoftmaxParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.TanHParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TanHParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"TanHParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TanHParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TanHParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.TanHParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"TanHParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ThresholdParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ThresholdParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ThresholdParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ThresholdParameter.threshold\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ThresholdParameter\"], baseName' = FName \"threshold\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.WindowDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"WindowDataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"WindowDataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.mean_file\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"mean_file\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.batch_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"batch_size\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.crop_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"crop_size\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.mirror\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"mirror\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.fg_threshold\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"fg_threshold\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 61}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.bg_threshold\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"bg_threshold\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 69}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.fg_fraction\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"fg_fraction\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 77}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.25\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 4)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.context_pad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"context_pad\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 80}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.crop_mode\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"crop_mode\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 90}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"warp\", hsDefault = Just (HsDef'ByteString \"warp\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.cache_images\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"cache_images\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 96}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.root_folder\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"root_folder\"}, fieldNumber = FieldId {getFieldId = 13}, wireTag = WireTag {getWireTag = 106}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"\", hsDefault = Just (HsDef'ByteString \"\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.V1LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"V1LayerParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"V1LayerParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.bottom\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"bottom\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.top\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"top\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"name\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.include\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"include\"}, fieldNumber = FieldId {getFieldId = 32}, wireTag = WireTag {getWireTag = 258}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetStateRule\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetStateRule\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.exclude\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"exclude\"}, fieldNumber = FieldId {getFieldId = 33}, wireTag = WireTag {getWireTag = 266}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetStateRule\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetStateRule\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"type'\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.V1LayerParameter.LayerType\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName = MName \"LayerType\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.blobs\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"blobs\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 50}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"param\"}, fieldNumber = FieldId {getFieldId = 1001}, wireTag = WireTag {getWireTag = 8010}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.blob_share_mode\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"blob_share_mode\"}, fieldNumber = FieldId {getFieldId = 1002}, wireTag = WireTag {getWireTag = 8016}, packedTag = Just (WireTag {getWireTag = 8016},WireTag {getWireTag = 8018}), wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.V1LayerParameter.DimCheckMode\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName = MName \"DimCheckMode\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.blobs_lr\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"blobs_lr\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 61}, packedTag = Just (WireTag {getWireTag = 61},WireTag {getWireTag = 58}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.weight_decay\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"weight_decay\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 69}, packedTag = Just (WireTag {getWireTag = 69},WireTag {getWireTag = 66}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.loss_weight\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"loss_weight\"}, fieldNumber = FieldId {getFieldId = 35}, wireTag = WireTag {getWireTag = 285}, packedTag = Just (WireTag {getWireTag = 285},WireTag {getWireTag = 282}), wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.accuracy_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"accuracy_param\"}, fieldNumber = FieldId {getFieldId = 27}, wireTag = WireTag {getWireTag = 218}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.AccuracyParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"AccuracyParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.argmax_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"argmax_param\"}, fieldNumber = FieldId {getFieldId = 23}, wireTag = WireTag {getWireTag = 186}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ArgMaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ArgMaxParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.concat_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"concat_param\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 74}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ConcatParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConcatParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.contrastive_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"contrastive_loss_param\"}, fieldNumber = FieldId {getFieldId = 40}, wireTag = WireTag {getWireTag = 322}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ContrastiveLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ContrastiveLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.convolution_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"convolution_param\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 82}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ConvolutionParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConvolutionParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"data_param\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 90}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.dropout_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"dropout_param\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 98}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DropoutParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DropoutParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.dummy_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"dummy_data_param\"}, fieldNumber = FieldId {getFieldId = 26}, wireTag = WireTag {getWireTag = 210}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DummyDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DummyDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.eltwise_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"eltwise_param\"}, fieldNumber = FieldId {getFieldId = 24}, wireTag = WireTag {getWireTag = 194}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.EltwiseParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"EltwiseParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.exp_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"exp_param\"}, fieldNumber = FieldId {getFieldId = 41}, wireTag = WireTag {getWireTag = 330}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ExpParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ExpParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.hdf5_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"hdf5_data_param\"}, fieldNumber = FieldId {getFieldId = 13}, wireTag = WireTag {getWireTag = 106}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HDF5DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5DataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.hdf5_output_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"hdf5_output_param\"}, fieldNumber = FieldId {getFieldId = 14}, wireTag = WireTag {getWireTag = 114}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HDF5OutputParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5OutputParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.hinge_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"hinge_loss_param\"}, fieldNumber = FieldId {getFieldId = 29}, wireTag = WireTag {getWireTag = 234}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HingeLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HingeLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.image_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"image_data_param\"}, fieldNumber = FieldId {getFieldId = 15}, wireTag = WireTag {getWireTag = 122}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ImageDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ImageDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.infogain_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"infogain_loss_param\"}, fieldNumber = FieldId {getFieldId = 16}, wireTag = WireTag {getWireTag = 130}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.InfogainLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InfogainLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.inner_product_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"inner_product_param\"}, fieldNumber = FieldId {getFieldId = 17}, wireTag = WireTag {getWireTag = 138}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.InnerProductParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InnerProductParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.lrn_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"lrn_param\"}, fieldNumber = FieldId {getFieldId = 18}, wireTag = WireTag {getWireTag = 146}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LRNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LRNParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.memory_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"memory_data_param\"}, fieldNumber = FieldId {getFieldId = 22}, wireTag = WireTag {getWireTag = 178}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.MemoryDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MemoryDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.mvn_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"mvn_param\"}, fieldNumber = FieldId {getFieldId = 34}, wireTag = WireTag {getWireTag = 274}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.MVNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MVNParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.pooling_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"pooling_param\"}, fieldNumber = FieldId {getFieldId = 19}, wireTag = WireTag {getWireTag = 154}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PoolingParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PoolingParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.power_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"power_param\"}, fieldNumber = FieldId {getFieldId = 21}, wireTag = WireTag {getWireTag = 170}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PowerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PowerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.relu_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"relu_param\"}, fieldNumber = FieldId {getFieldId = 30}, wireTag = WireTag {getWireTag = 242}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ReLUParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ReLUParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.sigmoid_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"sigmoid_param\"}, fieldNumber = FieldId {getFieldId = 38}, wireTag = WireTag {getWireTag = 306}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SigmoidParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SigmoidParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.softmax_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"softmax_param\"}, fieldNumber = FieldId {getFieldId = 39}, wireTag = WireTag {getWireTag = 314}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SoftmaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SoftmaxParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.slice_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"slice_param\"}, fieldNumber = FieldId {getFieldId = 31}, wireTag = WireTag {getWireTag = 250}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SliceParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SliceParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.tanh_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"tanh_param\"}, fieldNumber = FieldId {getFieldId = 37}, wireTag = WireTag {getWireTag = 298}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.TanHParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TanHParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.threshold_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"threshold_param\"}, fieldNumber = FieldId {getFieldId = 25}, wireTag = WireTag {getWireTag = 202}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ThresholdParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ThresholdParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.window_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"window_data_param\"}, fieldNumber = FieldId {getFieldId = 20}, wireTag = WireTag {getWireTag = 162}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.WindowDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"WindowDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.transform_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"transform_param\"}, fieldNumber = FieldId {getFieldId = 36}, wireTag = WireTag {getWireTag = 290}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.TransformationParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TransformationParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"loss_param\"}, fieldNumber = FieldId {getFieldId = 42}, wireTag = WireTag {getWireTag = 338}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.layer\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"layer\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.V0LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"V0LayerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False},DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.V0LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"V0LayerParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"V0LayerParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"name\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"type'\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.num_output\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"num_output\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.biasterm\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"biasterm\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.weight_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"weight_filler\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 42}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.bias_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"bias_filler\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 50}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.pad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"pad\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.kernelsize\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"kernelsize\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 64}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.group\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"group\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 72}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.stride\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"stride\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 80}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.pool\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"pool\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 88}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.V0LayerParameter.PoolMethod\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName = MName \"PoolMethod\"}), hsRawDefault = Just \"MAX\", hsDefault = Just (HsDef'Enum \"MAX\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.dropout_ratio\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"dropout_ratio\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 101}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.local_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"local_size\"}, fieldNumber = FieldId {getFieldId = 13}, wireTag = WireTag {getWireTag = 104}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"5\", hsDefault = Just (HsDef'Integer 5)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.alpha\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"alpha\"}, fieldNumber = FieldId {getFieldId = 14}, wireTag = WireTag {getWireTag = 117}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.beta\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"beta\"}, fieldNumber = FieldId {getFieldId = 15}, wireTag = WireTag {getWireTag = 125}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.75\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (3 % 4)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.k\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"k\"}, fieldNumber = FieldId {getFieldId = 22}, wireTag = WireTag {getWireTag = 181}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 16}, wireTag = WireTag {getWireTag = 130}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 17}, wireTag = WireTag {getWireTag = 141}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.meanfile\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"meanfile\"}, fieldNumber = FieldId {getFieldId = 18}, wireTag = WireTag {getWireTag = 146}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.batchsize\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"batchsize\"}, fieldNumber = FieldId {getFieldId = 19}, wireTag = WireTag {getWireTag = 152}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.cropsize\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"cropsize\"}, fieldNumber = FieldId {getFieldId = 20}, wireTag = WireTag {getWireTag = 160}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.mirror\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"mirror\"}, fieldNumber = FieldId {getFieldId = 21}, wireTag = WireTag {getWireTag = 168}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.blobs\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"blobs\"}, fieldNumber = FieldId {getFieldId = 50}, wireTag = WireTag {getWireTag = 402}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.blobs_lr\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"blobs_lr\"}, fieldNumber = FieldId {getFieldId = 51}, wireTag = WireTag {getWireTag = 413}, packedTag = Just (WireTag {getWireTag = 413},WireTag {getWireTag = 410}), wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.weight_decay\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"weight_decay\"}, fieldNumber = FieldId {getFieldId = 52}, wireTag = WireTag {getWireTag = 421}, packedTag = Just (WireTag {getWireTag = 421},WireTag {getWireTag = 418}), wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.rand_skip\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"rand_skip\"}, fieldNumber = FieldId {getFieldId = 53}, wireTag = WireTag {getWireTag = 424}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.det_fg_threshold\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"det_fg_threshold\"}, fieldNumber = FieldId {getFieldId = 54}, wireTag = WireTag {getWireTag = 437}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.det_bg_threshold\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"det_bg_threshold\"}, fieldNumber = FieldId {getFieldId = 55}, wireTag = WireTag {getWireTag = 445}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.det_fg_fraction\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"det_fg_fraction\"}, fieldNumber = FieldId {getFieldId = 56}, wireTag = WireTag {getWireTag = 453}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.25\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 4)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.det_context_pad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"det_context_pad\"}, fieldNumber = FieldId {getFieldId = 58}, wireTag = WireTag {getWireTag = 464}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.det_crop_mode\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"det_crop_mode\"}, fieldNumber = FieldId {getFieldId = 59}, wireTag = WireTag {getWireTag = 474}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"warp\", hsDefault = Just (HsDef'ByteString \"warp\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.new_num\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"new_num\"}, fieldNumber = FieldId {getFieldId = 60}, wireTag = WireTag {getWireTag = 480}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.new_channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"new_channels\"}, fieldNumber = FieldId {getFieldId = 61}, wireTag = WireTag {getWireTag = 488}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.new_height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"new_height\"}, fieldNumber = FieldId {getFieldId = 62}, wireTag = WireTag {getWireTag = 496}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.new_width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"new_width\"}, fieldNumber = FieldId {getFieldId = 63}, wireTag = WireTag {getWireTag = 504}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.shuffle_images\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"shuffle_images\"}, fieldNumber = FieldId {getFieldId = 64}, wireTag = WireTag {getWireTag = 512}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.concat_dim\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"concat_dim\"}, fieldNumber = FieldId {getFieldId = 65}, wireTag = WireTag {getWireTag = 520}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.hdf5_output_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"hdf5_output_param\"}, fieldNumber = FieldId {getFieldId = 1001}, wireTag = WireTag {getWireTag = 8010}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HDF5OutputParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5OutputParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}], enums = [EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.Phase\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"Phase\"}, enumFilePath = [\"Gen\",\"Caffe\",\"Phase.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"TRAIN\"),(EnumCode {getEnumCode = 1},\"TEST\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.SolverParameter.SolverMode\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SolverParameter\"], baseName = MName \"SolverMode\"}, enumFilePath = [\"Gen\",\"Caffe\",\"SolverParameter\",\"SolverMode.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"CPU\"),(EnumCode {getEnumCode = 1},\"GPU\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.SolverParameter.SolverType\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SolverParameter\"], baseName = MName \"SolverType\"}, enumFilePath = [\"Gen\",\"Caffe\",\"SolverParameter\",\"SolverType.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"SGD\"),(EnumCode {getEnumCode = 1},\"NESTEROV\"),(EnumCode {getEnumCode = 2},\"ADAGRAD\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.ParamSpec.DimCheckMode\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"ParamSpec\"], baseName = MName \"DimCheckMode\"}, enumFilePath = [\"Gen\",\"Caffe\",\"ParamSpec\",\"DimCheckMode.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"STRICT\"),(EnumCode {getEnumCode = 1},\"PERMISSIVE\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.ConvolutionParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName = MName \"Engine\"}, enumFilePath = [\"Gen\",\"Caffe\",\"ConvolutionParameter\",\"Engine.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"DEFAULT\"),(EnumCode {getEnumCode = 1},\"CAFFE\"),(EnumCode {getEnumCode = 2},\"CUDNN\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.DataParameter.DB\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"DataParameter\"], baseName = MName \"DB\"}, enumFilePath = [\"Gen\",\"Caffe\",\"DataParameter\",\"DB.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"LEVELDB\"),(EnumCode {getEnumCode = 1},\"LMDB\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.EltwiseParameter.EltwiseOp\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"EltwiseParameter\"], baseName = MName \"EltwiseOp\"}, enumFilePath = [\"Gen\",\"Caffe\",\"EltwiseParameter\",\"EltwiseOp.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"PROD\"),(EnumCode {getEnumCode = 1},\"SUM\"),(EnumCode {getEnumCode = 2},\"MAX\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.HingeLossParameter.Norm\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"HingeLossParameter\"], baseName = MName \"Norm\"}, enumFilePath = [\"Gen\",\"Caffe\",\"HingeLossParameter\",\"Norm.hs\"], enumValues = [(EnumCode {getEnumCode = 1},\"L1\"),(EnumCode {getEnumCode = 2},\"L2\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.LRNParameter.NormRegion\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"LRNParameter\"], baseName = MName \"NormRegion\"}, enumFilePath = [\"Gen\",\"Caffe\",\"LRNParameter\",\"NormRegion.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"ACROSS_CHANNELS\"),(EnumCode {getEnumCode = 1},\"WITHIN_CHANNEL\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.PoolingParameter.PoolMethod\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"PoolingParameter\"], baseName = MName \"PoolMethod\"}, enumFilePath = [\"Gen\",\"Caffe\",\"PoolingParameter\",\"PoolMethod.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"MAX\"),(EnumCode {getEnumCode = 1},\"AVE\"),(EnumCode {getEnumCode = 2},\"STOCHASTIC\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.PoolingParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"PoolingParameter\"], baseName = MName \"Engine\"}, enumFilePath = [\"Gen\",\"Caffe\",\"PoolingParameter\",\"Engine.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"DEFAULT\"),(EnumCode {getEnumCode = 1},\"CAFFE\"),(EnumCode {getEnumCode = 2},\"CUDNN\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.ReLUParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"ReLUParameter\"], baseName = MName \"Engine\"}, enumFilePath = [\"Gen\",\"Caffe\",\"ReLUParameter\",\"Engine.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"DEFAULT\"),(EnumCode {getEnumCode = 1},\"CAFFE\"),(EnumCode {getEnumCode = 2},\"CUDNN\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.SigmoidParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SigmoidParameter\"], baseName = MName \"Engine\"}, enumFilePath = [\"Gen\",\"Caffe\",\"SigmoidParameter\",\"Engine.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"DEFAULT\"),(EnumCode {getEnumCode = 1},\"CAFFE\"),(EnumCode {getEnumCode = 2},\"CUDNN\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.SoftmaxParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SoftmaxParameter\"], baseName = MName \"Engine\"}, enumFilePath = [\"Gen\",\"Caffe\",\"SoftmaxParameter\",\"Engine.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"DEFAULT\"),(EnumCode {getEnumCode = 1},\"CAFFE\"),(EnumCode {getEnumCode = 2},\"CUDNN\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.TanHParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"TanHParameter\"], baseName = MName \"Engine\"}, enumFilePath = [\"Gen\",\"Caffe\",\"TanHParameter\",\"Engine.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"DEFAULT\"),(EnumCode {getEnumCode = 1},\"CAFFE\"),(EnumCode {getEnumCode = 2},\"CUDNN\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.V1LayerParameter.LayerType\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName = MName \"LayerType\"}, enumFilePath = [\"Gen\",\"Caffe\",\"V1LayerParameter\",\"LayerType.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"NONE\"),(EnumCode {getEnumCode = 35},\"ABSVAL\"),(EnumCode {getEnumCode = 1},\"ACCURACY\"),(EnumCode {getEnumCode = 30},\"ARGMAX\"),(EnumCode {getEnumCode = 2},\"BNLL\"),(EnumCode {getEnumCode = 3},\"CONCAT\"),(EnumCode {getEnumCode = 37},\"CONTRASTIVE_LOSS\"),(EnumCode {getEnumCode = 4},\"CONVOLUTION\"),(EnumCode {getEnumCode = 5},\"DATA\"),(EnumCode {getEnumCode = 39},\"DECONVOLUTION\"),(EnumCode {getEnumCode = 6},\"DROPOUT\"),(EnumCode {getEnumCode = 32},\"DUMMY_DATA\"),(EnumCode {getEnumCode = 7},\"EUCLIDEAN_LOSS\"),(EnumCode {getEnumCode = 25},\"ELTWISE\"),(EnumCode {getEnumCode = 38},\"EXP\"),(EnumCode {getEnumCode = 8},\"FLATTEN\"),(EnumCode {getEnumCode = 9},\"HDF5_DATA\"),(EnumCode {getEnumCode = 10},\"HDF5_OUTPUT\"),(EnumCode {getEnumCode = 28},\"HINGE_LOSS\"),(EnumCode {getEnumCode = 11},\"IM2COL\"),(EnumCode {getEnumCode = 12},\"IMAGE_DATA\"),(EnumCode {getEnumCode = 13},\"INFOGAIN_LOSS\"),(EnumCode {getEnumCode = 14},\"INNER_PRODUCT\"),(EnumCode {getEnumCode = 15},\"LRN\"),(EnumCode {getEnumCode = 29},\"MEMORY_DATA\"),(EnumCode {getEnumCode = 16},\"MULTINOMIAL_LOGISTIC_LOSS\"),(EnumCode {getEnumCode = 34},\"MVN\"),(EnumCode {getEnumCode = 17},\"POOLING\"),(EnumCode {getEnumCode = 26},\"POWER\"),(EnumCode {getEnumCode = 18},\"RELU\"),(EnumCode {getEnumCode = 19},\"SIGMOID\"),(EnumCode {getEnumCode = 27},\"SIGMOID_CROSS_ENTROPY_LOSS\"),(EnumCode {getEnumCode = 36},\"SILENCE\"),(EnumCode {getEnumCode = 20},\"SOFTMAX\"),(EnumCode {getEnumCode = 21},\"SOFTMAX_LOSS\"),(EnumCode {getEnumCode = 22},\"SPLIT\"),(EnumCode {getEnumCode = 33},\"SLICE\"),(EnumCode {getEnumCode = 23},\"TANH\"),(EnumCode {getEnumCode = 24},\"WINDOW_DATA\"),(EnumCode {getEnumCode = 31},\"THRESHOLD\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.V1LayerParameter.DimCheckMode\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName = MName \"DimCheckMode\"}, enumFilePath = [\"Gen\",\"Caffe\",\"V1LayerParameter\",\"DimCheckMode.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"STRICT\"),(EnumCode {getEnumCode = 1},\"PERMISSIVE\")]},EnumInfo {enumName = ProtoName {protobufName = FIName \".caffe.V0LayerParameter.PoolMethod\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName = MName \"PoolMethod\"}, enumFilePath = [\"Gen\",\"Caffe\",\"V0LayerParameter\",\"PoolMethod.hs\"], enumValues = [(EnumCode {getEnumCode = 0},\"MAX\"),(EnumCode {getEnumCode = 1},\"AVE\"),(EnumCode {getEnumCode = 2},\"STOCHASTIC\")]}], knownKeyMap = fromList []}"+ +fileDescriptorProto :: FileDescriptorProto+fileDescriptorProto+ = P'.getFromBS (P'.wireGet 11)+    (P'.pack+      "\179Z\n\vcaffe.proto\DC2\ENQcaffe\"\129\SOH\n\tBlobProto\DC2\SO\n\ETXnum\CAN\SOH \SOH(\ENQ:\SOH0\DC2\DC3\n\bchannels\CAN\STX \SOH(\ENQ:\SOH0\DC2\DC1\n\ACKheight\CAN\ETX \SOH(\ENQ:\SOH0\DC2\DLE\n\ENQwidth\CAN\EOT \SOH(\ENQ:\SOH0\DC2\DC4\n\EOTdata\CAN\ENQ \ETX(\STXB\ACK\b\NUL\DLE\SOH\CAN\NUL\DC2\DC4\n\EOTdiff\CAN\ACK \ETX(\STXB\ACK\b\NUL\DLE\SOH\CAN\NUL\"2\n\SIBlobProtoVector\DC2\US\n\ENQblobs\CAN\SOH \ETX(\v2\DLE.caffe.BlobProto\"\129\SOH\n\ENQDatum\DC2\DLE\n\bchannels\CAN\SOH \SOH(\ENQ\DC2\SO\n\ACKheight\CAN\STX \SOH(\ENQ\DC2\r\n\ENQwidth\CAN\ETX \SOH(\ENQ\DC2\f\n\EOTdata\CAN\EOT \SOH(\f\DC2\r\n\ENQlabel\CAN\ENQ \SOH(\ENQ\DC2\DC2\n\nfloat_data\CAN\ACK \ETX(\STX\DC2\SYN\n\aencoded\CAN\a \SOH(\b:\ENQfalse\"\154\SOH\n\SIFillerParameter\DC2\SYN\n\EOTtype\CAN\SOH \SOH(\t:\bconstant\DC2\DC2\n\ENQvalue\CAN\STX \SOH(\STX:\ETX0.0\DC2\DLE\n\ETXmin\CAN\ETX \SOH(\STX:\ETX0.0\DC2\DLE\n\ETXmax\CAN\EOT \SOH(\STX:\ETX1.0\DC2\DC1\n\EOTmean\CAN\ENQ \SOH(\STX:\ETX0.0\DC2\DLE\n\ETXstd\CAN\ACK \SOH(\STX:\ETX1.0\DC2\DC2\n\ACKsparse\CAN\a \SOH(\ENQ:\STX-1\"\231\SOH\n\fNetParameter\DC2\f\n\EOTname\CAN\SOH \SOH(\t\DC2\r\n\ENQinput\CAN\ETX \ETX(\t\DC2\DC1\n\tinput_dim\CAN\EOT \ETX(\ENQ\DC2\GS\n\SOforce_backward\CAN\ENQ \SOH(\b:\ENQfalse\DC2\RS\n\ENQstate\CAN\ACK \SOH(\v2\SI.caffe.NetState\DC2\EM\n\ndebug_info\CAN\a \SOH(\b:\ENQfalse\DC2$\n\ENQlayer\CANd \ETX(\v2\NAK.caffe.LayerParameter\DC2'\n\ACKlayers\CAN\STX \ETX(\v2\ETB.caffe.V1LayerParameter\"\140\b\n\SISolverParameter\DC2\v\n\ETXnet\CAN\CAN \SOH(\t\DC2&\n\tnet_param\CAN\EM \SOH(\v2\DC3.caffe.NetParameter\DC2\DC1\n\ttrain_net\CAN\SOH \SOH(\t\DC2\DLE\n\btest_net\CAN\STX \ETX(\t\DC2,\n\SItrain_net_param\CAN\NAK \SOH(\v2\DC3.caffe.NetParameter\DC2+\n\SOtest_net_param\CAN\SYN \ETX(\v2\DC3.caffe.NetParameter\DC2$\n\vtrain_state\CAN\SUB \SOH(\v2\SI.caffe.NetState\DC2#\n\ntest_state\CAN\ESC \ETX(\v2\SI.caffe.NetState\DC2\DC1\n\ttest_iter\CAN\ETX \ETX(\ENQ\DC2\CAN\n\rtest_interval\CAN\EOT \SOH(\ENQ:\SOH0\DC2 \n\DC1test_compute_loss\CAN\DC3 \SOH(\b:\ENQfalse\DC2!\n\DC3test_initialization\CAN  \SOH(\b:\EOTtrue\DC2\SI\n\abase_lr\CAN\ENQ \SOH(\STX\DC2\SI\n\adisplay\CAN\ACK \SOH(\ENQ\DC2\ETB\n\faverage_loss\CAN! \SOH(\ENQ:\SOH1\DC2\DLE\n\bmax_iter\CAN\a \SOH(\ENQ\DC2\DC1\n\tlr_policy\CAN\b \SOH(\t\DC2\r\n\ENQgamma\CAN\t \SOH(\STX\DC2\r\n\ENQpower\CAN\n \SOH(\STX\DC2\DLE\n\bmomentum\CAN\v \SOH(\STX\DC2\DC4\n\fweight_decay\CAN\f \SOH(\STX\DC2\US\n\DC3regularization_type\CAN\GS \SOH(\t:\STXL2\DC2\DLE\n\bstepsize\CAN\r \SOH(\ENQ\DC2\DC1\n\tstepvalue\CAN\" \ETX(\ENQ\DC2\DC3\n\bsnapshot\CAN\SO \SOH(\ENQ:\SOH0\DC2\ETB\n\SIsnapshot_prefix\CAN\SI \SOH(\t\DC2\FS\n\rsnapshot_diff\CAN\DLE \SOH(\b:\ENQfalse\DC2;\n\vsolver_mode\CAN\DC1 \SOH(\SO2!.caffe.SolverParameter.SolverMode:\ETXGPU\DC2\DC4\n\tdevice_id\CAN\DC2 \SOH(\ENQ:\SOH0\DC2\ETB\n\vrandom_seed\CAN\DC4 \SOH(\ETX:\STX-1\DC2;\n\vsolver_type\CAN\RS \SOH(\SO2!.caffe.SolverParameter.SolverType:\ETXSGD\DC2\NAK\n\ENQdelta\CAN\US \SOH(\STX:\ACK1.0e-8\DC2\EM\n\ndebug_info\CAN\ETB \SOH(\b:\ENQfalse\DC2\"\n\DC4snapshot_after_train\CAN\FS \SOH(\b:\EOTtrue\"\RS\n\nSolverMode\DC2\a\n\ETXCPU\DLE\NUL\DC2\a\n\ETXGPU\DLE\SOH\"0\n\nSolverType\DC2\a\n\ETXSGD\DLE\NUL\DC2\f\n\bNESTEROV\DLE\SOH\DC2\v\n\aADAGRAD\DLE\STX\"l\n\vSolverState\DC2\f\n\EOTiter\CAN\SOH \SOH(\ENQ\DC2\DC3\n\vlearned_net\CAN\STX \SOH(\t\DC2!\n\ahistory\CAN\ETX \ETX(\v2\DLE.caffe.BlobProto\DC2\ETB\n\fcurrent_step\CAN\EOT \SOH(\ENQ:\SOH0\"N\n\bNetState\DC2!\n\ENQphase\CAN\SOH \SOH(\SO2\f.caffe.Phase:\EOTTEST\DC2\DLE\n\ENQlevel\CAN\STX \SOH(\ENQ:\SOH0\DC2\r\n\ENQstage\CAN\ETX \ETX(\t\"s\n\fNetStateRule\DC2\ESC\n\ENQphase\CAN\SOH \SOH(\SO2\f.caffe.Phase\DC2\DC1\n\tmin_level\CAN\STX \SOH(\ENQ\DC2\DC1\n\tmax_level\CAN\ETX \SOH(\ENQ\DC2\r\n\ENQstage\CAN\EOT \ETX(\t\DC2\DC1\n\tnot_stage\CAN\ENQ \ETX(\t\"\167\SOH\n\tParamSpec\DC2\f\n\EOTname\CAN\SOH \SOH(\t\DC21\n\nshare_mode\CAN\STX \SOH(\SO2\GS.caffe.ParamSpec.DimCheckMode\DC2\DC4\n\alr_mult\CAN\ETX \SOH(\STX:\ETX1.0\DC2\ETB\n\ndecay_mult\CAN\EOT \SOH(\STX:\ETX1.0\"*\n\fDimCheckMode\DC2\n\n\ACKSTRICT\DLE\NUL\DC2\SO\n\nPERMISSIVE\DLE\SOH\"\183\r\n\SOLayerParameter\DC2\f\n\EOTname\CAN\SOH \SOH(\t\DC2\f\n\EOTtype\CAN\STX \SOH(\t\DC2\SO\n\ACKbottom\CAN\ETX \ETX(\t\DC2\v\n\ETXtop\CAN\EOT \ETX(\t\DC2\DC3\n\vloss_weight\CAN\ENQ \ETX(\STX\DC2\US\n\ENQparam\CAN\ACK \ETX(\v2\DLE.caffe.ParamSpec\DC2\US\n\ENQblobs\CAN\a \ETX(\v2\DLE.caffe.BlobProto\DC2$\n\ainclude\CAN\b \ETX(\v2\DC3.caffe.NetStateRule\DC2$\n\aexclude\CAN\t \ETX(\v2\DC3.caffe.NetStateRule\DC27\n\SItransform_param\CANd \SOH(\v2\RS.caffe.TransformationParameter\DC2(\n\nloss_param\CANe \SOH(\v2\DC4.caffe.LossParameter\DC20\n\SOaccuracy_param\CANf \SOH(\v2\CAN.caffe.AccuracyParameter\DC2,\n\fargmax_param\CANg \SOH(\v2\SYN.caffe.ArgMaxParameter\DC2,\n\fconcat_param\CANh \SOH(\v2\SYN.caffe.ConcatParameter\DC2?\n\SYNcontrastive_loss_param\CANi \SOH(\v2\US.caffe.ContrastiveLossParameter\DC26\n\DC1convolution_param\CANj \SOH(\v2\ESC.caffe.ConvolutionParameter\DC2(\n\ndata_param\CANk \SOH(\v2\DC4.caffe.DataParameter\DC2.\n\rdropout_param\CANl \SOH(\v2\ETB.caffe.DropoutParameter\DC23\n\DLEdummy_data_param\CANm \SOH(\v2\EM.caffe.DummyDataParameter\DC2.\n\reltwise_param\CANn \SOH(\v2\ETB.caffe.EltwiseParameter\DC2&\n\texp_param\CANo \SOH(\v2\DC3.caffe.ExpParameter\DC21\n\SIhdf5_data_param\CANp \SOH(\v2\CAN.caffe.HDF5DataParameter\DC25\n\DC1hdf5_output_param\CANq \SOH(\v2\SUB.caffe.HDF5OutputParameter\DC23\n\DLEhinge_loss_param\CANr \SOH(\v2\EM.caffe.HingeLossParameter\DC23\n\DLEimage_data_param\CANs \SOH(\v2\EM.caffe.ImageDataParameter\DC29\n\DC3infogain_loss_param\CANt \SOH(\v2\FS.caffe.InfogainLossParameter\DC29\n\DC3inner_product_param\CANu \SOH(\v2\FS.caffe.InnerProductParameter\DC2&\n\tlrn_param\CANv \SOH(\v2\DC3.caffe.LRNParameter\DC25\n\DC1memory_data_param\CANw \SOH(\v2\SUB.caffe.MemoryDataParameter\DC2&\n\tmvn_param\CANx \SOH(\v2\DC3.caffe.MVNParameter\DC2.\n\rpooling_param\CANy \SOH(\v2\ETB.caffe.PoolingParameter\DC2*\n\vpower_param\CANz \SOH(\v2\NAK.caffe.PowerParameter\DC2(\n\nrelu_param\CAN{ \SOH(\v2\DC4.caffe.ReLUParameter\DC2.\n\rsigmoid_param\CAN| \SOH(\v2\ETB.caffe.SigmoidParameter\DC2.\n\rsoftmax_param\CAN} \SOH(\v2\ETB.caffe.SoftmaxParameter\DC2*\n\vslice_param\CAN~ \SOH(\v2\NAK.caffe.SliceParameter\DC2(\n\ntanh_param\CAN\DEL \SOH(\v2\DC4.caffe.TanHParameter\DC23\n\SIthreshold_param\CAN\128\SOH \SOH(\v2\EM.caffe.ThresholdParameter\DC26\n\DC1window_data_param\CAN\129\SOH \SOH(\v2\SUB.caffe.WindowDataParameter\"\129\SOH\n\ETBTransformationParameter\DC2\DC2\n\ENQscale\CAN\SOH \SOH(\STX:\ETX1.0\DC2\NAK\n\ACKmirror\CAN\STX \SOH(\b:\ENQfalse\DC2\DC4\n\tcrop_size\CAN\ETX \SOH(\r:\SOH0\DC2\DC1\n\tmean_file\CAN\EOT \SOH(\t\DC2\DC2\n\nmean_value\CAN\ENQ \ETX(\STX\">\n\rLossParameter\DC2\DC4\n\fignore_label\CAN\SOH \SOH(\ENQ\DC2\ETB\n\tnormalize\CAN\STX \SOH(\b:\EOTtrue\"%\n\DC1AccuracyParameter\DC2\DLE\n\ENQtop_k\CAN\SOH \SOH(\r:\SOH1\"?\n\SIArgMaxParameter\DC2\SUB\n\vout_max_val\CAN\SOH \SOH(\b:\ENQfalse\DC2\DLE\n\ENQtop_k\CAN\STX \SOH(\r:\SOH1\"(\n\SIConcatParameter\DC2\NAK\n\nconcat_dim\CAN\SOH \SOH(\r:\SOH1\"/\n\CANContrastiveLossParameter\DC2\DC3\n\ACKmargin\CAN\SOH \SOH(\STX:\ETX1.0\"\191\ETX\n\DC4ConvolutionParameter\DC2\DC2\n\nnum_output\CAN\SOH \SOH(\r\DC2\ETB\n\tbias_term\CAN\STX \SOH(\b:\EOTtrue\DC2\SO\n\ETXpad\CAN\ETX \SOH(\r:\SOH0\DC2\DLE\n\ENQpad_h\CAN\t \SOH(\r:\SOH0\DC2\DLE\n\ENQpad_w\CAN\n \SOH(\r:\SOH0\DC2\DC3\n\vkernel_size\CAN\EOT \SOH(\r\DC2\DLE\n\bkernel_h\CAN\v \SOH(\r\DC2\DLE\n\bkernel_w\CAN\f \SOH(\r\DC2\DLE\n\ENQgroup\CAN\ENQ \SOH(\r:\SOH1\DC2\DC1\n\ACKstride\CAN\ACK \SOH(\r:\SOH1\DC2\DLE\n\bstride_h\CAN\r \SOH(\r\DC2\DLE\n\bstride_w\CAN\SO \SOH(\r\DC2-\n\rweight_filler\CAN\a \SOH(\v2\SYN.caffe.FillerParameter\DC2+\n\vbias_filler\CAN\b \SOH(\v2\SYN.caffe.FillerParameter\DC2;\n\ACKengine\CAN\SI \SOH(\SO2\".caffe.ConvolutionParameter.Engine:\aDEFAULT\"+\n\ACKEngine\DC2\v\n\aDEFAULT\DLE\NUL\DC2\t\n\ENQCAFFE\DLE\SOH\DC2\t\n\ENQCUDNN\DLE\STX\"\237\SOH\n\rDataParameter\DC2\SO\n\ACKsource\CAN\SOH \SOH(\t\DC2\DC2\n\nbatch_size\CAN\EOT \SOH(\r\DC2\DC4\n\trand_skip\CAN\a \SOH(\r:\SOH0\DC21\n\abackend\CAN\b \SOH(\SO2\ETB.caffe.DataParameter.DB:\aLEVELDB\DC2\DC2\n\ENQscale\CAN\STX \SOH(\STX:\ETX1.0\DC2\DC1\n\tmean_file\CAN\ETX \SOH(\t\DC2\DC4\n\tcrop_size\CAN\ENQ \SOH(\r:\SOH0\DC2\NAK\n\ACKmirror\CAN\ACK \SOH(\b:\ENQfalse\"\ESC\n\STXDB\DC2\v\n\aLEVELDB\DLE\NUL\DC2\b\n\EOTLMDB\DLE\SOH\".\n\DLEDropoutParameter\DC2\SUB\n\rdropout_ratio\CAN\SOH \SOH(\STX:\ETX0.5\"\DEL\n\DC2DummyDataParameter\DC2+\n\vdata_filler\CAN\SOH \ETX(\v2\SYN.caffe.FillerParameter\DC2\v\n\ETXnum\CAN\STX \ETX(\r\DC2\DLE\n\bchannels\CAN\ETX \ETX(\r\DC2\SO\n\ACKheight\CAN\EOT \ETX(\r\DC2\r\n\ENQwidth\CAN\ENQ \ETX(\r\"\165\SOH\n\DLEEltwiseParameter\DC29\n\toperation\CAN\SOH \SOH(\SO2!.caffe.EltwiseParameter.EltwiseOp:\ETXSUM\DC2\r\n\ENQcoeff\CAN\STX \ETX(\STX\DC2\RS\n\DLEstable_prod_grad\CAN\ETX \SOH(\b:\EOTtrue\"'\n\tEltwiseOp\DC2\b\n\EOTPROD\DLE\NUL\DC2\a\n\ETXSUM\DLE\SOH\DC2\a\n\ETXMAX\DLE\STX\"J\n\fExpParameter\DC2\DC2\n\EOTbase\CAN\SOH \SOH(\STX:\EOT-1.0\DC2\DC2\n\ENQscale\CAN\STX \SOH(\STX:\ETX1.0\DC2\DC2\n\ENQshift\CAN\ETX \SOH(\STX:\ETX0.0\"7\n\DC1HDF5DataParameter\DC2\SO\n\ACKsource\CAN\SOH \SOH(\t\DC2\DC2\n\nbatch_size\CAN\STX \SOH(\r\"(\n\DC3HDF5OutputParameter\DC2\DC1\n\tfile_name\CAN\SOH \SOH(\t\"^\n\DC2HingeLossParameter\DC20\n\EOTnorm\CAN\SOH \SOH(\SO2\RS.caffe.HingeLossParameter.Norm:\STXL1\"\SYN\n\EOTNorm\DC2\ACK\n\STXL1\DLE\SOH\DC2\ACK\n\STXL2\DLE\STX\"\150\STX\n\DC2ImageDataParameter\DC2\SO\n\ACKsource\CAN\SOH \SOH(\t\DC2\DC2\n\nbatch_size\CAN\EOT \SOH(\r\DC2\DC4\n\trand_skip\CAN\a \SOH(\r:\SOH0\DC2\SYN\n\ashuffle\CAN\b \SOH(\b:\ENQfalse\DC2\NAK\n\nnew_height\CAN\t \SOH(\r:\SOH0\DC2\DC4\n\tnew_width\CAN\n \SOH(\r:\SOH0\DC2\SYN\n\bis_color\CAN\v \SOH(\b:\EOTtrue\DC2\DC2\n\ENQscale\CAN\STX \SOH(\STX:\ETX1.0\DC2\DC1\n\tmean_file\CAN\ETX \SOH(\t\DC2\DC4\n\tcrop_size\CAN\ENQ \SOH(\r:\SOH0\DC2\NAK\n\ACKmirror\CAN\ACK \SOH(\b:\ENQfalse\DC2\NAK\n\vroot_folder\CAN\f \SOH(\t:\NUL\"'\n\NAKInfogainLossParameter\DC2\SO\n\ACKsource\CAN\SOH \SOH(\t\"\160\SOH\n\NAKInnerProductParameter\DC2\DC2\n\nnum_output\CAN\SOH \SOH(\r\DC2\ETB\n\tbias_term\CAN\STX \SOH(\b:\EOTtrue\DC2-\n\rweight_filler\CAN\ETX \SOH(\v2\SYN.caffe.FillerParameter\DC2+\n\vbias_filler\CAN\EOT \SOH(\v2\SYN.caffe.FillerParameter\"\218\SOH\n\fLRNParameter\DC2\NAK\n\nlocal_size\CAN\SOH \SOH(\r:\SOH5\DC2\DC2\n\ENQalpha\CAN\STX \SOH(\STX:\ETX1.0\DC2\DC2\n\EOTbeta\CAN\ETX \SOH(\STX:\EOT0.75\DC2D\n\vnorm_region\CAN\EOT \SOH(\SO2\RS.caffe.LRNParameter.NormRegion:\SIACROSS_CHANNELS\DC2\SO\n\SOHk\CAN\ENQ \SOH(\STX:\ETX1.0\"5\n\nNormRegion\DC2\DC3\n\SIACROSS_CHANNELS\DLE\NUL\DC2\DC2\n\SOWITHIN_CHANNEL\DLE\SOH\"Z\n\DC3MemoryDataParameter\DC2\DC2\n\nbatch_size\CAN\SOH \SOH(\r\DC2\DLE\n\bchannels\CAN\STX \SOH(\r\DC2\SO\n\ACKheight\CAN\ETX \SOH(\r\DC2\r\n\ENQwidth\CAN\EOT \SOH(\r\"P\n\fMVNParameter\DC2 \n\DC2normalize_variance\CAN\SOH \SOH(\b:\EOTtrue\DC2\RS\n\SIacross_channels\CAN\STX \SOH(\b:\ENQfalse\"\162\ETX\n\DLEPoolingParameter\DC25\n\EOTpool\CAN\SOH \SOH(\SO2\".caffe.PoolingParameter.PoolMethod:\ETXMAX\DC2\SO\n\ETXpad\CAN\EOT \SOH(\r:\SOH0\DC2\DLE\n\ENQpad_h\CAN\t \SOH(\r:\SOH0\DC2\DLE\n\ENQpad_w\CAN\n \SOH(\r:\SOH0\DC2\DC3\n\vkernel_size\CAN\STX \SOH(\r\DC2\DLE\n\bkernel_h\CAN\ENQ \SOH(\r\DC2\DLE\n\bkernel_w\CAN\ACK \SOH(\r\DC2\DC1\n\ACKstride\CAN\ETX \SOH(\r:\SOH1\DC2\DLE\n\bstride_h\CAN\a \SOH(\r\DC2\DLE\n\bstride_w\CAN\b \SOH(\r\DC27\n\ACKengine\CAN\v \SOH(\SO2\RS.caffe.PoolingParameter.Engine:\aDEFAULT\DC2\GS\n\SOglobal_pooling\CAN\f \SOH(\b:\ENQfalse\".\n\nPoolMethod\DC2\a\n\ETXMAX\DLE\NUL\DC2\a\n\ETXAVE\DLE\SOH\DC2\SO\n\nSTOCHASTIC\DLE\STX\"+\n\ACKEngine\DC2\v\n\aDEFAULT\DLE\NUL\DC2\t\n\ENQCAFFE\DLE\SOH\DC2\t\n\ENQCUDNN\DLE\STX\"L\n\SOPowerParameter\DC2\DC2\n\ENQpower\CAN\SOH \SOH(\STX:\ETX1.0\DC2\DC2\n\ENQscale\CAN\STX \SOH(\STX:\ETX1.0\DC2\DC2\n\ENQshift\CAN\ETX \SOH(\STX:\ETX0.0\"\143\SOH\n\rReLUParameter\DC2\ESC\n\SOnegative_slope\CAN\SOH \SOH(\STX:\ETX0.0\DC24\n\ACKengine\CAN\STX \SOH(\SO2\ESC.caffe.ReLUParameter.Engine:\aDEFAULT\"+\n\ACKEngine\DC2\v\n\aDEFAULT\DLE\NUL\DC2\t\n\ENQCAFFE\DLE\SOH\DC2\t\n\ENQCUDNN\DLE\STX\"x\n\DLESigmoidParameter\DC27\n\ACKengine\CAN\SOH \SOH(\SO2\RS.caffe.SigmoidParameter.Engine:\aDEFAULT\"+\n\ACKEngine\DC2\v\n\aDEFAULT\DLE\NUL\DC2\t\n\ENQCAFFE\DLE\SOH\DC2\t\n\ENQCUDNN\DLE\STX\";\n\SOSliceParameter\DC2\DC4\n\tslice_dim\CAN\SOH \SOH(\r:\SOH1\DC2\DC3\n\vslice_point\CAN\STX \ETX(\r\"x\n\DLESoftmaxParameter\DC27\n\ACKengine\CAN\SOH \SOH(\SO2\RS.caffe.SoftmaxParameter.Engine:\aDEFAULT\"+\n\ACKEngine\DC2\v\n\aDEFAULT\DLE\NUL\DC2\t\n\ENQCAFFE\DLE\SOH\DC2\t\n\ENQCUDNN\DLE\STX\"r\n\rTanHParameter\DC24\n\ACKengine\CAN\SOH \SOH(\SO2\ESC.caffe.TanHParameter.Engine:\aDEFAULT\"+\n\ACKEngine\DC2\v\n\aDEFAULT\DLE\NUL\DC2\t\n\ENQCAFFE\DLE\SOH\DC2\t\n\ENQCUDNN\DLE\STX\",\n\DC2ThresholdParameter\DC2\SYN\n\tthreshold\CAN\SOH \SOH(\STX:\ETX0.0\"\195\STX\n\DC3WindowDataParameter\DC2\SO\n\ACKsource\CAN\SOH \SOH(\t\DC2\DC2\n\ENQscale\CAN\STX \SOH(\STX:\ETX1.0\DC2\DC1\n\tmean_file\CAN\ETX \SOH(\t\DC2\DC2\n\nbatch_size\CAN\EOT \SOH(\r\DC2\DC4\n\tcrop_size\CAN\ENQ \SOH(\r:\SOH0\DC2\NAK\n\ACKmirror\CAN\ACK \SOH(\b:\ENQfalse\DC2\EM\n\ffg_threshold\CAN\a \SOH(\STX:\ETX0.5\DC2\EM\n\fbg_threshold\CAN\b \SOH(\STX:\ETX0.5\DC2\EM\n\vfg_fraction\CAN\t \SOH(\STX:\EOT0.25\DC2\SYN\n\vcontext_pad\CAN\n \SOH(\r:\SOH0\DC2\ETB\n\tcrop_mode\CAN\v \SOH(\t:\EOTwarp\DC2\ESC\n\fcache_images\CAN\f \SOH(\b:\ENQfalse\DC2\NAK\n\vroot_folder\CAN\r \SOH(\t:\NUL\"\224\DC3\n\DLEV1LayerParameter\DC2\SO\n\ACKbottom\CAN\STX \ETX(\t\DC2\v\n\ETXtop\CAN\ETX \ETX(\t\DC2\f\n\EOTname\CAN\EOT \SOH(\t\DC2$\n\ainclude\CAN  \ETX(\v2\DC3.caffe.NetStateRule\DC2$\n\aexclude\CAN! \ETX(\v2\DC3.caffe.NetStateRule\DC2/\n\EOTtype\CAN\ENQ \SOH(\SO2!.caffe.V1LayerParameter.LayerType\DC2\US\n\ENQblobs\CAN\ACK \ETX(\v2\DLE.caffe.BlobProto\DC2\SO\n\ENQparam\CAN\233\a \ETX(\t\DC2>\n\SIblob_share_mode\CAN\234\a \ETX(\SO2$.caffe.V1LayerParameter.DimCheckMode\DC2\DLE\n\bblobs_lr\CAN\a \ETX(\STX\DC2\DC4\n\fweight_decay\CAN\b \ETX(\STX\DC2\DC3\n\vloss_weight\CAN# \ETX(\STX\DC20\n\SOaccuracy_param\CAN\ESC \SOH(\v2\CAN.caffe.AccuracyParameter\DC2,\n\fargmax_param\CAN\ETB \SOH(\v2\SYN.caffe.ArgMaxParameter\DC2,\n\fconcat_param\CAN\t \SOH(\v2\SYN.caffe.ConcatParameter\DC2?\n\SYNcontrastive_loss_param\CAN( \SOH(\v2\US.caffe.ContrastiveLossParameter\DC26\n\DC1convolution_param\CAN\n \SOH(\v2\ESC.caffe.ConvolutionParameter\DC2(\n\ndata_param\CAN\v \SOH(\v2\DC4.caffe.DataParameter\DC2.\n\rdropout_param\CAN\f \SOH(\v2\ETB.caffe.DropoutParameter\DC23\n\DLEdummy_data_param\CAN\SUB \SOH(\v2\EM.caffe.DummyDataParameter\DC2.\n\reltwise_param\CAN\CAN \SOH(\v2\ETB.caffe.EltwiseParameter\DC2&\n\texp_param\CAN) \SOH(\v2\DC3.caffe.ExpParameter\DC21\n\SIhdf5_data_param\CAN\r \SOH(\v2\CAN.caffe.HDF5DataParameter\DC25\n\DC1hdf5_output_param\CAN\SO \SOH(\v2\SUB.caffe.HDF5OutputParameter\DC23\n\DLEhinge_loss_param\CAN\GS \SOH(\v2\EM.caffe.HingeLossParameter\DC23\n\DLEimage_data_param\CAN\SI \SOH(\v2\EM.caffe.ImageDataParameter\DC29\n\DC3infogain_loss_param\CAN\DLE \SOH(\v2\FS.caffe.InfogainLossParameter\DC29\n\DC3inner_product_param\CAN\DC1 \SOH(\v2\FS.caffe.InnerProductParameter\DC2&\n\tlrn_param\CAN\DC2 \SOH(\v2\DC3.caffe.LRNParameter\DC25\n\DC1memory_data_param\CAN\SYN \SOH(\v2\SUB.caffe.MemoryDataParameter\DC2&\n\tmvn_param\CAN\" \SOH(\v2\DC3.caffe.MVNParameter\DC2.\n\rpooling_param\CAN\DC3 \SOH(\v2\ETB.caffe.PoolingParameter\DC2*\n\vpower_param\CAN\NAK \SOH(\v2\NAK.caffe.PowerParameter\DC2(\n\nrelu_param\CAN\RS \SOH(\v2\DC4.caffe.ReLUParameter\DC2.\n\rsigmoid_param\CAN& \SOH(\v2\ETB.caffe.SigmoidParameter\DC2.\n\rsoftmax_param\CAN' \SOH(\v2\ETB.caffe.SoftmaxParameter\DC2*\n\vslice_param\CAN\US \SOH(\v2\NAK.caffe.SliceParameter\DC2(\n\ntanh_param\CAN% \SOH(\v2\DC4.caffe.TanHParameter\DC22\n\SIthreshold_param\CAN\EM \SOH(\v2\EM.caffe.ThresholdParameter\DC25\n\DC1window_data_param\CAN\DC4 \SOH(\v2\SUB.caffe.WindowDataParameter\DC27\n\SItransform_param\CAN$ \SOH(\v2\RS.caffe.TransformationParameter\DC2(\n\nloss_param\CAN* \SOH(\v2\DC4.caffe.LossParameter\DC2&\n\ENQlayer\CAN\SOH \SOH(\v2\ETB.caffe.V0LayerParameter\"\216\EOT\n\tLayerType\DC2\b\n\EOTNONE\DLE\NUL\DC2\n\n\ACKABSVAL\DLE#\DC2\f\n\bACCURACY\DLE\SOH\DC2\n\n\ACKARGMAX\DLE\RS\DC2\b\n\EOTBNLL\DLE\STX\DC2\n\n\ACKCONCAT\DLE\ETX\DC2\DC4\n\DLECONTRASTIVE_LOSS\DLE%\DC2\SI\n\vCONVOLUTION\DLE\EOT\DC2\b\n\EOTDATA\DLE\ENQ\DC2\DC1\n\rDECONVOLUTION\DLE'\DC2\v\n\aDROPOUT\DLE\ACK\DC2\SO\n\nDUMMY_DATA\DLE \DC2\DC2\n\SOEUCLIDEAN_LOSS\DLE\a\DC2\v\n\aELTWISE\DLE\EM\DC2\a\n\ETXEXP\DLE&\DC2\v\n\aFLATTEN\DLE\b\DC2\r\n\tHDF5_DATA\DLE\t\DC2\SI\n\vHDF5_OUTPUT\DLE\n\DC2\SO\n\nHINGE_LOSS\DLE\FS\DC2\n\n\ACKIM2COL\DLE\v\DC2\SO\n\nIMAGE_DATA\DLE\f\DC2\DC1\n\rINFOGAIN_LOSS\DLE\r\DC2\DC1\n\rINNER_PRODUCT\DLE\SO\DC2\a\n\ETXLRN\DLE\SI\DC2\SI\n\vMEMORY_DATA\DLE\GS\DC2\GS\n\EMMULTINOMIAL_LOGISTIC_LOSS\DLE\DLE\DC2\a\n\ETXMVN\DLE\"\DC2\v\n\aPOOLING\DLE\DC1\DC2\t\n\ENQPOWER\DLE\SUB\DC2\b\n\EOTRELU\DLE\DC2\DC2\v\n\aSIGMOID\DLE\DC3\DC2\RS\n\SUBSIGMOID_CROSS_ENTROPY_LOSS\DLE\ESC\DC2\v\n\aSILENCE\DLE$\DC2\v\n\aSOFTMAX\DLE\DC4\DC2\DLE\n\fSOFTMAX_LOSS\DLE\NAK\DC2\t\n\ENQSPLIT\DLE\SYN\DC2\t\n\ENQSLICE\DLE!\DC2\b\n\EOTTANH\DLE\ETB\DC2\SI\n\vWINDOW_DATA\DLE\CAN\DC2\r\n\tTHRESHOLD\DLE\US\"*\n\fDimCheckMode\DC2\n\n\ACKSTRICT\DLE\NUL\DC2\SO\n\nPERMISSIVE\DLE\SOH\"\131\b\n\DLEV0LayerParameter\DC2\f\n\EOTname\CAN\SOH \SOH(\t\DC2\f\n\EOTtype\CAN\STX \SOH(\t\DC2\DC2\n\nnum_output\CAN\ETX \SOH(\r\DC2\SYN\n\bbiasterm\CAN\EOT \SOH(\b:\EOTtrue\DC2-\n\rweight_filler\CAN\ENQ \SOH(\v2\SYN.caffe.FillerParameter\DC2+\n\vbias_filler\CAN\ACK \SOH(\v2\SYN.caffe.FillerParameter\DC2\SO\n\ETXpad\CAN\a \SOH(\r:\SOH0\DC2\DC2\n\nkernelsize\CAN\b \SOH(\r\DC2\DLE\n\ENQgroup\CAN\t \SOH(\r:\SOH1\DC2\DC1\n\ACKstride\CAN\n \SOH(\r:\SOH1\DC25\n\EOTpool\CAN\v \SOH(\SO2\".caffe.V0LayerParameter.PoolMethod:\ETXMAX\DC2\SUB\n\rdropout_ratio\CAN\f \SOH(\STX:\ETX0.5\DC2\NAK\n\nlocal_size\CAN\r \SOH(\r:\SOH5\DC2\DC2\n\ENQalpha\CAN\SO \SOH(\STX:\ETX1.0\DC2\DC2\n\EOTbeta\CAN\SI \SOH(\STX:\EOT0.75\DC2\SO\n\SOHk\CAN\SYN \SOH(\STX:\ETX1.0\DC2\SO\n\ACKsource\CAN\DLE \SOH(\t\DC2\DC2\n\ENQscale\CAN\DC1 \SOH(\STX:\ETX1.0\DC2\DLE\n\bmeanfile\CAN\DC2 \SOH(\t\DC2\DC1\n\tbatchsize\CAN\DC3 \SOH(\r\DC2\DC3\n\bcropsize\CAN\DC4 \SOH(\r:\SOH0\DC2\NAK\n\ACKmirror\CAN\NAK \SOH(\b:\ENQfalse\DC2\US\n\ENQblobs\CAN2 \ETX(\v2\DLE.caffe.BlobProto\DC2\DLE\n\bblobs_lr\CAN3 \ETX(\STX\DC2\DC4\n\fweight_decay\CAN4 \ETX(\STX\DC2\DC4\n\trand_skip\CAN5 \SOH(\r:\SOH0\DC2\GS\n\DLEdet_fg_threshold\CAN6 \SOH(\STX:\ETX0.5\DC2\GS\n\DLEdet_bg_threshold\CAN7 \SOH(\STX:\ETX0.5\DC2\GS\n\SIdet_fg_fraction\CAN8 \SOH(\STX:\EOT0.25\DC2\SUB\n\SIdet_context_pad\CAN: \SOH(\r:\SOH0\DC2\ESC\n\rdet_crop_mode\CAN; \SOH(\t:\EOTwarp\DC2\DC2\n\anew_num\CAN< \SOH(\ENQ:\SOH0\DC2\ETB\n\fnew_channels\CAN= \SOH(\ENQ:\SOH0\DC2\NAK\n\nnew_height\CAN> \SOH(\ENQ:\SOH0\DC2\DC4\n\tnew_width\CAN? \SOH(\ENQ:\SOH0\DC2\GS\n\SOshuffle_images\CAN@ \SOH(\b:\ENQfalse\DC2\NAK\n\nconcat_dim\CANA \SOH(\r:\SOH1\DC26\n\DC1hdf5_output_param\CAN\233\a \SOH(\v2\SUB.caffe.HDF5OutputParameter\".\n\nPoolMethod\DC2\a\n\ETXMAX\DLE\NUL\DC2\a\n\ETXAVE\DLE\SOH\DC2\SO\n\nSTOCHASTIC\DLE\STX*\FS\n\ENQPhase\DC2\t\n\ENQTRAIN\DLE\NUL\DC2\b\n\EOTTEST\DLE\SOH")
+ Gen/Caffe/AccuracyParameter.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.AccuracyParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data AccuracyParameter = AccuracyParameter{top_k :: !(P'.Maybe P'.Word32)}+                       deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''AccuracyParameter++ +instance P'.Mergeable AccuracyParameter where+  mergeAppend (AccuracyParameter x'1) (AccuracyParameter y'1) = AccuracyParameter (P'.mergeAppend x'1 y'1)+ +instance P'.Default AccuracyParameter where+  defaultValue = AccuracyParameter (Prelude'.Just 1)+ +instance P'.Wire AccuracyParameter where+  wireSize ft' self'@(AccuracyParameter x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 13 x'1)+  wirePut ft' self'@(AccuracyParameter x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 13 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{top_k = Prelude'.Just new'Field}) (P'.wireGet 13)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> AccuracyParameter) AccuracyParameter where+  getVal m' f' = f' m'+ +instance P'.GPB AccuracyParameter+ +instance P'.ReflectDescriptor AccuracyParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.AccuracyParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"AccuracyParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"AccuracyParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.AccuracyParameter.top_k\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"AccuracyParameter\"], baseName' = FName \"top_k\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/ArgMaxParameter.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ArgMaxParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data ArgMaxParameter = ArgMaxParameter{out_max_val :: !(P'.Maybe P'.Bool), top_k :: !(P'.Maybe P'.Word32)}+                     deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''ArgMaxParameter++ +instance P'.Mergeable ArgMaxParameter where+  mergeAppend (ArgMaxParameter x'1 x'2) (ArgMaxParameter y'1 y'2)+   = ArgMaxParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2)+ +instance P'.Default ArgMaxParameter where+  defaultValue = ArgMaxParameter (Prelude'.Just Prelude'.False) (Prelude'.Just 1)+ +instance P'.Wire ArgMaxParameter where+  wireSize ft' self'@(ArgMaxParameter x'1 x'2)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 8 x'1 + P'.wireSizeOpt 1 13 x'2)+  wirePut ft' self'@(ArgMaxParameter x'1 x'2)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 8 x'1+             P'.wirePutOpt 16 13 x'2+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{out_max_val = Prelude'.Just new'Field}) (P'.wireGet 8)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{top_k = Prelude'.Just new'Field}) (P'.wireGet 13)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> ArgMaxParameter) ArgMaxParameter where+  getVal m' f' = f' m'+ +instance P'.GPB ArgMaxParameter+ +instance P'.ReflectDescriptor ArgMaxParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 16])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ArgMaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ArgMaxParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ArgMaxParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ArgMaxParameter.out_max_val\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ArgMaxParameter\"], baseName' = FName \"out_max_val\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ArgMaxParameter.top_k\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ArgMaxParameter\"], baseName' = FName \"top_k\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/BlobProto.hs view
@@ -0,0 +1,82 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.BlobProto  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data BlobProto = BlobProto{num :: !(P'.Maybe P'.Int32), channels :: !(P'.Maybe P'.Int32), height :: !(P'.Maybe P'.Int32),+                           width :: !(P'.Maybe P'.Int32), data' :: !(P'.Seq P'.Float), diff :: !(P'.Seq P'.Float)}+               deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''BlobProto++ +instance P'.Mergeable BlobProto where+  mergeAppend (BlobProto x'1 x'2 x'3 x'4 x'5 x'6) (BlobProto y'1 y'2 y'3 y'4 y'5 y'6)+   = BlobProto (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+ +instance P'.Default BlobProto where+  defaultValue = BlobProto (Prelude'.Just 0) (Prelude'.Just 0) (Prelude'.Just 0) (Prelude'.Just 0) P'.defaultValue P'.defaultValue+ +instance P'.Wire BlobProto where+  wireSize ft' self'@(BlobProto x'1 x'2 x'3 x'4 x'5 x'6)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 5 x'1 + P'.wireSizeOpt 1 5 x'2 + P'.wireSizeOpt 1 5 x'3 + P'.wireSizeOpt 1 5 x'4 ++             P'.wireSizePacked 1 2 x'5+             + P'.wireSizePacked 1 2 x'6)+  wirePut ft' self'@(BlobProto x'1 x'2 x'3 x'4 x'5 x'6)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 5 x'1+             P'.wirePutOpt 16 5 x'2+             P'.wirePutOpt 24 5 x'3+             P'.wirePutOpt 32 5 x'4+             P'.wirePutPacked 42 2 x'5+             P'.wirePutPacked 50 2 x'6+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{num = Prelude'.Just new'Field}) (P'.wireGet 5)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{channels = Prelude'.Just new'Field}) (P'.wireGet 5)+             24 -> Prelude'.fmap (\ !new'Field -> old'Self{height = Prelude'.Just new'Field}) (P'.wireGet 5)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{width = Prelude'.Just new'Field}) (P'.wireGet 5)+             45 -> Prelude'.fmap (\ !new'Field -> old'Self{data' = P'.append (data' old'Self) new'Field}) (P'.wireGet 2)+             42 -> Prelude'.fmap (\ !new'Field -> old'Self{data' = P'.mergeAppend (data' old'Self) new'Field}) (P'.wireGetPacked 2)+             53 -> Prelude'.fmap (\ !new'Field -> old'Self{diff = P'.append (diff old'Self) new'Field}) (P'.wireGet 2)+             50 -> Prelude'.fmap (\ !new'Field -> old'Self{diff = P'.mergeAppend (diff old'Self) new'Field}) (P'.wireGetPacked 2)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> BlobProto) BlobProto where+  getVal m' f' = f' m'+ +instance P'.GPB BlobProto+ +instance P'.ReflectDescriptor BlobProto where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 16, 24, 32, 42, 45, 50, 53])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}, descFilePath = [\"Gen\",\"Caffe\",\"BlobProto.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.num\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"num\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"channels\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"height\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"width\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.data\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"data'\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 42}, packedTag = Just (WireTag {getWireTag = 45},WireTag {getWireTag = 42}), wireTagLength = 1, isPacked = True, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProto.diff\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProto\"], baseName' = FName \"diff\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 50}, packedTag = Just (WireTag {getWireTag = 53},WireTag {getWireTag = 50}), wireTagLength = 1, isPacked = True, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/BlobProtoVector.hs view
@@ -0,0 +1,64 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.BlobProtoVector  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.BlobProto as Caffe (BlobProto)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data BlobProtoVector = BlobProtoVector{blobs :: !(P'.Seq Caffe.BlobProto)}+                     deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''BlobProtoVector++ +instance P'.Mergeable BlobProtoVector where+  mergeAppend (BlobProtoVector x'1) (BlobProtoVector y'1) = BlobProtoVector (P'.mergeAppend x'1 y'1)+ +instance P'.Default BlobProtoVector where+  defaultValue = BlobProtoVector P'.defaultValue+ +instance P'.Wire BlobProtoVector where+  wireSize ft' self'@(BlobProtoVector x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeRep 1 11 x'1)+  wirePut ft' self'@(BlobProtoVector x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutRep 10 11 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{blobs = P'.append (blobs old'Self) new'Field}) (P'.wireGet 11)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> BlobProtoVector) BlobProtoVector where+  getVal m' f' = f' m'+ +instance P'.GPB BlobProtoVector+ +instance P'.ReflectDescriptor BlobProtoVector where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [10])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.BlobProtoVector\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProtoVector\"}, descFilePath = [\"Gen\",\"Caffe\",\"BlobProtoVector.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.BlobProtoVector.blobs\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"BlobProtoVector\"], baseName' = FName \"blobs\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/ConcatParameter.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ConcatParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data ConcatParameter = ConcatParameter{concat_dim :: !(P'.Maybe P'.Word32)}+                     deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''ConcatParameter++ +instance P'.Mergeable ConcatParameter where+  mergeAppend (ConcatParameter x'1) (ConcatParameter y'1) = ConcatParameter (P'.mergeAppend x'1 y'1)+ +instance P'.Default ConcatParameter where+  defaultValue = ConcatParameter (Prelude'.Just 1)+ +instance P'.Wire ConcatParameter where+  wireSize ft' self'@(ConcatParameter x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 13 x'1)+  wirePut ft' self'@(ConcatParameter x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 13 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{concat_dim = Prelude'.Just new'Field}) (P'.wireGet 13)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> ConcatParameter) ConcatParameter where+  getVal m' f' = f' m'+ +instance P'.GPB ConcatParameter+ +instance P'.ReflectDescriptor ConcatParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ConcatParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConcatParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ConcatParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConcatParameter.concat_dim\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConcatParameter\"], baseName' = FName \"concat_dim\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/ContrastiveLossParameter.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ContrastiveLossParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data ContrastiveLossParameter = ContrastiveLossParameter{margin :: !(P'.Maybe P'.Float)}+                              deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''ContrastiveLossParameter++ +instance P'.Mergeable ContrastiveLossParameter where+  mergeAppend (ContrastiveLossParameter x'1) (ContrastiveLossParameter y'1) = ContrastiveLossParameter (P'.mergeAppend x'1 y'1)+ +instance P'.Default ContrastiveLossParameter where+  defaultValue = ContrastiveLossParameter (Prelude'.Just 1.0)+ +instance P'.Wire ContrastiveLossParameter where+  wireSize ft' self'@(ContrastiveLossParameter x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 2 x'1)+  wirePut ft' self'@(ContrastiveLossParameter x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 13 2 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             13 -> Prelude'.fmap (\ !new'Field -> old'Self{margin = Prelude'.Just new'Field}) (P'.wireGet 2)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> ContrastiveLossParameter) ContrastiveLossParameter where+  getVal m' f' = f' m'+ +instance P'.GPB ContrastiveLossParameter+ +instance P'.ReflectDescriptor ContrastiveLossParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [13])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ContrastiveLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ContrastiveLossParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ContrastiveLossParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ContrastiveLossParameter.margin\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ContrastiveLossParameter\"], baseName' = FName \"margin\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/ConvolutionParameter.hs view
@@ -0,0 +1,143 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ConvolutionParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.ConvolutionParameter.Engine as Caffe.ConvolutionParameter (Engine)+import qualified Gen.Caffe.FillerParameter as Caffe (FillerParameter)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data ConvolutionParameter = ConvolutionParameter{num_output :: !(P'.Maybe P'.Word32), bias_term :: !(P'.Maybe P'.Bool),+                                                 pad :: !(P'.Maybe P'.Word32), pad_h :: !(P'.Maybe P'.Word32),+                                                 pad_w :: !(P'.Maybe P'.Word32), kernel_size :: !(P'.Maybe P'.Word32),+                                                 kernel_h :: !(P'.Maybe P'.Word32), kernel_w :: !(P'.Maybe P'.Word32),+                                                 group :: !(P'.Maybe P'.Word32), stride :: !(P'.Maybe P'.Word32),+                                                 stride_h :: !(P'.Maybe P'.Word32), stride_w :: !(P'.Maybe P'.Word32),+                                                 weight_filler :: !(P'.Maybe Caffe.FillerParameter),+                                                 bias_filler :: !(P'.Maybe Caffe.FillerParameter),+                                                 engine :: !(P'.Maybe Caffe.ConvolutionParameter.Engine)}+                          deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''ConvolutionParameter++ +instance P'.Mergeable ConvolutionParameter where+  mergeAppend (ConvolutionParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15)+   (ConvolutionParameter y'1 y'2 y'3 y'4 y'5 y'6 y'7 y'8 y'9 y'10 y'11 y'12 y'13 y'14 y'15)+   = ConvolutionParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+      (P'.mergeAppend x'8 y'8)+      (P'.mergeAppend x'9 y'9)+      (P'.mergeAppend x'10 y'10)+      (P'.mergeAppend x'11 y'11)+      (P'.mergeAppend x'12 y'12)+      (P'.mergeAppend x'13 y'13)+      (P'.mergeAppend x'14 y'14)+      (P'.mergeAppend x'15 y'15)+ +instance P'.Default ConvolutionParameter where+  defaultValue+   = ConvolutionParameter P'.defaultValue (Prelude'.Just Prelude'.True) (Prelude'.Just 0) (Prelude'.Just 0) (Prelude'.Just 0)+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      (Prelude'.Just 1)+      (Prelude'.Just 1)+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      (Prelude'.Just (Prelude'.read "DEFAULT"))+ +instance P'.Wire ConvolutionParameter where+  wireSize ft' self'@(ConvolutionParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 13 x'1 + P'.wireSizeOpt 1 8 x'2 + P'.wireSizeOpt 1 13 x'3 + P'.wireSizeOpt 1 13 x'4 ++             P'.wireSizeOpt 1 13 x'5+             + P'.wireSizeOpt 1 13 x'6+             + P'.wireSizeOpt 1 13 x'7+             + P'.wireSizeOpt 1 13 x'8+             + P'.wireSizeOpt 1 13 x'9+             + P'.wireSizeOpt 1 13 x'10+             + P'.wireSizeOpt 1 13 x'11+             + P'.wireSizeOpt 1 13 x'12+             + P'.wireSizeOpt 1 11 x'13+             + P'.wireSizeOpt 1 11 x'14+             + P'.wireSizeOpt 1 14 x'15)+  wirePut ft' self'@(ConvolutionParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 13 x'1+             P'.wirePutOpt 16 8 x'2+             P'.wirePutOpt 24 13 x'3+             P'.wirePutOpt 32 13 x'6+             P'.wirePutOpt 40 13 x'9+             P'.wirePutOpt 48 13 x'10+             P'.wirePutOpt 58 11 x'13+             P'.wirePutOpt 66 11 x'14+             P'.wirePutOpt 72 13 x'4+             P'.wirePutOpt 80 13 x'5+             P'.wirePutOpt 88 13 x'7+             P'.wirePutOpt 96 13 x'8+             P'.wirePutOpt 104 13 x'11+             P'.wirePutOpt 112 13 x'12+             P'.wirePutOpt 120 14 x'15+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{num_output = Prelude'.Just new'Field}) (P'.wireGet 13)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{bias_term = Prelude'.Just new'Field}) (P'.wireGet 8)+             24 -> Prelude'.fmap (\ !new'Field -> old'Self{pad = Prelude'.Just new'Field}) (P'.wireGet 13)+             72 -> Prelude'.fmap (\ !new'Field -> old'Self{pad_h = Prelude'.Just new'Field}) (P'.wireGet 13)+             80 -> Prelude'.fmap (\ !new'Field -> old'Self{pad_w = Prelude'.Just new'Field}) (P'.wireGet 13)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{kernel_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             88 -> Prelude'.fmap (\ !new'Field -> old'Self{kernel_h = Prelude'.Just new'Field}) (P'.wireGet 13)+             96 -> Prelude'.fmap (\ !new'Field -> old'Self{kernel_w = Prelude'.Just new'Field}) (P'.wireGet 13)+             40 -> Prelude'.fmap (\ !new'Field -> old'Self{group = Prelude'.Just new'Field}) (P'.wireGet 13)+             48 -> Prelude'.fmap (\ !new'Field -> old'Self{stride = Prelude'.Just new'Field}) (P'.wireGet 13)+             104 -> Prelude'.fmap (\ !new'Field -> old'Self{stride_h = Prelude'.Just new'Field}) (P'.wireGet 13)+             112 -> Prelude'.fmap (\ !new'Field -> old'Self{stride_w = Prelude'.Just new'Field}) (P'.wireGet 13)+             58 -> Prelude'.fmap+                    (\ !new'Field -> old'Self{weight_filler = P'.mergeAppend (weight_filler old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             66 -> Prelude'.fmap+                    (\ !new'Field -> old'Self{bias_filler = P'.mergeAppend (bias_filler old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             120 -> Prelude'.fmap (\ !new'Field -> old'Self{engine = Prelude'.Just new'Field}) (P'.wireGet 14)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> ConvolutionParameter) ConvolutionParameter where+  getVal m' f' = f' m'+ +instance P'.GPB ConvolutionParameter+ +instance P'.ReflectDescriptor ConvolutionParameter where+  getMessageInfo _+   = P'.GetMessageInfo (P'.fromDistinctAscList [])+      (P'.fromDistinctAscList [8, 16, 24, 32, 40, 48, 58, 66, 72, 80, 88, 96, 104, 112, 120])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ConvolutionParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConvolutionParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ConvolutionParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.num_output\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"num_output\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.bias_term\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"bias_term\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.pad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"pad\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.pad_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"pad_h\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 72}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.pad_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"pad_w\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 80}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.kernel_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"kernel_size\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.kernel_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"kernel_h\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 88}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.kernel_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"kernel_w\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 96}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.group\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"group\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.stride\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"stride\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.stride_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"stride_h\"}, fieldNumber = FieldId {getFieldId = 13}, wireTag = WireTag {getWireTag = 104}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.stride_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"stride_w\"}, fieldNumber = FieldId {getFieldId = 14}, wireTag = WireTag {getWireTag = 112}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.weight_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"weight_filler\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 58}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.bias_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"bias_filler\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 66}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ConvolutionParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 15}, wireTag = WireTag {getWireTag = 120}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ConvolutionParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"ConvolutionParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/ConvolutionParameter/Engine.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ConvolutionParameter.Engine  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data Engine = DEFAULT+            | CAFFE+            | CUDNN+            deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''Engine++ +instance P'.Mergeable Engine+ +instance Prelude'.Bounded Engine where+  minBound = DEFAULT+  maxBound = CUDNN+ +instance P'.Default Engine where+  defaultValue = DEFAULT+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe Engine+toMaybe'Enum 0 = Prelude'.Just DEFAULT+toMaybe'Enum 1 = Prelude'.Just CAFFE+toMaybe'Enum 2 = Prelude'.Just CUDNN+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum Engine where+  fromEnum DEFAULT = 0+  fromEnum CAFFE = 1+  fromEnum CUDNN = 2+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.ConvolutionParameter.Engine") .+      toMaybe'Enum+  succ DEFAULT = CAFFE+  succ CAFFE = CUDNN+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.ConvolutionParameter.Engine"+  pred CAFFE = DEFAULT+  pred CUDNN = CAFFE+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.ConvolutionParameter.Engine"+ +instance P'.Wire Engine where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB Engine+ +instance P'.MessageAPI msg' (msg' -> Engine) Engine where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum Engine where+  reflectEnum = [(0, "DEFAULT", DEFAULT), (1, "CAFFE", CAFFE), (2, "CUDNN", CUDNN)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.ConvolutionParameter.Engine") ["Gen"] ["Caffe", "ConvolutionParameter"] "Engine")+      ["Gen", "Caffe", "ConvolutionParameter", "Engine.hs"]+      [(0, "DEFAULT"), (1, "CAFFE"), (2, "CUDNN")]
+ Gen/Caffe/DataParameter.hs view
@@ -0,0 +1,95 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.DataParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.DataParameter.DB as Caffe.DataParameter (DB)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data DataParameter = DataParameter{source :: !(P'.Maybe P'.Utf8), batch_size :: !(P'.Maybe P'.Word32),+                                   rand_skip :: !(P'.Maybe P'.Word32), backend :: !(P'.Maybe Caffe.DataParameter.DB),+                                   scale :: !(P'.Maybe P'.Float), mean_file :: !(P'.Maybe P'.Utf8),+                                   crop_size :: !(P'.Maybe P'.Word32), mirror :: !(P'.Maybe P'.Bool)}+                   deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''DataParameter++ +instance P'.Mergeable DataParameter where+  mergeAppend (DataParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8) (DataParameter y'1 y'2 y'3 y'4 y'5 y'6 y'7 y'8)+   = DataParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+      (P'.mergeAppend x'8 y'8)+ +instance P'.Default DataParameter where+  defaultValue+   = DataParameter P'.defaultValue P'.defaultValue (Prelude'.Just 0) (Prelude'.Just (Prelude'.read "LEVELDB")) (Prelude'.Just 1.0)+      P'.defaultValue+      (Prelude'.Just 0)+      (Prelude'.Just Prelude'.False)+ +instance P'.Wire DataParameter where+  wireSize ft' self'@(DataParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 9 x'1 + P'.wireSizeOpt 1 13 x'2 + P'.wireSizeOpt 1 13 x'3 + P'.wireSizeOpt 1 14 x'4 ++             P'.wireSizeOpt 1 2 x'5+             + P'.wireSizeOpt 1 9 x'6+             + P'.wireSizeOpt 1 13 x'7+             + P'.wireSizeOpt 1 8 x'8)+  wirePut ft' self'@(DataParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'1+             P'.wirePutOpt 21 2 x'5+             P'.wirePutOpt 26 9 x'6+             P'.wirePutOpt 32 13 x'2+             P'.wirePutOpt 40 13 x'7+             P'.wirePutOpt 48 8 x'8+             P'.wirePutOpt 56 13 x'3+             P'.wirePutOpt 64 14 x'4+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{source = Prelude'.Just new'Field}) (P'.wireGet 9)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{batch_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             56 -> Prelude'.fmap (\ !new'Field -> old'Self{rand_skip = Prelude'.Just new'Field}) (P'.wireGet 13)+             64 -> Prelude'.fmap (\ !new'Field -> old'Self{backend = Prelude'.Just new'Field}) (P'.wireGet 14)+             21 -> Prelude'.fmap (\ !new'Field -> old'Self{scale = Prelude'.Just new'Field}) (P'.wireGet 2)+             26 -> Prelude'.fmap (\ !new'Field -> old'Self{mean_file = Prelude'.Just new'Field}) (P'.wireGet 9)+             40 -> Prelude'.fmap (\ !new'Field -> old'Self{crop_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             48 -> Prelude'.fmap (\ !new'Field -> old'Self{mirror = Prelude'.Just new'Field}) (P'.wireGet 8)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> DataParameter) DataParameter where+  getVal m' f' = f' m'+ +instance P'.GPB DataParameter+ +instance P'.ReflectDescriptor DataParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [10, 21, 26, 32, 40, 48, 56, 64])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"DataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.batch_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"batch_size\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.rand_skip\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"rand_skip\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.backend\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"backend\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 64}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DataParameter.DB\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"DataParameter\"], baseName = MName \"DB\"}), hsRawDefault = Just \"LEVELDB\", hsDefault = Just (HsDef'Enum \"LEVELDB\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.mean_file\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"mean_file\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.crop_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"crop_size\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DataParameter.mirror\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DataParameter\"], baseName' = FName \"mirror\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/DataParameter/DB.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.DataParameter.DB  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data DB = LEVELDB+        | LMDB+        deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''DB++ +instance P'.Mergeable DB+ +instance Prelude'.Bounded DB where+  minBound = LEVELDB+  maxBound = LMDB+ +instance P'.Default DB where+  defaultValue = LEVELDB+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe DB+toMaybe'Enum 0 = Prelude'.Just LEVELDB+toMaybe'Enum 1 = Prelude'.Just LMDB+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum DB where+  fromEnum LEVELDB = 0+  fromEnum LMDB = 1+  toEnum = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.DataParameter.DB") . toMaybe'Enum+  succ LEVELDB = LMDB+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.DataParameter.DB"+  pred LMDB = LEVELDB+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.DataParameter.DB"+ +instance P'.Wire DB where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB DB+ +instance P'.MessageAPI msg' (msg' -> DB) DB where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum DB where+  reflectEnum = [(0, "LEVELDB", LEVELDB), (1, "LMDB", LMDB)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.DataParameter.DB") ["Gen"] ["Caffe", "DataParameter"] "DB")+      ["Gen", "Caffe", "DataParameter", "DB.hs"]+      [(0, "LEVELDB"), (1, "LMDB")]
+ Gen/Caffe/Datum.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.Datum  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data Datum = Datum{channels :: !(P'.Maybe P'.Int32), height :: !(P'.Maybe P'.Int32), width :: !(P'.Maybe P'.Int32),+                   data' :: !(P'.Maybe P'.ByteString), label :: !(P'.Maybe P'.Int32), float_data :: !(P'.Seq P'.Float),+                   encoded :: !(P'.Maybe P'.Bool)}+           deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''Datum++ +instance P'.Mergeable Datum where+  mergeAppend (Datum x'1 x'2 x'3 x'4 x'5 x'6 x'7) (Datum y'1 y'2 y'3 y'4 y'5 y'6 y'7)+   = Datum (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+ +instance P'.Default Datum where+  defaultValue+   = Datum P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue+      (Prelude'.Just Prelude'.False)+ +instance P'.Wire Datum where+  wireSize ft' self'@(Datum x'1 x'2 x'3 x'4 x'5 x'6 x'7)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 5 x'1 + P'.wireSizeOpt 1 5 x'2 + P'.wireSizeOpt 1 5 x'3 + P'.wireSizeOpt 1 12 x'4 ++             P'.wireSizeOpt 1 5 x'5+             + P'.wireSizeRep 1 2 x'6+             + P'.wireSizeOpt 1 8 x'7)+  wirePut ft' self'@(Datum x'1 x'2 x'3 x'4 x'5 x'6 x'7)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 5 x'1+             P'.wirePutOpt 16 5 x'2+             P'.wirePutOpt 24 5 x'3+             P'.wirePutOpt 34 12 x'4+             P'.wirePutOpt 40 5 x'5+             P'.wirePutRep 53 2 x'6+             P'.wirePutOpt 56 8 x'7+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{channels = Prelude'.Just new'Field}) (P'.wireGet 5)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{height = Prelude'.Just new'Field}) (P'.wireGet 5)+             24 -> Prelude'.fmap (\ !new'Field -> old'Self{width = Prelude'.Just new'Field}) (P'.wireGet 5)+             34 -> Prelude'.fmap (\ !new'Field -> old'Self{data' = Prelude'.Just new'Field}) (P'.wireGet 12)+             40 -> Prelude'.fmap (\ !new'Field -> old'Self{label = Prelude'.Just new'Field}) (P'.wireGet 5)+             53 -> Prelude'.fmap (\ !new'Field -> old'Self{float_data = P'.append (float_data old'Self) new'Field}) (P'.wireGet 2)+             50 -> Prelude'.fmap (\ !new'Field -> old'Self{float_data = P'.mergeAppend (float_data old'Self) new'Field})+                    (P'.wireGetPacked 2)+             56 -> Prelude'.fmap (\ !new'Field -> old'Self{encoded = Prelude'.Just new'Field}) (P'.wireGet 8)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> Datum) Datum where+  getVal m' f' = f' m'+ +instance P'.GPB Datum+ +instance P'.ReflectDescriptor Datum where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 16, 24, 34, 40, 50, 53, 56])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.Datum\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"Datum\"}, descFilePath = [\"Gen\",\"Caffe\",\"Datum.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"channels\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"height\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"width\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.data\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"data'\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 12}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.label\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"label\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.float_data\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"float_data\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 53}, packedTag = Just (WireTag {getWireTag = 53},WireTag {getWireTag = 50}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.Datum.encoded\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"Datum\"], baseName' = FName \"encoded\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/DropoutParameter.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.DropoutParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data DropoutParameter = DropoutParameter{dropout_ratio :: !(P'.Maybe P'.Float)}+                      deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''DropoutParameter++ +instance P'.Mergeable DropoutParameter where+  mergeAppend (DropoutParameter x'1) (DropoutParameter y'1) = DropoutParameter (P'.mergeAppend x'1 y'1)+ +instance P'.Default DropoutParameter where+  defaultValue = DropoutParameter (Prelude'.Just 0.5)+ +instance P'.Wire DropoutParameter where+  wireSize ft' self'@(DropoutParameter x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 2 x'1)+  wirePut ft' self'@(DropoutParameter x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 13 2 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             13 -> Prelude'.fmap (\ !new'Field -> old'Self{dropout_ratio = Prelude'.Just new'Field}) (P'.wireGet 2)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> DropoutParameter) DropoutParameter where+  getVal m' f' = f' m'+ +instance P'.GPB DropoutParameter+ +instance P'.ReflectDescriptor DropoutParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [13])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.DropoutParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DropoutParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"DropoutParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DropoutParameter.dropout_ratio\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DropoutParameter\"], baseName' = FName \"dropout_ratio\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/DummyDataParameter.hs view
@@ -0,0 +1,85 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.DummyDataParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.FillerParameter as Caffe (FillerParameter)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data DummyDataParameter = DummyDataParameter{data_filler :: !(P'.Seq Caffe.FillerParameter), num :: !(P'.Seq P'.Word32),+                                             channels :: !(P'.Seq P'.Word32), height :: !(P'.Seq P'.Word32),+                                             width :: !(P'.Seq P'.Word32)}+                        deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''DummyDataParameter++ +instance P'.Mergeable DummyDataParameter where+  mergeAppend (DummyDataParameter x'1 x'2 x'3 x'4 x'5) (DummyDataParameter y'1 y'2 y'3 y'4 y'5)+   = DummyDataParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+ +instance P'.Default DummyDataParameter where+  defaultValue = DummyDataParameter P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue+ +instance P'.Wire DummyDataParameter where+  wireSize ft' self'@(DummyDataParameter x'1 x'2 x'3 x'4 x'5)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeRep 1 11 x'1 + P'.wireSizeRep 1 13 x'2 + P'.wireSizeRep 1 13 x'3 + P'.wireSizeRep 1 13 x'4 ++             P'.wireSizeRep 1 13 x'5)+  wirePut ft' self'@(DummyDataParameter x'1 x'2 x'3 x'4 x'5)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutRep 10 11 x'1+             P'.wirePutRep 16 13 x'2+             P'.wirePutRep 24 13 x'3+             P'.wirePutRep 32 13 x'4+             P'.wirePutRep 40 13 x'5+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{data_filler = P'.append (data_filler old'Self) new'Field})+                    (P'.wireGet 11)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{num = P'.append (num old'Self) new'Field}) (P'.wireGet 13)+             18 -> Prelude'.fmap (\ !new'Field -> old'Self{num = P'.mergeAppend (num old'Self) new'Field}) (P'.wireGetPacked 13)+             24 -> Prelude'.fmap (\ !new'Field -> old'Self{channels = P'.append (channels old'Self) new'Field}) (P'.wireGet 13)+             26 -> Prelude'.fmap (\ !new'Field -> old'Self{channels = P'.mergeAppend (channels old'Self) new'Field})+                    (P'.wireGetPacked 13)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{height = P'.append (height old'Self) new'Field}) (P'.wireGet 13)+             34 -> Prelude'.fmap (\ !new'Field -> old'Self{height = P'.mergeAppend (height old'Self) new'Field})+                    (P'.wireGetPacked 13)+             40 -> Prelude'.fmap (\ !new'Field -> old'Self{width = P'.append (width old'Self) new'Field}) (P'.wireGet 13)+             42 -> Prelude'.fmap (\ !new'Field -> old'Self{width = P'.mergeAppend (width old'Self) new'Field}) (P'.wireGetPacked 13)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> DummyDataParameter) DummyDataParameter where+  getVal m' f' = f' m'+ +instance P'.GPB DummyDataParameter+ +instance P'.ReflectDescriptor DummyDataParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [10, 16, 18, 24, 26, 32, 34, 40, 42])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.DummyDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DummyDataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"DummyDataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DummyDataParameter.data_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DummyDataParameter\"], baseName' = FName \"data_filler\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DummyDataParameter.num\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DummyDataParameter\"], baseName' = FName \"num\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Just (WireTag {getWireTag = 16},WireTag {getWireTag = 18}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DummyDataParameter.channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DummyDataParameter\"], baseName' = FName \"channels\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Just (WireTag {getWireTag = 24},WireTag {getWireTag = 26}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DummyDataParameter.height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DummyDataParameter\"], baseName' = FName \"height\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Just (WireTag {getWireTag = 32},WireTag {getWireTag = 34}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.DummyDataParameter.width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"DummyDataParameter\"], baseName' = FName \"width\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Just (WireTag {getWireTag = 40},WireTag {getWireTag = 42}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/EltwiseParameter.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.EltwiseParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.EltwiseParameter.EltwiseOp as Caffe.EltwiseParameter (EltwiseOp)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data EltwiseParameter = EltwiseParameter{operation :: !(P'.Maybe Caffe.EltwiseParameter.EltwiseOp), coeff :: !(P'.Seq P'.Float),+                                         stable_prod_grad :: !(P'.Maybe P'.Bool)}+                      deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''EltwiseParameter++ +instance P'.Mergeable EltwiseParameter where+  mergeAppend (EltwiseParameter x'1 x'2 x'3) (EltwiseParameter y'1 y'2 y'3)+   = EltwiseParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3)+ +instance P'.Default EltwiseParameter where+  defaultValue = EltwiseParameter (Prelude'.Just (Prelude'.read "SUM")) P'.defaultValue (Prelude'.Just Prelude'.True)+ +instance P'.Wire EltwiseParameter where+  wireSize ft' self'@(EltwiseParameter x'1 x'2 x'3)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 14 x'1 + P'.wireSizeRep 1 2 x'2 + P'.wireSizeOpt 1 8 x'3)+  wirePut ft' self'@(EltwiseParameter x'1 x'2 x'3)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 14 x'1+             P'.wirePutRep 21 2 x'2+             P'.wirePutOpt 24 8 x'3+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{operation = Prelude'.Just new'Field}) (P'.wireGet 14)+             21 -> Prelude'.fmap (\ !new'Field -> old'Self{coeff = P'.append (coeff old'Self) new'Field}) (P'.wireGet 2)+             18 -> Prelude'.fmap (\ !new'Field -> old'Self{coeff = P'.mergeAppend (coeff old'Self) new'Field}) (P'.wireGetPacked 2)+             24 -> Prelude'.fmap (\ !new'Field -> old'Self{stable_prod_grad = Prelude'.Just new'Field}) (P'.wireGet 8)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> EltwiseParameter) EltwiseParameter where+  getVal m' f' = f' m'+ +instance P'.GPB EltwiseParameter+ +instance P'.ReflectDescriptor EltwiseParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 18, 21, 24])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.EltwiseParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"EltwiseParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"EltwiseParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.EltwiseParameter.operation\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"EltwiseParameter\"], baseName' = FName \"operation\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.EltwiseParameter.EltwiseOp\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"EltwiseParameter\"], baseName = MName \"EltwiseOp\"}), hsRawDefault = Just \"SUM\", hsDefault = Just (HsDef'Enum \"SUM\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.EltwiseParameter.coeff\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"EltwiseParameter\"], baseName' = FName \"coeff\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Just (WireTag {getWireTag = 21},WireTag {getWireTag = 18}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.EltwiseParameter.stable_prod_grad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"EltwiseParameter\"], baseName' = FName \"stable_prod_grad\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/EltwiseParameter/EltwiseOp.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.EltwiseParameter.EltwiseOp  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data EltwiseOp = PROD+               | SUM+               | MAX+               deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''EltwiseOp++ +instance P'.Mergeable EltwiseOp+ +instance Prelude'.Bounded EltwiseOp where+  minBound = PROD+  maxBound = MAX+ +instance P'.Default EltwiseOp where+  defaultValue = PROD+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe EltwiseOp+toMaybe'Enum 0 = Prelude'.Just PROD+toMaybe'Enum 1 = Prelude'.Just SUM+toMaybe'Enum 2 = Prelude'.Just MAX+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum EltwiseOp where+  fromEnum PROD = 0+  fromEnum SUM = 1+  fromEnum MAX = 2+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.EltwiseParameter.EltwiseOp") .+      toMaybe'Enum+  succ PROD = SUM+  succ SUM = MAX+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.EltwiseParameter.EltwiseOp"+  pred SUM = PROD+  pred MAX = SUM+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.EltwiseParameter.EltwiseOp"+ +instance P'.Wire EltwiseOp where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB EltwiseOp+ +instance P'.MessageAPI msg' (msg' -> EltwiseOp) EltwiseOp where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum EltwiseOp where+  reflectEnum = [(0, "PROD", PROD), (1, "SUM", SUM), (2, "MAX", MAX)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.EltwiseParameter.EltwiseOp") ["Gen"] ["Caffe", "EltwiseParameter"] "EltwiseOp")+      ["Gen", "Caffe", "EltwiseParameter", "EltwiseOp.hs"]+      [(0, "PROD"), (1, "SUM"), (2, "MAX")]
+ Gen/Caffe/ExpParameter.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ExpParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data ExpParameter = ExpParameter{base :: !(P'.Maybe P'.Float), scale :: !(P'.Maybe P'.Float), shift :: !(P'.Maybe P'.Float)}+                  deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''ExpParameter++ +instance P'.Mergeable ExpParameter where+  mergeAppend (ExpParameter x'1 x'2 x'3) (ExpParameter y'1 y'2 y'3)+   = ExpParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3)+ +instance P'.Default ExpParameter where+  defaultValue = ExpParameter (Prelude'.Just (-1.0)) (Prelude'.Just 1.0) (Prelude'.Just 0.0)+ +instance P'.Wire ExpParameter where+  wireSize ft' self'@(ExpParameter x'1 x'2 x'3)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 2 x'1 + P'.wireSizeOpt 1 2 x'2 + P'.wireSizeOpt 1 2 x'3)+  wirePut ft' self'@(ExpParameter x'1 x'2 x'3)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 13 2 x'1+             P'.wirePutOpt 21 2 x'2+             P'.wirePutOpt 29 2 x'3+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             13 -> Prelude'.fmap (\ !new'Field -> old'Self{base = Prelude'.Just new'Field}) (P'.wireGet 2)+             21 -> Prelude'.fmap (\ !new'Field -> old'Self{scale = Prelude'.Just new'Field}) (P'.wireGet 2)+             29 -> Prelude'.fmap (\ !new'Field -> old'Self{shift = Prelude'.Just new'Field}) (P'.wireGet 2)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> ExpParameter) ExpParameter where+  getVal m' f' = f' m'+ +instance P'.GPB ExpParameter+ +instance P'.ReflectDescriptor ExpParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [13, 21, 29])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ExpParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ExpParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ExpParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ExpParameter.base\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ExpParameter\"], baseName' = FName \"base\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"-1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational ((-1) % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ExpParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ExpParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ExpParameter.shift\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ExpParameter\"], baseName' = FName \"shift\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 29}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/FillerParameter.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.FillerParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data FillerParameter = FillerParameter{type' :: !(P'.Maybe P'.Utf8), value :: !(P'.Maybe P'.Float), min :: !(P'.Maybe P'.Float),+                                       max :: !(P'.Maybe P'.Float), mean :: !(P'.Maybe P'.Float), std :: !(P'.Maybe P'.Float),+                                       sparse :: !(P'.Maybe P'.Int32)}+                     deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''FillerParameter++ +instance P'.Mergeable FillerParameter where+  mergeAppend (FillerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7) (FillerParameter y'1 y'2 y'3 y'4 y'5 y'6 y'7)+   = FillerParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+ +instance P'.Default FillerParameter where+  defaultValue+   = FillerParameter (Prelude'.Just (P'.Utf8 (P'.pack "constant"))) (Prelude'.Just 0.0) (Prelude'.Just 0.0) (Prelude'.Just 1.0)+      (Prelude'.Just 0.0)+      (Prelude'.Just 1.0)+      (Prelude'.Just (-1))+ +instance P'.Wire FillerParameter where+  wireSize ft' self'@(FillerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 9 x'1 + P'.wireSizeOpt 1 2 x'2 + P'.wireSizeOpt 1 2 x'3 + P'.wireSizeOpt 1 2 x'4 ++             P'.wireSizeOpt 1 2 x'5+             + P'.wireSizeOpt 1 2 x'6+             + P'.wireSizeOpt 1 5 x'7)+  wirePut ft' self'@(FillerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'1+             P'.wirePutOpt 21 2 x'2+             P'.wirePutOpt 29 2 x'3+             P'.wirePutOpt 37 2 x'4+             P'.wirePutOpt 45 2 x'5+             P'.wirePutOpt 53 2 x'6+             P'.wirePutOpt 56 5 x'7+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{type' = Prelude'.Just new'Field}) (P'.wireGet 9)+             21 -> Prelude'.fmap (\ !new'Field -> old'Self{value = Prelude'.Just new'Field}) (P'.wireGet 2)+             29 -> Prelude'.fmap (\ !new'Field -> old'Self{min = Prelude'.Just new'Field}) (P'.wireGet 2)+             37 -> Prelude'.fmap (\ !new'Field -> old'Self{max = Prelude'.Just new'Field}) (P'.wireGet 2)+             45 -> Prelude'.fmap (\ !new'Field -> old'Self{mean = Prelude'.Just new'Field}) (P'.wireGet 2)+             53 -> Prelude'.fmap (\ !new'Field -> old'Self{std = Prelude'.Just new'Field}) (P'.wireGet 2)+             56 -> Prelude'.fmap (\ !new'Field -> old'Self{sparse = Prelude'.Just new'Field}) (P'.wireGet 5)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> FillerParameter) FillerParameter where+  getVal m' f' = f' m'+ +instance P'.GPB FillerParameter+ +instance P'.ReflectDescriptor FillerParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [10, 21, 29, 37, 45, 53, 56])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"FillerParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"type'\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"constant\", hsDefault = Just (HsDef'ByteString \"constant\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.value\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"value\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.min\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"min\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 29}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.max\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"max\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 37}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.mean\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"mean\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 45}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.std\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"std\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 53}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.FillerParameter.sparse\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"FillerParameter\"], baseName' = FName \"sparse\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"-1\", hsDefault = Just (HsDef'Integer (-1))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/HDF5DataParameter.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.HDF5DataParameter (HDF5DataParameter(..)) where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +data HDF5DataParameter = HDF5DataParameter{source :: !(P'.Maybe P'.Utf8), batch_size :: !(P'.Maybe P'.Word32)}+                       deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)+ +instance P'.Mergeable HDF5DataParameter where+  mergeAppend (HDF5DataParameter x'1 x'2) (HDF5DataParameter y'1 y'2)+   = HDF5DataParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2)+ +instance P'.Default HDF5DataParameter where+  defaultValue = HDF5DataParameter P'.defaultValue P'.defaultValue+ +instance P'.Wire HDF5DataParameter where+  wireSize ft' self'@(HDF5DataParameter x'1 x'2)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 9 x'1 + P'.wireSizeOpt 1 13 x'2)+  wirePut ft' self'@(HDF5DataParameter x'1 x'2)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'1+             P'.wirePutOpt 16 13 x'2+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{source = Prelude'.Just new'Field}) (P'.wireGet 9)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{batch_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> HDF5DataParameter) HDF5DataParameter where+  getVal m' f' = f' m'+ +instance P'.GPB HDF5DataParameter+ +instance P'.ReflectDescriptor HDF5DataParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [10, 16])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.HDF5DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5DataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"HDF5DataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.HDF5DataParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"HDF5DataParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.HDF5DataParameter.batch_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"HDF5DataParameter\"], baseName' = FName \"batch_size\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/HDF5OutputParameter.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.HDF5OutputParameter (HDF5OutputParameter(..)) where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +data HDF5OutputParameter = HDF5OutputParameter{file_name :: !(P'.Maybe P'.Utf8)}+                         deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)+ +instance P'.Mergeable HDF5OutputParameter where+  mergeAppend (HDF5OutputParameter x'1) (HDF5OutputParameter y'1) = HDF5OutputParameter (P'.mergeAppend x'1 y'1)+ +instance P'.Default HDF5OutputParameter where+  defaultValue = HDF5OutputParameter P'.defaultValue+ +instance P'.Wire HDF5OutputParameter where+  wireSize ft' self'@(HDF5OutputParameter x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 9 x'1)+  wirePut ft' self'@(HDF5OutputParameter x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{file_name = Prelude'.Just new'Field}) (P'.wireGet 9)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> HDF5OutputParameter) HDF5OutputParameter where+  getVal m' f' = f' m'+ +instance P'.GPB HDF5OutputParameter+ +instance P'.ReflectDescriptor HDF5OutputParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [10])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.HDF5OutputParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5OutputParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"HDF5OutputParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.HDF5OutputParameter.file_name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"HDF5OutputParameter\"], baseName' = FName \"file_name\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/HingeLossParameter.hs view
@@ -0,0 +1,64 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.HingeLossParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.HingeLossParameter.Norm as Caffe.HingeLossParameter (Norm)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data HingeLossParameter = HingeLossParameter{norm :: !(P'.Maybe Caffe.HingeLossParameter.Norm)}+                        deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''HingeLossParameter++ +instance P'.Mergeable HingeLossParameter where+  mergeAppend (HingeLossParameter x'1) (HingeLossParameter y'1) = HingeLossParameter (P'.mergeAppend x'1 y'1)+ +instance P'.Default HingeLossParameter where+  defaultValue = HingeLossParameter (Prelude'.Just (Prelude'.read "L1"))+ +instance P'.Wire HingeLossParameter where+  wireSize ft' self'@(HingeLossParameter x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 14 x'1)+  wirePut ft' self'@(HingeLossParameter x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 14 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{norm = Prelude'.Just new'Field}) (P'.wireGet 14)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> HingeLossParameter) HingeLossParameter where+  getVal m' f' = f' m'+ +instance P'.GPB HingeLossParameter+ +instance P'.ReflectDescriptor HingeLossParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.HingeLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HingeLossParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"HingeLossParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.HingeLossParameter.norm\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"HingeLossParameter\"], baseName' = FName \"norm\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HingeLossParameter.Norm\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"HingeLossParameter\"], baseName = MName \"Norm\"}), hsRawDefault = Just \"L1\", hsDefault = Just (HsDef'Enum \"L1\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/HingeLossParameter/Norm.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.HingeLossParameter.Norm  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data Norm = L1+          | L2+          deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''Norm++ +instance P'.Mergeable Norm+ +instance Prelude'.Bounded Norm where+  minBound = L1+  maxBound = L2+ +instance P'.Default Norm where+  defaultValue = L1+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe Norm+toMaybe'Enum 1 = Prelude'.Just L1+toMaybe'Enum 2 = Prelude'.Just L2+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum Norm where+  fromEnum L1 = 1+  fromEnum L2 = 2+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.HingeLossParameter.Norm") .+      toMaybe'Enum+  succ L1 = L2+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.HingeLossParameter.Norm"+  pred L2 = L1+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.HingeLossParameter.Norm"+ +instance P'.Wire Norm where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB Norm+ +instance P'.MessageAPI msg' (msg' -> Norm) Norm where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum Norm where+  reflectEnum = [(1, "L1", L1), (2, "L2", L2)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.HingeLossParameter.Norm") ["Gen"] ["Caffe", "HingeLossParameter"] "Norm")+      ["Gen", "Caffe", "HingeLossParameter", "Norm.hs"]+      [(1, "L1"), (2, "L2")]
+ Gen/Caffe/ImageDataParameter.hs view
@@ -0,0 +1,118 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ImageDataParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data ImageDataParameter = ImageDataParameter{source :: !(P'.Maybe P'.Utf8), batch_size :: !(P'.Maybe P'.Word32),+                                             rand_skip :: !(P'.Maybe P'.Word32), shuffle :: !(P'.Maybe P'.Bool),+                                             new_height :: !(P'.Maybe P'.Word32), new_width :: !(P'.Maybe P'.Word32),+                                             is_color :: !(P'.Maybe P'.Bool), scale :: !(P'.Maybe P'.Float),+                                             mean_file :: !(P'.Maybe P'.Utf8), crop_size :: !(P'.Maybe P'.Word32),+                                             mirror :: !(P'.Maybe P'.Bool), root_folder :: !(P'.Maybe P'.Utf8)}+                        deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''ImageDataParameter++ +instance P'.Mergeable ImageDataParameter where+  mergeAppend (ImageDataParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12)+   (ImageDataParameter y'1 y'2 y'3 y'4 y'5 y'6 y'7 y'8 y'9 y'10 y'11 y'12)+   = ImageDataParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+      (P'.mergeAppend x'8 y'8)+      (P'.mergeAppend x'9 y'9)+      (P'.mergeAppend x'10 y'10)+      (P'.mergeAppend x'11 y'11)+      (P'.mergeAppend x'12 y'12)+ +instance P'.Default ImageDataParameter where+  defaultValue+   = ImageDataParameter P'.defaultValue P'.defaultValue (Prelude'.Just 0) (Prelude'.Just Prelude'.False) (Prelude'.Just 0)+      (Prelude'.Just 0)+      (Prelude'.Just Prelude'.True)+      (Prelude'.Just 1.0)+      P'.defaultValue+      (Prelude'.Just 0)+      (Prelude'.Just Prelude'.False)+      (Prelude'.Just (P'.Utf8 (P'.pack "")))+ +instance P'.Wire ImageDataParameter where+  wireSize ft' self'@(ImageDataParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 9 x'1 + P'.wireSizeOpt 1 13 x'2 + P'.wireSizeOpt 1 13 x'3 + P'.wireSizeOpt 1 8 x'4 ++             P'.wireSizeOpt 1 13 x'5+             + P'.wireSizeOpt 1 13 x'6+             + P'.wireSizeOpt 1 8 x'7+             + P'.wireSizeOpt 1 2 x'8+             + P'.wireSizeOpt 1 9 x'9+             + P'.wireSizeOpt 1 13 x'10+             + P'.wireSizeOpt 1 8 x'11+             + P'.wireSizeOpt 1 9 x'12)+  wirePut ft' self'@(ImageDataParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'1+             P'.wirePutOpt 21 2 x'8+             P'.wirePutOpt 26 9 x'9+             P'.wirePutOpt 32 13 x'2+             P'.wirePutOpt 40 13 x'10+             P'.wirePutOpt 48 8 x'11+             P'.wirePutOpt 56 13 x'3+             P'.wirePutOpt 64 8 x'4+             P'.wirePutOpt 72 13 x'5+             P'.wirePutOpt 80 13 x'6+             P'.wirePutOpt 88 8 x'7+             P'.wirePutOpt 98 9 x'12+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{source = Prelude'.Just new'Field}) (P'.wireGet 9)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{batch_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             56 -> Prelude'.fmap (\ !new'Field -> old'Self{rand_skip = Prelude'.Just new'Field}) (P'.wireGet 13)+             64 -> Prelude'.fmap (\ !new'Field -> old'Self{shuffle = Prelude'.Just new'Field}) (P'.wireGet 8)+             72 -> Prelude'.fmap (\ !new'Field -> old'Self{new_height = Prelude'.Just new'Field}) (P'.wireGet 13)+             80 -> Prelude'.fmap (\ !new'Field -> old'Self{new_width = Prelude'.Just new'Field}) (P'.wireGet 13)+             88 -> Prelude'.fmap (\ !new'Field -> old'Self{is_color = Prelude'.Just new'Field}) (P'.wireGet 8)+             21 -> Prelude'.fmap (\ !new'Field -> old'Self{scale = Prelude'.Just new'Field}) (P'.wireGet 2)+             26 -> Prelude'.fmap (\ !new'Field -> old'Self{mean_file = Prelude'.Just new'Field}) (P'.wireGet 9)+             40 -> Prelude'.fmap (\ !new'Field -> old'Self{crop_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             48 -> Prelude'.fmap (\ !new'Field -> old'Self{mirror = Prelude'.Just new'Field}) (P'.wireGet 8)+             98 -> Prelude'.fmap (\ !new'Field -> old'Self{root_folder = Prelude'.Just new'Field}) (P'.wireGet 9)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> ImageDataParameter) ImageDataParameter where+  getVal m' f' = f' m'+ +instance P'.GPB ImageDataParameter+ +instance P'.ReflectDescriptor ImageDataParameter where+  getMessageInfo _+   = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [10, 21, 26, 32, 40, 48, 56, 64, 72, 80, 88, 98])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ImageDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ImageDataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ImageDataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.batch_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"batch_size\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.rand_skip\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"rand_skip\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.shuffle\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"shuffle\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 64}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.new_height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"new_height\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 72}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.new_width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"new_width\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 80}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.is_color\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"is_color\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 88}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.mean_file\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"mean_file\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.crop_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"crop_size\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.mirror\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"mirror\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ImageDataParameter.root_folder\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ImageDataParameter\"], baseName' = FName \"root_folder\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 98}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"\", hsDefault = Just (HsDef'ByteString \"\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/InfogainLossParameter.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.InfogainLossParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data InfogainLossParameter = InfogainLossParameter{source :: !(P'.Maybe P'.Utf8)}+                           deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''InfogainLossParameter++ +instance P'.Mergeable InfogainLossParameter where+  mergeAppend (InfogainLossParameter x'1) (InfogainLossParameter y'1) = InfogainLossParameter (P'.mergeAppend x'1 y'1)+ +instance P'.Default InfogainLossParameter where+  defaultValue = InfogainLossParameter P'.defaultValue+ +instance P'.Wire InfogainLossParameter where+  wireSize ft' self'@(InfogainLossParameter x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 9 x'1)+  wirePut ft' self'@(InfogainLossParameter x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{source = Prelude'.Just new'Field}) (P'.wireGet 9)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> InfogainLossParameter) InfogainLossParameter where+  getVal m' f' = f' m'+ +instance P'.GPB InfogainLossParameter+ +instance P'.ReflectDescriptor InfogainLossParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [10])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.InfogainLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InfogainLossParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"InfogainLossParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.InfogainLossParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"InfogainLossParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/InnerProductParameter.hs view
@@ -0,0 +1,77 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.InnerProductParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.FillerParameter as Caffe (FillerParameter)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data InnerProductParameter = InnerProductParameter{num_output :: !(P'.Maybe P'.Word32), bias_term :: !(P'.Maybe P'.Bool),+                                                   weight_filler :: !(P'.Maybe Caffe.FillerParameter),+                                                   bias_filler :: !(P'.Maybe Caffe.FillerParameter)}+                           deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''InnerProductParameter++ +instance P'.Mergeable InnerProductParameter where+  mergeAppend (InnerProductParameter x'1 x'2 x'3 x'4) (InnerProductParameter y'1 y'2 y'3 y'4)+   = InnerProductParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+ +instance P'.Default InnerProductParameter where+  defaultValue = InnerProductParameter P'.defaultValue (Prelude'.Just Prelude'.True) P'.defaultValue P'.defaultValue+ +instance P'.Wire InnerProductParameter where+  wireSize ft' self'@(InnerProductParameter x'1 x'2 x'3 x'4)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 13 x'1 + P'.wireSizeOpt 1 8 x'2 + P'.wireSizeOpt 1 11 x'3 + P'.wireSizeOpt 1 11 x'4)+  wirePut ft' self'@(InnerProductParameter x'1 x'2 x'3 x'4)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 13 x'1+             P'.wirePutOpt 16 8 x'2+             P'.wirePutOpt 26 11 x'3+             P'.wirePutOpt 34 11 x'4+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{num_output = Prelude'.Just new'Field}) (P'.wireGet 13)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{bias_term = Prelude'.Just new'Field}) (P'.wireGet 8)+             26 -> Prelude'.fmap+                    (\ !new'Field -> old'Self{weight_filler = P'.mergeAppend (weight_filler old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             34 -> Prelude'.fmap+                    (\ !new'Field -> old'Self{bias_filler = P'.mergeAppend (bias_filler old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> InnerProductParameter) InnerProductParameter where+  getVal m' f' = f' m'+ +instance P'.GPB InnerProductParameter+ +instance P'.ReflectDescriptor InnerProductParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 16, 26, 34])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.InnerProductParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InnerProductParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"InnerProductParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.InnerProductParameter.num_output\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"InnerProductParameter\"], baseName' = FName \"num_output\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.InnerProductParameter.bias_term\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"InnerProductParameter\"], baseName' = FName \"bias_term\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.InnerProductParameter.weight_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"InnerProductParameter\"], baseName' = FName \"weight_filler\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.InnerProductParameter.bias_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"InnerProductParameter\"], baseName' = FName \"bias_filler\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/LRNParameter.hs view
@@ -0,0 +1,79 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.LRNParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.LRNParameter.NormRegion as Caffe.LRNParameter (NormRegion)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data LRNParameter = LRNParameter{local_size :: !(P'.Maybe P'.Word32), alpha :: !(P'.Maybe P'.Float), beta :: !(P'.Maybe P'.Float),+                                 norm_region :: !(P'.Maybe Caffe.LRNParameter.NormRegion), k :: !(P'.Maybe P'.Float)}+                  deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''LRNParameter++ +instance P'.Mergeable LRNParameter where+  mergeAppend (LRNParameter x'1 x'2 x'3 x'4 x'5) (LRNParameter y'1 y'2 y'3 y'4 y'5)+   = LRNParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+ +instance P'.Default LRNParameter where+  defaultValue+   = LRNParameter (Prelude'.Just 5) (Prelude'.Just 1.0) (Prelude'.Just 0.75) (Prelude'.Just (Prelude'.read "ACROSS_CHANNELS"))+      (Prelude'.Just 1.0)+ +instance P'.Wire LRNParameter where+  wireSize ft' self'@(LRNParameter x'1 x'2 x'3 x'4 x'5)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 13 x'1 + P'.wireSizeOpt 1 2 x'2 + P'.wireSizeOpt 1 2 x'3 + P'.wireSizeOpt 1 14 x'4 ++             P'.wireSizeOpt 1 2 x'5)+  wirePut ft' self'@(LRNParameter x'1 x'2 x'3 x'4 x'5)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 13 x'1+             P'.wirePutOpt 21 2 x'2+             P'.wirePutOpt 29 2 x'3+             P'.wirePutOpt 32 14 x'4+             P'.wirePutOpt 45 2 x'5+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{local_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             21 -> Prelude'.fmap (\ !new'Field -> old'Self{alpha = Prelude'.Just new'Field}) (P'.wireGet 2)+             29 -> Prelude'.fmap (\ !new'Field -> old'Self{beta = Prelude'.Just new'Field}) (P'.wireGet 2)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{norm_region = Prelude'.Just new'Field}) (P'.wireGet 14)+             45 -> Prelude'.fmap (\ !new'Field -> old'Self{k = Prelude'.Just new'Field}) (P'.wireGet 2)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> LRNParameter) LRNParameter where+  getVal m' f' = f' m'+ +instance P'.GPB LRNParameter+ +instance P'.ReflectDescriptor LRNParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 21, 29, 32, 45])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.LRNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LRNParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"LRNParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LRNParameter.local_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LRNParameter\"], baseName' = FName \"local_size\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"5\", hsDefault = Just (HsDef'Integer 5)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LRNParameter.alpha\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LRNParameter\"], baseName' = FName \"alpha\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LRNParameter.beta\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LRNParameter\"], baseName' = FName \"beta\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 29}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.75\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (3 % 4)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LRNParameter.norm_region\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LRNParameter\"], baseName' = FName \"norm_region\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LRNParameter.NormRegion\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"LRNParameter\"], baseName = MName \"NormRegion\"}), hsRawDefault = Just \"ACROSS_CHANNELS\", hsDefault = Just (HsDef'Enum \"ACROSS_CHANNELS\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LRNParameter.k\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LRNParameter\"], baseName' = FName \"k\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 45}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/LRNParameter/NormRegion.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.LRNParameter.NormRegion  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data NormRegion = ACROSS_CHANNELS+                | WITHIN_CHANNEL+                deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''NormRegion++ +instance P'.Mergeable NormRegion+ +instance Prelude'.Bounded NormRegion where+  minBound = ACROSS_CHANNELS+  maxBound = WITHIN_CHANNEL+ +instance P'.Default NormRegion where+  defaultValue = ACROSS_CHANNELS+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe NormRegion+toMaybe'Enum 0 = Prelude'.Just ACROSS_CHANNELS+toMaybe'Enum 1 = Prelude'.Just WITHIN_CHANNEL+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum NormRegion where+  fromEnum ACROSS_CHANNELS = 0+  fromEnum WITHIN_CHANNEL = 1+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.LRNParameter.NormRegion") .+      toMaybe'Enum+  succ ACROSS_CHANNELS = WITHIN_CHANNEL+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.LRNParameter.NormRegion"+  pred WITHIN_CHANNEL = ACROSS_CHANNELS+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.LRNParameter.NormRegion"+ +instance P'.Wire NormRegion where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB NormRegion+ +instance P'.MessageAPI msg' (msg' -> NormRegion) NormRegion where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum NormRegion where+  reflectEnum = [(0, "ACROSS_CHANNELS", ACROSS_CHANNELS), (1, "WITHIN_CHANNEL", WITHIN_CHANNEL)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.LRNParameter.NormRegion") ["Gen"] ["Caffe", "LRNParameter"] "NormRegion")+      ["Gen", "Caffe", "LRNParameter", "NormRegion.hs"]+      [(0, "ACROSS_CHANNELS"), (1, "WITHIN_CHANNEL")]
+ Gen/Caffe/LayerParameter.hs view
@@ -0,0 +1,396 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.LayerParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.AccuracyParameter as Caffe (AccuracyParameter)+import qualified Gen.Caffe.ArgMaxParameter as Caffe (ArgMaxParameter)+import qualified Gen.Caffe.BlobProto as Caffe (BlobProto)+import qualified Gen.Caffe.ConcatParameter as Caffe (ConcatParameter)+import qualified Gen.Caffe.ContrastiveLossParameter as Caffe (ContrastiveLossParameter)+import qualified Gen.Caffe.ConvolutionParameter as Caffe (ConvolutionParameter)+import qualified Gen.Caffe.DataParameter as Caffe (DataParameter)+import qualified Gen.Caffe.DropoutParameter as Caffe (DropoutParameter)+import qualified Gen.Caffe.DummyDataParameter as Caffe (DummyDataParameter)+import qualified Gen.Caffe.EltwiseParameter as Caffe (EltwiseParameter)+import qualified Gen.Caffe.ExpParameter as Caffe (ExpParameter)+import qualified Gen.Caffe.HDF5DataParameter as Caffe (HDF5DataParameter)+import qualified Gen.Caffe.HDF5OutputParameter as Caffe (HDF5OutputParameter)+import qualified Gen.Caffe.HingeLossParameter as Caffe (HingeLossParameter)+import qualified Gen.Caffe.ImageDataParameter as Caffe (ImageDataParameter)+import qualified Gen.Caffe.InfogainLossParameter as Caffe (InfogainLossParameter)+import qualified Gen.Caffe.InnerProductParameter as Caffe (InnerProductParameter)+import qualified Gen.Caffe.LRNParameter as Caffe (LRNParameter)+import qualified Gen.Caffe.LossParameter as Caffe (LossParameter)+import qualified Gen.Caffe.MVNParameter as Caffe (MVNParameter)+import qualified Gen.Caffe.MemoryDataParameter as Caffe (MemoryDataParameter)+import qualified Gen.Caffe.NetStateRule as Caffe (NetStateRule)+import qualified Gen.Caffe.ParamSpec as Caffe (ParamSpec)+import qualified Gen.Caffe.PoolingParameter as Caffe (PoolingParameter)+import qualified Gen.Caffe.PowerParameter as Caffe (PowerParameter)+import qualified Gen.Caffe.ReLUParameter as Caffe (ReLUParameter)+import qualified Gen.Caffe.SigmoidParameter as Caffe (SigmoidParameter)+import qualified Gen.Caffe.SliceParameter as Caffe (SliceParameter)+import qualified Gen.Caffe.SoftmaxParameter as Caffe (SoftmaxParameter)+import qualified Gen.Caffe.TanHParameter as Caffe (TanHParameter)+import qualified Gen.Caffe.ThresholdParameter as Caffe (ThresholdParameter)+import qualified Gen.Caffe.TransformationParameter as Caffe (TransformationParameter)+import qualified Gen.Caffe.WindowDataParameter as Caffe (WindowDataParameter)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data LayerParameter = LayerParameter{name :: !(P'.Maybe P'.Utf8), type' :: !(P'.Maybe P'.Utf8), bottom :: !(P'.Seq P'.Utf8),+                                     top :: !(P'.Seq P'.Utf8), loss_weight :: !(P'.Seq P'.Float),+                                     param :: !(P'.Seq Caffe.ParamSpec), blobs :: !(P'.Seq Caffe.BlobProto),+                                     include :: !(P'.Seq Caffe.NetStateRule), exclude :: !(P'.Seq Caffe.NetStateRule),+                                     transform_param :: !(P'.Maybe Caffe.TransformationParameter),+                                     loss_param :: !(P'.Maybe Caffe.LossParameter),+                                     accuracy_param :: !(P'.Maybe Caffe.AccuracyParameter),+                                     argmax_param :: !(P'.Maybe Caffe.ArgMaxParameter),+                                     concat_param :: !(P'.Maybe Caffe.ConcatParameter),+                                     contrastive_loss_param :: !(P'.Maybe Caffe.ContrastiveLossParameter),+                                     convolution_param :: !(P'.Maybe Caffe.ConvolutionParameter),+                                     data_param :: !(P'.Maybe Caffe.DataParameter),+                                     dropout_param :: !(P'.Maybe Caffe.DropoutParameter),+                                     dummy_data_param :: !(P'.Maybe Caffe.DummyDataParameter),+                                     eltwise_param :: !(P'.Maybe Caffe.EltwiseParameter),+                                     exp_param :: !(P'.Maybe Caffe.ExpParameter),+                                     hdf5_data_param :: !(P'.Maybe Caffe.HDF5DataParameter),+                                     hdf5_output_param :: !(P'.Maybe Caffe.HDF5OutputParameter),+                                     hinge_loss_param :: !(P'.Maybe Caffe.HingeLossParameter),+                                     image_data_param :: !(P'.Maybe Caffe.ImageDataParameter),+                                     infogain_loss_param :: !(P'.Maybe Caffe.InfogainLossParameter),+                                     inner_product_param :: !(P'.Maybe Caffe.InnerProductParameter),+                                     lrn_param :: !(P'.Maybe Caffe.LRNParameter),+                                     memory_data_param :: !(P'.Maybe Caffe.MemoryDataParameter),+                                     mvn_param :: !(P'.Maybe Caffe.MVNParameter),+                                     pooling_param :: !(P'.Maybe Caffe.PoolingParameter),+                                     power_param :: !(P'.Maybe Caffe.PowerParameter), relu_param :: !(P'.Maybe Caffe.ReLUParameter),+                                     sigmoid_param :: !(P'.Maybe Caffe.SigmoidParameter),+                                     softmax_param :: !(P'.Maybe Caffe.SoftmaxParameter),+                                     slice_param :: !(P'.Maybe Caffe.SliceParameter), tanh_param :: !(P'.Maybe Caffe.TanHParameter),+                                     threshold_param :: !(P'.Maybe Caffe.ThresholdParameter),+                                     window_data_param :: !(P'.Maybe Caffe.WindowDataParameter)}+                    deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''LayerParameter++ +instance P'.Mergeable LayerParameter where+  mergeAppend+   (LayerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23 x'24+     x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34 x'35 x'36 x'37 x'38 x'39)+   (LayerParameter y'1 y'2 y'3 y'4 y'5 y'6 y'7 y'8 y'9 y'10 y'11 y'12 y'13 y'14 y'15 y'16 y'17 y'18 y'19 y'20 y'21 y'22 y'23 y'24+     y'25 y'26 y'27 y'28 y'29 y'30 y'31 y'32 y'33 y'34 y'35 y'36 y'37 y'38 y'39)+   = LayerParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+      (P'.mergeAppend x'8 y'8)+      (P'.mergeAppend x'9 y'9)+      (P'.mergeAppend x'10 y'10)+      (P'.mergeAppend x'11 y'11)+      (P'.mergeAppend x'12 y'12)+      (P'.mergeAppend x'13 y'13)+      (P'.mergeAppend x'14 y'14)+      (P'.mergeAppend x'15 y'15)+      (P'.mergeAppend x'16 y'16)+      (P'.mergeAppend x'17 y'17)+      (P'.mergeAppend x'18 y'18)+      (P'.mergeAppend x'19 y'19)+      (P'.mergeAppend x'20 y'20)+      (P'.mergeAppend x'21 y'21)+      (P'.mergeAppend x'22 y'22)+      (P'.mergeAppend x'23 y'23)+      (P'.mergeAppend x'24 y'24)+      (P'.mergeAppend x'25 y'25)+      (P'.mergeAppend x'26 y'26)+      (P'.mergeAppend x'27 y'27)+      (P'.mergeAppend x'28 y'28)+      (P'.mergeAppend x'29 y'29)+      (P'.mergeAppend x'30 y'30)+      (P'.mergeAppend x'31 y'31)+      (P'.mergeAppend x'32 y'32)+      (P'.mergeAppend x'33 y'33)+      (P'.mergeAppend x'34 y'34)+      (P'.mergeAppend x'35 y'35)+      (P'.mergeAppend x'36 y'36)+      (P'.mergeAppend x'37 y'37)+      (P'.mergeAppend x'38 y'38)+      (P'.mergeAppend x'39 y'39)+ +instance P'.Default LayerParameter where+  defaultValue+   = LayerParameter P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+ +instance P'.Wire LayerParameter where+  wireSize ft'+   self'@(LayerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23+           x'24 x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34 x'35 x'36 x'37 x'38 x'39)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 9 x'1 + P'.wireSizeOpt 1 9 x'2 + P'.wireSizeRep 1 9 x'3 + P'.wireSizeRep 1 9 x'4 ++             P'.wireSizeRep 1 2 x'5+             + P'.wireSizeRep 1 11 x'6+             + P'.wireSizeRep 1 11 x'7+             + P'.wireSizeRep 1 11 x'8+             + P'.wireSizeRep 1 11 x'9+             + P'.wireSizeOpt 2 11 x'10+             + P'.wireSizeOpt 2 11 x'11+             + P'.wireSizeOpt 2 11 x'12+             + P'.wireSizeOpt 2 11 x'13+             + P'.wireSizeOpt 2 11 x'14+             + P'.wireSizeOpt 2 11 x'15+             + P'.wireSizeOpt 2 11 x'16+             + P'.wireSizeOpt 2 11 x'17+             + P'.wireSizeOpt 2 11 x'18+             + P'.wireSizeOpt 2 11 x'19+             + P'.wireSizeOpt 2 11 x'20+             + P'.wireSizeOpt 2 11 x'21+             + P'.wireSizeOpt 2 11 x'22+             + P'.wireSizeOpt 2 11 x'23+             + P'.wireSizeOpt 2 11 x'24+             + P'.wireSizeOpt 2 11 x'25+             + P'.wireSizeOpt 2 11 x'26+             + P'.wireSizeOpt 2 11 x'27+             + P'.wireSizeOpt 2 11 x'28+             + P'.wireSizeOpt 2 11 x'29+             + P'.wireSizeOpt 2 11 x'30+             + P'.wireSizeOpt 2 11 x'31+             + P'.wireSizeOpt 2 11 x'32+             + P'.wireSizeOpt 2 11 x'33+             + P'.wireSizeOpt 2 11 x'34+             + P'.wireSizeOpt 2 11 x'35+             + P'.wireSizeOpt 2 11 x'36+             + P'.wireSizeOpt 2 11 x'37+             + P'.wireSizeOpt 2 11 x'38+             + P'.wireSizeOpt 2 11 x'39)+  wirePut ft'+   self'@(LayerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23+           x'24 x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34 x'35 x'36 x'37 x'38 x'39)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'1+             P'.wirePutOpt 18 9 x'2+             P'.wirePutRep 26 9 x'3+             P'.wirePutRep 34 9 x'4+             P'.wirePutRep 45 2 x'5+             P'.wirePutRep 50 11 x'6+             P'.wirePutRep 58 11 x'7+             P'.wirePutRep 66 11 x'8+             P'.wirePutRep 74 11 x'9+             P'.wirePutOpt 802 11 x'10+             P'.wirePutOpt 810 11 x'11+             P'.wirePutOpt 818 11 x'12+             P'.wirePutOpt 826 11 x'13+             P'.wirePutOpt 834 11 x'14+             P'.wirePutOpt 842 11 x'15+             P'.wirePutOpt 850 11 x'16+             P'.wirePutOpt 858 11 x'17+             P'.wirePutOpt 866 11 x'18+             P'.wirePutOpt 874 11 x'19+             P'.wirePutOpt 882 11 x'20+             P'.wirePutOpt 890 11 x'21+             P'.wirePutOpt 898 11 x'22+             P'.wirePutOpt 906 11 x'23+             P'.wirePutOpt 914 11 x'24+             P'.wirePutOpt 922 11 x'25+             P'.wirePutOpt 930 11 x'26+             P'.wirePutOpt 938 11 x'27+             P'.wirePutOpt 946 11 x'28+             P'.wirePutOpt 954 11 x'29+             P'.wirePutOpt 962 11 x'30+             P'.wirePutOpt 970 11 x'31+             P'.wirePutOpt 978 11 x'32+             P'.wirePutOpt 986 11 x'33+             P'.wirePutOpt 994 11 x'34+             P'.wirePutOpt 1002 11 x'35+             P'.wirePutOpt 1010 11 x'36+             P'.wirePutOpt 1018 11 x'37+             P'.wirePutOpt 1026 11 x'38+             P'.wirePutOpt 1034 11 x'39+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{name = Prelude'.Just new'Field}) (P'.wireGet 9)+             18 -> Prelude'.fmap (\ !new'Field -> old'Self{type' = Prelude'.Just new'Field}) (P'.wireGet 9)+             26 -> Prelude'.fmap (\ !new'Field -> old'Self{bottom = P'.append (bottom old'Self) new'Field}) (P'.wireGet 9)+             34 -> Prelude'.fmap (\ !new'Field -> old'Self{top = P'.append (top old'Self) new'Field}) (P'.wireGet 9)+             45 -> Prelude'.fmap (\ !new'Field -> old'Self{loss_weight = P'.append (loss_weight old'Self) new'Field}) (P'.wireGet 2)+             42 -> Prelude'.fmap (\ !new'Field -> old'Self{loss_weight = P'.mergeAppend (loss_weight old'Self) new'Field})+                    (P'.wireGetPacked 2)+             50 -> Prelude'.fmap (\ !new'Field -> old'Self{param = P'.append (param old'Self) new'Field}) (P'.wireGet 11)+             58 -> Prelude'.fmap (\ !new'Field -> old'Self{blobs = P'.append (blobs old'Self) new'Field}) (P'.wireGet 11)+             66 -> Prelude'.fmap (\ !new'Field -> old'Self{include = P'.append (include old'Self) new'Field}) (P'.wireGet 11)+             74 -> Prelude'.fmap (\ !new'Field -> old'Self{exclude = P'.append (exclude old'Self) new'Field}) (P'.wireGet 11)+             802 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{transform_param = P'.mergeAppend (transform_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             810 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{loss_param = P'.mergeAppend (loss_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             818 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{accuracy_param = P'.mergeAppend (accuracy_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             826 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{argmax_param = P'.mergeAppend (argmax_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             834 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{concat_param = P'.mergeAppend (concat_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             842 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{contrastive_loss_param =+                                 P'.mergeAppend (contrastive_loss_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             850 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{convolution_param = P'.mergeAppend (convolution_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             858 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{data_param = P'.mergeAppend (data_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             866 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{dropout_param = P'.mergeAppend (dropout_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             874 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{dummy_data_param = P'.mergeAppend (dummy_data_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             882 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{eltwise_param = P'.mergeAppend (eltwise_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             890 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{exp_param = P'.mergeAppend (exp_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             898 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{hdf5_data_param = P'.mergeAppend (hdf5_data_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             906 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{hdf5_output_param = P'.mergeAppend (hdf5_output_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             914 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{hinge_loss_param = P'.mergeAppend (hinge_loss_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             922 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{image_data_param = P'.mergeAppend (image_data_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             930 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{infogain_loss_param = P'.mergeAppend (infogain_loss_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             938 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{inner_product_param = P'.mergeAppend (inner_product_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             946 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{lrn_param = P'.mergeAppend (lrn_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             954 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{memory_data_param = P'.mergeAppend (memory_data_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             962 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{mvn_param = P'.mergeAppend (mvn_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             970 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{pooling_param = P'.mergeAppend (pooling_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             978 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{power_param = P'.mergeAppend (power_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             986 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{relu_param = P'.mergeAppend (relu_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             994 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{sigmoid_param = P'.mergeAppend (sigmoid_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             1002 -> Prelude'.fmap+                      (\ !new'Field -> old'Self{softmax_param = P'.mergeAppend (softmax_param old'Self) (Prelude'.Just new'Field)})+                      (P'.wireGet 11)+             1010 -> Prelude'.fmap+                      (\ !new'Field -> old'Self{slice_param = P'.mergeAppend (slice_param old'Self) (Prelude'.Just new'Field)})+                      (P'.wireGet 11)+             1018 -> Prelude'.fmap+                      (\ !new'Field -> old'Self{tanh_param = P'.mergeAppend (tanh_param old'Self) (Prelude'.Just new'Field)})+                      (P'.wireGet 11)+             1026 -> Prelude'.fmap+                      (\ !new'Field ->+                        old'Self{threshold_param = P'.mergeAppend (threshold_param old'Self) (Prelude'.Just new'Field)})+                      (P'.wireGet 11)+             1034 -> Prelude'.fmap+                      (\ !new'Field ->+                        old'Self{window_data_param = P'.mergeAppend (window_data_param old'Self) (Prelude'.Just new'Field)})+                      (P'.wireGet 11)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> LayerParameter) LayerParameter where+  getVal m' f' = f' m'+ +instance P'.GPB LayerParameter+ +instance P'.ReflectDescriptor LayerParameter where+  getMessageInfo _+   = P'.GetMessageInfo (P'.fromDistinctAscList [])+      (P'.fromDistinctAscList+        [10, 18, 26, 34, 42, 45, 50, 58, 66, 74, 802, 810, 818, 826, 834, 842, 850, 858, 866, 874, 882, 890, 898, 906, 914, 922,+         930, 938, 946, 954, 962, 970, 978, 986, 994, 1002, 1010, 1018, 1026, 1034])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LayerParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"LayerParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"name\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"type'\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.bottom\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"bottom\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.top\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"top\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.loss_weight\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"loss_weight\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 45}, packedTag = Just (WireTag {getWireTag = 45},WireTag {getWireTag = 42}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"param\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 50}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ParamSpec\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ParamSpec\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.blobs\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"blobs\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 58}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.include\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"include\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 66}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetStateRule\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetStateRule\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.exclude\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"exclude\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 74}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetStateRule\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetStateRule\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.transform_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"transform_param\"}, fieldNumber = FieldId {getFieldId = 100}, wireTag = WireTag {getWireTag = 802}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.TransformationParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TransformationParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"loss_param\"}, fieldNumber = FieldId {getFieldId = 101}, wireTag = WireTag {getWireTag = 810}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.accuracy_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"accuracy_param\"}, fieldNumber = FieldId {getFieldId = 102}, wireTag = WireTag {getWireTag = 818}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.AccuracyParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"AccuracyParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.argmax_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"argmax_param\"}, fieldNumber = FieldId {getFieldId = 103}, wireTag = WireTag {getWireTag = 826}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ArgMaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ArgMaxParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.concat_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"concat_param\"}, fieldNumber = FieldId {getFieldId = 104}, wireTag = WireTag {getWireTag = 834}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ConcatParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConcatParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.contrastive_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"contrastive_loss_param\"}, fieldNumber = FieldId {getFieldId = 105}, wireTag = WireTag {getWireTag = 842}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ContrastiveLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ContrastiveLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.convolution_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"convolution_param\"}, fieldNumber = FieldId {getFieldId = 106}, wireTag = WireTag {getWireTag = 850}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ConvolutionParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConvolutionParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"data_param\"}, fieldNumber = FieldId {getFieldId = 107}, wireTag = WireTag {getWireTag = 858}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.dropout_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"dropout_param\"}, fieldNumber = FieldId {getFieldId = 108}, wireTag = WireTag {getWireTag = 866}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DropoutParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DropoutParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.dummy_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"dummy_data_param\"}, fieldNumber = FieldId {getFieldId = 109}, wireTag = WireTag {getWireTag = 874}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DummyDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DummyDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.eltwise_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"eltwise_param\"}, fieldNumber = FieldId {getFieldId = 110}, wireTag = WireTag {getWireTag = 882}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.EltwiseParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"EltwiseParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.exp_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"exp_param\"}, fieldNumber = FieldId {getFieldId = 111}, wireTag = WireTag {getWireTag = 890}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ExpParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ExpParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.hdf5_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"hdf5_data_param\"}, fieldNumber = FieldId {getFieldId = 112}, wireTag = WireTag {getWireTag = 898}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HDF5DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5DataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.hdf5_output_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"hdf5_output_param\"}, fieldNumber = FieldId {getFieldId = 113}, wireTag = WireTag {getWireTag = 906}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HDF5OutputParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5OutputParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.hinge_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"hinge_loss_param\"}, fieldNumber = FieldId {getFieldId = 114}, wireTag = WireTag {getWireTag = 914}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HingeLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HingeLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.image_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"image_data_param\"}, fieldNumber = FieldId {getFieldId = 115}, wireTag = WireTag {getWireTag = 922}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ImageDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ImageDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.infogain_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"infogain_loss_param\"}, fieldNumber = FieldId {getFieldId = 116}, wireTag = WireTag {getWireTag = 930}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.InfogainLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InfogainLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.inner_product_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"inner_product_param\"}, fieldNumber = FieldId {getFieldId = 117}, wireTag = WireTag {getWireTag = 938}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.InnerProductParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InnerProductParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.lrn_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"lrn_param\"}, fieldNumber = FieldId {getFieldId = 118}, wireTag = WireTag {getWireTag = 946}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LRNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LRNParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.memory_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"memory_data_param\"}, fieldNumber = FieldId {getFieldId = 119}, wireTag = WireTag {getWireTag = 954}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.MemoryDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MemoryDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.mvn_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"mvn_param\"}, fieldNumber = FieldId {getFieldId = 120}, wireTag = WireTag {getWireTag = 962}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.MVNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MVNParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.pooling_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"pooling_param\"}, fieldNumber = FieldId {getFieldId = 121}, wireTag = WireTag {getWireTag = 970}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PoolingParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PoolingParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.power_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"power_param\"}, fieldNumber = FieldId {getFieldId = 122}, wireTag = WireTag {getWireTag = 978}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PowerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PowerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.relu_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"relu_param\"}, fieldNumber = FieldId {getFieldId = 123}, wireTag = WireTag {getWireTag = 986}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ReLUParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ReLUParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.sigmoid_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"sigmoid_param\"}, fieldNumber = FieldId {getFieldId = 124}, wireTag = WireTag {getWireTag = 994}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SigmoidParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SigmoidParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.softmax_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"softmax_param\"}, fieldNumber = FieldId {getFieldId = 125}, wireTag = WireTag {getWireTag = 1002}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SoftmaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SoftmaxParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.slice_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"slice_param\"}, fieldNumber = FieldId {getFieldId = 126}, wireTag = WireTag {getWireTag = 1010}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SliceParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SliceParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.tanh_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"tanh_param\"}, fieldNumber = FieldId {getFieldId = 127}, wireTag = WireTag {getWireTag = 1018}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.TanHParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TanHParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.threshold_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"threshold_param\"}, fieldNumber = FieldId {getFieldId = 128}, wireTag = WireTag {getWireTag = 1026}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ThresholdParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ThresholdParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LayerParameter.window_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LayerParameter\"], baseName' = FName \"window_data_param\"}, fieldNumber = FieldId {getFieldId = 129}, wireTag = WireTag {getWireTag = 1034}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.WindowDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"WindowDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/LossParameter.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.LossParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data LossParameter = LossParameter{ignore_label :: !(P'.Maybe P'.Int32), normalize :: !(P'.Maybe P'.Bool)}+                   deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''LossParameter++ +instance P'.Mergeable LossParameter where+  mergeAppend (LossParameter x'1 x'2) (LossParameter y'1 y'2) = LossParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2)+ +instance P'.Default LossParameter where+  defaultValue = LossParameter P'.defaultValue (Prelude'.Just Prelude'.True)+ +instance P'.Wire LossParameter where+  wireSize ft' self'@(LossParameter x'1 x'2)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 5 x'1 + P'.wireSizeOpt 1 8 x'2)+  wirePut ft' self'@(LossParameter x'1 x'2)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 5 x'1+             P'.wirePutOpt 16 8 x'2+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{ignore_label = Prelude'.Just new'Field}) (P'.wireGet 5)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{normalize = Prelude'.Just new'Field}) (P'.wireGet 8)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> LossParameter) LossParameter where+  getVal m' f' = f' m'+ +instance P'.GPB LossParameter+ +instance P'.ReflectDescriptor LossParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 16])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.LossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LossParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"LossParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LossParameter.ignore_label\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LossParameter\"], baseName' = FName \"ignore_label\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.LossParameter.normalize\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"LossParameter\"], baseName' = FName \"normalize\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/MVNParameter.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.MVNParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data MVNParameter = MVNParameter{normalize_variance :: !(P'.Maybe P'.Bool), across_channels :: !(P'.Maybe P'.Bool)}+                  deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''MVNParameter++ +instance P'.Mergeable MVNParameter where+  mergeAppend (MVNParameter x'1 x'2) (MVNParameter y'1 y'2) = MVNParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2)+ +instance P'.Default MVNParameter where+  defaultValue = MVNParameter (Prelude'.Just Prelude'.True) (Prelude'.Just Prelude'.False)+ +instance P'.Wire MVNParameter where+  wireSize ft' self'@(MVNParameter x'1 x'2)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 8 x'1 + P'.wireSizeOpt 1 8 x'2)+  wirePut ft' self'@(MVNParameter x'1 x'2)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 8 x'1+             P'.wirePutOpt 16 8 x'2+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{normalize_variance = Prelude'.Just new'Field}) (P'.wireGet 8)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{across_channels = Prelude'.Just new'Field}) (P'.wireGet 8)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> MVNParameter) MVNParameter where+  getVal m' f' = f' m'+ +instance P'.GPB MVNParameter+ +instance P'.ReflectDescriptor MVNParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 16])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.MVNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MVNParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"MVNParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MVNParameter.normalize_variance\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MVNParameter\"], baseName' = FName \"normalize_variance\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MVNParameter.across_channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MVNParameter\"], baseName' = FName \"across_channels\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/MemoryDataParameter.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.MemoryDataParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data MemoryDataParameter = MemoryDataParameter{batch_size :: !(P'.Maybe P'.Word32), channels :: !(P'.Maybe P'.Word32),+                                               height :: !(P'.Maybe P'.Word32), width :: !(P'.Maybe P'.Word32)}+                         deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''MemoryDataParameter++ +instance P'.Mergeable MemoryDataParameter where+  mergeAppend (MemoryDataParameter x'1 x'2 x'3 x'4) (MemoryDataParameter y'1 y'2 y'3 y'4)+   = MemoryDataParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+ +instance P'.Default MemoryDataParameter where+  defaultValue = MemoryDataParameter P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue+ +instance P'.Wire MemoryDataParameter where+  wireSize ft' self'@(MemoryDataParameter x'1 x'2 x'3 x'4)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 13 x'1 + P'.wireSizeOpt 1 13 x'2 + P'.wireSizeOpt 1 13 x'3 + P'.wireSizeOpt 1 13 x'4)+  wirePut ft' self'@(MemoryDataParameter x'1 x'2 x'3 x'4)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 13 x'1+             P'.wirePutOpt 16 13 x'2+             P'.wirePutOpt 24 13 x'3+             P'.wirePutOpt 32 13 x'4+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{batch_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{channels = Prelude'.Just new'Field}) (P'.wireGet 13)+             24 -> Prelude'.fmap (\ !new'Field -> old'Self{height = Prelude'.Just new'Field}) (P'.wireGet 13)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{width = Prelude'.Just new'Field}) (P'.wireGet 13)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> MemoryDataParameter) MemoryDataParameter where+  getVal m' f' = f' m'+ +instance P'.GPB MemoryDataParameter+ +instance P'.ReflectDescriptor MemoryDataParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 16, 24, 32])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.MemoryDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MemoryDataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"MemoryDataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MemoryDataParameter.batch_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MemoryDataParameter\"], baseName' = FName \"batch_size\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MemoryDataParameter.channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MemoryDataParameter\"], baseName' = FName \"channels\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MemoryDataParameter.height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MemoryDataParameter\"], baseName' = FName \"height\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.MemoryDataParameter.width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"MemoryDataParameter\"], baseName' = FName \"width\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/NetParameter.hs view
@@ -0,0 +1,100 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.NetParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.LayerParameter as Caffe (LayerParameter)+import qualified Gen.Caffe.NetState as Caffe (NetState)+import qualified Gen.Caffe.V1LayerParameter as Caffe (V1LayerParameter)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data NetParameter = NetParameter{name :: !(P'.Maybe P'.Utf8), input :: !(P'.Seq P'.Utf8), input_dim :: !(P'.Seq P'.Int32),+                                 force_backward :: !(P'.Maybe P'.Bool), state :: !(P'.Maybe Caffe.NetState),+                                 debug_info :: !(P'.Maybe P'.Bool), layer :: !(P'.Seq Caffe.LayerParameter),+                                 layers :: !(P'.Seq Caffe.V1LayerParameter)}+                  deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''NetParameter++ +instance P'.Mergeable NetParameter where+  mergeAppend (NetParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8) (NetParameter y'1 y'2 y'3 y'4 y'5 y'6 y'7 y'8)+   = NetParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+      (P'.mergeAppend x'8 y'8)+ +instance P'.Default NetParameter where+  defaultValue+   = NetParameter P'.defaultValue P'.defaultValue P'.defaultValue (Prelude'.Just Prelude'.False) P'.defaultValue+      (Prelude'.Just Prelude'.False)+      P'.defaultValue+      P'.defaultValue+ +instance P'.Wire NetParameter where+  wireSize ft' self'@(NetParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 9 x'1 + P'.wireSizeRep 1 9 x'2 + P'.wireSizeRep 1 5 x'3 + P'.wireSizeOpt 1 8 x'4 ++             P'.wireSizeOpt 1 11 x'5+             + P'.wireSizeOpt 1 8 x'6+             + P'.wireSizeRep 2 11 x'7+             + P'.wireSizeRep 1 11 x'8)+  wirePut ft' self'@(NetParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'1+             P'.wirePutRep 18 11 x'8+             P'.wirePutRep 26 9 x'2+             P'.wirePutRep 32 5 x'3+             P'.wirePutOpt 40 8 x'4+             P'.wirePutOpt 50 11 x'5+             P'.wirePutOpt 56 8 x'6+             P'.wirePutRep 802 11 x'7+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{name = Prelude'.Just new'Field}) (P'.wireGet 9)+             26 -> Prelude'.fmap (\ !new'Field -> old'Self{input = P'.append (input old'Self) new'Field}) (P'.wireGet 9)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{input_dim = P'.append (input_dim old'Self) new'Field}) (P'.wireGet 5)+             34 -> Prelude'.fmap (\ !new'Field -> old'Self{input_dim = P'.mergeAppend (input_dim old'Self) new'Field})+                    (P'.wireGetPacked 5)+             40 -> Prelude'.fmap (\ !new'Field -> old'Self{force_backward = Prelude'.Just new'Field}) (P'.wireGet 8)+             50 -> Prelude'.fmap (\ !new'Field -> old'Self{state = P'.mergeAppend (state old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             56 -> Prelude'.fmap (\ !new'Field -> old'Self{debug_info = Prelude'.Just new'Field}) (P'.wireGet 8)+             802 -> Prelude'.fmap (\ !new'Field -> old'Self{layer = P'.append (layer old'Self) new'Field}) (P'.wireGet 11)+             18 -> Prelude'.fmap (\ !new'Field -> old'Self{layers = P'.append (layers old'Self) new'Field}) (P'.wireGet 11)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> NetParameter) NetParameter where+  getVal m' f' = f' m'+ +instance P'.GPB NetParameter+ +instance P'.ReflectDescriptor NetParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [10, 18, 26, 32, 34, 40, 50, 56, 802])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.NetParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"NetParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"name\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.input\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"input\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.input_dim\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"input_dim\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Just (WireTag {getWireTag = 32},WireTag {getWireTag = 34}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.force_backward\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"force_backward\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.state\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"state\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 50}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetState\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetState\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.debug_info\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"debug_info\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.layer\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"layer\"}, fieldNumber = FieldId {getFieldId = 100}, wireTag = WireTag {getWireTag = 802}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LayerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetParameter.layers\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetParameter\"], baseName' = FName \"layers\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.V1LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"V1LayerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/NetState.hs view
@@ -0,0 +1,69 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.NetState  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.Phase as Caffe (Phase)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data NetState = NetState{phase :: !(P'.Maybe Caffe.Phase), level :: !(P'.Maybe P'.Int32), stage :: !(P'.Seq P'.Utf8)}+              deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''NetState++ +instance P'.Mergeable NetState where+  mergeAppend (NetState x'1 x'2 x'3) (NetState y'1 y'2 y'3)+   = NetState (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3)+ +instance P'.Default NetState where+  defaultValue = NetState (Prelude'.Just (Prelude'.read "TEST")) (Prelude'.Just 0) P'.defaultValue+ +instance P'.Wire NetState where+  wireSize ft' self'@(NetState x'1 x'2 x'3)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 14 x'1 + P'.wireSizeOpt 1 5 x'2 + P'.wireSizeRep 1 9 x'3)+  wirePut ft' self'@(NetState x'1 x'2 x'3)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 14 x'1+             P'.wirePutOpt 16 5 x'2+             P'.wirePutRep 26 9 x'3+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{phase = Prelude'.Just new'Field}) (P'.wireGet 14)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{level = Prelude'.Just new'Field}) (P'.wireGet 5)+             26 -> Prelude'.fmap (\ !new'Field -> old'Self{stage = P'.append (stage old'Self) new'Field}) (P'.wireGet 9)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> NetState) NetState where+  getVal m' f' = f' m'+ +instance P'.GPB NetState+ +instance P'.ReflectDescriptor NetState where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 16, 26])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.NetState\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetState\"}, descFilePath = [\"Gen\",\"Caffe\",\"NetState.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetState.phase\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetState\"], baseName' = FName \"phase\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.Phase\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"Phase\"}), hsRawDefault = Just \"TEST\", hsDefault = Just (HsDef'Enum \"TEST\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetState.level\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetState\"], baseName' = FName \"level\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetState.stage\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetState\"], baseName' = FName \"stage\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/NetStateRule.hs view
@@ -0,0 +1,77 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.NetStateRule  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.Phase as Caffe (Phase)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data NetStateRule = NetStateRule{phase :: !(P'.Maybe Caffe.Phase), min_level :: !(P'.Maybe P'.Int32),+                                 max_level :: !(P'.Maybe P'.Int32), stage :: !(P'.Seq P'.Utf8), not_stage :: !(P'.Seq P'.Utf8)}+                  deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''NetStateRule++ +instance P'.Mergeable NetStateRule where+  mergeAppend (NetStateRule x'1 x'2 x'3 x'4 x'5) (NetStateRule y'1 y'2 y'3 y'4 y'5)+   = NetStateRule (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+ +instance P'.Default NetStateRule where+  defaultValue = NetStateRule P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue+ +instance P'.Wire NetStateRule where+  wireSize ft' self'@(NetStateRule x'1 x'2 x'3 x'4 x'5)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 14 x'1 + P'.wireSizeOpt 1 5 x'2 + P'.wireSizeOpt 1 5 x'3 + P'.wireSizeRep 1 9 x'4 ++             P'.wireSizeRep 1 9 x'5)+  wirePut ft' self'@(NetStateRule x'1 x'2 x'3 x'4 x'5)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 14 x'1+             P'.wirePutOpt 16 5 x'2+             P'.wirePutOpt 24 5 x'3+             P'.wirePutRep 34 9 x'4+             P'.wirePutRep 42 9 x'5+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{phase = Prelude'.Just new'Field}) (P'.wireGet 14)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{min_level = Prelude'.Just new'Field}) (P'.wireGet 5)+             24 -> Prelude'.fmap (\ !new'Field -> old'Self{max_level = Prelude'.Just new'Field}) (P'.wireGet 5)+             34 -> Prelude'.fmap (\ !new'Field -> old'Self{stage = P'.append (stage old'Self) new'Field}) (P'.wireGet 9)+             42 -> Prelude'.fmap (\ !new'Field -> old'Self{not_stage = P'.append (not_stage old'Self) new'Field}) (P'.wireGet 9)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> NetStateRule) NetStateRule where+  getVal m' f' = f' m'+ +instance P'.GPB NetStateRule+ +instance P'.ReflectDescriptor NetStateRule where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 16, 24, 34, 42])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.NetStateRule\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetStateRule\"}, descFilePath = [\"Gen\",\"Caffe\",\"NetStateRule.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetStateRule.phase\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetStateRule\"], baseName' = FName \"phase\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.Phase\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"Phase\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetStateRule.min_level\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetStateRule\"], baseName' = FName \"min_level\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetStateRule.max_level\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetStateRule\"], baseName' = FName \"max_level\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetStateRule.stage\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetStateRule\"], baseName' = FName \"stage\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.NetStateRule.not_stage\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"NetStateRule\"], baseName' = FName \"not_stage\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 42}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/ParamSpec.hs view
@@ -0,0 +1,72 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ParamSpec  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.ParamSpec.DimCheckMode as Caffe.ParamSpec (DimCheckMode)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data ParamSpec = ParamSpec{name :: !(P'.Maybe P'.Utf8), share_mode :: !(P'.Maybe Caffe.ParamSpec.DimCheckMode),+                           lr_mult :: !(P'.Maybe P'.Float), decay_mult :: !(P'.Maybe P'.Float)}+               deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''ParamSpec++ +instance P'.Mergeable ParamSpec where+  mergeAppend (ParamSpec x'1 x'2 x'3 x'4) (ParamSpec y'1 y'2 y'3 y'4)+   = ParamSpec (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+ +instance P'.Default ParamSpec where+  defaultValue = ParamSpec P'.defaultValue P'.defaultValue (Prelude'.Just 1.0) (Prelude'.Just 1.0)+ +instance P'.Wire ParamSpec where+  wireSize ft' self'@(ParamSpec x'1 x'2 x'3 x'4)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 9 x'1 + P'.wireSizeOpt 1 14 x'2 + P'.wireSizeOpt 1 2 x'3 + P'.wireSizeOpt 1 2 x'4)+  wirePut ft' self'@(ParamSpec x'1 x'2 x'3 x'4)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'1+             P'.wirePutOpt 16 14 x'2+             P'.wirePutOpt 29 2 x'3+             P'.wirePutOpt 37 2 x'4+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{name = Prelude'.Just new'Field}) (P'.wireGet 9)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{share_mode = Prelude'.Just new'Field}) (P'.wireGet 14)+             29 -> Prelude'.fmap (\ !new'Field -> old'Self{lr_mult = Prelude'.Just new'Field}) (P'.wireGet 2)+             37 -> Prelude'.fmap (\ !new'Field -> old'Self{decay_mult = Prelude'.Just new'Field}) (P'.wireGet 2)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> ParamSpec) ParamSpec where+  getVal m' f' = f' m'+ +instance P'.GPB ParamSpec+ +instance P'.ReflectDescriptor ParamSpec where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [10, 16, 29, 37])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ParamSpec\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ParamSpec\"}, descFilePath = [\"Gen\",\"Caffe\",\"ParamSpec.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ParamSpec.name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ParamSpec\"], baseName' = FName \"name\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ParamSpec.share_mode\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ParamSpec\"], baseName' = FName \"share_mode\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ParamSpec.DimCheckMode\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"ParamSpec\"], baseName = MName \"DimCheckMode\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ParamSpec.lr_mult\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ParamSpec\"], baseName' = FName \"lr_mult\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 29}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ParamSpec.decay_mult\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ParamSpec\"], baseName' = FName \"decay_mult\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 37}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/ParamSpec/DimCheckMode.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ParamSpec.DimCheckMode  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data DimCheckMode = STRICT+                  | PERMISSIVE+                  deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''DimCheckMode++ +instance P'.Mergeable DimCheckMode+ +instance Prelude'.Bounded DimCheckMode where+  minBound = STRICT+  maxBound = PERMISSIVE+ +instance P'.Default DimCheckMode where+  defaultValue = STRICT+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe DimCheckMode+toMaybe'Enum 0 = Prelude'.Just STRICT+toMaybe'Enum 1 = Prelude'.Just PERMISSIVE+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum DimCheckMode where+  fromEnum STRICT = 0+  fromEnum PERMISSIVE = 1+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.ParamSpec.DimCheckMode") . toMaybe'Enum+  succ STRICT = PERMISSIVE+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.ParamSpec.DimCheckMode"+  pred PERMISSIVE = STRICT+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.ParamSpec.DimCheckMode"+ +instance P'.Wire DimCheckMode where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB DimCheckMode+ +instance P'.MessageAPI msg' (msg' -> DimCheckMode) DimCheckMode where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum DimCheckMode where+  reflectEnum = [(0, "STRICT", STRICT), (1, "PERMISSIVE", PERMISSIVE)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.ParamSpec.DimCheckMode") ["Gen"] ["Caffe", "ParamSpec"] "DimCheckMode")+      ["Gen", "Caffe", "ParamSpec", "DimCheckMode.hs"]+      [(0, "STRICT"), (1, "PERMISSIVE")]
+ Gen/Caffe/Phase.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.Phase  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data Phase = TRAIN+           | TEST+           deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''Phase++ +instance P'.Mergeable Phase+ +instance Prelude'.Bounded Phase where+  minBound = TRAIN+  maxBound = TEST+ +instance P'.Default Phase where+  defaultValue = TRAIN+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe Phase+toMaybe'Enum 0 = Prelude'.Just TRAIN+toMaybe'Enum 1 = Prelude'.Just TEST+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum Phase where+  fromEnum TRAIN = 0+  fromEnum TEST = 1+  toEnum = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.Phase") . toMaybe'Enum+  succ TRAIN = TEST+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.Phase"+  pred TEST = TRAIN+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.Phase"+ +instance P'.Wire Phase where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB Phase+ +instance P'.MessageAPI msg' (msg' -> Phase) Phase where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum Phase where+  reflectEnum = [(0, "TRAIN", TRAIN), (1, "TEST", TEST)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.Phase") ["Gen"] ["Caffe"] "Phase") ["Gen", "Caffe", "Phase.hs"]+      [(0, "TRAIN"), (1, "TEST")]
+ Gen/Caffe/PoolingParameter.hs view
@@ -0,0 +1,120 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.PoolingParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.PoolingParameter.Engine as Caffe.PoolingParameter (Engine)+import qualified Gen.Caffe.PoolingParameter.PoolMethod as Caffe.PoolingParameter (PoolMethod)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data PoolingParameter = PoolingParameter{pool :: !(P'.Maybe Caffe.PoolingParameter.PoolMethod), pad :: !(P'.Maybe P'.Word32),+                                         pad_h :: !(P'.Maybe P'.Word32), pad_w :: !(P'.Maybe P'.Word32),+                                         kernel_size :: !(P'.Maybe P'.Word32), kernel_h :: !(P'.Maybe P'.Word32),+                                         kernel_w :: !(P'.Maybe P'.Word32), stride :: !(P'.Maybe P'.Word32),+                                         stride_h :: !(P'.Maybe P'.Word32), stride_w :: !(P'.Maybe P'.Word32),+                                         engine :: !(P'.Maybe Caffe.PoolingParameter.Engine), global_pooling :: !(P'.Maybe P'.Bool)}+                      deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''PoolingParameter++ +instance P'.Mergeable PoolingParameter where+  mergeAppend (PoolingParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12)+   (PoolingParameter y'1 y'2 y'3 y'4 y'5 y'6 y'7 y'8 y'9 y'10 y'11 y'12)+   = PoolingParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+      (P'.mergeAppend x'8 y'8)+      (P'.mergeAppend x'9 y'9)+      (P'.mergeAppend x'10 y'10)+      (P'.mergeAppend x'11 y'11)+      (P'.mergeAppend x'12 y'12)+ +instance P'.Default PoolingParameter where+  defaultValue+   = PoolingParameter (Prelude'.Just (Prelude'.read "MAX")) (Prelude'.Just 0) (Prelude'.Just 0) (Prelude'.Just 0) P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      (Prelude'.Just 1)+      P'.defaultValue+      P'.defaultValue+      (Prelude'.Just (Prelude'.read "DEFAULT"))+      (Prelude'.Just Prelude'.False)+ +instance P'.Wire PoolingParameter where+  wireSize ft' self'@(PoolingParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 14 x'1 + P'.wireSizeOpt 1 13 x'2 + P'.wireSizeOpt 1 13 x'3 + P'.wireSizeOpt 1 13 x'4 ++             P'.wireSizeOpt 1 13 x'5+             + P'.wireSizeOpt 1 13 x'6+             + P'.wireSizeOpt 1 13 x'7+             + P'.wireSizeOpt 1 13 x'8+             + P'.wireSizeOpt 1 13 x'9+             + P'.wireSizeOpt 1 13 x'10+             + P'.wireSizeOpt 1 14 x'11+             + P'.wireSizeOpt 1 8 x'12)+  wirePut ft' self'@(PoolingParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 14 x'1+             P'.wirePutOpt 16 13 x'5+             P'.wirePutOpt 24 13 x'8+             P'.wirePutOpt 32 13 x'2+             P'.wirePutOpt 40 13 x'6+             P'.wirePutOpt 48 13 x'7+             P'.wirePutOpt 56 13 x'9+             P'.wirePutOpt 64 13 x'10+             P'.wirePutOpt 72 13 x'3+             P'.wirePutOpt 80 13 x'4+             P'.wirePutOpt 88 14 x'11+             P'.wirePutOpt 96 8 x'12+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{pool = Prelude'.Just new'Field}) (P'.wireGet 14)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{pad = Prelude'.Just new'Field}) (P'.wireGet 13)+             72 -> Prelude'.fmap (\ !new'Field -> old'Self{pad_h = Prelude'.Just new'Field}) (P'.wireGet 13)+             80 -> Prelude'.fmap (\ !new'Field -> old'Self{pad_w = Prelude'.Just new'Field}) (P'.wireGet 13)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{kernel_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             40 -> Prelude'.fmap (\ !new'Field -> old'Self{kernel_h = Prelude'.Just new'Field}) (P'.wireGet 13)+             48 -> Prelude'.fmap (\ !new'Field -> old'Self{kernel_w = Prelude'.Just new'Field}) (P'.wireGet 13)+             24 -> Prelude'.fmap (\ !new'Field -> old'Self{stride = Prelude'.Just new'Field}) (P'.wireGet 13)+             56 -> Prelude'.fmap (\ !new'Field -> old'Self{stride_h = Prelude'.Just new'Field}) (P'.wireGet 13)+             64 -> Prelude'.fmap (\ !new'Field -> old'Self{stride_w = Prelude'.Just new'Field}) (P'.wireGet 13)+             88 -> Prelude'.fmap (\ !new'Field -> old'Self{engine = Prelude'.Just new'Field}) (P'.wireGet 14)+             96 -> Prelude'.fmap (\ !new'Field -> old'Self{global_pooling = Prelude'.Just new'Field}) (P'.wireGet 8)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> PoolingParameter) PoolingParameter where+  getVal m' f' = f' m'+ +instance P'.GPB PoolingParameter+ +instance P'.ReflectDescriptor PoolingParameter where+  getMessageInfo _+   = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.PoolingParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PoolingParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"PoolingParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.pool\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"pool\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PoolingParameter.PoolMethod\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"PoolingParameter\"], baseName = MName \"PoolMethod\"}), hsRawDefault = Just \"MAX\", hsDefault = Just (HsDef'Enum \"MAX\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.pad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"pad\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.pad_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"pad_h\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 72}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.pad_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"pad_w\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 80}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.kernel_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"kernel_size\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.kernel_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"kernel_h\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.kernel_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"kernel_w\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.stride\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"stride\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.stride_h\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"stride_h\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.stride_w\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"stride_w\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 64}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 88}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PoolingParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"PoolingParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PoolingParameter.global_pooling\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PoolingParameter\"], baseName' = FName \"global_pooling\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 96}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/PoolingParameter/Engine.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.PoolingParameter.Engine  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data Engine = DEFAULT+            | CAFFE+            | CUDNN+            deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''Engine++ +instance P'.Mergeable Engine+ +instance Prelude'.Bounded Engine where+  minBound = DEFAULT+  maxBound = CUDNN+ +instance P'.Default Engine where+  defaultValue = DEFAULT+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe Engine+toMaybe'Enum 0 = Prelude'.Just DEFAULT+toMaybe'Enum 1 = Prelude'.Just CAFFE+toMaybe'Enum 2 = Prelude'.Just CUDNN+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum Engine where+  fromEnum DEFAULT = 0+  fromEnum CAFFE = 1+  fromEnum CUDNN = 2+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.PoolingParameter.Engine") .+      toMaybe'Enum+  succ DEFAULT = CAFFE+  succ CAFFE = CUDNN+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.PoolingParameter.Engine"+  pred CAFFE = DEFAULT+  pred CUDNN = CAFFE+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.PoolingParameter.Engine"+ +instance P'.Wire Engine where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB Engine+ +instance P'.MessageAPI msg' (msg' -> Engine) Engine where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum Engine where+  reflectEnum = [(0, "DEFAULT", DEFAULT), (1, "CAFFE", CAFFE), (2, "CUDNN", CUDNN)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.PoolingParameter.Engine") ["Gen"] ["Caffe", "PoolingParameter"] "Engine")+      ["Gen", "Caffe", "PoolingParameter", "Engine.hs"]+      [(0, "DEFAULT"), (1, "CAFFE"), (2, "CUDNN")]
+ Gen/Caffe/PoolingParameter/PoolMethod.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.PoolingParameter.PoolMethod  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data PoolMethod = MAX+                | AVE+                | STOCHASTIC+                deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''PoolMethod++ +instance P'.Mergeable PoolMethod+ +instance Prelude'.Bounded PoolMethod where+  minBound = MAX+  maxBound = STOCHASTIC+ +instance P'.Default PoolMethod where+  defaultValue = MAX+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe PoolMethod+toMaybe'Enum 0 = Prelude'.Just MAX+toMaybe'Enum 1 = Prelude'.Just AVE+toMaybe'Enum 2 = Prelude'.Just STOCHASTIC+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum PoolMethod where+  fromEnum MAX = 0+  fromEnum AVE = 1+  fromEnum STOCHASTIC = 2+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.PoolingParameter.PoolMethod") .+      toMaybe'Enum+  succ MAX = AVE+  succ AVE = STOCHASTIC+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.PoolingParameter.PoolMethod"+  pred AVE = MAX+  pred STOCHASTIC = AVE+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.PoolingParameter.PoolMethod"+ +instance P'.Wire PoolMethod where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB PoolMethod+ +instance P'.MessageAPI msg' (msg' -> PoolMethod) PoolMethod where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum PoolMethod where+  reflectEnum = [(0, "MAX", MAX), (1, "AVE", AVE), (2, "STOCHASTIC", STOCHASTIC)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.PoolingParameter.PoolMethod") ["Gen"] ["Caffe", "PoolingParameter"] "PoolMethod")+      ["Gen", "Caffe", "PoolingParameter", "PoolMethod.hs"]+      [(0, "MAX"), (1, "AVE"), (2, "STOCHASTIC")]
+ Gen/Caffe/PowerParameter.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.PowerParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data PowerParameter = PowerParameter{power :: !(P'.Maybe P'.Float), scale :: !(P'.Maybe P'.Float), shift :: !(P'.Maybe P'.Float)}+                    deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''PowerParameter++ +instance P'.Mergeable PowerParameter where+  mergeAppend (PowerParameter x'1 x'2 x'3) (PowerParameter y'1 y'2 y'3)+   = PowerParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3)+ +instance P'.Default PowerParameter where+  defaultValue = PowerParameter (Prelude'.Just 1.0) (Prelude'.Just 1.0) (Prelude'.Just 0.0)+ +instance P'.Wire PowerParameter where+  wireSize ft' self'@(PowerParameter x'1 x'2 x'3)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 2 x'1 + P'.wireSizeOpt 1 2 x'2 + P'.wireSizeOpt 1 2 x'3)+  wirePut ft' self'@(PowerParameter x'1 x'2 x'3)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 13 2 x'1+             P'.wirePutOpt 21 2 x'2+             P'.wirePutOpt 29 2 x'3+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             13 -> Prelude'.fmap (\ !new'Field -> old'Self{power = Prelude'.Just new'Field}) (P'.wireGet 2)+             21 -> Prelude'.fmap (\ !new'Field -> old'Self{scale = Prelude'.Just new'Field}) (P'.wireGet 2)+             29 -> Prelude'.fmap (\ !new'Field -> old'Self{shift = Prelude'.Just new'Field}) (P'.wireGet 2)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> PowerParameter) PowerParameter where+  getVal m' f' = f' m'+ +instance P'.GPB PowerParameter+ +instance P'.ReflectDescriptor PowerParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [13, 21, 29])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.PowerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PowerParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"PowerParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PowerParameter.power\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PowerParameter\"], baseName' = FName \"power\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PowerParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PowerParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.PowerParameter.shift\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"PowerParameter\"], baseName' = FName \"shift\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 29}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/ReLUParameter.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ReLUParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.ReLUParameter.Engine as Caffe.ReLUParameter (Engine)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data ReLUParameter = ReLUParameter{negative_slope :: !(P'.Maybe P'.Float), engine :: !(P'.Maybe Caffe.ReLUParameter.Engine)}+                   deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''ReLUParameter++ +instance P'.Mergeable ReLUParameter where+  mergeAppend (ReLUParameter x'1 x'2) (ReLUParameter y'1 y'2) = ReLUParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2)+ +instance P'.Default ReLUParameter where+  defaultValue = ReLUParameter (Prelude'.Just 0.0) (Prelude'.Just (Prelude'.read "DEFAULT"))+ +instance P'.Wire ReLUParameter where+  wireSize ft' self'@(ReLUParameter x'1 x'2)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 2 x'1 + P'.wireSizeOpt 1 14 x'2)+  wirePut ft' self'@(ReLUParameter x'1 x'2)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 13 2 x'1+             P'.wirePutOpt 16 14 x'2+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             13 -> Prelude'.fmap (\ !new'Field -> old'Self{negative_slope = Prelude'.Just new'Field}) (P'.wireGet 2)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{engine = Prelude'.Just new'Field}) (P'.wireGet 14)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> ReLUParameter) ReLUParameter where+  getVal m' f' = f' m'+ +instance P'.GPB ReLUParameter+ +instance P'.ReflectDescriptor ReLUParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [13, 16])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ReLUParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ReLUParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ReLUParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ReLUParameter.negative_slope\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ReLUParameter\"], baseName' = FName \"negative_slope\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ReLUParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ReLUParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ReLUParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"ReLUParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/ReLUParameter/Engine.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ReLUParameter.Engine  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data Engine = DEFAULT+            | CAFFE+            | CUDNN+            deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''Engine++ +instance P'.Mergeable Engine+ +instance Prelude'.Bounded Engine where+  minBound = DEFAULT+  maxBound = CUDNN+ +instance P'.Default Engine where+  defaultValue = DEFAULT+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe Engine+toMaybe'Enum 0 = Prelude'.Just DEFAULT+toMaybe'Enum 1 = Prelude'.Just CAFFE+toMaybe'Enum 2 = Prelude'.Just CUDNN+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum Engine where+  fromEnum DEFAULT = 0+  fromEnum CAFFE = 1+  fromEnum CUDNN = 2+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.ReLUParameter.Engine") . toMaybe'Enum+  succ DEFAULT = CAFFE+  succ CAFFE = CUDNN+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.ReLUParameter.Engine"+  pred CAFFE = DEFAULT+  pred CUDNN = CAFFE+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.ReLUParameter.Engine"+ +instance P'.Wire Engine where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB Engine+ +instance P'.MessageAPI msg' (msg' -> Engine) Engine where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum Engine where+  reflectEnum = [(0, "DEFAULT", DEFAULT), (1, "CAFFE", CAFFE), (2, "CUDNN", CUDNN)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.ReLUParameter.Engine") ["Gen"] ["Caffe", "ReLUParameter"] "Engine")+      ["Gen", "Caffe", "ReLUParameter", "Engine.hs"]+      [(0, "DEFAULT"), (1, "CAFFE"), (2, "CUDNN")]
+ Gen/Caffe/SigmoidParameter.hs view
@@ -0,0 +1,64 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.SigmoidParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.SigmoidParameter.Engine as Caffe.SigmoidParameter (Engine)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data SigmoidParameter = SigmoidParameter{engine :: !(P'.Maybe Caffe.SigmoidParameter.Engine)}+                      deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''SigmoidParameter++ +instance P'.Mergeable SigmoidParameter where+  mergeAppend (SigmoidParameter x'1) (SigmoidParameter y'1) = SigmoidParameter (P'.mergeAppend x'1 y'1)+ +instance P'.Default SigmoidParameter where+  defaultValue = SigmoidParameter (Prelude'.Just (Prelude'.read "DEFAULT"))+ +instance P'.Wire SigmoidParameter where+  wireSize ft' self'@(SigmoidParameter x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 14 x'1)+  wirePut ft' self'@(SigmoidParameter x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 14 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{engine = Prelude'.Just new'Field}) (P'.wireGet 14)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> SigmoidParameter) SigmoidParameter where+  getVal m' f' = f' m'+ +instance P'.GPB SigmoidParameter+ +instance P'.ReflectDescriptor SigmoidParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.SigmoidParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SigmoidParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"SigmoidParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SigmoidParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SigmoidParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SigmoidParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SigmoidParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/SigmoidParameter/Engine.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.SigmoidParameter.Engine  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data Engine = DEFAULT+            | CAFFE+            | CUDNN+            deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''Engine++ +instance P'.Mergeable Engine+ +instance Prelude'.Bounded Engine where+  minBound = DEFAULT+  maxBound = CUDNN+ +instance P'.Default Engine where+  defaultValue = DEFAULT+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe Engine+toMaybe'Enum 0 = Prelude'.Just DEFAULT+toMaybe'Enum 1 = Prelude'.Just CAFFE+toMaybe'Enum 2 = Prelude'.Just CUDNN+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum Engine where+  fromEnum DEFAULT = 0+  fromEnum CAFFE = 1+  fromEnum CUDNN = 2+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.SigmoidParameter.Engine") .+      toMaybe'Enum+  succ DEFAULT = CAFFE+  succ CAFFE = CUDNN+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.SigmoidParameter.Engine"+  pred CAFFE = DEFAULT+  pred CUDNN = CAFFE+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.SigmoidParameter.Engine"+ +instance P'.Wire Engine where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB Engine+ +instance P'.MessageAPI msg' (msg' -> Engine) Engine where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum Engine where+  reflectEnum = [(0, "DEFAULT", DEFAULT), (1, "CAFFE", CAFFE), (2, "CUDNN", CUDNN)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.SigmoidParameter.Engine") ["Gen"] ["Caffe", "SigmoidParameter"] "Engine")+      ["Gen", "Caffe", "SigmoidParameter", "Engine.hs"]+      [(0, "DEFAULT"), (1, "CAFFE"), (2, "CUDNN")]
+ Gen/Caffe/SliceParameter.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.SliceParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data SliceParameter = SliceParameter{slice_dim :: !(P'.Maybe P'.Word32), slice_point :: !(P'.Seq P'.Word32)}+                    deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''SliceParameter++ +instance P'.Mergeable SliceParameter where+  mergeAppend (SliceParameter x'1 x'2) (SliceParameter y'1 y'2) = SliceParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2)+ +instance P'.Default SliceParameter where+  defaultValue = SliceParameter (Prelude'.Just 1) P'.defaultValue+ +instance P'.Wire SliceParameter where+  wireSize ft' self'@(SliceParameter x'1 x'2)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 13 x'1 + P'.wireSizeRep 1 13 x'2)+  wirePut ft' self'@(SliceParameter x'1 x'2)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 13 x'1+             P'.wirePutRep 16 13 x'2+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{slice_dim = Prelude'.Just new'Field}) (P'.wireGet 13)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{slice_point = P'.append (slice_point old'Self) new'Field})+                    (P'.wireGet 13)+             18 -> Prelude'.fmap (\ !new'Field -> old'Self{slice_point = P'.mergeAppend (slice_point old'Self) new'Field})+                    (P'.wireGetPacked 13)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> SliceParameter) SliceParameter where+  getVal m' f' = f' m'+ +instance P'.GPB SliceParameter+ +instance P'.ReflectDescriptor SliceParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 16, 18])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.SliceParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SliceParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"SliceParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SliceParameter.slice_dim\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SliceParameter\"], baseName' = FName \"slice_dim\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SliceParameter.slice_point\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SliceParameter\"], baseName' = FName \"slice_point\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Just (WireTag {getWireTag = 16},WireTag {getWireTag = 18}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/SoftmaxParameter.hs view
@@ -0,0 +1,64 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.SoftmaxParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.SoftmaxParameter.Engine as Caffe.SoftmaxParameter (Engine)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data SoftmaxParameter = SoftmaxParameter{engine :: !(P'.Maybe Caffe.SoftmaxParameter.Engine)}+                      deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''SoftmaxParameter++ +instance P'.Mergeable SoftmaxParameter where+  mergeAppend (SoftmaxParameter x'1) (SoftmaxParameter y'1) = SoftmaxParameter (P'.mergeAppend x'1 y'1)+ +instance P'.Default SoftmaxParameter where+  defaultValue = SoftmaxParameter (Prelude'.Just (Prelude'.read "DEFAULT"))+ +instance P'.Wire SoftmaxParameter where+  wireSize ft' self'@(SoftmaxParameter x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 14 x'1)+  wirePut ft' self'@(SoftmaxParameter x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 14 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{engine = Prelude'.Just new'Field}) (P'.wireGet 14)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> SoftmaxParameter) SoftmaxParameter where+  getVal m' f' = f' m'+ +instance P'.GPB SoftmaxParameter+ +instance P'.ReflectDescriptor SoftmaxParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.SoftmaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SoftmaxParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"SoftmaxParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SoftmaxParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SoftmaxParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SoftmaxParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SoftmaxParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/SoftmaxParameter/Engine.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.SoftmaxParameter.Engine  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data Engine = DEFAULT+            | CAFFE+            | CUDNN+            deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''Engine++ +instance P'.Mergeable Engine+ +instance Prelude'.Bounded Engine where+  minBound = DEFAULT+  maxBound = CUDNN+ +instance P'.Default Engine where+  defaultValue = DEFAULT+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe Engine+toMaybe'Enum 0 = Prelude'.Just DEFAULT+toMaybe'Enum 1 = Prelude'.Just CAFFE+toMaybe'Enum 2 = Prelude'.Just CUDNN+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum Engine where+  fromEnum DEFAULT = 0+  fromEnum CAFFE = 1+  fromEnum CUDNN = 2+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.SoftmaxParameter.Engine") .+      toMaybe'Enum+  succ DEFAULT = CAFFE+  succ CAFFE = CUDNN+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.SoftmaxParameter.Engine"+  pred CAFFE = DEFAULT+  pred CUDNN = CAFFE+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.SoftmaxParameter.Engine"+ +instance P'.Wire Engine where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB Engine+ +instance P'.MessageAPI msg' (msg' -> Engine) Engine where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum Engine where+  reflectEnum = [(0, "DEFAULT", DEFAULT), (1, "CAFFE", CAFFE), (2, "CUDNN", CUDNN)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.SoftmaxParameter.Engine") ["Gen"] ["Caffe", "SoftmaxParameter"] "Engine")+      ["Gen", "Caffe", "SoftmaxParameter", "Engine.hs"]+      [(0, "DEFAULT"), (1, "CAFFE"), (2, "CUDNN")]
+ Gen/Caffe/SolverParameter.hs view
@@ -0,0 +1,264 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.SolverParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.NetParameter as Caffe (NetParameter)+import qualified Gen.Caffe.NetState as Caffe (NetState)+import qualified Gen.Caffe.SolverParameter.SolverMode as Caffe.SolverParameter (SolverMode)+import qualified Gen.Caffe.SolverParameter.SolverType as Caffe.SolverParameter (SolverType)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data SolverParameter = SolverParameter{net :: !(P'.Maybe P'.Utf8), net_param :: !(P'.Maybe Caffe.NetParameter),+                                       train_net :: !(P'.Maybe P'.Utf8), test_net :: !(P'.Seq P'.Utf8),+                                       train_net_param :: !(P'.Maybe Caffe.NetParameter),+                                       test_net_param :: !(P'.Seq Caffe.NetParameter), train_state :: !(P'.Maybe Caffe.NetState),+                                       test_state :: !(P'.Seq Caffe.NetState), test_iter :: !(P'.Seq P'.Int32),+                                       test_interval :: !(P'.Maybe P'.Int32), test_compute_loss :: !(P'.Maybe P'.Bool),+                                       test_initialization :: !(P'.Maybe P'.Bool), base_lr :: !(P'.Maybe P'.Float),+                                       display :: !(P'.Maybe P'.Int32), average_loss :: !(P'.Maybe P'.Int32),+                                       max_iter :: !(P'.Maybe P'.Int32), lr_policy :: !(P'.Maybe P'.Utf8),+                                       gamma :: !(P'.Maybe P'.Float), power :: !(P'.Maybe P'.Float),+                                       momentum :: !(P'.Maybe P'.Float), weight_decay :: !(P'.Maybe P'.Float),+                                       regularization_type :: !(P'.Maybe P'.Utf8), stepsize :: !(P'.Maybe P'.Int32),+                                       stepvalue :: !(P'.Seq P'.Int32), snapshot :: !(P'.Maybe P'.Int32),+                                       snapshot_prefix :: !(P'.Maybe P'.Utf8), snapshot_diff :: !(P'.Maybe P'.Bool),+                                       solver_mode :: !(P'.Maybe Caffe.SolverParameter.SolverMode),+                                       device_id :: !(P'.Maybe P'.Int32), random_seed :: !(P'.Maybe P'.Int64),+                                       solver_type :: !(P'.Maybe Caffe.SolverParameter.SolverType), delta :: !(P'.Maybe P'.Float),+                                       debug_info :: !(P'.Maybe P'.Bool), snapshot_after_train :: !(P'.Maybe P'.Bool)}+                     deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''SolverParameter++ +instance P'.Mergeable SolverParameter where+  mergeAppend+   (SolverParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23 x'24+     x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34)+   (SolverParameter y'1 y'2 y'3 y'4 y'5 y'6 y'7 y'8 y'9 y'10 y'11 y'12 y'13 y'14 y'15 y'16 y'17 y'18 y'19 y'20 y'21 y'22 y'23 y'24+     y'25 y'26 y'27 y'28 y'29 y'30 y'31 y'32 y'33 y'34)+   = SolverParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+      (P'.mergeAppend x'8 y'8)+      (P'.mergeAppend x'9 y'9)+      (P'.mergeAppend x'10 y'10)+      (P'.mergeAppend x'11 y'11)+      (P'.mergeAppend x'12 y'12)+      (P'.mergeAppend x'13 y'13)+      (P'.mergeAppend x'14 y'14)+      (P'.mergeAppend x'15 y'15)+      (P'.mergeAppend x'16 y'16)+      (P'.mergeAppend x'17 y'17)+      (P'.mergeAppend x'18 y'18)+      (P'.mergeAppend x'19 y'19)+      (P'.mergeAppend x'20 y'20)+      (P'.mergeAppend x'21 y'21)+      (P'.mergeAppend x'22 y'22)+      (P'.mergeAppend x'23 y'23)+      (P'.mergeAppend x'24 y'24)+      (P'.mergeAppend x'25 y'25)+      (P'.mergeAppend x'26 y'26)+      (P'.mergeAppend x'27 y'27)+      (P'.mergeAppend x'28 y'28)+      (P'.mergeAppend x'29 y'29)+      (P'.mergeAppend x'30 y'30)+      (P'.mergeAppend x'31 y'31)+      (P'.mergeAppend x'32 y'32)+      (P'.mergeAppend x'33 y'33)+      (P'.mergeAppend x'34 y'34)+ +instance P'.Default SolverParameter where+  defaultValue+   = SolverParameter P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      (Prelude'.Just 0)+      (Prelude'.Just Prelude'.False)+      (Prelude'.Just Prelude'.True)+      P'.defaultValue+      P'.defaultValue+      (Prelude'.Just 1)+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      (Prelude'.Just (P'.Utf8 (P'.pack "L2")))+      P'.defaultValue+      P'.defaultValue+      (Prelude'.Just 0)+      P'.defaultValue+      (Prelude'.Just Prelude'.False)+      (Prelude'.Just (Prelude'.read "GPU"))+      (Prelude'.Just 0)+      (Prelude'.Just (-1))+      (Prelude'.Just (Prelude'.read "SGD"))+      (Prelude'.Just 9.99999993922529e-9)+      (Prelude'.Just Prelude'.False)+      (Prelude'.Just Prelude'.True)+ +instance P'.Wire SolverParameter where+  wireSize ft'+   self'@(SolverParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23+           x'24 x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 2 9 x'1 + P'.wireSizeOpt 2 11 x'2 + P'.wireSizeOpt 1 9 x'3 + P'.wireSizeRep 1 9 x'4 ++             P'.wireSizeOpt 2 11 x'5+             + P'.wireSizeRep 2 11 x'6+             + P'.wireSizeOpt 2 11 x'7+             + P'.wireSizeRep 2 11 x'8+             + P'.wireSizeRep 1 5 x'9+             + P'.wireSizeOpt 1 5 x'10+             + P'.wireSizeOpt 2 8 x'11+             + P'.wireSizeOpt 2 8 x'12+             + P'.wireSizeOpt 1 2 x'13+             + P'.wireSizeOpt 1 5 x'14+             + P'.wireSizeOpt 2 5 x'15+             + P'.wireSizeOpt 1 5 x'16+             + P'.wireSizeOpt 1 9 x'17+             + P'.wireSizeOpt 1 2 x'18+             + P'.wireSizeOpt 1 2 x'19+             + P'.wireSizeOpt 1 2 x'20+             + P'.wireSizeOpt 1 2 x'21+             + P'.wireSizeOpt 2 9 x'22+             + P'.wireSizeOpt 1 5 x'23+             + P'.wireSizeRep 2 5 x'24+             + P'.wireSizeOpt 1 5 x'25+             + P'.wireSizeOpt 1 9 x'26+             + P'.wireSizeOpt 2 8 x'27+             + P'.wireSizeOpt 2 14 x'28+             + P'.wireSizeOpt 2 5 x'29+             + P'.wireSizeOpt 2 3 x'30+             + P'.wireSizeOpt 2 14 x'31+             + P'.wireSizeOpt 2 2 x'32+             + P'.wireSizeOpt 2 8 x'33+             + P'.wireSizeOpt 2 8 x'34)+  wirePut ft'+   self'@(SolverParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23+           x'24 x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'3+             P'.wirePutRep 18 9 x'4+             P'.wirePutRep 24 5 x'9+             P'.wirePutOpt 32 5 x'10+             P'.wirePutOpt 45 2 x'13+             P'.wirePutOpt 48 5 x'14+             P'.wirePutOpt 56 5 x'16+             P'.wirePutOpt 66 9 x'17+             P'.wirePutOpt 77 2 x'18+             P'.wirePutOpt 85 2 x'19+             P'.wirePutOpt 93 2 x'20+             P'.wirePutOpt 101 2 x'21+             P'.wirePutOpt 104 5 x'23+             P'.wirePutOpt 112 5 x'25+             P'.wirePutOpt 122 9 x'26+             P'.wirePutOpt 128 8 x'27+             P'.wirePutOpt 136 14 x'28+             P'.wirePutOpt 144 5 x'29+             P'.wirePutOpt 152 8 x'11+             P'.wirePutOpt 160 3 x'30+             P'.wirePutOpt 170 11 x'5+             P'.wirePutRep 178 11 x'6+             P'.wirePutOpt 184 8 x'33+             P'.wirePutOpt 194 9 x'1+             P'.wirePutOpt 202 11 x'2+             P'.wirePutOpt 210 11 x'7+             P'.wirePutRep 218 11 x'8+             P'.wirePutOpt 224 8 x'34+             P'.wirePutOpt 234 9 x'22+             P'.wirePutOpt 240 14 x'31+             P'.wirePutOpt 253 2 x'32+             P'.wirePutOpt 256 8 x'12+             P'.wirePutOpt 264 5 x'15+             P'.wirePutRep 272 5 x'24+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             194 -> Prelude'.fmap (\ !new'Field -> old'Self{net = Prelude'.Just new'Field}) (P'.wireGet 9)+             202 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{net_param = P'.mergeAppend (net_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{train_net = Prelude'.Just new'Field}) (P'.wireGet 9)+             18 -> Prelude'.fmap (\ !new'Field -> old'Self{test_net = P'.append (test_net old'Self) new'Field}) (P'.wireGet 9)+             170 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{train_net_param = P'.mergeAppend (train_net_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             178 -> Prelude'.fmap (\ !new'Field -> old'Self{test_net_param = P'.append (test_net_param old'Self) new'Field})+                     (P'.wireGet 11)+             210 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{train_state = P'.mergeAppend (train_state old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             218 -> Prelude'.fmap (\ !new'Field -> old'Self{test_state = P'.append (test_state old'Self) new'Field}) (P'.wireGet 11)+             24 -> Prelude'.fmap (\ !new'Field -> old'Self{test_iter = P'.append (test_iter old'Self) new'Field}) (P'.wireGet 5)+             26 -> Prelude'.fmap (\ !new'Field -> old'Self{test_iter = P'.mergeAppend (test_iter old'Self) new'Field})+                    (P'.wireGetPacked 5)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{test_interval = Prelude'.Just new'Field}) (P'.wireGet 5)+             152 -> Prelude'.fmap (\ !new'Field -> old'Self{test_compute_loss = Prelude'.Just new'Field}) (P'.wireGet 8)+             256 -> Prelude'.fmap (\ !new'Field -> old'Self{test_initialization = Prelude'.Just new'Field}) (P'.wireGet 8)+             45 -> Prelude'.fmap (\ !new'Field -> old'Self{base_lr = Prelude'.Just new'Field}) (P'.wireGet 2)+             48 -> Prelude'.fmap (\ !new'Field -> old'Self{display = Prelude'.Just new'Field}) (P'.wireGet 5)+             264 -> Prelude'.fmap (\ !new'Field -> old'Self{average_loss = Prelude'.Just new'Field}) (P'.wireGet 5)+             56 -> Prelude'.fmap (\ !new'Field -> old'Self{max_iter = Prelude'.Just new'Field}) (P'.wireGet 5)+             66 -> Prelude'.fmap (\ !new'Field -> old'Self{lr_policy = Prelude'.Just new'Field}) (P'.wireGet 9)+             77 -> Prelude'.fmap (\ !new'Field -> old'Self{gamma = Prelude'.Just new'Field}) (P'.wireGet 2)+             85 -> Prelude'.fmap (\ !new'Field -> old'Self{power = Prelude'.Just new'Field}) (P'.wireGet 2)+             93 -> Prelude'.fmap (\ !new'Field -> old'Self{momentum = Prelude'.Just new'Field}) (P'.wireGet 2)+             101 -> Prelude'.fmap (\ !new'Field -> old'Self{weight_decay = Prelude'.Just new'Field}) (P'.wireGet 2)+             234 -> Prelude'.fmap (\ !new'Field -> old'Self{regularization_type = Prelude'.Just new'Field}) (P'.wireGet 9)+             104 -> Prelude'.fmap (\ !new'Field -> old'Self{stepsize = Prelude'.Just new'Field}) (P'.wireGet 5)+             272 -> Prelude'.fmap (\ !new'Field -> old'Self{stepvalue = P'.append (stepvalue old'Self) new'Field}) (P'.wireGet 5)+             274 -> Prelude'.fmap (\ !new'Field -> old'Self{stepvalue = P'.mergeAppend (stepvalue old'Self) new'Field})+                     (P'.wireGetPacked 5)+             112 -> Prelude'.fmap (\ !new'Field -> old'Self{snapshot = Prelude'.Just new'Field}) (P'.wireGet 5)+             122 -> Prelude'.fmap (\ !new'Field -> old'Self{snapshot_prefix = Prelude'.Just new'Field}) (P'.wireGet 9)+             128 -> Prelude'.fmap (\ !new'Field -> old'Self{snapshot_diff = Prelude'.Just new'Field}) (P'.wireGet 8)+             136 -> Prelude'.fmap (\ !new'Field -> old'Self{solver_mode = Prelude'.Just new'Field}) (P'.wireGet 14)+             144 -> Prelude'.fmap (\ !new'Field -> old'Self{device_id = Prelude'.Just new'Field}) (P'.wireGet 5)+             160 -> Prelude'.fmap (\ !new'Field -> old'Self{random_seed = Prelude'.Just new'Field}) (P'.wireGet 3)+             240 -> Prelude'.fmap (\ !new'Field -> old'Self{solver_type = Prelude'.Just new'Field}) (P'.wireGet 14)+             253 -> Prelude'.fmap (\ !new'Field -> old'Self{delta = Prelude'.Just new'Field}) (P'.wireGet 2)+             184 -> Prelude'.fmap (\ !new'Field -> old'Self{debug_info = Prelude'.Just new'Field}) (P'.wireGet 8)+             224 -> Prelude'.fmap (\ !new'Field -> old'Self{snapshot_after_train = Prelude'.Just new'Field}) (P'.wireGet 8)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> SolverParameter) SolverParameter where+  getVal m' f' = f' m'+ +instance P'.GPB SolverParameter+ +instance P'.ReflectDescriptor SolverParameter where+  getMessageInfo _+   = P'.GetMessageInfo (P'.fromDistinctAscList [])+      (P'.fromDistinctAscList+        [10, 18, 24, 26, 32, 45, 48, 56, 66, 77, 85, 93, 101, 104, 112, 122, 128, 136, 144, 152, 160, 170, 178, 184, 194, 202, 210,+         218, 224, 234, 240, 253, 256, 264, 272, 274])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.SolverParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SolverParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"SolverParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.net\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"net\"}, fieldNumber = FieldId {getFieldId = 24}, wireTag = WireTag {getWireTag = 194}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.net_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"net_param\"}, fieldNumber = FieldId {getFieldId = 25}, wireTag = WireTag {getWireTag = 202}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.train_net\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"train_net\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_net\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_net\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.train_net_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"train_net_param\"}, fieldNumber = FieldId {getFieldId = 21}, wireTag = WireTag {getWireTag = 170}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_net_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_net_param\"}, fieldNumber = FieldId {getFieldId = 22}, wireTag = WireTag {getWireTag = 178}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.train_state\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"train_state\"}, fieldNumber = FieldId {getFieldId = 26}, wireTag = WireTag {getWireTag = 210}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetState\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetState\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_state\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_state\"}, fieldNumber = FieldId {getFieldId = 27}, wireTag = WireTag {getWireTag = 218}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetState\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetState\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_iter\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_iter\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Just (WireTag {getWireTag = 24},WireTag {getWireTag = 26}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_interval\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_interval\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_compute_loss\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_compute_loss\"}, fieldNumber = FieldId {getFieldId = 19}, wireTag = WireTag {getWireTag = 152}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.test_initialization\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"test_initialization\"}, fieldNumber = FieldId {getFieldId = 32}, wireTag = WireTag {getWireTag = 256}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.base_lr\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"base_lr\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 45}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.display\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"display\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.average_loss\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"average_loss\"}, fieldNumber = FieldId {getFieldId = 33}, wireTag = WireTag {getWireTag = 264}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.max_iter\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"max_iter\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.lr_policy\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"lr_policy\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 66}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.gamma\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"gamma\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 77}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.power\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"power\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 85}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.momentum\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"momentum\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 93}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.weight_decay\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"weight_decay\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 101}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.regularization_type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"regularization_type\"}, fieldNumber = FieldId {getFieldId = 29}, wireTag = WireTag {getWireTag = 234}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"L2\", hsDefault = Just (HsDef'ByteString \"L2\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.stepsize\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"stepsize\"}, fieldNumber = FieldId {getFieldId = 13}, wireTag = WireTag {getWireTag = 104}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.stepvalue\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"stepvalue\"}, fieldNumber = FieldId {getFieldId = 34}, wireTag = WireTag {getWireTag = 272}, packedTag = Just (WireTag {getWireTag = 272},WireTag {getWireTag = 274}), wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.snapshot\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"snapshot\"}, fieldNumber = FieldId {getFieldId = 14}, wireTag = WireTag {getWireTag = 112}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.snapshot_prefix\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"snapshot_prefix\"}, fieldNumber = FieldId {getFieldId = 15}, wireTag = WireTag {getWireTag = 122}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.snapshot_diff\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"snapshot_diff\"}, fieldNumber = FieldId {getFieldId = 16}, wireTag = WireTag {getWireTag = 128}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.solver_mode\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"solver_mode\"}, fieldNumber = FieldId {getFieldId = 17}, wireTag = WireTag {getWireTag = 136}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SolverParameter.SolverMode\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SolverParameter\"], baseName = MName \"SolverMode\"}), hsRawDefault = Just \"GPU\", hsDefault = Just (HsDef'Enum \"GPU\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.device_id\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"device_id\"}, fieldNumber = FieldId {getFieldId = 18}, wireTag = WireTag {getWireTag = 144}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.random_seed\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"random_seed\"}, fieldNumber = FieldId {getFieldId = 20}, wireTag = WireTag {getWireTag = 160}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 3}, typeName = Nothing, hsRawDefault = Just \"-1\", hsDefault = Just (HsDef'Integer (-1))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.solver_type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"solver_type\"}, fieldNumber = FieldId {getFieldId = 30}, wireTag = WireTag {getWireTag = 240}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SolverParameter.SolverType\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"SolverParameter\"], baseName = MName \"SolverType\"}), hsRawDefault = Just \"SGD\", hsDefault = Just (HsDef'Enum \"SGD\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.delta\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"delta\"}, fieldNumber = FieldId {getFieldId = 31}, wireTag = WireTag {getWireTag = 253}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0e-8\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (11258999 % 1125899906842624)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.debug_info\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"debug_info\"}, fieldNumber = FieldId {getFieldId = 23}, wireTag = WireTag {getWireTag = 184}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverParameter.snapshot_after_train\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverParameter\"], baseName' = FName \"snapshot_after_train\"}, fieldNumber = FieldId {getFieldId = 28}, wireTag = WireTag {getWireTag = 224}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/SolverParameter/SolverMode.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.SolverParameter.SolverMode  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data SolverMode = CPU+                | GPU+                deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''SolverMode++ +instance P'.Mergeable SolverMode+ +instance Prelude'.Bounded SolverMode where+  minBound = CPU+  maxBound = GPU+ +instance P'.Default SolverMode where+  defaultValue = CPU+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe SolverMode+toMaybe'Enum 0 = Prelude'.Just CPU+toMaybe'Enum 1 = Prelude'.Just GPU+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum SolverMode where+  fromEnum CPU = 0+  fromEnum GPU = 1+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.SolverParameter.SolverMode") .+      toMaybe'Enum+  succ CPU = GPU+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.SolverParameter.SolverMode"+  pred GPU = CPU+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.SolverParameter.SolverMode"+ +instance P'.Wire SolverMode where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB SolverMode+ +instance P'.MessageAPI msg' (msg' -> SolverMode) SolverMode where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum SolverMode where+  reflectEnum = [(0, "CPU", CPU), (1, "GPU", GPU)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.SolverParameter.SolverMode") ["Gen"] ["Caffe", "SolverParameter"] "SolverMode")+      ["Gen", "Caffe", "SolverParameter", "SolverMode.hs"]+      [(0, "CPU"), (1, "GPU")]
+ Gen/Caffe/SolverParameter/SolverType.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.SolverParameter.SolverType  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data SolverType = SGD+                | NESTEROV+                | ADAGRAD+                deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''SolverType++ +instance P'.Mergeable SolverType+ +instance Prelude'.Bounded SolverType where+  minBound = SGD+  maxBound = ADAGRAD+ +instance P'.Default SolverType where+  defaultValue = SGD+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe SolverType+toMaybe'Enum 0 = Prelude'.Just SGD+toMaybe'Enum 1 = Prelude'.Just NESTEROV+toMaybe'Enum 2 = Prelude'.Just ADAGRAD+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum SolverType where+  fromEnum SGD = 0+  fromEnum NESTEROV = 1+  fromEnum ADAGRAD = 2+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.SolverParameter.SolverType") .+      toMaybe'Enum+  succ SGD = NESTEROV+  succ NESTEROV = ADAGRAD+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.SolverParameter.SolverType"+  pred NESTEROV = SGD+  pred ADAGRAD = NESTEROV+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.SolverParameter.SolverType"+ +instance P'.Wire SolverType where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB SolverType+ +instance P'.MessageAPI msg' (msg' -> SolverType) SolverType where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum SolverType where+  reflectEnum = [(0, "SGD", SGD), (1, "NESTEROV", NESTEROV), (2, "ADAGRAD", ADAGRAD)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.SolverParameter.SolverType") ["Gen"] ["Caffe", "SolverParameter"] "SolverType")+      ["Gen", "Caffe", "SolverParameter", "SolverType.hs"]+      [(0, "SGD"), (1, "NESTEROV"), (2, "ADAGRAD")]
+ Gen/Caffe/SolverState.hs view
@@ -0,0 +1,72 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.SolverState  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.BlobProto as Caffe (BlobProto)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data SolverState = SolverState{iter :: !(P'.Maybe P'.Int32), learned_net :: !(P'.Maybe P'.Utf8),+                               history :: !(P'.Seq Caffe.BlobProto), current_step :: !(P'.Maybe P'.Int32)}+                 deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''SolverState++ +instance P'.Mergeable SolverState where+  mergeAppend (SolverState x'1 x'2 x'3 x'4) (SolverState y'1 y'2 y'3 y'4)+   = SolverState (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+ +instance P'.Default SolverState where+  defaultValue = SolverState P'.defaultValue P'.defaultValue P'.defaultValue (Prelude'.Just 0)+ +instance P'.Wire SolverState where+  wireSize ft' self'@(SolverState x'1 x'2 x'3 x'4)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 5 x'1 + P'.wireSizeOpt 1 9 x'2 + P'.wireSizeRep 1 11 x'3 + P'.wireSizeOpt 1 5 x'4)+  wirePut ft' self'@(SolverState x'1 x'2 x'3 x'4)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 5 x'1+             P'.wirePutOpt 18 9 x'2+             P'.wirePutRep 26 11 x'3+             P'.wirePutOpt 32 5 x'4+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{iter = Prelude'.Just new'Field}) (P'.wireGet 5)+             18 -> Prelude'.fmap (\ !new'Field -> old'Self{learned_net = Prelude'.Just new'Field}) (P'.wireGet 9)+             26 -> Prelude'.fmap (\ !new'Field -> old'Self{history = P'.append (history old'Self) new'Field}) (P'.wireGet 11)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{current_step = Prelude'.Just new'Field}) (P'.wireGet 5)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> SolverState) SolverState where+  getVal m' f' = f' m'+ +instance P'.GPB SolverState+ +instance P'.ReflectDescriptor SolverState where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8, 18, 26, 32])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.SolverState\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SolverState\"}, descFilePath = [\"Gen\",\"Caffe\",\"SolverState.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverState.iter\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverState\"], baseName' = FName \"iter\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverState.learned_net\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverState\"], baseName' = FName \"learned_net\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverState.history\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverState\"], baseName' = FName \"history\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.SolverState.current_step\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"SolverState\"], baseName' = FName \"current_step\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/TanHParameter.hs view
@@ -0,0 +1,64 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.TanHParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.TanHParameter.Engine as Caffe.TanHParameter (Engine)+ +import Language.Haskell.TH.Syntax+import Control.Lens+data TanHParameter = TanHParameter{engine :: !(P'.Maybe Caffe.TanHParameter.Engine)}+                   deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''TanHParameter++ +instance P'.Mergeable TanHParameter where+  mergeAppend (TanHParameter x'1) (TanHParameter y'1) = TanHParameter (P'.mergeAppend x'1 y'1)+ +instance P'.Default TanHParameter where+  defaultValue = TanHParameter (Prelude'.Just (Prelude'.read "DEFAULT"))+ +instance P'.Wire TanHParameter where+  wireSize ft' self'@(TanHParameter x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 14 x'1)+  wirePut ft' self'@(TanHParameter x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 8 14 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             8 -> Prelude'.fmap (\ !new'Field -> old'Self{engine = Prelude'.Just new'Field}) (P'.wireGet 14)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> TanHParameter) TanHParameter where+  getVal m' f' = f' m'+ +instance P'.GPB TanHParameter+ +instance P'.ReflectDescriptor TanHParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [8])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.TanHParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TanHParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"TanHParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TanHParameter.engine\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TanHParameter\"], baseName' = FName \"engine\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 8}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.TanHParameter.Engine\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"TanHParameter\"], baseName = MName \"Engine\"}), hsRawDefault = Just \"DEFAULT\", hsDefault = Just (HsDef'Enum \"DEFAULT\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/TanHParameter/Engine.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.TanHParameter.Engine  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data Engine = DEFAULT+            | CAFFE+            | CUDNN+            deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''Engine++ +instance P'.Mergeable Engine+ +instance Prelude'.Bounded Engine where+  minBound = DEFAULT+  maxBound = CUDNN+ +instance P'.Default Engine where+  defaultValue = DEFAULT+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe Engine+toMaybe'Enum 0 = Prelude'.Just DEFAULT+toMaybe'Enum 1 = Prelude'.Just CAFFE+toMaybe'Enum 2 = Prelude'.Just CUDNN+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum Engine where+  fromEnum DEFAULT = 0+  fromEnum CAFFE = 1+  fromEnum CUDNN = 2+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.TanHParameter.Engine") . toMaybe'Enum+  succ DEFAULT = CAFFE+  succ CAFFE = CUDNN+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.TanHParameter.Engine"+  pred CAFFE = DEFAULT+  pred CUDNN = CAFFE+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.TanHParameter.Engine"+ +instance P'.Wire Engine where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB Engine+ +instance P'.MessageAPI msg' (msg' -> Engine) Engine where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum Engine where+  reflectEnum = [(0, "DEFAULT", DEFAULT), (1, "CAFFE", CAFFE), (2, "CUDNN", CUDNN)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.TanHParameter.Engine") ["Gen"] ["Caffe", "TanHParameter"] "Engine")+      ["Gen", "Caffe", "TanHParameter", "Engine.hs"]+      [(0, "DEFAULT"), (1, "CAFFE"), (2, "CUDNN")]
+ Gen/Caffe/ThresholdParameter.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.ThresholdParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data ThresholdParameter = ThresholdParameter{threshold :: !(P'.Maybe P'.Float)}+                        deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''ThresholdParameter++ +instance P'.Mergeable ThresholdParameter where+  mergeAppend (ThresholdParameter x'1) (ThresholdParameter y'1) = ThresholdParameter (P'.mergeAppend x'1 y'1)+ +instance P'.Default ThresholdParameter where+  defaultValue = ThresholdParameter (Prelude'.Just 0.0)+ +instance P'.Wire ThresholdParameter where+  wireSize ft' self'@(ThresholdParameter x'1)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size = (P'.wireSizeOpt 1 2 x'1)+  wirePut ft' self'@(ThresholdParameter x'1)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 13 2 x'1+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             13 -> Prelude'.fmap (\ !new'Field -> old'Self{threshold = Prelude'.Just new'Field}) (P'.wireGet 2)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> ThresholdParameter) ThresholdParameter where+  getVal m' f' = f' m'+ +instance P'.GPB ThresholdParameter+ +instance P'.ReflectDescriptor ThresholdParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [13])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.ThresholdParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ThresholdParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"ThresholdParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.ThresholdParameter.threshold\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"ThresholdParameter\"], baseName' = FName \"threshold\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (0 % 1)))}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/TransformationParameter.hs view
@@ -0,0 +1,80 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.TransformationParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data TransformationParameter = TransformationParameter{scale :: !(P'.Maybe P'.Float), mirror :: !(P'.Maybe P'.Bool),+                                                       crop_size :: !(P'.Maybe P'.Word32), mean_file :: !(P'.Maybe P'.Utf8),+                                                       mean_value :: !(P'.Seq P'.Float)}+                             deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''TransformationParameter++ +instance P'.Mergeable TransformationParameter where+  mergeAppend (TransformationParameter x'1 x'2 x'3 x'4 x'5) (TransformationParameter y'1 y'2 y'3 y'4 y'5)+   = TransformationParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+ +instance P'.Default TransformationParameter where+  defaultValue+   = TransformationParameter (Prelude'.Just 1.0) (Prelude'.Just Prelude'.False) (Prelude'.Just 0) P'.defaultValue P'.defaultValue+ +instance P'.Wire TransformationParameter where+  wireSize ft' self'@(TransformationParameter x'1 x'2 x'3 x'4 x'5)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 2 x'1 + P'.wireSizeOpt 1 8 x'2 + P'.wireSizeOpt 1 13 x'3 + P'.wireSizeOpt 1 9 x'4 ++             P'.wireSizeRep 1 2 x'5)+  wirePut ft' self'@(TransformationParameter x'1 x'2 x'3 x'4 x'5)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 13 2 x'1+             P'.wirePutOpt 16 8 x'2+             P'.wirePutOpt 24 13 x'3+             P'.wirePutOpt 34 9 x'4+             P'.wirePutRep 45 2 x'5+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             13 -> Prelude'.fmap (\ !new'Field -> old'Self{scale = Prelude'.Just new'Field}) (P'.wireGet 2)+             16 -> Prelude'.fmap (\ !new'Field -> old'Self{mirror = Prelude'.Just new'Field}) (P'.wireGet 8)+             24 -> Prelude'.fmap (\ !new'Field -> old'Self{crop_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             34 -> Prelude'.fmap (\ !new'Field -> old'Self{mean_file = Prelude'.Just new'Field}) (P'.wireGet 9)+             45 -> Prelude'.fmap (\ !new'Field -> old'Self{mean_value = P'.append (mean_value old'Self) new'Field}) (P'.wireGet 2)+             42 -> Prelude'.fmap (\ !new'Field -> old'Self{mean_value = P'.mergeAppend (mean_value old'Self) new'Field})+                    (P'.wireGetPacked 2)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> TransformationParameter) TransformationParameter where+  getVal m' f' = f' m'+ +instance P'.GPB TransformationParameter+ +instance P'.ReflectDescriptor TransformationParameter where+  getMessageInfo _ = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [13, 16, 24, 34, 42, 45])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.TransformationParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TransformationParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"TransformationParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TransformationParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TransformationParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 13}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TransformationParameter.mirror\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TransformationParameter\"], baseName' = FName \"mirror\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 16}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TransformationParameter.crop_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TransformationParameter\"], baseName' = FName \"crop_size\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TransformationParameter.mean_file\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TransformationParameter\"], baseName' = FName \"mean_file\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.TransformationParameter.mean_value\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"TransformationParameter\"], baseName' = FName \"mean_value\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 45}, packedTag = Just (WireTag {getWireTag = 45},WireTag {getWireTag = 42}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/V0LayerParameter.hs view
@@ -0,0 +1,281 @@+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.V0LayerParameter (V0LayerParameter(..)) where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.BlobProto as Caffe (BlobProto)+import qualified Gen.Caffe.FillerParameter as Caffe (FillerParameter)+import qualified Gen.Caffe.HDF5OutputParameter as Caffe (HDF5OutputParameter)+import qualified Gen.Caffe.V0LayerParameter.PoolMethod as Caffe.V0LayerParameter (PoolMethod)+ +data V0LayerParameter = V0LayerParameter{name :: !(P'.Maybe P'.Utf8), type' :: !(P'.Maybe P'.Utf8),+                                         num_output :: !(P'.Maybe P'.Word32), biasterm :: !(P'.Maybe P'.Bool),+                                         weight_filler :: !(P'.Maybe Caffe.FillerParameter),+                                         bias_filler :: !(P'.Maybe Caffe.FillerParameter), pad :: !(P'.Maybe P'.Word32),+                                         kernelsize :: !(P'.Maybe P'.Word32), group :: !(P'.Maybe P'.Word32),+                                         stride :: !(P'.Maybe P'.Word32), pool :: !(P'.Maybe Caffe.V0LayerParameter.PoolMethod),+                                         dropout_ratio :: !(P'.Maybe P'.Float), local_size :: !(P'.Maybe P'.Word32),+                                         alpha :: !(P'.Maybe P'.Float), beta :: !(P'.Maybe P'.Float), k :: !(P'.Maybe P'.Float),+                                         source :: !(P'.Maybe P'.Utf8), scale :: !(P'.Maybe P'.Float),+                                         meanfile :: !(P'.Maybe P'.Utf8), batchsize :: !(P'.Maybe P'.Word32),+                                         cropsize :: !(P'.Maybe P'.Word32), mirror :: !(P'.Maybe P'.Bool),+                                         blobs :: !(P'.Seq Caffe.BlobProto), blobs_lr :: !(P'.Seq P'.Float),+                                         weight_decay :: !(P'.Seq P'.Float), rand_skip :: !(P'.Maybe P'.Word32),+                                         det_fg_threshold :: !(P'.Maybe P'.Float), det_bg_threshold :: !(P'.Maybe P'.Float),+                                         det_fg_fraction :: !(P'.Maybe P'.Float), det_context_pad :: !(P'.Maybe P'.Word32),+                                         det_crop_mode :: !(P'.Maybe P'.Utf8), new_num :: !(P'.Maybe P'.Int32),+                                         new_channels :: !(P'.Maybe P'.Int32), new_height :: !(P'.Maybe P'.Int32),+                                         new_width :: !(P'.Maybe P'.Int32), shuffle_images :: !(P'.Maybe P'.Bool),+                                         concat_dim :: !(P'.Maybe P'.Word32),+                                         hdf5_output_param :: !(P'.Maybe Caffe.HDF5OutputParameter)}+                      deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)+ +instance P'.Mergeable V0LayerParameter where+  mergeAppend+   (V0LayerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23 x'24+     x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34 x'35 x'36 x'37 x'38)+   (V0LayerParameter y'1 y'2 y'3 y'4 y'5 y'6 y'7 y'8 y'9 y'10 y'11 y'12 y'13 y'14 y'15 y'16 y'17 y'18 y'19 y'20 y'21 y'22 y'23 y'24+     y'25 y'26 y'27 y'28 y'29 y'30 y'31 y'32 y'33 y'34 y'35 y'36 y'37 y'38)+   = V0LayerParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+      (P'.mergeAppend x'8 y'8)+      (P'.mergeAppend x'9 y'9)+      (P'.mergeAppend x'10 y'10)+      (P'.mergeAppend x'11 y'11)+      (P'.mergeAppend x'12 y'12)+      (P'.mergeAppend x'13 y'13)+      (P'.mergeAppend x'14 y'14)+      (P'.mergeAppend x'15 y'15)+      (P'.mergeAppend x'16 y'16)+      (P'.mergeAppend x'17 y'17)+      (P'.mergeAppend x'18 y'18)+      (P'.mergeAppend x'19 y'19)+      (P'.mergeAppend x'20 y'20)+      (P'.mergeAppend x'21 y'21)+      (P'.mergeAppend x'22 y'22)+      (P'.mergeAppend x'23 y'23)+      (P'.mergeAppend x'24 y'24)+      (P'.mergeAppend x'25 y'25)+      (P'.mergeAppend x'26 y'26)+      (P'.mergeAppend x'27 y'27)+      (P'.mergeAppend x'28 y'28)+      (P'.mergeAppend x'29 y'29)+      (P'.mergeAppend x'30 y'30)+      (P'.mergeAppend x'31 y'31)+      (P'.mergeAppend x'32 y'32)+      (P'.mergeAppend x'33 y'33)+      (P'.mergeAppend x'34 y'34)+      (P'.mergeAppend x'35 y'35)+      (P'.mergeAppend x'36 y'36)+      (P'.mergeAppend x'37 y'37)+      (P'.mergeAppend x'38 y'38)+ +instance P'.Default V0LayerParameter where+  defaultValue+   = V0LayerParameter P'.defaultValue P'.defaultValue P'.defaultValue (Prelude'.Just Prelude'.True) P'.defaultValue P'.defaultValue+      (Prelude'.Just 0)+      P'.defaultValue+      (Prelude'.Just 1)+      (Prelude'.Just 1)+      (Prelude'.Just (Prelude'.read "MAX"))+      (Prelude'.Just 0.5)+      (Prelude'.Just 5)+      (Prelude'.Just 1.0)+      (Prelude'.Just 0.75)+      (Prelude'.Just 1.0)+      P'.defaultValue+      (Prelude'.Just 1.0)+      P'.defaultValue+      P'.defaultValue+      (Prelude'.Just 0)+      (Prelude'.Just Prelude'.False)+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      (Prelude'.Just 0)+      (Prelude'.Just 0.5)+      (Prelude'.Just 0.5)+      (Prelude'.Just 0.25)+      (Prelude'.Just 0)+      (Prelude'.Just (P'.Utf8 (P'.pack "warp")))+      (Prelude'.Just 0)+      (Prelude'.Just 0)+      (Prelude'.Just 0)+      (Prelude'.Just 0)+      (Prelude'.Just Prelude'.False)+      (Prelude'.Just 1)+      P'.defaultValue+ +instance P'.Wire V0LayerParameter where+  wireSize ft'+   self'@(V0LayerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23+           x'24 x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34 x'35 x'36 x'37 x'38)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 9 x'1 + P'.wireSizeOpt 1 9 x'2 + P'.wireSizeOpt 1 13 x'3 + P'.wireSizeOpt 1 8 x'4 ++             P'.wireSizeOpt 1 11 x'5+             + P'.wireSizeOpt 1 11 x'6+             + P'.wireSizeOpt 1 13 x'7+             + P'.wireSizeOpt 1 13 x'8+             + P'.wireSizeOpt 1 13 x'9+             + P'.wireSizeOpt 1 13 x'10+             + P'.wireSizeOpt 1 14 x'11+             + P'.wireSizeOpt 1 2 x'12+             + P'.wireSizeOpt 1 13 x'13+             + P'.wireSizeOpt 1 2 x'14+             + P'.wireSizeOpt 1 2 x'15+             + P'.wireSizeOpt 2 2 x'16+             + P'.wireSizeOpt 2 9 x'17+             + P'.wireSizeOpt 2 2 x'18+             + P'.wireSizeOpt 2 9 x'19+             + P'.wireSizeOpt 2 13 x'20+             + P'.wireSizeOpt 2 13 x'21+             + P'.wireSizeOpt 2 8 x'22+             + P'.wireSizeRep 2 11 x'23+             + P'.wireSizeRep 2 2 x'24+             + P'.wireSizeRep 2 2 x'25+             + P'.wireSizeOpt 2 13 x'26+             + P'.wireSizeOpt 2 2 x'27+             + P'.wireSizeOpt 2 2 x'28+             + P'.wireSizeOpt 2 2 x'29+             + P'.wireSizeOpt 2 13 x'30+             + P'.wireSizeOpt 2 9 x'31+             + P'.wireSizeOpt 2 5 x'32+             + P'.wireSizeOpt 2 5 x'33+             + P'.wireSizeOpt 2 5 x'34+             + P'.wireSizeOpt 2 5 x'35+             + P'.wireSizeOpt 2 8 x'36+             + P'.wireSizeOpt 2 13 x'37+             + P'.wireSizeOpt 2 11 x'38)+  wirePut ft'+   self'@(V0LayerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23+           x'24 x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34 x'35 x'36 x'37 x'38)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'1+             P'.wirePutOpt 18 9 x'2+             P'.wirePutOpt 24 13 x'3+             P'.wirePutOpt 32 8 x'4+             P'.wirePutOpt 42 11 x'5+             P'.wirePutOpt 50 11 x'6+             P'.wirePutOpt 56 13 x'7+             P'.wirePutOpt 64 13 x'8+             P'.wirePutOpt 72 13 x'9+             P'.wirePutOpt 80 13 x'10+             P'.wirePutOpt 88 14 x'11+             P'.wirePutOpt 101 2 x'12+             P'.wirePutOpt 104 13 x'13+             P'.wirePutOpt 117 2 x'14+             P'.wirePutOpt 125 2 x'15+             P'.wirePutOpt 130 9 x'17+             P'.wirePutOpt 141 2 x'18+             P'.wirePutOpt 146 9 x'19+             P'.wirePutOpt 152 13 x'20+             P'.wirePutOpt 160 13 x'21+             P'.wirePutOpt 168 8 x'22+             P'.wirePutOpt 181 2 x'16+             P'.wirePutRep 402 11 x'23+             P'.wirePutRep 413 2 x'24+             P'.wirePutRep 421 2 x'25+             P'.wirePutOpt 424 13 x'26+             P'.wirePutOpt 437 2 x'27+             P'.wirePutOpt 445 2 x'28+             P'.wirePutOpt 453 2 x'29+             P'.wirePutOpt 464 13 x'30+             P'.wirePutOpt 474 9 x'31+             P'.wirePutOpt 480 5 x'32+             P'.wirePutOpt 488 5 x'33+             P'.wirePutOpt 496 5 x'34+             P'.wirePutOpt 504 5 x'35+             P'.wirePutOpt 512 8 x'36+             P'.wirePutOpt 520 13 x'37+             P'.wirePutOpt 8010 11 x'38+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{name = Prelude'.Just new'Field}) (P'.wireGet 9)+             18 -> Prelude'.fmap (\ !new'Field -> old'Self{type' = Prelude'.Just new'Field}) (P'.wireGet 9)+             24 -> Prelude'.fmap (\ !new'Field -> old'Self{num_output = Prelude'.Just new'Field}) (P'.wireGet 13)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{biasterm = Prelude'.Just new'Field}) (P'.wireGet 8)+             42 -> Prelude'.fmap+                    (\ !new'Field -> old'Self{weight_filler = P'.mergeAppend (weight_filler old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             50 -> Prelude'.fmap+                    (\ !new'Field -> old'Self{bias_filler = P'.mergeAppend (bias_filler old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             56 -> Prelude'.fmap (\ !new'Field -> old'Self{pad = Prelude'.Just new'Field}) (P'.wireGet 13)+             64 -> Prelude'.fmap (\ !new'Field -> old'Self{kernelsize = Prelude'.Just new'Field}) (P'.wireGet 13)+             72 -> Prelude'.fmap (\ !new'Field -> old'Self{group = Prelude'.Just new'Field}) (P'.wireGet 13)+             80 -> Prelude'.fmap (\ !new'Field -> old'Self{stride = Prelude'.Just new'Field}) (P'.wireGet 13)+             88 -> Prelude'.fmap (\ !new'Field -> old'Self{pool = Prelude'.Just new'Field}) (P'.wireGet 14)+             101 -> Prelude'.fmap (\ !new'Field -> old'Self{dropout_ratio = Prelude'.Just new'Field}) (P'.wireGet 2)+             104 -> Prelude'.fmap (\ !new'Field -> old'Self{local_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             117 -> Prelude'.fmap (\ !new'Field -> old'Self{alpha = Prelude'.Just new'Field}) (P'.wireGet 2)+             125 -> Prelude'.fmap (\ !new'Field -> old'Self{beta = Prelude'.Just new'Field}) (P'.wireGet 2)+             181 -> Prelude'.fmap (\ !new'Field -> old'Self{k = Prelude'.Just new'Field}) (P'.wireGet 2)+             130 -> Prelude'.fmap (\ !new'Field -> old'Self{source = Prelude'.Just new'Field}) (P'.wireGet 9)+             141 -> Prelude'.fmap (\ !new'Field -> old'Self{scale = Prelude'.Just new'Field}) (P'.wireGet 2)+             146 -> Prelude'.fmap (\ !new'Field -> old'Self{meanfile = Prelude'.Just new'Field}) (P'.wireGet 9)+             152 -> Prelude'.fmap (\ !new'Field -> old'Self{batchsize = Prelude'.Just new'Field}) (P'.wireGet 13)+             160 -> Prelude'.fmap (\ !new'Field -> old'Self{cropsize = Prelude'.Just new'Field}) (P'.wireGet 13)+             168 -> Prelude'.fmap (\ !new'Field -> old'Self{mirror = Prelude'.Just new'Field}) (P'.wireGet 8)+             402 -> Prelude'.fmap (\ !new'Field -> old'Self{blobs = P'.append (blobs old'Self) new'Field}) (P'.wireGet 11)+             413 -> Prelude'.fmap (\ !new'Field -> old'Self{blobs_lr = P'.append (blobs_lr old'Self) new'Field}) (P'.wireGet 2)+             410 -> Prelude'.fmap (\ !new'Field -> old'Self{blobs_lr = P'.mergeAppend (blobs_lr old'Self) new'Field})+                     (P'.wireGetPacked 2)+             421 -> Prelude'.fmap (\ !new'Field -> old'Self{weight_decay = P'.append (weight_decay old'Self) new'Field})+                     (P'.wireGet 2)+             418 -> Prelude'.fmap (\ !new'Field -> old'Self{weight_decay = P'.mergeAppend (weight_decay old'Self) new'Field})+                     (P'.wireGetPacked 2)+             424 -> Prelude'.fmap (\ !new'Field -> old'Self{rand_skip = Prelude'.Just new'Field}) (P'.wireGet 13)+             437 -> Prelude'.fmap (\ !new'Field -> old'Self{det_fg_threshold = Prelude'.Just new'Field}) (P'.wireGet 2)+             445 -> Prelude'.fmap (\ !new'Field -> old'Self{det_bg_threshold = Prelude'.Just new'Field}) (P'.wireGet 2)+             453 -> Prelude'.fmap (\ !new'Field -> old'Self{det_fg_fraction = Prelude'.Just new'Field}) (P'.wireGet 2)+             464 -> Prelude'.fmap (\ !new'Field -> old'Self{det_context_pad = Prelude'.Just new'Field}) (P'.wireGet 13)+             474 -> Prelude'.fmap (\ !new'Field -> old'Self{det_crop_mode = Prelude'.Just new'Field}) (P'.wireGet 9)+             480 -> Prelude'.fmap (\ !new'Field -> old'Self{new_num = Prelude'.Just new'Field}) (P'.wireGet 5)+             488 -> Prelude'.fmap (\ !new'Field -> old'Self{new_channels = Prelude'.Just new'Field}) (P'.wireGet 5)+             496 -> Prelude'.fmap (\ !new'Field -> old'Self{new_height = Prelude'.Just new'Field}) (P'.wireGet 5)+             504 -> Prelude'.fmap (\ !new'Field -> old'Self{new_width = Prelude'.Just new'Field}) (P'.wireGet 5)+             512 -> Prelude'.fmap (\ !new'Field -> old'Self{shuffle_images = Prelude'.Just new'Field}) (P'.wireGet 8)+             520 -> Prelude'.fmap (\ !new'Field -> old'Self{concat_dim = Prelude'.Just new'Field}) (P'.wireGet 13)+             8010 -> Prelude'.fmap+                      (\ !new'Field ->+                        old'Self{hdf5_output_param = P'.mergeAppend (hdf5_output_param old'Self) (Prelude'.Just new'Field)})+                      (P'.wireGet 11)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> V0LayerParameter) V0LayerParameter where+  getVal m' f' = f' m'+ +instance P'.GPB V0LayerParameter+ +instance P'.ReflectDescriptor V0LayerParameter where+  getMessageInfo _+   = P'.GetMessageInfo (P'.fromDistinctAscList [])+      (P'.fromDistinctAscList+        [10, 18, 24, 32, 42, 50, 56, 64, 72, 80, 88, 101, 104, 117, 125, 130, 141, 146, 152, 160, 168, 181, 402, 410, 413, 418, 421,+         424, 437, 445, 453, 464, 474, 480, 488, 496, 504, 512, 520, 8010])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.V0LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"V0LayerParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"V0LayerParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"name\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"type'\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.num_output\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"num_output\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 24}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.biasterm\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"biasterm\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"true\", hsDefault = Just (HsDef'Bool True)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.weight_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"weight_filler\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 42}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.bias_filler\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"bias_filler\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 50}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.FillerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"FillerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.pad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"pad\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 56}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.kernelsize\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"kernelsize\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 64}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.group\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"group\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 72}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.stride\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"stride\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 80}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.pool\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"pool\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 88}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.V0LayerParameter.PoolMethod\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName = MName \"PoolMethod\"}), hsRawDefault = Just \"MAX\", hsDefault = Just (HsDef'Enum \"MAX\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.dropout_ratio\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"dropout_ratio\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 101}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.local_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"local_size\"}, fieldNumber = FieldId {getFieldId = 13}, wireTag = WireTag {getWireTag = 104}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"5\", hsDefault = Just (HsDef'Integer 5)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.alpha\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"alpha\"}, fieldNumber = FieldId {getFieldId = 14}, wireTag = WireTag {getWireTag = 117}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.beta\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"beta\"}, fieldNumber = FieldId {getFieldId = 15}, wireTag = WireTag {getWireTag = 125}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.75\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (3 % 4)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.k\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"k\"}, fieldNumber = FieldId {getFieldId = 22}, wireTag = WireTag {getWireTag = 181}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 16}, wireTag = WireTag {getWireTag = 130}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 17}, wireTag = WireTag {getWireTag = 141}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.meanfile\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"meanfile\"}, fieldNumber = FieldId {getFieldId = 18}, wireTag = WireTag {getWireTag = 146}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.batchsize\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"batchsize\"}, fieldNumber = FieldId {getFieldId = 19}, wireTag = WireTag {getWireTag = 152}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.cropsize\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"cropsize\"}, fieldNumber = FieldId {getFieldId = 20}, wireTag = WireTag {getWireTag = 160}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.mirror\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"mirror\"}, fieldNumber = FieldId {getFieldId = 21}, wireTag = WireTag {getWireTag = 168}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.blobs\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"blobs\"}, fieldNumber = FieldId {getFieldId = 50}, wireTag = WireTag {getWireTag = 402}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.blobs_lr\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"blobs_lr\"}, fieldNumber = FieldId {getFieldId = 51}, wireTag = WireTag {getWireTag = 413}, packedTag = Just (WireTag {getWireTag = 413},WireTag {getWireTag = 410}), wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.weight_decay\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"weight_decay\"}, fieldNumber = FieldId {getFieldId = 52}, wireTag = WireTag {getWireTag = 421}, packedTag = Just (WireTag {getWireTag = 421},WireTag {getWireTag = 418}), wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.rand_skip\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"rand_skip\"}, fieldNumber = FieldId {getFieldId = 53}, wireTag = WireTag {getWireTag = 424}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.det_fg_threshold\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"det_fg_threshold\"}, fieldNumber = FieldId {getFieldId = 54}, wireTag = WireTag {getWireTag = 437}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.det_bg_threshold\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"det_bg_threshold\"}, fieldNumber = FieldId {getFieldId = 55}, wireTag = WireTag {getWireTag = 445}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.det_fg_fraction\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"det_fg_fraction\"}, fieldNumber = FieldId {getFieldId = 56}, wireTag = WireTag {getWireTag = 453}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.25\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 4)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.det_context_pad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"det_context_pad\"}, fieldNumber = FieldId {getFieldId = 58}, wireTag = WireTag {getWireTag = 464}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.det_crop_mode\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"det_crop_mode\"}, fieldNumber = FieldId {getFieldId = 59}, wireTag = WireTag {getWireTag = 474}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"warp\", hsDefault = Just (HsDef'ByteString \"warp\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.new_num\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"new_num\"}, fieldNumber = FieldId {getFieldId = 60}, wireTag = WireTag {getWireTag = 480}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.new_channels\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"new_channels\"}, fieldNumber = FieldId {getFieldId = 61}, wireTag = WireTag {getWireTag = 488}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.new_height\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"new_height\"}, fieldNumber = FieldId {getFieldId = 62}, wireTag = WireTag {getWireTag = 496}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.new_width\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"new_width\"}, fieldNumber = FieldId {getFieldId = 63}, wireTag = WireTag {getWireTag = 504}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 5}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.shuffle_images\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"shuffle_images\"}, fieldNumber = FieldId {getFieldId = 64}, wireTag = WireTag {getWireTag = 512}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.concat_dim\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"concat_dim\"}, fieldNumber = FieldId {getFieldId = 65}, wireTag = WireTag {getWireTag = 520}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"1\", hsDefault = Just (HsDef'Integer 1)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V0LayerParameter.hdf5_output_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V0LayerParameter\"], baseName' = FName \"hdf5_output_param\"}, fieldNumber = FieldId {getFieldId = 1001}, wireTag = WireTag {getWireTag = 8010}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HDF5OutputParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5OutputParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/V0LayerParameter/PoolMethod.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.V0LayerParameter.PoolMethod  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data PoolMethod = MAX+                | AVE+                | STOCHASTIC+                deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''PoolMethod++ +instance P'.Mergeable PoolMethod+ +instance Prelude'.Bounded PoolMethod where+  minBound = MAX+  maxBound = STOCHASTIC+ +instance P'.Default PoolMethod where+  defaultValue = MAX+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe PoolMethod+toMaybe'Enum 0 = Prelude'.Just MAX+toMaybe'Enum 1 = Prelude'.Just AVE+toMaybe'Enum 2 = Prelude'.Just STOCHASTIC+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum PoolMethod where+  fromEnum MAX = 0+  fromEnum AVE = 1+  fromEnum STOCHASTIC = 2+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.V0LayerParameter.PoolMethod") .+      toMaybe'Enum+  succ MAX = AVE+  succ AVE = STOCHASTIC+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.V0LayerParameter.PoolMethod"+  pred AVE = MAX+  pred STOCHASTIC = AVE+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.V0LayerParameter.PoolMethod"+ +instance P'.Wire PoolMethod where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB PoolMethod+ +instance P'.MessageAPI msg' (msg' -> PoolMethod) PoolMethod where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum PoolMethod where+  reflectEnum = [(0, "MAX", MAX), (1, "AVE", AVE), (2, "STOCHASTIC", STOCHASTIC)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.V0LayerParameter.PoolMethod") ["Gen"] ["Caffe", "V0LayerParameter"] "PoolMethod")+      ["Gen", "Caffe", "V0LayerParameter", "PoolMethod.hs"]+      [(0, "MAX"), (1, "AVE"), (2, "STOCHASTIC")]
+ Gen/Caffe/V1LayerParameter.hs view
@@ -0,0 +1,427 @@+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.V1LayerParameter (V1LayerParameter(..)) where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+import qualified Gen.Caffe.AccuracyParameter as Caffe (AccuracyParameter)+import qualified Gen.Caffe.ArgMaxParameter as Caffe (ArgMaxParameter)+import qualified Gen.Caffe.BlobProto as Caffe (BlobProto)+import qualified Gen.Caffe.ConcatParameter as Caffe (ConcatParameter)+import qualified Gen.Caffe.ContrastiveLossParameter as Caffe (ContrastiveLossParameter)+import qualified Gen.Caffe.ConvolutionParameter as Caffe (ConvolutionParameter)+import qualified Gen.Caffe.DataParameter as Caffe (DataParameter)+import qualified Gen.Caffe.DropoutParameter as Caffe (DropoutParameter)+import qualified Gen.Caffe.DummyDataParameter as Caffe (DummyDataParameter)+import qualified Gen.Caffe.EltwiseParameter as Caffe (EltwiseParameter)+import qualified Gen.Caffe.ExpParameter as Caffe (ExpParameter)+import qualified Gen.Caffe.HDF5DataParameter as Caffe (HDF5DataParameter)+import qualified Gen.Caffe.HDF5OutputParameter as Caffe (HDF5OutputParameter)+import qualified Gen.Caffe.HingeLossParameter as Caffe (HingeLossParameter)+import qualified Gen.Caffe.ImageDataParameter as Caffe (ImageDataParameter)+import qualified Gen.Caffe.InfogainLossParameter as Caffe (InfogainLossParameter)+import qualified Gen.Caffe.InnerProductParameter as Caffe (InnerProductParameter)+import qualified Gen.Caffe.LRNParameter as Caffe (LRNParameter)+import qualified Gen.Caffe.LossParameter as Caffe (LossParameter)+import qualified Gen.Caffe.MVNParameter as Caffe (MVNParameter)+import qualified Gen.Caffe.MemoryDataParameter as Caffe (MemoryDataParameter)+import qualified Gen.Caffe.NetStateRule as Caffe (NetStateRule)+import qualified Gen.Caffe.PoolingParameter as Caffe (PoolingParameter)+import qualified Gen.Caffe.PowerParameter as Caffe (PowerParameter)+import qualified Gen.Caffe.ReLUParameter as Caffe (ReLUParameter)+import qualified Gen.Caffe.SigmoidParameter as Caffe (SigmoidParameter)+import qualified Gen.Caffe.SliceParameter as Caffe (SliceParameter)+import qualified Gen.Caffe.SoftmaxParameter as Caffe (SoftmaxParameter)+import qualified Gen.Caffe.TanHParameter as Caffe (TanHParameter)+import qualified Gen.Caffe.ThresholdParameter as Caffe (ThresholdParameter)+import qualified Gen.Caffe.TransformationParameter as Caffe (TransformationParameter)+import qualified Gen.Caffe.V0LayerParameter as Caffe (V0LayerParameter)+import qualified Gen.Caffe.V1LayerParameter.DimCheckMode as Caffe.V1LayerParameter (DimCheckMode)+import qualified Gen.Caffe.V1LayerParameter.LayerType as Caffe.V1LayerParameter (LayerType)+import qualified Gen.Caffe.WindowDataParameter as Caffe (WindowDataParameter)+ +data V1LayerParameter = V1LayerParameter{bottom :: !(P'.Seq P'.Utf8), top :: !(P'.Seq P'.Utf8), name :: !(P'.Maybe P'.Utf8),+                                         include :: !(P'.Seq Caffe.NetStateRule), exclude :: !(P'.Seq Caffe.NetStateRule),+                                         type' :: !(P'.Maybe Caffe.V1LayerParameter.LayerType), blobs :: !(P'.Seq Caffe.BlobProto),+                                         param :: !(P'.Seq P'.Utf8),+                                         blob_share_mode :: !(P'.Seq Caffe.V1LayerParameter.DimCheckMode),+                                         blobs_lr :: !(P'.Seq P'.Float), weight_decay :: !(P'.Seq P'.Float),+                                         loss_weight :: !(P'.Seq P'.Float), accuracy_param :: !(P'.Maybe Caffe.AccuracyParameter),+                                         argmax_param :: !(P'.Maybe Caffe.ArgMaxParameter),+                                         concat_param :: !(P'.Maybe Caffe.ConcatParameter),+                                         contrastive_loss_param :: !(P'.Maybe Caffe.ContrastiveLossParameter),+                                         convolution_param :: !(P'.Maybe Caffe.ConvolutionParameter),+                                         data_param :: !(P'.Maybe Caffe.DataParameter),+                                         dropout_param :: !(P'.Maybe Caffe.DropoutParameter),+                                         dummy_data_param :: !(P'.Maybe Caffe.DummyDataParameter),+                                         eltwise_param :: !(P'.Maybe Caffe.EltwiseParameter),+                                         exp_param :: !(P'.Maybe Caffe.ExpParameter),+                                         hdf5_data_param :: !(P'.Maybe Caffe.HDF5DataParameter),+                                         hdf5_output_param :: !(P'.Maybe Caffe.HDF5OutputParameter),+                                         hinge_loss_param :: !(P'.Maybe Caffe.HingeLossParameter),+                                         image_data_param :: !(P'.Maybe Caffe.ImageDataParameter),+                                         infogain_loss_param :: !(P'.Maybe Caffe.InfogainLossParameter),+                                         inner_product_param :: !(P'.Maybe Caffe.InnerProductParameter),+                                         lrn_param :: !(P'.Maybe Caffe.LRNParameter),+                                         memory_data_param :: !(P'.Maybe Caffe.MemoryDataParameter),+                                         mvn_param :: !(P'.Maybe Caffe.MVNParameter),+                                         pooling_param :: !(P'.Maybe Caffe.PoolingParameter),+                                         power_param :: !(P'.Maybe Caffe.PowerParameter),+                                         relu_param :: !(P'.Maybe Caffe.ReLUParameter),+                                         sigmoid_param :: !(P'.Maybe Caffe.SigmoidParameter),+                                         softmax_param :: !(P'.Maybe Caffe.SoftmaxParameter),+                                         slice_param :: !(P'.Maybe Caffe.SliceParameter),+                                         tanh_param :: !(P'.Maybe Caffe.TanHParameter),+                                         threshold_param :: !(P'.Maybe Caffe.ThresholdParameter),+                                         window_data_param :: !(P'.Maybe Caffe.WindowDataParameter),+                                         transform_param :: !(P'.Maybe Caffe.TransformationParameter),+                                         loss_param :: !(P'.Maybe Caffe.LossParameter), layer :: !(P'.Maybe Caffe.V0LayerParameter)}+                      deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)+ +instance P'.Mergeable V1LayerParameter where+  mergeAppend+   (V1LayerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23 x'24+     x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34 x'35 x'36 x'37 x'38 x'39 x'40 x'41 x'42 x'43)+   (V1LayerParameter y'1 y'2 y'3 y'4 y'5 y'6 y'7 y'8 y'9 y'10 y'11 y'12 y'13 y'14 y'15 y'16 y'17 y'18 y'19 y'20 y'21 y'22 y'23 y'24+     y'25 y'26 y'27 y'28 y'29 y'30 y'31 y'32 y'33 y'34 y'35 y'36 y'37 y'38 y'39 y'40 y'41 y'42 y'43)+   = V1LayerParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+      (P'.mergeAppend x'8 y'8)+      (P'.mergeAppend x'9 y'9)+      (P'.mergeAppend x'10 y'10)+      (P'.mergeAppend x'11 y'11)+      (P'.mergeAppend x'12 y'12)+      (P'.mergeAppend x'13 y'13)+      (P'.mergeAppend x'14 y'14)+      (P'.mergeAppend x'15 y'15)+      (P'.mergeAppend x'16 y'16)+      (P'.mergeAppend x'17 y'17)+      (P'.mergeAppend x'18 y'18)+      (P'.mergeAppend x'19 y'19)+      (P'.mergeAppend x'20 y'20)+      (P'.mergeAppend x'21 y'21)+      (P'.mergeAppend x'22 y'22)+      (P'.mergeAppend x'23 y'23)+      (P'.mergeAppend x'24 y'24)+      (P'.mergeAppend x'25 y'25)+      (P'.mergeAppend x'26 y'26)+      (P'.mergeAppend x'27 y'27)+      (P'.mergeAppend x'28 y'28)+      (P'.mergeAppend x'29 y'29)+      (P'.mergeAppend x'30 y'30)+      (P'.mergeAppend x'31 y'31)+      (P'.mergeAppend x'32 y'32)+      (P'.mergeAppend x'33 y'33)+      (P'.mergeAppend x'34 y'34)+      (P'.mergeAppend x'35 y'35)+      (P'.mergeAppend x'36 y'36)+      (P'.mergeAppend x'37 y'37)+      (P'.mergeAppend x'38 y'38)+      (P'.mergeAppend x'39 y'39)+      (P'.mergeAppend x'40 y'40)+      (P'.mergeAppend x'41 y'41)+      (P'.mergeAppend x'42 y'42)+      (P'.mergeAppend x'43 y'43)+ +instance P'.Default V1LayerParameter where+  defaultValue+   = V1LayerParameter P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+      P'.defaultValue+ +instance P'.Wire V1LayerParameter where+  wireSize ft'+   self'@(V1LayerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23+           x'24 x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34 x'35 x'36 x'37 x'38 x'39 x'40 x'41 x'42 x'43)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeRep 1 9 x'1 + P'.wireSizeRep 1 9 x'2 + P'.wireSizeOpt 1 9 x'3 + P'.wireSizeRep 2 11 x'4 ++             P'.wireSizeRep 2 11 x'5+             + P'.wireSizeOpt 1 14 x'6+             + P'.wireSizeRep 1 11 x'7+             + P'.wireSizeRep 2 9 x'8+             + P'.wireSizeRep 2 14 x'9+             + P'.wireSizeRep 1 2 x'10+             + P'.wireSizeRep 1 2 x'11+             + P'.wireSizeRep 2 2 x'12+             + P'.wireSizeOpt 2 11 x'13+             + P'.wireSizeOpt 2 11 x'14+             + P'.wireSizeOpt 1 11 x'15+             + P'.wireSizeOpt 2 11 x'16+             + P'.wireSizeOpt 1 11 x'17+             + P'.wireSizeOpt 1 11 x'18+             + P'.wireSizeOpt 1 11 x'19+             + P'.wireSizeOpt 2 11 x'20+             + P'.wireSizeOpt 2 11 x'21+             + P'.wireSizeOpt 2 11 x'22+             + P'.wireSizeOpt 1 11 x'23+             + P'.wireSizeOpt 1 11 x'24+             + P'.wireSizeOpt 2 11 x'25+             + P'.wireSizeOpt 1 11 x'26+             + P'.wireSizeOpt 2 11 x'27+             + P'.wireSizeOpt 2 11 x'28+             + P'.wireSizeOpt 2 11 x'29+             + P'.wireSizeOpt 2 11 x'30+             + P'.wireSizeOpt 2 11 x'31+             + P'.wireSizeOpt 2 11 x'32+             + P'.wireSizeOpt 2 11 x'33+             + P'.wireSizeOpt 2 11 x'34+             + P'.wireSizeOpt 2 11 x'35+             + P'.wireSizeOpt 2 11 x'36+             + P'.wireSizeOpt 2 11 x'37+             + P'.wireSizeOpt 2 11 x'38+             + P'.wireSizeOpt 2 11 x'39+             + P'.wireSizeOpt 2 11 x'40+             + P'.wireSizeOpt 2 11 x'41+             + P'.wireSizeOpt 2 11 x'42+             + P'.wireSizeOpt 1 11 x'43)+  wirePut ft'+   self'@(V1LayerParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13 x'14 x'15 x'16 x'17 x'18 x'19 x'20 x'21 x'22 x'23+           x'24 x'25 x'26 x'27 x'28 x'29 x'30 x'31 x'32 x'33 x'34 x'35 x'36 x'37 x'38 x'39 x'40 x'41 x'42 x'43)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 11 x'43+             P'.wirePutRep 18 9 x'1+             P'.wirePutRep 26 9 x'2+             P'.wirePutOpt 34 9 x'3+             P'.wirePutOpt 40 14 x'6+             P'.wirePutRep 50 11 x'7+             P'.wirePutRep 61 2 x'10+             P'.wirePutRep 69 2 x'11+             P'.wirePutOpt 74 11 x'15+             P'.wirePutOpt 82 11 x'17+             P'.wirePutOpt 90 11 x'18+             P'.wirePutOpt 98 11 x'19+             P'.wirePutOpt 106 11 x'23+             P'.wirePutOpt 114 11 x'24+             P'.wirePutOpt 122 11 x'26+             P'.wirePutOpt 130 11 x'27+             P'.wirePutOpt 138 11 x'28+             P'.wirePutOpt 146 11 x'29+             P'.wirePutOpt 154 11 x'32+             P'.wirePutOpt 162 11 x'40+             P'.wirePutOpt 170 11 x'33+             P'.wirePutOpt 178 11 x'30+             P'.wirePutOpt 186 11 x'14+             P'.wirePutOpt 194 11 x'21+             P'.wirePutOpt 202 11 x'39+             P'.wirePutOpt 210 11 x'20+             P'.wirePutOpt 218 11 x'13+             P'.wirePutOpt 234 11 x'25+             P'.wirePutOpt 242 11 x'34+             P'.wirePutOpt 250 11 x'37+             P'.wirePutRep 258 11 x'4+             P'.wirePutRep 266 11 x'5+             P'.wirePutOpt 274 11 x'31+             P'.wirePutRep 285 2 x'12+             P'.wirePutOpt 290 11 x'41+             P'.wirePutOpt 298 11 x'38+             P'.wirePutOpt 306 11 x'35+             P'.wirePutOpt 314 11 x'36+             P'.wirePutOpt 322 11 x'16+             P'.wirePutOpt 330 11 x'22+             P'.wirePutOpt 338 11 x'42+             P'.wirePutRep 8010 9 x'8+             P'.wirePutRep 8016 14 x'9+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             18 -> Prelude'.fmap (\ !new'Field -> old'Self{bottom = P'.append (bottom old'Self) new'Field}) (P'.wireGet 9)+             26 -> Prelude'.fmap (\ !new'Field -> old'Self{top = P'.append (top old'Self) new'Field}) (P'.wireGet 9)+             34 -> Prelude'.fmap (\ !new'Field -> old'Self{name = Prelude'.Just new'Field}) (P'.wireGet 9)+             258 -> Prelude'.fmap (\ !new'Field -> old'Self{include = P'.append (include old'Self) new'Field}) (P'.wireGet 11)+             266 -> Prelude'.fmap (\ !new'Field -> old'Self{exclude = P'.append (exclude old'Self) new'Field}) (P'.wireGet 11)+             40 -> Prelude'.fmap (\ !new'Field -> old'Self{type' = Prelude'.Just new'Field}) (P'.wireGet 14)+             50 -> Prelude'.fmap (\ !new'Field -> old'Self{blobs = P'.append (blobs old'Self) new'Field}) (P'.wireGet 11)+             8010 -> Prelude'.fmap (\ !new'Field -> old'Self{param = P'.append (param old'Self) new'Field}) (P'.wireGet 9)+             8016 -> Prelude'.fmap (\ !new'Field -> old'Self{blob_share_mode = P'.append (blob_share_mode old'Self) new'Field})+                      (P'.wireGet 14)+             8018 -> Prelude'.fmap (\ !new'Field -> old'Self{blob_share_mode = P'.mergeAppend (blob_share_mode old'Self) new'Field})+                      (P'.wireGetPacked 14)+             61 -> Prelude'.fmap (\ !new'Field -> old'Self{blobs_lr = P'.append (blobs_lr old'Self) new'Field}) (P'.wireGet 2)+             58 -> Prelude'.fmap (\ !new'Field -> old'Self{blobs_lr = P'.mergeAppend (blobs_lr old'Self) new'Field})+                    (P'.wireGetPacked 2)+             69 -> Prelude'.fmap (\ !new'Field -> old'Self{weight_decay = P'.append (weight_decay old'Self) new'Field})+                    (P'.wireGet 2)+             66 -> Prelude'.fmap (\ !new'Field -> old'Self{weight_decay = P'.mergeAppend (weight_decay old'Self) new'Field})+                    (P'.wireGetPacked 2)+             285 -> Prelude'.fmap (\ !new'Field -> old'Self{loss_weight = P'.append (loss_weight old'Self) new'Field})+                     (P'.wireGet 2)+             282 -> Prelude'.fmap (\ !new'Field -> old'Self{loss_weight = P'.mergeAppend (loss_weight old'Self) new'Field})+                     (P'.wireGetPacked 2)+             218 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{accuracy_param = P'.mergeAppend (accuracy_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             186 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{argmax_param = P'.mergeAppend (argmax_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             74 -> Prelude'.fmap+                    (\ !new'Field -> old'Self{concat_param = P'.mergeAppend (concat_param old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             322 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{contrastive_loss_param =+                                 P'.mergeAppend (contrastive_loss_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             82 -> Prelude'.fmap+                    (\ !new'Field ->+                      old'Self{convolution_param = P'.mergeAppend (convolution_param old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             90 -> Prelude'.fmap+                    (\ !new'Field -> old'Self{data_param = P'.mergeAppend (data_param old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             98 -> Prelude'.fmap+                    (\ !new'Field -> old'Self{dropout_param = P'.mergeAppend (dropout_param old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             210 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{dummy_data_param = P'.mergeAppend (dummy_data_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             194 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{eltwise_param = P'.mergeAppend (eltwise_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             330 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{exp_param = P'.mergeAppend (exp_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             106 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{hdf5_data_param = P'.mergeAppend (hdf5_data_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             114 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{hdf5_output_param = P'.mergeAppend (hdf5_output_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             234 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{hinge_loss_param = P'.mergeAppend (hinge_loss_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             122 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{image_data_param = P'.mergeAppend (image_data_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             130 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{infogain_loss_param = P'.mergeAppend (infogain_loss_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             138 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{inner_product_param = P'.mergeAppend (inner_product_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             146 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{lrn_param = P'.mergeAppend (lrn_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             178 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{memory_data_param = P'.mergeAppend (memory_data_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             274 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{mvn_param = P'.mergeAppend (mvn_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             154 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{pooling_param = P'.mergeAppend (pooling_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             170 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{power_param = P'.mergeAppend (power_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             242 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{relu_param = P'.mergeAppend (relu_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             306 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{sigmoid_param = P'.mergeAppend (sigmoid_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             314 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{softmax_param = P'.mergeAppend (softmax_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             250 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{slice_param = P'.mergeAppend (slice_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             298 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{tanh_param = P'.mergeAppend (tanh_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             202 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{threshold_param = P'.mergeAppend (threshold_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             162 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{window_data_param = P'.mergeAppend (window_data_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             290 -> Prelude'.fmap+                     (\ !new'Field ->+                       old'Self{transform_param = P'.mergeAppend (transform_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             338 -> Prelude'.fmap+                     (\ !new'Field -> old'Self{loss_param = P'.mergeAppend (loss_param old'Self) (Prelude'.Just new'Field)})+                     (P'.wireGet 11)+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{layer = P'.mergeAppend (layer old'Self) (Prelude'.Just new'Field)})+                    (P'.wireGet 11)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> V1LayerParameter) V1LayerParameter where+  getVal m' f' = f' m'+ +instance P'.GPB V1LayerParameter+ +instance P'.ReflectDescriptor V1LayerParameter where+  getMessageInfo _+   = P'.GetMessageInfo (P'.fromDistinctAscList [])+      (P'.fromDistinctAscList+        [10, 18, 26, 34, 40, 50, 58, 61, 66, 69, 74, 82, 90, 98, 106, 114, 122, 130, 138, 146, 154, 162, 170, 178, 186, 194, 202,+         210, 218, 234, 242, 250, 258, 266, 274, 282, 285, 290, 298, 306, 314, 322, 330, 338, 8010, 8016, 8018])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.V1LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"V1LayerParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"V1LayerParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.bottom\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"bottom\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 18}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.top\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"top\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.name\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"name\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 34}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.include\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"include\"}, fieldNumber = FieldId {getFieldId = 32}, wireTag = WireTag {getWireTag = 258}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetStateRule\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetStateRule\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.exclude\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"exclude\"}, fieldNumber = FieldId {getFieldId = 33}, wireTag = WireTag {getWireTag = 266}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.NetStateRule\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"NetStateRule\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.type\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"type'\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.V1LayerParameter.LayerType\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName = MName \"LayerType\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.blobs\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"blobs\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 50}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.BlobProto\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"BlobProto\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"param\"}, fieldNumber = FieldId {getFieldId = 1001}, wireTag = WireTag {getWireTag = 8010}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.blob_share_mode\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"blob_share_mode\"}, fieldNumber = FieldId {getFieldId = 1002}, wireTag = WireTag {getWireTag = 8016}, packedTag = Just (WireTag {getWireTag = 8016},WireTag {getWireTag = 8018}), wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 14}, typeName = Just (ProtoName {protobufName = FIName \".caffe.V1LayerParameter.DimCheckMode\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName = MName \"DimCheckMode\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.blobs_lr\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"blobs_lr\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 61}, packedTag = Just (WireTag {getWireTag = 61},WireTag {getWireTag = 58}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.weight_decay\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"weight_decay\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 69}, packedTag = Just (WireTag {getWireTag = 69},WireTag {getWireTag = 66}), wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.loss_weight\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"loss_weight\"}, fieldNumber = FieldId {getFieldId = 35}, wireTag = WireTag {getWireTag = 285}, packedTag = Just (WireTag {getWireTag = 285},WireTag {getWireTag = 282}), wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = True, mightPack = True, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.accuracy_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"accuracy_param\"}, fieldNumber = FieldId {getFieldId = 27}, wireTag = WireTag {getWireTag = 218}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.AccuracyParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"AccuracyParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.argmax_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"argmax_param\"}, fieldNumber = FieldId {getFieldId = 23}, wireTag = WireTag {getWireTag = 186}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ArgMaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ArgMaxParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.concat_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"concat_param\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 74}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ConcatParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConcatParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.contrastive_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"contrastive_loss_param\"}, fieldNumber = FieldId {getFieldId = 40}, wireTag = WireTag {getWireTag = 322}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ContrastiveLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ContrastiveLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.convolution_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"convolution_param\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 82}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ConvolutionParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ConvolutionParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"data_param\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 90}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.dropout_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"dropout_param\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 98}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DropoutParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DropoutParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.dummy_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"dummy_data_param\"}, fieldNumber = FieldId {getFieldId = 26}, wireTag = WireTag {getWireTag = 210}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.DummyDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"DummyDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.eltwise_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"eltwise_param\"}, fieldNumber = FieldId {getFieldId = 24}, wireTag = WireTag {getWireTag = 194}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.EltwiseParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"EltwiseParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.exp_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"exp_param\"}, fieldNumber = FieldId {getFieldId = 41}, wireTag = WireTag {getWireTag = 330}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ExpParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ExpParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.hdf5_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"hdf5_data_param\"}, fieldNumber = FieldId {getFieldId = 13}, wireTag = WireTag {getWireTag = 106}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HDF5DataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5DataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.hdf5_output_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"hdf5_output_param\"}, fieldNumber = FieldId {getFieldId = 14}, wireTag = WireTag {getWireTag = 114}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HDF5OutputParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HDF5OutputParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.hinge_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"hinge_loss_param\"}, fieldNumber = FieldId {getFieldId = 29}, wireTag = WireTag {getWireTag = 234}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.HingeLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"HingeLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.image_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"image_data_param\"}, fieldNumber = FieldId {getFieldId = 15}, wireTag = WireTag {getWireTag = 122}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ImageDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ImageDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.infogain_loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"infogain_loss_param\"}, fieldNumber = FieldId {getFieldId = 16}, wireTag = WireTag {getWireTag = 130}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.InfogainLossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InfogainLossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.inner_product_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"inner_product_param\"}, fieldNumber = FieldId {getFieldId = 17}, wireTag = WireTag {getWireTag = 138}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.InnerProductParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"InnerProductParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.lrn_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"lrn_param\"}, fieldNumber = FieldId {getFieldId = 18}, wireTag = WireTag {getWireTag = 146}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LRNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LRNParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.memory_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"memory_data_param\"}, fieldNumber = FieldId {getFieldId = 22}, wireTag = WireTag {getWireTag = 178}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.MemoryDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MemoryDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.mvn_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"mvn_param\"}, fieldNumber = FieldId {getFieldId = 34}, wireTag = WireTag {getWireTag = 274}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.MVNParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"MVNParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.pooling_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"pooling_param\"}, fieldNumber = FieldId {getFieldId = 19}, wireTag = WireTag {getWireTag = 154}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PoolingParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PoolingParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.power_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"power_param\"}, fieldNumber = FieldId {getFieldId = 21}, wireTag = WireTag {getWireTag = 170}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.PowerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"PowerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.relu_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"relu_param\"}, fieldNumber = FieldId {getFieldId = 30}, wireTag = WireTag {getWireTag = 242}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ReLUParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ReLUParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.sigmoid_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"sigmoid_param\"}, fieldNumber = FieldId {getFieldId = 38}, wireTag = WireTag {getWireTag = 306}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SigmoidParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SigmoidParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.softmax_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"softmax_param\"}, fieldNumber = FieldId {getFieldId = 39}, wireTag = WireTag {getWireTag = 314}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SoftmaxParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SoftmaxParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.slice_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"slice_param\"}, fieldNumber = FieldId {getFieldId = 31}, wireTag = WireTag {getWireTag = 250}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.SliceParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"SliceParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.tanh_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"tanh_param\"}, fieldNumber = FieldId {getFieldId = 37}, wireTag = WireTag {getWireTag = 298}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.TanHParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TanHParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.threshold_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"threshold_param\"}, fieldNumber = FieldId {getFieldId = 25}, wireTag = WireTag {getWireTag = 202}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.ThresholdParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"ThresholdParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.window_data_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"window_data_param\"}, fieldNumber = FieldId {getFieldId = 20}, wireTag = WireTag {getWireTag = 162}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.WindowDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"WindowDataParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.transform_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"transform_param\"}, fieldNumber = FieldId {getFieldId = 36}, wireTag = WireTag {getWireTag = 290}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.TransformationParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"TransformationParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.loss_param\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"loss_param\"}, fieldNumber = FieldId {getFieldId = 42}, wireTag = WireTag {getWireTag = 338}, packedTag = Nothing, wireTagLength = 2, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.LossParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"LossParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.V1LayerParameter.layer\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"V1LayerParameter\"], baseName' = FName \"layer\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 11}, typeName = Just (ProtoName {protobufName = FIName \".caffe.V0LayerParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"V0LayerParameter\"}), hsRawDefault = Nothing, hsDefault = Nothing}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
+ Gen/Caffe/V1LayerParameter/DimCheckMode.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.V1LayerParameter.DimCheckMode  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data DimCheckMode = STRICT+                  | PERMISSIVE+                  deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''DimCheckMode++ +instance P'.Mergeable DimCheckMode+ +instance Prelude'.Bounded DimCheckMode where+  minBound = STRICT+  maxBound = PERMISSIVE+ +instance P'.Default DimCheckMode where+  defaultValue = STRICT+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe DimCheckMode+toMaybe'Enum 0 = Prelude'.Just STRICT+toMaybe'Enum 1 = Prelude'.Just PERMISSIVE+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum DimCheckMode where+  fromEnum STRICT = 0+  fromEnum PERMISSIVE = 1+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.V1LayerParameter.DimCheckMode") .+      toMaybe'Enum+  succ STRICT = PERMISSIVE+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.V1LayerParameter.DimCheckMode"+  pred PERMISSIVE = STRICT+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.V1LayerParameter.DimCheckMode"+ +instance P'.Wire DimCheckMode where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB DimCheckMode+ +instance P'.MessageAPI msg' (msg' -> DimCheckMode) DimCheckMode where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum DimCheckMode where+  reflectEnum = [(0, "STRICT", STRICT), (1, "PERMISSIVE", PERMISSIVE)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.V1LayerParameter.DimCheckMode") ["Gen"] ["Caffe", "V1LayerParameter"] "DimCheckMode")+      ["Gen", "Caffe", "V1LayerParameter", "DimCheckMode.hs"]+      [(0, "STRICT"), (1, "PERMISSIVE")]
+ Gen/Caffe/V1LayerParameter/LayerType.hs view
@@ -0,0 +1,269 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.V1LayerParameter.LayerType  where+import Prelude ((+), (/), (.))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data LayerType = NONE+               | ABSVAL+               | ACCURACY+               | ARGMAX+               | BNLL+               | CONCAT+               | CONTRASTIVE_LOSS+               | CONVOLUTION+               | DATA+               | DECONVOLUTION+               | DROPOUT+               | DUMMY_DATA+               | EUCLIDEAN_LOSS+               | ELTWISE+               | EXP+               | FLATTEN+               | HDF5_DATA+               | HDF5_OUTPUT+               | HINGE_LOSS+               | IM2COL+               | IMAGE_DATA+               | INFOGAIN_LOSS+               | INNER_PRODUCT+               | LRN+               | MEMORY_DATA+               | MULTINOMIAL_LOGISTIC_LOSS+               | MVN+               | POOLING+               | POWER+               | RELU+               | SIGMOID+               | SIGMOID_CROSS_ENTROPY_LOSS+               | SILENCE+               | SOFTMAX+               | SOFTMAX_LOSS+               | SPLIT+               | SLICE+               | TANH+               | WINDOW_DATA+               | THRESHOLD+               deriving (Prelude'.Read, Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''LayerType++ +instance P'.Mergeable LayerType+ +instance Prelude'.Bounded LayerType where+  minBound = NONE+  maxBound = THRESHOLD+ +instance P'.Default LayerType where+  defaultValue = NONE+ +toMaybe'Enum :: Prelude'.Int -> P'.Maybe LayerType+toMaybe'Enum 0 = Prelude'.Just NONE+toMaybe'Enum 35 = Prelude'.Just ABSVAL+toMaybe'Enum 1 = Prelude'.Just ACCURACY+toMaybe'Enum 30 = Prelude'.Just ARGMAX+toMaybe'Enum 2 = Prelude'.Just BNLL+toMaybe'Enum 3 = Prelude'.Just CONCAT+toMaybe'Enum 37 = Prelude'.Just CONTRASTIVE_LOSS+toMaybe'Enum 4 = Prelude'.Just CONVOLUTION+toMaybe'Enum 5 = Prelude'.Just DATA+toMaybe'Enum 39 = Prelude'.Just DECONVOLUTION+toMaybe'Enum 6 = Prelude'.Just DROPOUT+toMaybe'Enum 32 = Prelude'.Just DUMMY_DATA+toMaybe'Enum 7 = Prelude'.Just EUCLIDEAN_LOSS+toMaybe'Enum 25 = Prelude'.Just ELTWISE+toMaybe'Enum 38 = Prelude'.Just EXP+toMaybe'Enum 8 = Prelude'.Just FLATTEN+toMaybe'Enum 9 = Prelude'.Just HDF5_DATA+toMaybe'Enum 10 = Prelude'.Just HDF5_OUTPUT+toMaybe'Enum 28 = Prelude'.Just HINGE_LOSS+toMaybe'Enum 11 = Prelude'.Just IM2COL+toMaybe'Enum 12 = Prelude'.Just IMAGE_DATA+toMaybe'Enum 13 = Prelude'.Just INFOGAIN_LOSS+toMaybe'Enum 14 = Prelude'.Just INNER_PRODUCT+toMaybe'Enum 15 = Prelude'.Just LRN+toMaybe'Enum 29 = Prelude'.Just MEMORY_DATA+toMaybe'Enum 16 = Prelude'.Just MULTINOMIAL_LOGISTIC_LOSS+toMaybe'Enum 34 = Prelude'.Just MVN+toMaybe'Enum 17 = Prelude'.Just POOLING+toMaybe'Enum 26 = Prelude'.Just POWER+toMaybe'Enum 18 = Prelude'.Just RELU+toMaybe'Enum 19 = Prelude'.Just SIGMOID+toMaybe'Enum 27 = Prelude'.Just SIGMOID_CROSS_ENTROPY_LOSS+toMaybe'Enum 36 = Prelude'.Just SILENCE+toMaybe'Enum 20 = Prelude'.Just SOFTMAX+toMaybe'Enum 21 = Prelude'.Just SOFTMAX_LOSS+toMaybe'Enum 22 = Prelude'.Just SPLIT+toMaybe'Enum 33 = Prelude'.Just SLICE+toMaybe'Enum 23 = Prelude'.Just TANH+toMaybe'Enum 24 = Prelude'.Just WINDOW_DATA+toMaybe'Enum 31 = Prelude'.Just THRESHOLD+toMaybe'Enum _ = Prelude'.Nothing+ +instance Prelude'.Enum LayerType where+  fromEnum NONE = 0+  fromEnum ABSVAL = 35+  fromEnum ACCURACY = 1+  fromEnum ARGMAX = 30+  fromEnum BNLL = 2+  fromEnum CONCAT = 3+  fromEnum CONTRASTIVE_LOSS = 37+  fromEnum CONVOLUTION = 4+  fromEnum DATA = 5+  fromEnum DECONVOLUTION = 39+  fromEnum DROPOUT = 6+  fromEnum DUMMY_DATA = 32+  fromEnum EUCLIDEAN_LOSS = 7+  fromEnum ELTWISE = 25+  fromEnum EXP = 38+  fromEnum FLATTEN = 8+  fromEnum HDF5_DATA = 9+  fromEnum HDF5_OUTPUT = 10+  fromEnum HINGE_LOSS = 28+  fromEnum IM2COL = 11+  fromEnum IMAGE_DATA = 12+  fromEnum INFOGAIN_LOSS = 13+  fromEnum INNER_PRODUCT = 14+  fromEnum LRN = 15+  fromEnum MEMORY_DATA = 29+  fromEnum MULTINOMIAL_LOGISTIC_LOSS = 16+  fromEnum MVN = 34+  fromEnum POOLING = 17+  fromEnum POWER = 26+  fromEnum RELU = 18+  fromEnum SIGMOID = 19+  fromEnum SIGMOID_CROSS_ENTROPY_LOSS = 27+  fromEnum SILENCE = 36+  fromEnum SOFTMAX = 20+  fromEnum SOFTMAX_LOSS = 21+  fromEnum SPLIT = 22+  fromEnum SLICE = 33+  fromEnum TANH = 23+  fromEnum WINDOW_DATA = 24+  fromEnum THRESHOLD = 31+  toEnum+   = P'.fromMaybe (Prelude'.error "hprotoc generated code: toEnum failure for type Gen.Caffe.V1LayerParameter.LayerType") .+      toMaybe'Enum+  succ NONE = ABSVAL+  succ ABSVAL = ACCURACY+  succ ACCURACY = ARGMAX+  succ ARGMAX = BNLL+  succ BNLL = CONCAT+  succ CONCAT = CONTRASTIVE_LOSS+  succ CONTRASTIVE_LOSS = CONVOLUTION+  succ CONVOLUTION = DATA+  succ DATA = DECONVOLUTION+  succ DECONVOLUTION = DROPOUT+  succ DROPOUT = DUMMY_DATA+  succ DUMMY_DATA = EUCLIDEAN_LOSS+  succ EUCLIDEAN_LOSS = ELTWISE+  succ ELTWISE = EXP+  succ EXP = FLATTEN+  succ FLATTEN = HDF5_DATA+  succ HDF5_DATA = HDF5_OUTPUT+  succ HDF5_OUTPUT = HINGE_LOSS+  succ HINGE_LOSS = IM2COL+  succ IM2COL = IMAGE_DATA+  succ IMAGE_DATA = INFOGAIN_LOSS+  succ INFOGAIN_LOSS = INNER_PRODUCT+  succ INNER_PRODUCT = LRN+  succ LRN = MEMORY_DATA+  succ MEMORY_DATA = MULTINOMIAL_LOGISTIC_LOSS+  succ MULTINOMIAL_LOGISTIC_LOSS = MVN+  succ MVN = POOLING+  succ POOLING = POWER+  succ POWER = RELU+  succ RELU = SIGMOID+  succ SIGMOID = SIGMOID_CROSS_ENTROPY_LOSS+  succ SIGMOID_CROSS_ENTROPY_LOSS = SILENCE+  succ SILENCE = SOFTMAX+  succ SOFTMAX = SOFTMAX_LOSS+  succ SOFTMAX_LOSS = SPLIT+  succ SPLIT = SLICE+  succ SLICE = TANH+  succ TANH = WINDOW_DATA+  succ WINDOW_DATA = THRESHOLD+  succ _ = Prelude'.error "hprotoc generated code: succ failure for type Gen.Caffe.V1LayerParameter.LayerType"+  pred ABSVAL = NONE+  pred ACCURACY = ABSVAL+  pred ARGMAX = ACCURACY+  pred BNLL = ARGMAX+  pred CONCAT = BNLL+  pred CONTRASTIVE_LOSS = CONCAT+  pred CONVOLUTION = CONTRASTIVE_LOSS+  pred DATA = CONVOLUTION+  pred DECONVOLUTION = DATA+  pred DROPOUT = DECONVOLUTION+  pred DUMMY_DATA = DROPOUT+  pred EUCLIDEAN_LOSS = DUMMY_DATA+  pred ELTWISE = EUCLIDEAN_LOSS+  pred EXP = ELTWISE+  pred FLATTEN = EXP+  pred HDF5_DATA = FLATTEN+  pred HDF5_OUTPUT = HDF5_DATA+  pred HINGE_LOSS = HDF5_OUTPUT+  pred IM2COL = HINGE_LOSS+  pred IMAGE_DATA = IM2COL+  pred INFOGAIN_LOSS = IMAGE_DATA+  pred INNER_PRODUCT = INFOGAIN_LOSS+  pred LRN = INNER_PRODUCT+  pred MEMORY_DATA = LRN+  pred MULTINOMIAL_LOGISTIC_LOSS = MEMORY_DATA+  pred MVN = MULTINOMIAL_LOGISTIC_LOSS+  pred POOLING = MVN+  pred POWER = POOLING+  pred RELU = POWER+  pred SIGMOID = RELU+  pred SIGMOID_CROSS_ENTROPY_LOSS = SIGMOID+  pred SILENCE = SIGMOID_CROSS_ENTROPY_LOSS+  pred SOFTMAX = SILENCE+  pred SOFTMAX_LOSS = SOFTMAX+  pred SPLIT = SOFTMAX_LOSS+  pred SLICE = SPLIT+  pred TANH = SLICE+  pred WINDOW_DATA = TANH+  pred THRESHOLD = WINDOW_DATA+  pred _ = Prelude'.error "hprotoc generated code: pred failure for type Gen.Caffe.V1LayerParameter.LayerType"+ +instance P'.Wire LayerType where+  wireSize ft' enum = P'.wireSize ft' (Prelude'.fromEnum enum)+  wirePut ft' enum = P'.wirePut ft' (Prelude'.fromEnum enum)+  wireGet 14 = P'.wireGetEnum toMaybe'Enum+  wireGet ft' = P'.wireGetErr ft'+  wireGetPacked 14 = P'.wireGetPackedEnum toMaybe'Enum+  wireGetPacked ft' = P'.wireGetErr ft'+ +instance P'.GPB LayerType+ +instance P'.MessageAPI msg' (msg' -> LayerType) LayerType where+  getVal m' f' = f' m'+ +instance P'.ReflectEnum LayerType where+  reflectEnum+   = [(0, "NONE", NONE), (35, "ABSVAL", ABSVAL), (1, "ACCURACY", ACCURACY), (30, "ARGMAX", ARGMAX), (2, "BNLL", BNLL),+      (3, "CONCAT", CONCAT), (37, "CONTRASTIVE_LOSS", CONTRASTIVE_LOSS), (4, "CONVOLUTION", CONVOLUTION), (5, "DATA", DATA),+      (39, "DECONVOLUTION", DECONVOLUTION), (6, "DROPOUT", DROPOUT), (32, "DUMMY_DATA", DUMMY_DATA),+      (7, "EUCLIDEAN_LOSS", EUCLIDEAN_LOSS), (25, "ELTWISE", ELTWISE), (38, "EXP", EXP), (8, "FLATTEN", FLATTEN),+      (9, "HDF5_DATA", HDF5_DATA), (10, "HDF5_OUTPUT", HDF5_OUTPUT), (28, "HINGE_LOSS", HINGE_LOSS), (11, "IM2COL", IM2COL),+      (12, "IMAGE_DATA", IMAGE_DATA), (13, "INFOGAIN_LOSS", INFOGAIN_LOSS), (14, "INNER_PRODUCT", INNER_PRODUCT), (15, "LRN", LRN),+      (29, "MEMORY_DATA", MEMORY_DATA), (16, "MULTINOMIAL_LOGISTIC_LOSS", MULTINOMIAL_LOGISTIC_LOSS), (34, "MVN", MVN),+      (17, "POOLING", POOLING), (26, "POWER", POWER), (18, "RELU", RELU), (19, "SIGMOID", SIGMOID),+      (27, "SIGMOID_CROSS_ENTROPY_LOSS", SIGMOID_CROSS_ENTROPY_LOSS), (36, "SILENCE", SILENCE), (20, "SOFTMAX", SOFTMAX),+      (21, "SOFTMAX_LOSS", SOFTMAX_LOSS), (22, "SPLIT", SPLIT), (33, "SLICE", SLICE), (23, "TANH", TANH),+      (24, "WINDOW_DATA", WINDOW_DATA), (31, "THRESHOLD", THRESHOLD)]+  reflectEnumInfo _+   = P'.EnumInfo (P'.makePNF (P'.pack ".caffe.V1LayerParameter.LayerType") ["Gen"] ["Caffe", "V1LayerParameter"] "LayerType")+      ["Gen", "Caffe", "V1LayerParameter", "LayerType.hs"]+      [(0, "NONE"), (35, "ABSVAL"), (1, "ACCURACY"), (30, "ARGMAX"), (2, "BNLL"), (3, "CONCAT"), (37, "CONTRASTIVE_LOSS"),+       (4, "CONVOLUTION"), (5, "DATA"), (39, "DECONVOLUTION"), (6, "DROPOUT"), (32, "DUMMY_DATA"), (7, "EUCLIDEAN_LOSS"),+       (25, "ELTWISE"), (38, "EXP"), (8, "FLATTEN"), (9, "HDF5_DATA"), (10, "HDF5_OUTPUT"), (28, "HINGE_LOSS"), (11, "IM2COL"),+       (12, "IMAGE_DATA"), (13, "INFOGAIN_LOSS"), (14, "INNER_PRODUCT"), (15, "LRN"), (29, "MEMORY_DATA"),+       (16, "MULTINOMIAL_LOGISTIC_LOSS"), (34, "MVN"), (17, "POOLING"), (26, "POWER"), (18, "RELU"), (19, "SIGMOID"),+       (27, "SIGMOID_CROSS_ENTROPY_LOSS"), (36, "SILENCE"), (20, "SOFTMAX"), (21, "SOFTMAX_LOSS"), (22, "SPLIT"), (33, "SLICE"),+       (23, "TANH"), (24, "WINDOW_DATA"), (31, "THRESHOLD")]
+ Gen/Caffe/WindowDataParameter.hs view
@@ -0,0 +1,124 @@+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE BangPatterns, DeriveDataTypeable, FlexibleInstances, MultiParamTypeClasses #-}+module Gen.Caffe.WindowDataParameter  where+import Prelude ((+), (/))+import qualified Prelude as Prelude'+import qualified Data.Typeable as Prelude'+import qualified Data.Data as Prelude'+import qualified Text.ProtocolBuffers.Header as P'+ +import Language.Haskell.TH.Syntax+import Control.Lens+data WindowDataParameter = WindowDataParameter{source :: !(P'.Maybe P'.Utf8), scale :: !(P'.Maybe P'.Float),+                                               mean_file :: !(P'.Maybe P'.Utf8), batch_size :: !(P'.Maybe P'.Word32),+                                               crop_size :: !(P'.Maybe P'.Word32), mirror :: !(P'.Maybe P'.Bool),+                                               fg_threshold :: !(P'.Maybe P'.Float), bg_threshold :: !(P'.Maybe P'.Float),+                                               fg_fraction :: !(P'.Maybe P'.Float), context_pad :: !(P'.Maybe P'.Word32),+                                               crop_mode :: !(P'.Maybe P'.Utf8), cache_images :: !(P'.Maybe P'.Bool),+                                               root_folder :: !(P'.Maybe P'.Utf8)}+                         deriving (Prelude'.Show, Prelude'.Eq, Prelude'.Ord, Prelude'.Typeable, Prelude'.Data)++makeLensesWith (lensRules & lensField .~ \_ _ name -> [TopName (mkName Prelude'.$ "_" Prelude'.++ nameBase name)]) ''WindowDataParameter++ +instance P'.Mergeable WindowDataParameter where+  mergeAppend (WindowDataParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13)+   (WindowDataParameter y'1 y'2 y'3 y'4 y'5 y'6 y'7 y'8 y'9 y'10 y'11 y'12 y'13)+   = WindowDataParameter (P'.mergeAppend x'1 y'1) (P'.mergeAppend x'2 y'2) (P'.mergeAppend x'3 y'3) (P'.mergeAppend x'4 y'4)+      (P'.mergeAppend x'5 y'5)+      (P'.mergeAppend x'6 y'6)+      (P'.mergeAppend x'7 y'7)+      (P'.mergeAppend x'8 y'8)+      (P'.mergeAppend x'9 y'9)+      (P'.mergeAppend x'10 y'10)+      (P'.mergeAppend x'11 y'11)+      (P'.mergeAppend x'12 y'12)+      (P'.mergeAppend x'13 y'13)+ +instance P'.Default WindowDataParameter where+  defaultValue+   = WindowDataParameter P'.defaultValue (Prelude'.Just 1.0) P'.defaultValue P'.defaultValue (Prelude'.Just 0)+      (Prelude'.Just Prelude'.False)+      (Prelude'.Just 0.5)+      (Prelude'.Just 0.5)+      (Prelude'.Just 0.25)+      (Prelude'.Just 0)+      (Prelude'.Just (P'.Utf8 (P'.pack "warp")))+      (Prelude'.Just Prelude'.False)+      (Prelude'.Just (P'.Utf8 (P'.pack "")))+ +instance P'.Wire WindowDataParameter where+  wireSize ft' self'@(WindowDataParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13)+   = case ft' of+       10 -> calc'Size+       11 -> P'.prependMessageSize calc'Size+       _ -> P'.wireSizeErr ft' self'+    where+        calc'Size+         = (P'.wireSizeOpt 1 9 x'1 + P'.wireSizeOpt 1 2 x'2 + P'.wireSizeOpt 1 9 x'3 + P'.wireSizeOpt 1 13 x'4 ++             P'.wireSizeOpt 1 13 x'5+             + P'.wireSizeOpt 1 8 x'6+             + P'.wireSizeOpt 1 2 x'7+             + P'.wireSizeOpt 1 2 x'8+             + P'.wireSizeOpt 1 2 x'9+             + P'.wireSizeOpt 1 13 x'10+             + P'.wireSizeOpt 1 9 x'11+             + P'.wireSizeOpt 1 8 x'12+             + P'.wireSizeOpt 1 9 x'13)+  wirePut ft' self'@(WindowDataParameter x'1 x'2 x'3 x'4 x'5 x'6 x'7 x'8 x'9 x'10 x'11 x'12 x'13)+   = case ft' of+       10 -> put'Fields+       11 -> do+               P'.putSize (P'.wireSize 10 self')+               put'Fields+       _ -> P'.wirePutErr ft' self'+    where+        put'Fields+         = do+             P'.wirePutOpt 10 9 x'1+             P'.wirePutOpt 21 2 x'2+             P'.wirePutOpt 26 9 x'3+             P'.wirePutOpt 32 13 x'4+             P'.wirePutOpt 40 13 x'5+             P'.wirePutOpt 48 8 x'6+             P'.wirePutOpt 61 2 x'7+             P'.wirePutOpt 69 2 x'8+             P'.wirePutOpt 77 2 x'9+             P'.wirePutOpt 80 13 x'10+             P'.wirePutOpt 90 9 x'11+             P'.wirePutOpt 96 8 x'12+             P'.wirePutOpt 106 9 x'13+  wireGet ft'+   = case ft' of+       10 -> P'.getBareMessageWith update'Self+       11 -> P'.getMessageWith update'Self+       _ -> P'.wireGetErr ft'+    where+        update'Self wire'Tag old'Self+         = case wire'Tag of+             10 -> Prelude'.fmap (\ !new'Field -> old'Self{source = Prelude'.Just new'Field}) (P'.wireGet 9)+             21 -> Prelude'.fmap (\ !new'Field -> old'Self{scale = Prelude'.Just new'Field}) (P'.wireGet 2)+             26 -> Prelude'.fmap (\ !new'Field -> old'Self{mean_file = Prelude'.Just new'Field}) (P'.wireGet 9)+             32 -> Prelude'.fmap (\ !new'Field -> old'Self{batch_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             40 -> Prelude'.fmap (\ !new'Field -> old'Self{crop_size = Prelude'.Just new'Field}) (P'.wireGet 13)+             48 -> Prelude'.fmap (\ !new'Field -> old'Self{mirror = Prelude'.Just new'Field}) (P'.wireGet 8)+             61 -> Prelude'.fmap (\ !new'Field -> old'Self{fg_threshold = Prelude'.Just new'Field}) (P'.wireGet 2)+             69 -> Prelude'.fmap (\ !new'Field -> old'Self{bg_threshold = Prelude'.Just new'Field}) (P'.wireGet 2)+             77 -> Prelude'.fmap (\ !new'Field -> old'Self{fg_fraction = Prelude'.Just new'Field}) (P'.wireGet 2)+             80 -> Prelude'.fmap (\ !new'Field -> old'Self{context_pad = Prelude'.Just new'Field}) (P'.wireGet 13)+             90 -> Prelude'.fmap (\ !new'Field -> old'Self{crop_mode = Prelude'.Just new'Field}) (P'.wireGet 9)+             96 -> Prelude'.fmap (\ !new'Field -> old'Self{cache_images = Prelude'.Just new'Field}) (P'.wireGet 8)+             106 -> Prelude'.fmap (\ !new'Field -> old'Self{root_folder = Prelude'.Just new'Field}) (P'.wireGet 9)+             _ -> let (field'Number, wire'Type) = P'.splitWireTag wire'Tag in P'.unknown field'Number wire'Type old'Self+ +instance P'.MessageAPI msg' (msg' -> WindowDataParameter) WindowDataParameter where+  getVal m' f' = f' m'+ +instance P'.GPB WindowDataParameter+ +instance P'.ReflectDescriptor WindowDataParameter where+  getMessageInfo _+   = P'.GetMessageInfo (P'.fromDistinctAscList []) (P'.fromDistinctAscList [10, 21, 26, 32, 40, 48, 61, 69, 77, 80, 90, 96, 106])+  reflectDescriptorInfo _+   = Prelude'.read+      "DescriptorInfo {descName = ProtoName {protobufName = FIName \".caffe.WindowDataParameter\", haskellPrefix = [MName \"Gen\"], parentModule = [MName \"Caffe\"], baseName = MName \"WindowDataParameter\"}, descFilePath = [\"Gen\",\"Caffe\",\"WindowDataParameter.hs\"], isGroup = False, fields = fromList [FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.source\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"source\"}, fieldNumber = FieldId {getFieldId = 1}, wireTag = WireTag {getWireTag = 10}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.scale\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"scale\"}, fieldNumber = FieldId {getFieldId = 2}, wireTag = WireTag {getWireTag = 21}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"1.0\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 1)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.mean_file\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"mean_file\"}, fieldNumber = FieldId {getFieldId = 3}, wireTag = WireTag {getWireTag = 26}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.batch_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"batch_size\"}, fieldNumber = FieldId {getFieldId = 4}, wireTag = WireTag {getWireTag = 32}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Nothing, hsDefault = Nothing},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.crop_size\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"crop_size\"}, fieldNumber = FieldId {getFieldId = 5}, wireTag = WireTag {getWireTag = 40}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.mirror\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"mirror\"}, fieldNumber = FieldId {getFieldId = 6}, wireTag = WireTag {getWireTag = 48}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.fg_threshold\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"fg_threshold\"}, fieldNumber = FieldId {getFieldId = 7}, wireTag = WireTag {getWireTag = 61}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.bg_threshold\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"bg_threshold\"}, fieldNumber = FieldId {getFieldId = 8}, wireTag = WireTag {getWireTag = 69}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.5\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 2)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.fg_fraction\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"fg_fraction\"}, fieldNumber = FieldId {getFieldId = 9}, wireTag = WireTag {getWireTag = 77}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 2}, typeName = Nothing, hsRawDefault = Just \"0.25\", hsDefault = Just (HsDef'RealFloat (SRF'Rational (1 % 4)))},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.context_pad\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"context_pad\"}, fieldNumber = FieldId {getFieldId = 10}, wireTag = WireTag {getWireTag = 80}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 13}, typeName = Nothing, hsRawDefault = Just \"0\", hsDefault = Just (HsDef'Integer 0)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.crop_mode\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"crop_mode\"}, fieldNumber = FieldId {getFieldId = 11}, wireTag = WireTag {getWireTag = 90}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"warp\", hsDefault = Just (HsDef'ByteString \"warp\")},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.cache_images\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"cache_images\"}, fieldNumber = FieldId {getFieldId = 12}, wireTag = WireTag {getWireTag = 96}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 8}, typeName = Nothing, hsRawDefault = Just \"false\", hsDefault = Just (HsDef'Bool False)},FieldInfo {fieldName = ProtoFName {protobufName' = FIName \".caffe.WindowDataParameter.root_folder\", haskellPrefix' = [MName \"Gen\"], parentModule' = [MName \"Caffe\",MName \"WindowDataParameter\"], baseName' = FName \"root_folder\"}, fieldNumber = FieldId {getFieldId = 13}, wireTag = WireTag {getWireTag = 106}, packedTag = Nothing, wireTagLength = 1, isPacked = False, isRequired = False, canRepeat = False, mightPack = False, typeCode = FieldType {getFieldType = 9}, typeName = Nothing, hsRawDefault = Just \"\", hsDefault = Just (HsDef'ByteString \"\")}], keys = fromList [], extRanges = [], knownKeys = fromList [], storeUnknown = False, lazyFields = False}"
NN.hs view
@@ -1,11 +1,7 @@-module NN(module NN.DSL,-          module NN.CLI,-          module NN.Graph,-          module NN.Passes,-          module NN.Visualize) where+module NN(module X) where -import           NN.CLI-import           NN.DSL-import           NN.Graph-import           NN.Passes-import           NN.Visualize+import           NN.CLI       as X+import           NN.DSL       as X+import           NN.Graph     as X+import           NN.Passes    as X+import           NN.Visualize as X
NN/Backend/Caffe.hs view
@@ -1,11 +1,21 @@-module NN.Backend.Caffe where+module NN.Backend.Caffe(caffePasses, middleEnd, backend, addConnection, addLabels, optimizeInPlaceLayer) where  import           Gen.Caffe.NetParameter     as NP -import           Control.Lens import           Data.Graph.Inductive.Query+import           Gen.Caffe.LayerParameter   as LP++import           Control.Lens+import           Data.Char+import qualified Data.Foldable              as F+import           Data.Graph.Inductive.Graph hiding ((&))+import qualified Data.Graph.Inductive.Graph as G+import           Data.Maybe import qualified Data.Sequence              as S +import           Text.Printf+import           Text.ProtocolBuffers       as P+ import           NN.DSL import           NN.Passes @@ -15,5 +25,64 @@ middleEnd :: Net -> Net middleEnd = optimizeWith caffePasses ++layerName :: LayerParameter -> Int -> Utf8+layerName l i = printf "%s_%d" (type' l & fromJust & toString & map toLower) i & s+ backend :: Net -> NetParameter backend gr = def & _layer <>~ S.fromList (topsort' gr)++addLabels :: Pass+addLabels (_, _, lp) = update (layerTy lp)+    where+      update Data = lp & LP._top <>~ S.singleton (s "label")+      update SoftmaxWithLoss = lp & LP._bottom <>~ S.singleton (s "label")+      update Accuracy = lp & LP._bottom <>~ S.singleton (s "label")+      update _ = lp++-- |If our layerTy is the given layer that is performed in-place, then+-- update `top` to point to `bottom`.+-- If any of our parents are performed in-place, update `bottom` to+-- point to our parents `top`+optimizeInPlaceLayer :: LayerTy -> [Pass]+optimizeInPlaceLayer layerTy' = [updateIfInPlace, updateIfParentInPlace] where+    inPlace lp = layerTy lp == layerTy'+    inPlaceParents gr i = filter inPlace . map fst $ pres gr i++    updateIfInPlace (_, i, lp) =+        case (layerTy lp == layerTy', F.toList (top lp)) of+          (True, [_]) -> lp & LP._top .~ bottom lp+          (True, _) -> error $ printf "Can only have one output for an in-place layer" ++ show (layerName lp i)+          (False, _) -> lp++    updateIfParentInPlace :: Pass+    updateIfParentInPlace (gr, i, lp) =+        case updateFromParents (gr, i, lp) of+          Left e -> error e+          Right lp' -> lp'++    updateFromParents :: (Net, Node, LayerParameter) -> Either String LayerParameter+    updateFromParents (gr, i, lp) =+       case (inPlaceParents gr i, F.toList (bottom lp)) of+         ([], _) -> Right lp+         (parents, bottoms) ->+             -- TODO this is super dodgy and incorrect in the general+             -- case (there are some weird invariants we rely on), but it works for now.+             if length parents /= length bottoms+             then Left $ printf "Must have all parents in-place for in-place optimizations" ++ show (layerName lp i)+             else let parentTops = F.concatMap (F.toList . LP.top) parents in+                  if length parentTops == length ((F.toList . LP.bottom) lp)+                  then Right $ lp & LP._bottom .~ S.fromList parentTops+                  else Left $ error "asdf"++labelled :: Net -> [Node] -> [(LayerParameter, Node)]+labelled gr = map (\ j -> (lab' (context gr j), j))++pres :: Net -> Node -> [(LayerParameter, Node)]+pres gr j = labelled gr (G.pre gr j)++addConnection :: Pass+addConnection (gr, i, lp) = lp+                            & LP._name ?~ layerName lp i+                            & LP._bottom .~ S.fromList (map (uncurry layerName) (pres gr i))+                            & LP._top <>~ S.singleton (layerName lp i)
NN/Backend/Torch.hs view
@@ -1,9 +1,10 @@ module NN.Backend.Torch(NN.Backend.Torch.backend) where +import           Control.Applicative+ import           NN.Backend.Torch.Codegen import           NN.Backend.Torch.Torch- import           NN.DSL  backend :: Net -> Maybe String-backend  = fmap (codegen . lower) . linearize . clean+backend  = (codegen . lower <$>) . linearize . clean
NN/CLI.hs view
@@ -1,4 +1,4 @@-module NN.CLI where+module NN.CLI(cli) where  import           Control.Applicative import           Control.Lens          hiding ((<.>))@@ -32,13 +32,6 @@  data Command = Caffe String String | Torch String | PDF String -filename = strOption (long "output" <> help "Write output to FILE" <> metavar "FILE")-binaryToText = strOption (long "binary_to_text"-                          <> help "Path to binary_to_text.py BINARY"-                          <> showDefault-                          <> metavar "BINARY"-                          <> value "./binary_to_text.py")- opts :: Parser Command opts = subparser (caffe <> torch <> pdf')        where@@ -46,6 +39,12 @@          caffe = nc "caffe" (Caffe <$> filename <*> binaryToText) "Generate a Caffe .prototxt to run with `caffe train --model=<>"          torch = nc "torch" (Torch <$> filename) "Generate Lua code to be `require`'d into an existing Torch script"          pdf' = nc "pdf" (PDF <$> filename) "Generate a PDF visualizing the model's connectivity"+         filename = strOption (long "output" <> help "Write output to FILE" <> metavar "FILE")+         binaryToText = strOption (long "binary_to_text"+                                   <> help "Path to binary_to_text.py BINARY"+                                   <> showDefault+                                   <> metavar "BINARY"+                                   <> value "./binary_to_text.py")  run :: NetBuilder -> Command -> IO () run net (Caffe prototxtPath binaryToTextPath) = caffePrototxt net prototxtPath binaryToTextPath
NN/DSL.hs view
@@ -1,10 +1,10 @@ {-# LANGUAGE OverloadedStrings #-}-module NN.DSL(module NN.DSL, P.Phase(..), DP.DB(..), LP.LayerParameter) where+{-# OPTIONS_GHC -fno-warn-missing-signatures #-}+module NN.DSL(module NN.DSL) where  import           Gen.Caffe.AccuracyParameter           as AP import           Gen.Caffe.ConvolutionParameter        as CP import           Gen.Caffe.DataParameter               as DP-import           Gen.Caffe.DataParameter.DB            as DP import           Gen.Caffe.DropoutParameter            as DP import           Gen.Caffe.FillerParameter             as FP import           Gen.Caffe.InnerProductParameter       as IP
NN/Examples/AlexNet.hs view
@@ -1,4 +1,5 @@-module NN.Examples.AlexNet where+{-# OPTIONS_GHC -fno-warn-missing-signatures #-}+module NN.Examples.AlexNet(alexNetSmall, alexNet, main) where  import           Control.Lens import           Control.Monad@@ -24,11 +25,13 @@ conv4 = alexConv & numOutputC' 384 & padC' 1 & kernelSizeC' 3 & groupC' 2 & biasFillerC' (constant 0.1) conv5 = alexConv & numOutputC' 256 & padC' 1 & kernelSizeC' 3 & groupC' 2 & biasFillerC' (constant 0.1) +alexNetSmall :: NetBuilder alexNetSmall = do   (input', representation) <- sequential [conv1, relu, alexPool & strideP' 3]   forM_ [alexTrain, alexTest] $ attach (To input')   forM_ [accuracy 1, accuracy 5, softmax] $ attach (From representation) +alexNet :: NetBuilder alexNet = do   -- Set up the model   (input', representation) <-@@ -47,4 +50,5 @@   forM_ [alexTrain, alexTest] $ attach (To input')   forM_ [accuracy 1, accuracy 5, softmax] $ attach (From representation) +main :: IO () main = cli alexNet
NN/Examples/Demo.hs view
@@ -1,5 +1,5 @@ {-# LANGUAGE OverloadedStrings #-}-module NN.Examples.Demo where+module NN.Examples.Demo(NN.Examples.Demo.main) where  import           Gen.Caffe.LayerParameter as LP import           Gen.Caffe.NetParameter   as NP@@ -35,9 +35,9 @@   _ <- system $ printf "open %s &" f   return () -visualizeGoogLeNetDensity :: IO ()-visualizeGoogLeNetDensity = do-  (file, handle) <- openTempFile "/tmp" "graph.pdf"+visualizeGoogLeNetScaled :: IO ()+visualizeGoogLeNetScaled = do+  (file, handle) <- openTempFile "/tmp" "graphScaled.pdf"   hClose handle   f <- parse googLeNet & visualizeWith (scaled downscaleReLU) & pdf file   _ <- system $ printf "open %s &" f@@ -47,3 +47,10 @@             where               go ReLU = 1               go _ = 2++main :: IO ()+main = do+  torch+  caffe+  visualizeGoogLeNet+  visualizeGoogLeNetScaled
NN/Examples/GoogLeNet.hs view
@@ -1,5 +1,6 @@ {-# LANGUAGE RecordWildCards #-}-module NN.Examples.GoogLeNet where+{-# OPTIONS_GHC -fno-warn-missing-signatures #-}+module NN.Examples.GoogLeNet(googLeNet, main) where  import           Gen.Caffe.FillerParameter       as FP import           Gen.Caffe.InnerProductParameter as IP@@ -62,6 +63,7 @@ -- What to do at each step in the inner column? data ColumnStep = I Inception | Classifier | MaxPool +googLeNet :: NetBuilder googLeNet = do   (input, initial) <- sequential [conv1, relu, googlePool, googleLRN, conv2, relu, googleLRN, googlePool] 
NN/Examples/ImageNet.hs view
@@ -1,8 +1,8 @@ module NN.Examples.ImageNet(test, train) where -import           Gen.Caffe.DataParameter.DB as DP- import           Control.Lens+import           Gen.Caffe.DataParameter.DB as DP+import           Gen.Caffe.Phase            as P  import           NN.DSL 
NN/Passes.hs view
@@ -1,86 +1,21 @@-module NN.Passes(module NN.Passes) where+module NN.Passes(parse, optimizeWith, Pass)  where +import           Gen.Caffe.LayerParameter   as LP import           NN.DSL import           NN.Graph -import           Gen.Caffe.LayerParameter   as LP--import           Control.Lens import           Control.Monad.State.Strict-import           Data.Char-import qualified Data.Foldable              as F-import           Data.Graph.Inductive.Graph hiding ((&)) import qualified Data.Graph.Inductive.Graph as G-import           Data.Maybe-import qualified Data.Sequence              as S -import           Text.Printf-import           Text.ProtocolBuffers       as P- type Pass = (Net, Node, LayerParameter) -> LayerParameter -layerName :: LayerParameter -> Int -> Utf8-layerName l i = printf "%s_%d" (type' l & fromJust & toString & map toLower) i & s- runPass :: Net -> Pass -> Net-runPass gr pass = gmap run gr+runPass gr pass = G.gmap run gr     where       run (_pre, i, lp, _suc) = (_pre, i, pass (gr, i, lp), _suc) -addLabels :: Pass-addLabels (_, _, lp) = update (layerTy lp)-    where-      update Data = lp & LP._top <>~ S.singleton (s "label")-      update SoftmaxWithLoss = lp & LP._bottom <>~ S.singleton (s "label")-      update Accuracy = lp & LP._bottom <>~ S.singleton (s "label")-      update _ = lp---- |If our layerTy is the given layer that is performed in-place, then--- update `top` to point to `bottom`.--- If any of our parents are performed in-place, update `bottom` to--- point to our parents `top`-optimizeInPlaceLayer :: LayerTy -> [Pass]-optimizeInPlaceLayer layerTy' = [updateIfInPlace, updateIfParentInPlace] where-    inPlace lp = layerTy lp == layerTy'-    inPlaceParents gr i = filter inPlace . map fst $ pres gr i--    updateIfInPlace (_, i, lp) =-        case (layerTy lp == layerTy', F.toList (top lp)) of-          (True, [_]) -> lp & LP._top .~ bottom lp-          (True, _) -> error $ printf "Can only have one output for an in-place layer" ++ show (layerName lp i)-          (False, _) -> lp--    updateIfParentInPlace :: Pass-    updateIfParentInPlace (gr, i, lp) =-        case updateFromParents (gr, i, lp) of-          Left e -> error e-          Right lp' -> lp'--    updateFromParents :: (Net, Node, LayerParameter) -> Either String LayerParameter-    updateFromParents (gr, i, lp) =-       case (inPlaceParents gr i, F.toList (bottom lp)) of-         ([], _) -> Right lp-         (parents, bottoms) ->-             -- TODO this is super dodgy and incorrect in the general-             -- case (there are some weird invariants we rely on), but it works for now.-             if length parents /= length bottoms-             then Left $ printf "Must have all parents in-place for in-place optimizations" ++ show (layerName lp i)-             else let parentTops = F.concatMap (F.toList . LP.top) parents in-                  if length parentTops == length ((F.toList . LP.bottom) lp)-                  then Right $ lp & LP._bottom .~ S.fromList parentTops-                  else Left $ error "asdf"--labelled gr = map (\ j -> (lab' (context gr j), j))-pres gr j = labelled gr (G.pre gr j)--addConnection :: Pass-addConnection (gr, i, lp) = lp-                            & LP._name ?~ layerName lp i-                            & LP._bottom .~ S.fromList (map (uncurry layerName) (pres gr i))-                            & LP._top <>~ S.singleton (layerName lp i)- optimizeWith :: [Pass] -> Net -> Net optimizeWith passes gr = foldl runPass gr passes  parse :: G a b -> Gr a ()-parse g = snd (execState g (1, empty))+parse g = snd (execState g (1, G.empty))
NN/Visualize.hs view
@@ -1,16 +1,18 @@ {-# LANGUAGE OverloadedStrings #-}-module NN.Visualize where+module NN.Visualize(visualize, visualizeWith, png, pdf, scaled) where  import           Data.GraphViz import           Data.GraphViz.Attributes.Colors.Brewer import           Data.GraphViz.Attributes.Complete import qualified Data.Text.Lazy                         as L+import           Gen.Caffe.LayerParameter               as LP  import           Data.Graph.Inductive.Graph import           NN.DSL  type NetVizParams = GraphvizParams Node LayerParameter () () LayerParameter +defaultNNParams :: NetVizParams defaultNNParams =     nonClusteredParams {   -- Let's visualize neural networks from the bottom up
caffegraph.cabal view
@@ -1,6 +1,6 @@ name:                caffegraph-version:             0.1.0.0-synopsis:            A compiler for building, optimizing, visualizing, and generating (Caffe/Torch) DNNs+version:             0.1.0.1+description:         A compiler for building, optimizing, visualizing, and generating (Caffe/Torch) DNNs license:             BSD3 license-file:        LICENSE author:              Andrew Tulloch@@ -15,10 +15,83 @@   location: https://github.com/ajtulloch/caffegraph/  Library-  GHC-Options: -Wall -fno-warn-missing-signatures+  GHC-Options: -Wall   Hs-Source-Dirs: .-  exposed-modules: NN, NN.CLI, NN.DSL, NN.Graph, NN.Passes, NN.Visualize, NN.Backend.Caffe, NN.Backend.Torch-                   NN.Examples.ImageNet, NN.Examples.AlexNet, NN.Examples.GoogLeNet, NN.Examples.Demo+  exposed-modules: NN, +                   NN.CLI, +                   NN.DSL, +                   NN.Graph, +                   NN.Passes, +                   NN.Visualize, +                   NN.Backend.Caffe, +                   NN.Backend.Torch+                   NN.Examples.ImageNet, +                   NN.Examples.AlexNet, +                   NN.Examples.GoogLeNet, +                   NN.Examples.Demo,+                   Gen.Caffe.AccuracyParameter,+                   Gen.Caffe.ArgMaxParameter,+                   Gen.Caffe.BlobProto,+                   Gen.Caffe.BlobProtoVector,+                   Gen.Caffe.ConcatParameter,+                   Gen.Caffe.ContrastiveLossParameter,+                   Gen.Caffe.ConvolutionParameter.Engine,+                   Gen.Caffe.ConvolutionParameter,+                   Gen.Caffe.DataParameter.DB,+                   Gen.Caffe.DataParameter,+                   Gen.Caffe.Datum,+                   Gen.Caffe.DropoutParameter,+                   Gen.Caffe.DummyDataParameter,+                   Gen.Caffe.EltwiseParameter.EltwiseOp,+                   Gen.Caffe.EltwiseParameter,+                   Gen.Caffe.ExpParameter,+                   Gen.Caffe.FillerParameter,+                   Gen.Caffe.HDF5DataParameter,+                   Gen.Caffe.HDF5OutputParameter,+                   Gen.Caffe.HingeLossParameter.Norm,+                   Gen.Caffe.HingeLossParameter,+                   Gen.Caffe.ImageDataParameter,+                   Gen.Caffe.InfogainLossParameter,+                   Gen.Caffe.InnerProductParameter,+                   Gen.Caffe.LayerParameter,+                   Gen.Caffe.LossParameter,+                   Gen.Caffe.LRNParameter.NormRegion,+                   Gen.Caffe.LRNParameter,+                   Gen.Caffe.MemoryDataParameter,+                   Gen.Caffe.MVNParameter,+                   Gen.Caffe.NetParameter,+                   Gen.Caffe.NetState,+                   Gen.Caffe.NetStateRule,+                   Gen.Caffe.ParamSpec.DimCheckMode,+                   Gen.Caffe.ParamSpec,+                   Gen.Caffe.Phase,+                   Gen.Caffe.PoolingParameter.Engine,+                   Gen.Caffe.PoolingParameter.PoolMethod,+                   Gen.Caffe.PoolingParameter,+                   Gen.Caffe.PowerParameter,+                   Gen.Caffe.ReLUParameter.Engine,+                   Gen.Caffe.ReLUParameter,+                   Gen.Caffe.SigmoidParameter.Engine,+                   Gen.Caffe.SigmoidParameter,+                   Gen.Caffe.SliceParameter,+                   Gen.Caffe.SoftmaxParameter.Engine,+                   Gen.Caffe.SoftmaxParameter,+                   Gen.Caffe.SolverParameter.SolverMode,+                   Gen.Caffe.SolverParameter.SolverType,+                   Gen.Caffe.SolverParameter,+                   Gen.Caffe.SolverState,+                   Gen.Caffe.TanHParameter.Engine,+                   Gen.Caffe.TanHParameter,+                   Gen.Caffe.ThresholdParameter,+                   Gen.Caffe.TransformationParameter,+                   Gen.Caffe.V0LayerParameter.PoolMethod,+                   Gen.Caffe.V0LayerParameter,+                   Gen.Caffe.V1LayerParameter.DimCheckMode,+                   Gen.Caffe.V1LayerParameter.LayerType,+                   Gen.Caffe.V1LayerParameter,+                   Gen.Caffe.WindowDataParameter,+                   Gen.Caffe+   build-depends:       base >=4.7 && <4.8                      , bytestring                      , containers