1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/devtools/containeranalysis/v1beta1/image/image.proto 3 4package image 5 6import ( 7 fmt "fmt" 8 math "math" 9 10 proto "github.com/golang/protobuf/proto" 11) 12 13// Reference imports to suppress errors if they are not otherwise used. 14var _ = proto.Marshal 15var _ = fmt.Errorf 16var _ = math.Inf 17 18// This is a compile-time assertion to ensure that this generated file 19// is compatible with the proto package it is being compiled against. 20// A compilation error at this line likely means your copy of the 21// proto package needs to be updated. 22const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 23 24// Instructions from Dockerfile. 25type Layer_Directive int32 26 27const ( 28 // Default value for unsupported/missing directive. 29 Layer_DIRECTIVE_UNSPECIFIED Layer_Directive = 0 30 // https://docs.docker.com/reference/builder/#maintainer 31 Layer_MAINTAINER Layer_Directive = 1 32 // https://docs.docker.com/reference/builder/#run 33 Layer_RUN Layer_Directive = 2 34 // https://docs.docker.com/reference/builder/#cmd 35 Layer_CMD Layer_Directive = 3 36 // https://docs.docker.com/reference/builder/#label 37 Layer_LABEL Layer_Directive = 4 38 // https://docs.docker.com/reference/builder/#expose 39 Layer_EXPOSE Layer_Directive = 5 40 // https://docs.docker.com/reference/builder/#env 41 Layer_ENV Layer_Directive = 6 42 // https://docs.docker.com/reference/builder/#add 43 Layer_ADD Layer_Directive = 7 44 // https://docs.docker.com/reference/builder/#copy 45 Layer_COPY Layer_Directive = 8 46 // https://docs.docker.com/reference/builder/#entrypoint 47 Layer_ENTRYPOINT Layer_Directive = 9 48 // https://docs.docker.com/reference/builder/#volume 49 Layer_VOLUME Layer_Directive = 10 50 // https://docs.docker.com/reference/builder/#user 51 Layer_USER Layer_Directive = 11 52 // https://docs.docker.com/reference/builder/#workdir 53 Layer_WORKDIR Layer_Directive = 12 54 // https://docs.docker.com/reference/builder/#arg 55 Layer_ARG Layer_Directive = 13 56 // https://docs.docker.com/reference/builder/#onbuild 57 Layer_ONBUILD Layer_Directive = 14 58 // https://docs.docker.com/reference/builder/#stopsignal 59 Layer_STOPSIGNAL Layer_Directive = 15 60 // https://docs.docker.com/reference/builder/#healthcheck 61 Layer_HEALTHCHECK Layer_Directive = 16 62 // https://docs.docker.com/reference/builder/#shell 63 Layer_SHELL Layer_Directive = 17 64) 65 66var Layer_Directive_name = map[int32]string{ 67 0: "DIRECTIVE_UNSPECIFIED", 68 1: "MAINTAINER", 69 2: "RUN", 70 3: "CMD", 71 4: "LABEL", 72 5: "EXPOSE", 73 6: "ENV", 74 7: "ADD", 75 8: "COPY", 76 9: "ENTRYPOINT", 77 10: "VOLUME", 78 11: "USER", 79 12: "WORKDIR", 80 13: "ARG", 81 14: "ONBUILD", 82 15: "STOPSIGNAL", 83 16: "HEALTHCHECK", 84 17: "SHELL", 85} 86 87var Layer_Directive_value = map[string]int32{ 88 "DIRECTIVE_UNSPECIFIED": 0, 89 "MAINTAINER": 1, 90 "RUN": 2, 91 "CMD": 3, 92 "LABEL": 4, 93 "EXPOSE": 5, 94 "ENV": 6, 95 "ADD": 7, 96 "COPY": 8, 97 "ENTRYPOINT": 9, 98 "VOLUME": 10, 99 "USER": 11, 100 "WORKDIR": 12, 101 "ARG": 13, 102 "ONBUILD": 14, 103 "STOPSIGNAL": 15, 104 "HEALTHCHECK": 16, 105 "SHELL": 17, 106} 107 108func (x Layer_Directive) String() string { 109 return proto.EnumName(Layer_Directive_name, int32(x)) 110} 111 112func (Layer_Directive) EnumDescriptor() ([]byte, []int) { 113 return fileDescriptor_ab0486c83d3ae0f1, []int{0, 0} 114} 115 116// Layer holds metadata specific to a layer of a Docker image. 117type Layer struct { 118 // The recovered Dockerfile directive used to construct this layer. 119 Directive Layer_Directive `protobuf:"varint,1,opt,name=directive,proto3,enum=grafeas.v1beta1.image.Layer_Directive" json:"directive,omitempty"` 120 // The recovered arguments to the Dockerfile directive. 121 Arguments string `protobuf:"bytes,2,opt,name=arguments,proto3" json:"arguments,omitempty"` 122 XXX_NoUnkeyedLiteral struct{} `json:"-"` 123 XXX_unrecognized []byte `json:"-"` 124 XXX_sizecache int32 `json:"-"` 125} 126 127func (m *Layer) Reset() { *m = Layer{} } 128func (m *Layer) String() string { return proto.CompactTextString(m) } 129func (*Layer) ProtoMessage() {} 130func (*Layer) Descriptor() ([]byte, []int) { 131 return fileDescriptor_ab0486c83d3ae0f1, []int{0} 132} 133 134func (m *Layer) XXX_Unmarshal(b []byte) error { 135 return xxx_messageInfo_Layer.Unmarshal(m, b) 136} 137func (m *Layer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 138 return xxx_messageInfo_Layer.Marshal(b, m, deterministic) 139} 140func (m *Layer) XXX_Merge(src proto.Message) { 141 xxx_messageInfo_Layer.Merge(m, src) 142} 143func (m *Layer) XXX_Size() int { 144 return xxx_messageInfo_Layer.Size(m) 145} 146func (m *Layer) XXX_DiscardUnknown() { 147 xxx_messageInfo_Layer.DiscardUnknown(m) 148} 149 150var xxx_messageInfo_Layer proto.InternalMessageInfo 151 152func (m *Layer) GetDirective() Layer_Directive { 153 if m != nil { 154 return m.Directive 155 } 156 return Layer_DIRECTIVE_UNSPECIFIED 157} 158 159func (m *Layer) GetArguments() string { 160 if m != nil { 161 return m.Arguments 162 } 163 return "" 164} 165 166// A set of properties that uniquely identify a given Docker image. 167type Fingerprint struct { 168 // The layer-id of the final layer in the Docker image's v1 representation. 169 V1Name string `protobuf:"bytes,1,opt,name=v1_name,json=v1Name,proto3" json:"v1_name,omitempty"` 170 // The ordered list of v2 blobs that represent a given image. 171 V2Blob []string `protobuf:"bytes,2,rep,name=v2_blob,json=v2Blob,proto3" json:"v2_blob,omitempty"` 172 // Output only. The name of the image's v2 blobs computed via: 173 // [bottom] := v2_blob[bottom] 174 // [N] := sha256(v2_blob[N] + " " + v2_name[N+1]) 175 // Only the name of the final blob is kept. 176 V2Name string `protobuf:"bytes,3,opt,name=v2_name,json=v2Name,proto3" json:"v2_name,omitempty"` 177 XXX_NoUnkeyedLiteral struct{} `json:"-"` 178 XXX_unrecognized []byte `json:"-"` 179 XXX_sizecache int32 `json:"-"` 180} 181 182func (m *Fingerprint) Reset() { *m = Fingerprint{} } 183func (m *Fingerprint) String() string { return proto.CompactTextString(m) } 184func (*Fingerprint) ProtoMessage() {} 185func (*Fingerprint) Descriptor() ([]byte, []int) { 186 return fileDescriptor_ab0486c83d3ae0f1, []int{1} 187} 188 189func (m *Fingerprint) XXX_Unmarshal(b []byte) error { 190 return xxx_messageInfo_Fingerprint.Unmarshal(m, b) 191} 192func (m *Fingerprint) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 193 return xxx_messageInfo_Fingerprint.Marshal(b, m, deterministic) 194} 195func (m *Fingerprint) XXX_Merge(src proto.Message) { 196 xxx_messageInfo_Fingerprint.Merge(m, src) 197} 198func (m *Fingerprint) XXX_Size() int { 199 return xxx_messageInfo_Fingerprint.Size(m) 200} 201func (m *Fingerprint) XXX_DiscardUnknown() { 202 xxx_messageInfo_Fingerprint.DiscardUnknown(m) 203} 204 205var xxx_messageInfo_Fingerprint proto.InternalMessageInfo 206 207func (m *Fingerprint) GetV1Name() string { 208 if m != nil { 209 return m.V1Name 210 } 211 return "" 212} 213 214func (m *Fingerprint) GetV2Blob() []string { 215 if m != nil { 216 return m.V2Blob 217 } 218 return nil 219} 220 221func (m *Fingerprint) GetV2Name() string { 222 if m != nil { 223 return m.V2Name 224 } 225 return "" 226} 227 228// Basis describes the base image portion (Note) of the DockerImage 229// relationship. Linked occurrences are derived from this or an 230// equivalent image via: 231// FROM <Basis.resource_url> 232// Or an equivalent reference, e.g. a tag of the resource_url. 233type Basis struct { 234 // The resource_url for the resource representing the basis of 235 // associated occurrence images. 236 ResourceUrl string `protobuf:"bytes,1,opt,name=resource_url,json=resourceUrl,proto3" json:"resource_url,omitempty"` 237 // The fingerprint of the base image. 238 Fingerprint *Fingerprint `protobuf:"bytes,2,opt,name=fingerprint,proto3" json:"fingerprint,omitempty"` 239 XXX_NoUnkeyedLiteral struct{} `json:"-"` 240 XXX_unrecognized []byte `json:"-"` 241 XXX_sizecache int32 `json:"-"` 242} 243 244func (m *Basis) Reset() { *m = Basis{} } 245func (m *Basis) String() string { return proto.CompactTextString(m) } 246func (*Basis) ProtoMessage() {} 247func (*Basis) Descriptor() ([]byte, []int) { 248 return fileDescriptor_ab0486c83d3ae0f1, []int{2} 249} 250 251func (m *Basis) XXX_Unmarshal(b []byte) error { 252 return xxx_messageInfo_Basis.Unmarshal(m, b) 253} 254func (m *Basis) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 255 return xxx_messageInfo_Basis.Marshal(b, m, deterministic) 256} 257func (m *Basis) XXX_Merge(src proto.Message) { 258 xxx_messageInfo_Basis.Merge(m, src) 259} 260func (m *Basis) XXX_Size() int { 261 return xxx_messageInfo_Basis.Size(m) 262} 263func (m *Basis) XXX_DiscardUnknown() { 264 xxx_messageInfo_Basis.DiscardUnknown(m) 265} 266 267var xxx_messageInfo_Basis proto.InternalMessageInfo 268 269func (m *Basis) GetResourceUrl() string { 270 if m != nil { 271 return m.ResourceUrl 272 } 273 return "" 274} 275 276func (m *Basis) GetFingerprint() *Fingerprint { 277 if m != nil { 278 return m.Fingerprint 279 } 280 return nil 281} 282 283// Details of an image occurrence. 284type Details struct { 285 // The child image derived from the base image. 286 DerivedImage *Derived `protobuf:"bytes,1,opt,name=derived_image,json=derivedImage,proto3" json:"derived_image,omitempty"` 287 XXX_NoUnkeyedLiteral struct{} `json:"-"` 288 XXX_unrecognized []byte `json:"-"` 289 XXX_sizecache int32 `json:"-"` 290} 291 292func (m *Details) Reset() { *m = Details{} } 293func (m *Details) String() string { return proto.CompactTextString(m) } 294func (*Details) ProtoMessage() {} 295func (*Details) Descriptor() ([]byte, []int) { 296 return fileDescriptor_ab0486c83d3ae0f1, []int{3} 297} 298 299func (m *Details) XXX_Unmarshal(b []byte) error { 300 return xxx_messageInfo_Details.Unmarshal(m, b) 301} 302func (m *Details) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 303 return xxx_messageInfo_Details.Marshal(b, m, deterministic) 304} 305func (m *Details) XXX_Merge(src proto.Message) { 306 xxx_messageInfo_Details.Merge(m, src) 307} 308func (m *Details) XXX_Size() int { 309 return xxx_messageInfo_Details.Size(m) 310} 311func (m *Details) XXX_DiscardUnknown() { 312 xxx_messageInfo_Details.DiscardUnknown(m) 313} 314 315var xxx_messageInfo_Details proto.InternalMessageInfo 316 317func (m *Details) GetDerivedImage() *Derived { 318 if m != nil { 319 return m.DerivedImage 320 } 321 return nil 322} 323 324// Derived describes the derived image portion (Occurrence) of the DockerImage 325// relationship. This image would be produced from a Dockerfile with FROM 326// <DockerImage.Basis in attached Note>. 327type Derived struct { 328 // The fingerprint of the derived image. 329 Fingerprint *Fingerprint `protobuf:"bytes,1,opt,name=fingerprint,proto3" json:"fingerprint,omitempty"` 330 // Output only. The number of layers by which this image differs from the 331 // associated image basis. 332 Distance int32 `protobuf:"varint,2,opt,name=distance,proto3" json:"distance,omitempty"` 333 // This contains layer-specific metadata, if populated it has length 334 // "distance" and is ordered with [distance] being the layer immediately 335 // following the base image and [1] being the final layer. 336 LayerInfo []*Layer `protobuf:"bytes,3,rep,name=layer_info,json=layerInfo,proto3" json:"layer_info,omitempty"` 337 // Output only. This contains the base image URL for the derived image 338 // occurrence. 339 BaseResourceUrl string `protobuf:"bytes,4,opt,name=base_resource_url,json=baseResourceUrl,proto3" json:"base_resource_url,omitempty"` 340 XXX_NoUnkeyedLiteral struct{} `json:"-"` 341 XXX_unrecognized []byte `json:"-"` 342 XXX_sizecache int32 `json:"-"` 343} 344 345func (m *Derived) Reset() { *m = Derived{} } 346func (m *Derived) String() string { return proto.CompactTextString(m) } 347func (*Derived) ProtoMessage() {} 348func (*Derived) Descriptor() ([]byte, []int) { 349 return fileDescriptor_ab0486c83d3ae0f1, []int{4} 350} 351 352func (m *Derived) XXX_Unmarshal(b []byte) error { 353 return xxx_messageInfo_Derived.Unmarshal(m, b) 354} 355func (m *Derived) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 356 return xxx_messageInfo_Derived.Marshal(b, m, deterministic) 357} 358func (m *Derived) XXX_Merge(src proto.Message) { 359 xxx_messageInfo_Derived.Merge(m, src) 360} 361func (m *Derived) XXX_Size() int { 362 return xxx_messageInfo_Derived.Size(m) 363} 364func (m *Derived) XXX_DiscardUnknown() { 365 xxx_messageInfo_Derived.DiscardUnknown(m) 366} 367 368var xxx_messageInfo_Derived proto.InternalMessageInfo 369 370func (m *Derived) GetFingerprint() *Fingerprint { 371 if m != nil { 372 return m.Fingerprint 373 } 374 return nil 375} 376 377func (m *Derived) GetDistance() int32 { 378 if m != nil { 379 return m.Distance 380 } 381 return 0 382} 383 384func (m *Derived) GetLayerInfo() []*Layer { 385 if m != nil { 386 return m.LayerInfo 387 } 388 return nil 389} 390 391func (m *Derived) GetBaseResourceUrl() string { 392 if m != nil { 393 return m.BaseResourceUrl 394 } 395 return "" 396} 397 398func init() { 399 proto.RegisterEnum("grafeas.v1beta1.image.Layer_Directive", Layer_Directive_name, Layer_Directive_value) 400 proto.RegisterType((*Layer)(nil), "grafeas.v1beta1.image.Layer") 401 proto.RegisterType((*Fingerprint)(nil), "grafeas.v1beta1.image.Fingerprint") 402 proto.RegisterType((*Basis)(nil), "grafeas.v1beta1.image.Basis") 403 proto.RegisterType((*Details)(nil), "grafeas.v1beta1.image.Details") 404 proto.RegisterType((*Derived)(nil), "grafeas.v1beta1.image.Derived") 405} 406 407func init() { 408 proto.RegisterFile("google/devtools/containeranalysis/v1beta1/image/image.proto", fileDescriptor_ab0486c83d3ae0f1) 409} 410 411var fileDescriptor_ab0486c83d3ae0f1 = []byte{ 412 // 613 bytes of a gzipped FileDescriptorProto 413 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x93, 0xcf, 0x6e, 0xda, 0x40, 414 0x10, 0xc6, 0x6b, 0x08, 0x10, 0x8f, 0xf3, 0x67, 0xb3, 0x52, 0x54, 0x5a, 0x45, 0x15, 0xe5, 0x50, 415 0x45, 0x3d, 0x18, 0x41, 0x8f, 0x39, 0x01, 0xde, 0x04, 0x2b, 0x8e, 0x8d, 0x16, 0x93, 0x26, 0xbd, 416 0x58, 0x0b, 0x2c, 0xd6, 0x4a, 0xc6, 0x8b, 0xd6, 0x0e, 0x6a, 0x5e, 0xa7, 0xcf, 0xd4, 0x73, 0x9f, 417 0xa1, 0x8f, 0x50, 0x79, 0x21, 0x21, 0xad, 0x92, 0xaa, 0xea, 0x65, 0xb5, 0xcc, 0x37, 0xbf, 0x8f, 418 0xf1, 0xec, 0x0c, 0x9c, 0xc5, 0x52, 0xc6, 0x09, 0x6f, 0xcd, 0xf8, 0x2a, 0x97, 0x32, 0xc9, 0x5a, 419 0x53, 0x99, 0xe6, 0x4c, 0xa4, 0x5c, 0xb1, 0x94, 0x25, 0xf7, 0x99, 0xc8, 0x5a, 0xab, 0xf6, 0x84, 420 0xe7, 0xac, 0xdd, 0x12, 0x0b, 0x16, 0xf3, 0xf5, 0x69, 0x2f, 0x95, 0xcc, 0x25, 0x3e, 0x8e, 0x15, 421 0x9b, 0x73, 0x96, 0xd9, 0x9b, 0x14, 0x5b, 0x8b, 0xcd, 0x1f, 0x25, 0xa8, 0x78, 0xec, 0x9e, 0x2b, 422 0xec, 0x80, 0x39, 0x13, 0x8a, 0x4f, 0x73, 0xb1, 0xe2, 0x75, 0xa3, 0x61, 0x9c, 0x1e, 0x74, 0x3e, 423 0xd8, 0xcf, 0x42, 0xb6, 0x06, 0x6c, 0xe7, 0x21, 0x9b, 0x6e, 0x41, 0x7c, 0x02, 0x26, 0x53, 0xf1, 424 0xdd, 0x82, 0xa7, 0x79, 0x56, 0x2f, 0x35, 0x8c, 0x53, 0x93, 0x6e, 0x03, 0xcd, 0x9f, 0x06, 0x98, 425 0x8f, 0x18, 0x7e, 0x03, 0xc7, 0x8e, 0x4b, 0x49, 0x3f, 0x74, 0xaf, 0x49, 0x34, 0xf6, 0x47, 0x43, 426 0xd2, 0x77, 0xcf, 0x5d, 0xe2, 0xa0, 0x57, 0xf8, 0x00, 0xe0, 0xaa, 0xeb, 0xfa, 0x61, 0xd7, 0xf5, 427 0x09, 0x45, 0x06, 0xae, 0x41, 0x99, 0x8e, 0x7d, 0x54, 0x2a, 0x2e, 0xfd, 0x2b, 0x07, 0x95, 0xb1, 428 0x09, 0x15, 0xaf, 0xdb, 0x23, 0x1e, 0xda, 0xc1, 0x00, 0x55, 0x72, 0x33, 0x0c, 0x46, 0x04, 0x55, 429 0x0a, 0x9d, 0xf8, 0xd7, 0xa8, 0x5a, 0x5c, 0xba, 0x8e, 0x83, 0x6a, 0x78, 0x17, 0x76, 0xfa, 0xc1, 430 0xf0, 0x16, 0xed, 0x16, 0xa6, 0xc4, 0x0f, 0xe9, 0xed, 0x30, 0x70, 0xfd, 0x10, 0x99, 0x05, 0x77, 431 0x1d, 0x78, 0xe3, 0x2b, 0x82, 0xa0, 0xc8, 0x1a, 0x8f, 0x08, 0x45, 0x16, 0xb6, 0xa0, 0xf6, 0x39, 432 0xa0, 0x97, 0x8e, 0x4b, 0xd1, 0x9e, 0x76, 0xa1, 0x17, 0x68, 0xbf, 0x88, 0x06, 0x7e, 0x6f, 0xec, 433 0x7a, 0x0e, 0x3a, 0x28, 0x8c, 0x46, 0x61, 0x30, 0x1c, 0xb9, 0x17, 0x7e, 0xd7, 0x43, 0x87, 0xf8, 434 0x10, 0xac, 0x01, 0xe9, 0x7a, 0xe1, 0xa0, 0x3f, 0x20, 0xfd, 0x4b, 0x84, 0x8a, 0xe2, 0x46, 0x03, 435 0xe2, 0x79, 0xe8, 0xa8, 0x79, 0x03, 0xd6, 0xb9, 0x48, 0x63, 0xae, 0x96, 0x4a, 0xa4, 0x39, 0x7e, 436 0x0d, 0xb5, 0x55, 0x3b, 0x4a, 0xd9, 0x62, 0xdd, 0x63, 0x93, 0x56, 0x57, 0x6d, 0x9f, 0x2d, 0xb8, 437 0x16, 0x3a, 0xd1, 0x24, 0x91, 0x93, 0x7a, 0xa9, 0x51, 0xd6, 0x42, 0xa7, 0x97, 0xc8, 0xc9, 0x46, 438 0xd0, 0x44, 0x79, 0x43, 0x74, 0x0a, 0xa2, 0xb9, 0x84, 0x4a, 0x8f, 0x65, 0x22, 0xc3, 0xef, 0x61, 439 0x4f, 0xf1, 0x4c, 0xde, 0xa9, 0x29, 0x8f, 0xee, 0x54, 0xb2, 0x31, 0xb6, 0x1e, 0x62, 0x63, 0x95, 440 0x60, 0x07, 0xac, 0xf9, 0xb6, 0x0a, 0xfd, 0x30, 0x56, 0xa7, 0xf9, 0xc2, 0xf3, 0x3e, 0xa9, 0x97, 441 0x3e, 0xc5, 0x9a, 0x3e, 0xd4, 0x1c, 0x9e, 0x33, 0x91, 0x64, 0xb8, 0x0f, 0xfb, 0x33, 0xae, 0xc4, 442 0x8a, 0xcf, 0x22, 0x0d, 0xe9, 0x3f, 0xb5, 0x3a, 0xef, 0x5e, 0xb0, 0x74, 0xd6, 0xb9, 0x74, 0x6f, 443 0x03, 0xb9, 0x7a, 0xf8, 0xbe, 0x1b, 0x85, 0xa1, 0x0e, 0xfc, 0x59, 0xa1, 0xf1, 0x5f, 0x15, 0xe2, 444 0xb7, 0xb0, 0x3b, 0x13, 0x59, 0xce, 0xd2, 0x29, 0xd7, 0x1f, 0x59, 0xa1, 0x8f, 0xbf, 0xf1, 0x19, 445 0x40, 0x52, 0x0c, 0x6e, 0x24, 0xd2, 0xb9, 0xac, 0x97, 0x1b, 0xe5, 0x53, 0xab, 0x73, 0xf2, 0xb7, 446 0x09, 0xa7, 0xa6, 0xce, 0x77, 0xd3, 0xb9, 0xc4, 0x1f, 0xe1, 0x68, 0xc2, 0x32, 0x1e, 0xfd, 0xd6, 447 0xe8, 0x1d, 0xdd, 0xe8, 0xc3, 0x42, 0xa0, 0xdb, 0x66, 0xf7, 0xbe, 0x42, 0x5d, 0xc8, 0xe7, 0x8d, 448 0x87, 0xc6, 0x97, 0x70, 0xbd, 0xc5, 0x76, 0x2c, 0x13, 0x96, 0xc6, 0xb6, 0x54, 0x71, 0x2b, 0xe6, 449 0xa9, 0x5e, 0xd2, 0xd6, 0x5a, 0x62, 0x4b, 0x91, 0xfd, 0xf3, 0x92, 0x9f, 0xe9, 0xf3, 0x5b, 0xa9, 450 0x7c, 0x41, 0xbb, 0x93, 0xaa, 0xb6, 0xf9, 0xf4, 0x2b, 0x00, 0x00, 0xff, 0xff, 0xe8, 0x06, 0xe8, 451 0x32, 0x2a, 0x04, 0x00, 0x00, 452} 453