diff --git a/src/fujimn_int.cpp b/src/fujimn_int.cpp index 6b66df4d..7a8f9161 100644 --- a/src/fujimn_int.cpp +++ b/src/fujimn_int.cpp @@ -465,7 +465,6 @@ constexpr TagInfo FujiMakerNote::tagInfo_[] = { unsignedShort, -1, printValue}, {0x1154, "PanoramaDirection", N_("Panorama direction"), N_("Panorama direction"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiPanoramaDirection)}, - {0x1200, "0x1200", "0x1200", N_("Unknown"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, printValue}, {0x1201, "AdvancedFilter", N_("Advanced filter"), N_("Advanced filter setting"), IfdId::fujiId, SectionId::makerTags, unsignedLong, -1, EXV_PRINT_TAG(fujiAdvancedFilter)}, {0x1210, "FinePixColor", N_("FinePix Color"), N_("Fuji FinePix color setting"), IfdId::fujiId, SectionId::makerTags, @@ -496,7 +495,7 @@ constexpr TagInfo FujiMakerNote::tagInfo_[] = { SectionId::makerTags, unsignedShort, -1, printValue}, {0x1422, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, printValue}, - {0x1425, "SzeneRecognition", N_("Scene recognition"), N_("Scene recognition"), IfdId::fujiId, SectionId::makerTags, + {0x1425, "SceneRecognition", N_("Scene recognition"), N_("Scene recognition"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiSceneRecognition)}, {0x1431, "Rating", N_("Rating"), N_("Rating"), IfdId::fujiId, SectionId::makerTags, unsignedLong, -1, printValue}, {0x1436, "ImageGeneration", N_("Image Generation"), N_("Image generation"), IfdId::fujiId, SectionId::makerTags, @@ -532,81 +531,6 @@ constexpr TagInfo FujiMakerNote::tagInfo_[] = { {0x8003, "FrameNumber", N_("Frame Number"), N_("Frame number"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, printValue}, // #1402 - {0xf000, "FujiIFD", N_("FujiIFD"), N_("Fujifilm IFD"), IfdId::fujiId, SectionId::makerTags, undefined, -1, - printValue}, - {0xf001, "RawImageFullWidth", N_("Raw Image Full Width"), N_("Raw Image Full Width"), IfdId::fujiId, - SectionId::makerTags, undefined, -1, printValue}, - {0x1001, N_("Sharpness"), N_("Sharpness"), N_("Sharpness setting"), IfdId::fujiId, SectionId::makerTags, - unsignedShort, -1, EXV_PRINT_TAG(fujiSharpness)}, - {0x1002, "WhiteBalance", N_("White Balance"), N_("White balance setting"), IfdId::fujiId, SectionId::makerTags, - unsignedShort, -1, EXV_PRINT_TAG(fujiWhiteBalance)}, - {0x1003, "Color", N_("Color"), N_("Chroma saturation setting"), IfdId::fujiId, SectionId::makerTags, unsignedShort, - -1, EXV_PRINT_TAG(fujiColor)}, - {0x1004, "Tone", N_("Tone"), N_("Tone (contrast) setting"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, - EXV_PRINT_TAG(fujiTone)}, - {0x1010, "FlashMode", N_("Flash Mode"), N_("Flash firing mode setting"), IfdId::fujiId, SectionId::makerTags, - unsignedShort, -1, EXV_PRINT_TAG(fujiFlashMode)}, - {0x1011, "FlashStrength", N_("Flash Strength"), N_("Flash firing strength compensation setting"), IfdId::fujiId, - SectionId::makerTags, signedRational, -1, printValue}, - {0x1020, "Macro", N_("Macro"), N_("Macro mode setting"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, - EXV_PRINT_TAG(fujiOffOn)}, - {0x1021, "FocusMode", N_("Focus Mode"), N_("Focusing mode setting"), IfdId::fujiId, SectionId::makerTags, - unsignedShort, -1, EXV_PRINT_TAG(fujiFocusMode)}, - {0x1022, "0x1022", "0x1022", N_("Unknown"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, printValue}, - {0x1030, "SlowSync", N_("Slow Sync"), N_("Slow synchro mode setting"), IfdId::fujiId, SectionId::makerTags, - unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)}, - {0x1031, "PictureMode", N_("Picture Mode"), N_("Picture mode setting"), IfdId::fujiId, SectionId::makerTags, - unsignedShort, -1, EXV_PRINT_TAG(fujiPictureMode)}, - {0x1032, "0x1032", "0x1032", N_("Unknown"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, printValue}, - {0x1040, "ShadowTone", N_("Shadow Tone"), N_("Shadow tone"), IfdId::fujiId, SectionId::makerTags, signedLong, -1, - EXV_PRINT_TAG(fujiSHTone)}, - {0x1041, "HighlightTone", N_("Highlight Tone"), N_("Highlight tone"), IfdId::fujiId, SectionId::makerTags, - signedLong, -1, EXV_PRINT_TAG(fujiSHTone)}, - {0x104d, "CropMode", N_("Crop Mode"), N_("Crop mode"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, - EXV_PRINT_TAG(fujiCropMode)}, - {0x1100, "Continuous", N_("Continuous"), N_("Continuous shooting or auto bracketing setting"), IfdId::fujiId, - SectionId::makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiContinuous)}, - {0x1101, "SequenceNumber", N_("Sequence Number"), N_("Sequence number"), IfdId::fujiId, SectionId::makerTags, - unsignedShort, -1, printValue}, - {0x1200, "0x1200", "0x1200", N_("Unknown"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, printValue}, - {0x1210, "FinePixColor", N_("FinePix Color"), N_("Fuji FinePix color setting"), IfdId::fujiId, SectionId::makerTags, - unsignedShort, -1, EXV_PRINT_TAG(fujiFinePixColor)}, - {0x1300, "BlurWarning", N_("Blur Warning"), N_("Blur warning status"), IfdId::fujiId, SectionId::makerTags, - unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)}, - {0x1301, "FocusWarning", N_("Focus Warning"), N_("Auto Focus warning status"), IfdId::fujiId, SectionId::makerTags, - unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)}, - {0x1302, "ExposureWarning", N_("Exposure Warning"), N_("Auto exposure warning status"), IfdId::fujiId, - SectionId::makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)}, - {0x1400, "DynamicRange", N_("Dynamic Range"), N_("Dynamic range"), IfdId::fujiId, SectionId::makerTags, - unsignedShort, -1, EXV_PRINT_TAG(fujiDynamicRange)}, - {0x1401, "FilmMode", N_("Film Mode"), N_("Film mode"), IfdId::fujiId, SectionId::makerTags, unsignedShort, -1, - EXV_PRINT_TAG(fujiFilmMode)}, - {0x1402, "DynamicRangeSetting", N_("Dynamic Range Setting"), N_("Dynamic range settings"), IfdId::fujiId, - SectionId::makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiDynamicRangeSetting)}, - {0x1403, "DevelopmentDynamicRange", N_("Development Dynamic Range"), N_("Development dynamic range"), IfdId::fujiId, - SectionId::makerTags, unsignedShort, -1, printValue}, - {0x1404, "MinFocalLength", N_("Minimum Focal Length"), N_("Minimum focal length"), IfdId::fujiId, - SectionId::makerTags, unsignedRational, -1, printValue}, - {0x1405, "MaxFocalLength", N_("Maximum Focal Length"), N_("Maximum focal length"), IfdId::fujiId, - SectionId::makerTags, unsignedRational, -1, printValue}, - {0x1406, "MaxApertureAtMinFocal", N_("Maximum Aperture at Minimum Focal"), N_("Maximum aperture at minimum focal"), - IfdId::fujiId, SectionId::makerTags, unsignedRational, -1, printValue}, - {0x1407, "MaxApertureAtMaxFocal", N_("Maximum Aperture at Maximum Focal"), N_("Maximum aperture at maximum focal"), - IfdId::fujiId, SectionId::makerTags, unsignedRational, -1, printValue}, - {0x1431, "Rating", N_("Rating"), N_("Rating"), IfdId::fujiId, SectionId::makerTags, unsignedLong, -1, printValue}, - {0x1443, "DRangePriority", N_("D Range Priority"), N_("Dynamic range priority"), IfdId::fujiId, - SectionId::makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiDRangePriority)}, - {0x1444, "DRangePriorityFixed", N_("D Range Priority Fixed"), N_("Dynamic range priority fixed"), IfdId::fujiId, - SectionId::makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiDRangePriorityFixed)}, - {0x1445, "DRangePriorityAuto", N_("D Range Priority Auto"), N_("Dynamic range priority auto"), IfdId::fujiId, - SectionId::makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiDRangePriorityAuto)}, - {0x8000, "FileSource", N_("File Source"), N_("File source"), IfdId::fujiId, SectionId::makerTags, asciiString, -1, - printValue}, - {0x8002, "OrderNumber", N_("Order Number"), N_("Order number"), IfdId::fujiId, SectionId::makerTags, unsignedLong, - -1, printValue}, - {0x8003, "FrameNumber", N_("Frame Number"), N_("Frame number"), IfdId::fujiId, SectionId::makerTags, unsignedShort, - -1, printValue}, - // #1402 {0xf000, "FujiIFD", N_("FujiIFD"), N_("Fujifilm IFD"), IfdId::fujiId, SectionId::makerTags, undefined, -1, printValue}, {0xf001, "RawImageFullWidth", N_("Raw Image Full Width"), N_("Raw Image Full Width"), IfdId::fujiId, diff --git a/test/data/FujiFilmA850.exv b/test/data/FujiFilmA850.exv new file mode 100644 index 00000000..ed181936 Binary files /dev/null and b/test/data/FujiFilmA850.exv differ diff --git a/test/data/FujiFilmFinePixF550EXR.exv b/test/data/FujiFilmFinePixF550EXR.exv new file mode 100644 index 00000000..efb4b836 Binary files /dev/null and b/test/data/FujiFilmFinePixF550EXR.exv differ diff --git a/test/data/FujiSLP800.exv b/test/data/FujiSLP800.exv new file mode 100644 index 00000000..7d995733 Binary files /dev/null and b/test/data/FujiSLP800.exv differ diff --git a/test/data/test_reference_files/FujiFilmA850.exv.out b/test/data/test_reference_files/FujiFilmA850.exv.out new file mode 100644 index 00000000..e49a7023 --- /dev/null +++ b/test/data/test_reference_files/FujiFilmA850.exv.out @@ -0,0 +1,81 @@ +Exif.Image.Make Ascii 9 FUJIFILM FUJIFILM +Exif.Image.Model Ascii 19 A850 A850 +Exif.Image.Orientation Short 1 1 top, left +Exif.Image.XResolution Rational 1 72/1 72 +Exif.Image.YResolution Rational 1 72/1 72 +Exif.Image.ResolutionUnit Short 1 2 inch +Exif.Image.Software Ascii 42 Digital Camera FUJIFILM A850 Ver1.01 Digital Camera FUJIFILM A850 Ver1.01 +Exif.Image.DateTime Ascii 20 2008:06:25 13:55:33 2008:06:25 13:55:33 +Exif.Image.YCbCrPositioning Short 1 2 Co-sited +Exif.Image.Copyright Ascii 5 +Exif.Image.ExifTag Long 1 300 300 +Exif.Photo.ExposureTime Rational 1 10/8500 1/850 s +Exif.Photo.FNumber Rational 1 450/100 F4.5 +Exif.Photo.ExposureProgram Short 1 2 Auto +Exif.Photo.ISOSpeedRatings Short 1 100 100 +Exif.Photo.ExifVersion Undefined 4 48 50 50 48 2.20 +Exif.Photo.DateTimeOriginal Ascii 20 2008:06:25 13:55:33 2008:06:25 13:55:33 +Exif.Photo.DateTimeDigitized Ascii 20 2008:06:25 13:55:33 2008:06:25 13:55:33 +Exif.Photo.ComponentsConfiguration Undefined 4 1 2 3 0 YCbCr +Exif.Photo.CompressedBitsPerPixel Rational 1 40/10 4 +Exif.Photo.ShutterSpeedValue SRational 1 970/100 1/832 s +Exif.Photo.ApertureValue Rational 1 448/100 F4.7 +Exif.Photo.BrightnessValue SRational 1 500/100 5 +Exif.Photo.ExposureBiasValue SRational 1 0/100 0 EV +Exif.Photo.MaxApertureValue Rational 1 300/100 F2.8 +Exif.Photo.MeteringMode Short 1 5 Multi-segment +Exif.Photo.LightSource Short 1 0 Unknown +Exif.Photo.Flash Short 1 24 No, auto +Exif.Photo.FocalLength Rational 1 610/100 6.1 mm +Exif.Photo.MakerNote Undefined 330 70 85 74 73 70 73 76 77 12 0 0 0 22 0 0 0 7 0 4 0 0 0 48 49 51 48 16 0 2 0 32 0 0 0 26 1 0 0 0 16 2 0 8 0 0 0 58 1 0 0 1 16 3 0 1 0 0 0 3 0 0 0 2 16 3 0 1 0 0 0 0 0 0 0 3 16 3 0 1 0 0 0 0 0 0 0 16 16 3 0 1 0 0 0 0 0 0 0 17 16 10 0 1 0 0 0 66 1 0 0 32 16 3 0 1 0 0 0 0 0 0 0 33 16 3 0 1 0 0 0 0 0 0 0 34 16 3 0 1 0 0 0 0 0 0 0 35 16 3 0 2 0 0 0 96 6 200 4 48 16 3 0 1 0 0 0 0 0 0 0 49 16 3 0 1 0 0 0 6 0 0 0 50 16 3 0 1 0 0 0 1 0 0 0 0 17 3 0 1 0 0 0 0 0 0 0 1 17 3 0 1 0 0 0 0 0 0 0 0 18 3 0 1 0 0 0 0 0 0 0 16 18 3 0 1 0 0 0 0 0 0 0 0 19 3 0 1 0 0 0 0 0 0 0 1 19 3 0 1 0 0 0 0 0 0 0 2 19 3 0 1 0 0 0 0 0 0 0 0 0 0 0 52 49 52 49 50 68 51 56 52 68 50 48 48 56 48 54 48 52 65 57 55 53 56 84 76 48 48 52 48 51 32 0 70 73 78 69 32 32 32 0 0 0 0 0 3 0 0 0 70 85 74 73 70 73 76 77 12 0 0 0 22 0 0 0 7 0 4 0 0 0 48 49 51 48 16 0 2 0 32 0 0 0 26 1 0 0 0 16 2 0 8 0 0 0 58 1 0 0 1 16 3 0 1 0 0 0 3 0 0 0 2 16 3 0 1 0 0 0 0 0 0 0 3 16 3 0 1 0 0 0 0 0 0 0 16 16 3 0 1 0 0 0 0 0 0 0 17 16 10 0 1 0 0 0 66 1 0 0 32 16 3 0 1 0 0 0 0 0 0 0 33 16 3 0 1 0 0 0 0 0 0 0 34 16 3 0 1 0 0 0 0 0 0 0 35 16 3 0 2 0 0 0 96 6 200 4 48 16 3 0 1 0 0 0 0 0 0 0 49 16 3 0 1 0 0 0 6 0 0 0 50 16 3 0 1 0 0 0 1 0 0 0 0 17 3 0 1 0 0 0 0 0 0 0 1 17 3 0 1 0 0 0 0 0 0 0 0 18 3 0 1 0 0 0 0 0 0 0 16 18 3 0 1 0 0 0 0 0 0 0 0 19 3 0 1 0 0 0 0 0 0 0 1 19 3 0 1 0 0 0 0 0 0 0 2 19 3 0 1 0 0 0 0 0 0 0 0 0 0 0 52 49 52 49 50 68 51 56 52 68 50 48 48 56 48 54 48 52 65 57 55 53 56 84 76 48 48 52 48 51 32 0 70 73 78 69 32 32 32 0 0 0 0 0 3 0 0 0 +Exif.MakerNote.Offset Long 1 850 850 +Exif.MakerNote.ByteOrder Ascii 3 II II +Exif.Fujifilm.Version Undefined 4 48 49 51 48 48 49 51 48 +Exif.Fujifilm.SerialNumber Ascii 32 41412D384D20080604A9758TL00403 41412D384D20080604A9758TL00403 +Exif.Fujifilm.Quality Ascii 8 FINE FINE +Exif.Fujifilm.Sharpness Short 1 3 0 (normal) +Exif.Fujifilm.WhiteBalance Short 1 0 Auto +Exif.Fujifilm.Color Short 1 0 0 (normal) +Exif.Fujifilm.FlashMode Short 1 0 Auto +Exif.Fujifilm.FlashStrength SRational 1 0/3 0/3 +Exif.Fujifilm.Macro Short 1 0 Off +Exif.Fujifilm.FocusMode Short 1 0 Auto +Exif.Fujifilm.FocusArea Short 1 0 Wide +Exif.Fujifilm.FocusPoint Short 2 1632 1224 1632 1224 +Exif.Fujifilm.SlowSync Short 1 0 Off +Exif.Fujifilm.PictureMode Short 1 6 Program AE +Exif.Fujifilm.ExposureCount Short 1 1 1 +Exif.Fujifilm.Continuous Short 1 0 Off +Exif.Fujifilm.SequenceNumber Short 1 0 0 +Exif.Fujifilm.FinePixColor Short 1 0 Standard +Exif.Fujifilm.BlurWarning Short 1 0 Off +Exif.Fujifilm.FocusWarning Short 1 0 Off +Exif.Fujifilm.ExposureWarning Short 1 0 Off +Exif.Photo.FlashpixVersion Undefined 4 48 49 48 48 1.00 +Exif.Photo.ColorSpace Short 1 1 sRGB +Exif.Photo.PixelXDimension Long 1 3264 3264 +Exif.Photo.PixelYDimension Long 1 2448 2448 +Exif.Photo.InteroperabilityTag Long 1 1196 1196 +Exif.Iop.InteroperabilityIndex Ascii 4 R98 R98 +Exif.Iop.InteroperabilityVersion Undefined 4 48 49 48 48 1.00 +Exif.Photo.FocalPlaneXResolution Rational 1 6129/1 6129 +Exif.Photo.FocalPlaneYResolution Rational 1 6129/1 6129 +Exif.Photo.FocalPlaneResolutionUnit Short 1 3 cm +Exif.Photo.SensingMethod Short 1 2 One-chip color area +Exif.Photo.FileSource Undefined 1 3 Digital still camera +Exif.Photo.SceneType Undefined 1 1 Directly photographed +Exif.Photo.CustomRendered Short 1 0 Normal process +Exif.Photo.ExposureMode Short 1 0 Auto +Exif.Photo.WhiteBalance Short 1 0 Auto +Exif.Photo.SceneCaptureType Short 1 0 Standard +Exif.Photo.Sharpness Short 1 0 Normal +Exif.Photo.SubjectDistanceRange Short 1 0 Unknown +Exif.Image.PrintImageMatching Undefined 28 80 114 105 110 116 73 77 0 48 50 53 48 0 0 2 0 2 0 1 0 0 0 1 1 0 0 0 0 80 114 105 110 116 73 77 0 48 50 53 48 0 0 2 0 2 0 1 0 0 0 1 1 0 0 0 0 +Exif.Thumbnail.Compression Short 1 6 JPEG (old-style) +Exif.Thumbnail.Orientation Short 1 1 top, left +Exif.Thumbnail.XResolution Rational 1 72/1 72 +Exif.Thumbnail.YResolution Rational 1 72/1 72 +Exif.Thumbnail.ResolutionUnit Short 1 2 inch +Exif.Thumbnail.JPEGInterchangeFormat Long 1 1344 1344 +Exif.Thumbnail.JPEGInterchangeFormatLength Long 1 7906 7906 +Exif.Thumbnail.YCbCrPositioning Short 1 2 Co-sited diff --git a/test/data/test_reference_files/FujiFilmFinePixF550EXR.exv.out b/test/data/test_reference_files/FujiFilmFinePixF550EXR.exv.out new file mode 100644 index 00000000..78bb7e3d --- /dev/null +++ b/test/data/test_reference_files/FujiFilmFinePixF550EXR.exv.out @@ -0,0 +1,94 @@ +Exif.Image.Make Ascii 9 FUJIFILM FUJIFILM +Exif.Image.Model Ascii 16 FinePix F550EXR FinePix F550EXR +Exif.Image.Orientation Short 1 1 top, left +Exif.Image.XResolution Rational 1 72/1 72 +Exif.Image.YResolution Rational 1 72/1 72 +Exif.Image.ResolutionUnit Short 1 2 inch +Exif.Image.Software Ascii 39 Digital Camera FinePix F550EXR Ver1.00 Digital Camera FinePix F550EXR Ver1.00 +Exif.Image.DateTime Ascii 20 2011:01:01 04:47:23 2011:01:01 04:47:23 +Exif.Image.YCbCrPositioning Short 1 2 Co-sited +Exif.Image.Copyright Ascii 5 +Exif.Image.ExifTag Long 1 294 294 +Exif.Photo.ExposureTime Rational 1 10/420 1/42 s +Exif.Photo.FNumber Rational 1 350/100 F3.5 +Exif.Photo.ExposureProgram Short 1 7 Portrait mode +Exif.Photo.ISOSpeedRatings Short 1 100 100 +Exif.Photo.SensitivityType Short 1 1 1 +Exif.Photo.ExifVersion Undefined 4 48 50 51 48 2.30 +Exif.Photo.DateTimeOriginal Ascii 20 2011:01:01 04:47:23 2011:01:01 04:47:23 +Exif.Photo.DateTimeDigitized Ascii 20 2011:01:01 04:47:23 2011:01:01 04:47:23 +Exif.Photo.ComponentsConfiguration Undefined 4 1 2 3 0 YCbCr +Exif.Photo.CompressedBitsPerPixel Rational 1 40/10 4 +Exif.Photo.ShutterSpeedValue SRational 1 540/100 1/42 s +Exif.Photo.ApertureValue Rational 1 360/100 F3.5 +Exif.Photo.BrightnessValue SRational 1 410/100 4.1 +Exif.Photo.ExposureBiasValue SRational 1 0/100 0 EV +Exif.Photo.MaxApertureValue Rational 1 360/100 F3.5 +Exif.Photo.MeteringMode Short 1 5 Multi-segment +Exif.Photo.LightSource Short 1 0 Unknown +Exif.Photo.Flash Short 1 16 No, compulsory +Exif.Photo.FocalLength Rational 1 440/100 4.4 mm +Exif.Photo.MakerNote Undefined 3350 70 85 74 73 70 73 76 77 12 0 0 0 87 0 0 0 7 0 4 0 0 0 48 49 51 48 16 0 2 0 48 0 0 0 38 4 0 0 0 16 2 0 8 0 0 0 86 4 0 0 1 16 3 0 1 0 0 0 3 0 0 0 2 16 3 0 1 0 0 0 0 0 0 0 16 16 3 0 1 0 0 0 2 0 0 0 17 16 10 0 1 0 0 0 94 4 0 0 32 16 3 0 1 0 0 0 0 0 0 0 33 16 3 0 1 0 0 0 0 0 0 0 34 16 3 0 1 0 0 0 1 0 0 0 35 16 3 0 2 0 0 0 128 4 96 3 38 16 3 0 1 0 0 0 16 0 0 0 40 16 3 0 1 0 0 0 0 0 0 0 48 16 3 0 1 0 0 0 0 0 0 0 49 16 3 0 1 0 0 0 0 0 0 0 50 16 3 0 1 0 0 0 1 0 0 0 51 16 3 0 1 0 0 0 0 0 0 0 52 16 3 0 1 0 0 0 0 3 0 0 66 16 3 0 1 0 0 0 14 0 0 0 67 16 3 0 1 0 0 0 19 0 0 0 0 17 3 0 1 0 0 0 0 0 0 0 1 17 3 0 1 0 0 0 0 0 0 0 0 18 3 0 1 0 0 0 0 0 0 0 0 19 3 0 1 0 0 0 0 0 0 0 1 19 3 0 1 0 0 0 0 0 0 0 2 19 3 0 1 0 0 0 0 0 0 0 3 19 3 0 1 0 0 0 0 0 0 0 4 19 3 0 1 0 0 0 0 0 0 0 5 19 3 0 1 0 0 0 0 0 0 0 0 20 3 0 1 0 0 0 1 0 0 0 2 20 3 0 1 0 0 0 0 0 0 0 8 20 7 0 4 0 0 0 48 50 48 48 9 20 7 0 4 0 0 0 48 49 48 48 10 20 3 0 1 0 0 0 7 0 0 0 11 20 3 0 1 0 0 0 200 0 0 0 12 20 7 0 4 0 0 0 48 49 48 48 34 20 3 0 3 0 0 0 102 4 0 0 37 20 3 0 1 0 0 0 0 1 0 0 39 20 3 0 1 0 0 0 1 0 0 0 40 20 7 0 2 0 0 0 16 0 0 0 48 20 7 0 129 0 0 0 108 4 0 0 49 20 4 0 1 0 0 0 0 0 0 0 0 64 1 0 1 0 0 0 0 0 0 0 1 64 1 0 1 0 0 0 0 0 0 0 2 64 3 0 1 0 0 0 208 3 0 0 3 64 3 0 1 0 0 0 65 4 0 0 4 64 1 0 1 0 0 0 41 0 0 0 5 64 3 0 4 0 0 0 238 4 0 0 6 64 3 0 1 0 0 0 21 0 0 0 7 64 1 0 1 0 0 0 0 0 0 0 0 65 3 0 1 0 0 0 1 0 0 0 1 65 1 0 1 0 0 0 1 0 0 0 2 65 1 0 1 0 0 0 4 0 0 0 3 65 3 0 4 0 0 0 246 4 0 0 4 65 3 0 4 0 0 0 254 4 0 0 5 65 3 0 1 0 0 0 0 0 0 0 128 65 3 0 1 0 0 0 20 0 0 0 129 65 1 0 1 0 0 0 0 0 0 0 0 66 3 0 1 0 0 0 1 0 0 0 1 66 3 0 1 0 0 0 1 0 0 0 2 66 1 0 1 0 0 0 4 0 0 0 3 66 3 0 4 0 0 0 6 5 0 0 4 66 3 0 4 0 0 0 14 5 0 0 5 66 3 0 1 0 0 0 0 0 0 0 8 66 4 0 1 0 0 0 23 0 0 0 128 66 3 0 1 0 0 0 20 0 0 0 129 66 3 0 1 0 0 0 0 0 0 0 0 69 7 0 4 0 0 0 48 49 48 48 16 69 3 0 1 0 0 0 0 0 0 0 32 69 1 0 1 0 0 0 1 0 0 0 33 69 4 0 1 0 0 0 0 0 0 0 34 69 1 0 1 0 0 0 0 0 0 0 35 69 1 0 1 0 0 0 0 0 0 0 36 69 4 0 1 0 0 0 0 0 0 0 37 69 7 0 1 0 0 0 0 0 0 0 38 69 5 0 3 0 0 0 22 5 0 0 39 69 7 0 1 0 0 0 0 0 0 0 40 69 5 0 3 0 0 0 46 5 0 0 41 69 4 0 1 0 0 0 0 0 0 0 42 69 7 0 144 1 0 0 70 5 0 0 43 69 7 0 200 0 0 0 214 6 0 0 44 69 7 0 200 0 0 0 158 7 0 0 45 69 7 0 200 0 0 0 102 8 0 0 46 69 7 0 144 1 0 0 46 9 0 0 47 69 7 0 200 0 0 0 190 10 0 0 48 69 7 0 200 0 0 0 134 11 0 0 49 69 7 0 200 0 0 0 78 12 0 0 0 0 0 0 70 67 32 32 65 56 50 48 50 51 48 56 32 32 32 32 32 53 57 50 68 51 54 51 50 51 56 51 49 49 49 48 49 50 57 69 54 48 51 49 48 50 52 48 51 51 65 0 70 73 78 69 32 32 32 0 0 0 0 0 100 0 0 0 2 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 214 5 59 1 142 6 243 1 243 5 60 1 167 6 243 1 56 169 208 46 56 189 237 73 243 5 60 1 167 6 243 1 56 169 208 46 56 189 237 73 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 100 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 70 85 74 73 70 73 76 77 12 0 0 0 87 0 0 0 7 0 4 0 0 0 48 49 51 48 16 0 2 0 48 0 0 0 38 4 0 0 0 16 2 0 8 0 0 0 86 4 0 0 1 16 3 0 1 0 0 0 3 0 0 0 2 16 3 0 1 0 0 0 0 0 0 0 16 16 3 0 1 0 0 0 2 0 0 0 17 16 10 0 1 0 0 0 94 4 0 0 32 16 3 0 1 0 0 0 0 0 0 0 33 16 3 0 1 0 0 0 0 0 0 0 34 16 3 0 1 0 0 0 1 0 0 0 35 16 3 0 2 0 0 0 128 4 96 3 38 16 3 0 1 0 0 0 16 0 0 0 40 16 3 0 1 0 0 0 0 0 0 0 48 16 3 0 1 0 0 0 0 0 0 0 49 16 3 0 1 0 0 0 0 0 0 0 50 16 3 0 1 0 0 0 1 0 0 0 51 16 3 0 1 0 0 0 0 0 0 0 52 16 3 0 1 0 0 0 0 3 0 0 66 16 3 0 1 0 0 0 14 0 0 0 67 16 3 0 1 0 0 0 19 0 0 0 0 17 3 0 1 0 0 0 0 0 0 0 1 17 3 0 1 0 0 0 0 0 0 0 0 18 3 0 1 0 0 0 0 0 0 0 0 19 3 0 1 0 0 0 0 0 0 0 1 19 3 0 1 0 0 0 0 0 0 0 2 19 3 0 1 0 0 0 0 0 0 0 3 19 3 0 1 0 0 0 0 0 0 0 4 19 3 0 1 0 0 0 0 0 0 0 5 19 3 0 1 0 0 0 0 0 0 0 0 20 3 0 1 0 0 0 1 0 0 0 2 20 3 0 1 0 0 0 0 0 0 0 8 20 7 0 4 0 0 0 48 50 48 48 9 20 7 0 4 0 0 0 48 49 48 48 10 20 3 0 1 0 0 0 7 0 0 0 11 20 3 0 1 0 0 0 200 0 0 0 12 20 7 0 4 0 0 0 48 49 48 48 34 20 3 0 3 0 0 0 102 4 0 0 37 20 3 0 1 0 0 0 0 1 0 0 39 20 3 0 1 0 0 0 1 0 0 0 40 20 7 0 2 0 0 0 16 0 0 0 48 20 7 0 129 0 0 0 108 4 0 0 49 20 4 0 1 0 0 0 0 0 0 0 0 64 1 0 1 0 0 0 0 0 0 0 1 64 1 0 1 0 0 0 0 0 0 0 2 64 3 0 1 0 0 0 208 3 0 0 3 64 3 0 1 0 0 0 65 4 0 0 4 64 1 0 1 0 0 0 41 0 0 0 5 64 3 0 4 0 0 0 238 4 0 0 6 64 3 0 1 0 0 0 21 0 0 0 7 64 1 0 1 0 0 0 0 0 0 0 0 65 3 0 1 0 0 0 1 0 0 0 1 65 1 0 1 0 0 0 1 0 0 0 2 65 1 0 1 0 0 0 4 0 0 0 3 65 3 0 4 0 0 0 246 4 0 0 4 65 3 0 4 0 0 0 254 4 0 0 5 65 3 0 1 0 0 0 0 0 0 0 128 65 3 0 1 0 0 0 20 0 0 0 129 65 1 0 1 0 0 0 0 0 0 0 0 66 3 0 1 0 0 0 1 0 0 0 1 66 3 0 1 0 0 0 1 0 0 0 2 66 1 0 1 0 0 0 4 0 0 0 3 66 3 0 4 0 0 0 6 5 0 0 4 66 3 0 4 0 0 0 14 5 0 0 5 66 3 0 1 0 0 0 0 0 0 0 8 66 4 0 1 0 0 0 23 0 0 0 128 66 3 0 1 0 0 0 20 0 0 0 129 66 3 0 1 0 0 0 0 0 0 0 0 69 7 0 4 0 0 0 48 49 48 48 16 69 3 0 1 0 0 0 0 0 0 0 32 69 1 0 1 0 0 0 1 0 0 0 33 69 4 0 1 0 0 0 0 0 0 0 34 69 1 0 1 0 0 0 0 0 0 0 35 69 1 0 1 0 0 0 0 0 0 0 36 69 4 0 1 0 0 0 0 0 0 0 37 69 7 0 1 0 0 0 0 0 0 0 38 69 5 0 3 0 0 0 22 5 0 0 39 69 7 0 1 0 0 0 0 0 0 0 40 69 5 0 3 0 0 0 46 5 0 0 41 69 4 0 1 0 0 0 0 0 0 0 42 69 7 0 144 1 0 0 70 5 0 0 43 69 7 0 200 0 0 0 214 6 0 0 44 69 7 0 200 0 0 0 158 7 0 0 45 69 7 0 200 0 0 0 102 8 0 0 46 69 7 0 144 1 0 0 46 9 0 0 47 69 7 0 200 0 0 0 190 10 0 0 48 69 7 0 200 0 0 0 134 11 0 0 49 69 7 0 200 0 0 0 78 12 0 0 0 0 0 0 70 67 32 32 65 56 50 48 50 51 48 56 32 32 32 32 32 53 57 50 68 51 54 51 50 51 56 51 49 49 49 48 49 50 57 69 54 48 51 49 48 50 52 48 51 51 65 0 70 73 78 69 32 32 32 0 0 0 0 0 100 0 0 0 2 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 214 5 59 1 142 6 243 1 243 5 60 1 167 6 243 1 56 169 208 46 56 189 237 73 243 5 60 1 167 6 243 1 56 169 208 46 56 189 237 73 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 100 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +Exif.MakerNote.Offset Long 1 856 856 +Exif.MakerNote.ByteOrder Ascii 3 II II +Exif.Fujifilm.Version Undefined 4 48 49 51 48 48 49 51 48 +Exif.Fujifilm.SerialNumber Ascii 48 FC A8202308 592D36323831110129E6031024033A FC A8202308 592D36323831110129E6031024033A +Exif.Fujifilm.Quality Ascii 8 FINE FINE +Exif.Fujifilm.Sharpness Short 1 3 0 (normal) +Exif.Fujifilm.WhiteBalance Short 1 0 Auto +Exif.Fujifilm.FlashMode Short 1 2 Off +Exif.Fujifilm.FlashStrength SRational 1 0/100 0/100 +Exif.Fujifilm.Macro Short 1 0 Off +Exif.Fujifilm.FocusMode Short 1 0 Auto +Exif.Fujifilm.FocusArea Short 1 1 Single Point +Exif.Fujifilm.FocusPoint Short 2 1152 864 1152 864 +Exif.Fujifilm.SlowSync Short 1 0 Off +Exif.Fujifilm.PictureMode Short 1 0 Auto +Exif.Fujifilm.ExposureCount Short 1 1 1 +Exif.Fujifilm.EXRAuto Short 1 0 Off +Exif.Fujifilm.EXRMode Short 1 768 DR (Dynamic Range priority) +Exif.Fujifilm.Continuous Short 1 0 Off +Exif.Fujifilm.SequenceNumber Short 1 0 0 +Exif.Fujifilm.BlurWarning Short 1 0 Off +Exif.Fujifilm.FocusWarning Short 1 0 Off +Exif.Fujifilm.ExposureWarning Short 1 0 Off +Exif.Fujifilm.DynamicRange Short 1 1 Standard +Exif.Fujifilm.DynamicRangeSetting Short 1 0 Auto +Exif.Fujifilm.AutoDynamicRange Short 1 200 200 +Exif.Fujifilm.ImageStabilization Short 3 2 1 0 2 1 0 +Exif.Fujifilm.SceneRecognition Short 1 256 Portrait Image +Exif.Fujifilm.Rating Long 1 0 0 +Exif.Fujifilm.FaceElementSelected Short 4 1494 315 1678 499 1494 315 1678 499 +Exif.Fujifilm.FacesDetected Short 1 1 1 +Exif.Fujifilm.FacePositions Short 4 1523 316 1703 499 1523 316 1703 499 +Exif.Fujifilm.NumberFaceElements Short 1 1 1 +Exif.Fujifilm.FaceElementTypes Short 1 1 Face +Exif.Fujifilm.FaceElementPositions Short 4 1523 316 1703 499 1523 316 1703 499 +Exif.Photo.FlashpixVersion Undefined 4 48 49 48 48 1.00 +Exif.Photo.ColorSpace Short 1 1 sRGB +Exif.Photo.PixelXDimension Long 1 2304 2304 +Exif.Photo.PixelYDimension Long 1 1728 1728 +Exif.Photo.InteroperabilityTag Long 1 4222 4222 +Exif.Iop.InteroperabilityIndex Ascii 4 R98 R98 +Exif.Iop.InteroperabilityVersion Undefined 4 48 49 48 48 1.00 +Exif.Photo.FocalPlaneXResolution Rational 1 3584/1 3584 +Exif.Photo.FocalPlaneYResolution Rational 1 3584/1 3584 +Exif.Photo.FocalPlaneResolutionUnit Short 1 3 cm +Exif.Photo.SensingMethod Short 1 2 One-chip color area +Exif.Photo.FileSource Undefined 1 3 Digital still camera +Exif.Photo.SceneType Undefined 1 1 Directly photographed +Exif.Photo.CustomRendered Short 1 0 Normal process +Exif.Photo.ExposureMode Short 1 0 Auto +Exif.Photo.WhiteBalance Short 1 0 Auto +Exif.Photo.SceneCaptureType Short 1 2 Portrait +Exif.Photo.Sharpness Short 1 0 Normal +Exif.Photo.SubjectDistanceRange Short 1 0 Unknown +Exif.Image.PrintImageMatching Undefined 28 80 114 105 110 116 73 77 0 48 50 53 48 0 0 2 0 2 0 1 0 0 0 1 1 0 0 0 0 80 114 105 110 116 73 77 0 48 50 53 48 0 0 2 0 2 0 1 0 0 0 1 1 0 0 0 0 +Exif.Thumbnail.Compression Short 1 6 JPEG (old-style) +Exif.Thumbnail.Orientation Short 1 1 top, left +Exif.Thumbnail.XResolution Rational 1 72/1 72 +Exif.Thumbnail.YResolution Rational 1 72/1 72 +Exif.Thumbnail.ResolutionUnit Short 1 2 inch +Exif.Thumbnail.JPEGInterchangeFormat Long 1 4370 4370 +Exif.Thumbnail.JPEGInterchangeFormatLength Long 1 10580 10580 +Exif.Thumbnail.YCbCrPositioning Short 1 2 Co-sited diff --git a/test/data/test_reference_files/FujiSLP800.exv.out b/test/data/test_reference_files/FujiSLP800.exv.out new file mode 100644 index 00000000..61a23489 --- /dev/null +++ b/test/data/test_reference_files/FujiSLP800.exv.out @@ -0,0 +1,37 @@ +Exif.Image.Make Ascii 26 FUJI PHOTO FILM CO., LTD. FUJI PHOTO FILM CO., LTD. +Exif.Image.Model Ascii 7 SLP800 SLP800 +Exif.Image.Orientation Short 1 1 top, left +Exif.Image.XResolution Rational 1 720000/10000 72 +Exif.Image.YResolution Rational 1 720000/10000 72 +Exif.Image.ResolutionUnit Short 1 2 inch +Exif.Image.Software Ascii 34 FDi V4.5 / FRONTIER330-2.0-0E-213 FDi V4.5 / FRONTIER330-2.0-0E-213 +Exif.Image.DateTime Ascii 20 2004:05:04 11:03:34 2004:05:04 11:03:34 +Exif.Image.YCbCrPositioning Short 1 1 Centered +Exif.Image.ExifTag Long 1 238 238 +Exif.Photo.ExifVersion Undefined 4 48 50 49 48 2.10 +Exif.Photo.DateTimeOriginal Ascii 20 : : : : : : : : +Exif.Photo.DateTimeDigitized Ascii 20 2004:05:04 11:03:34 2004:05:04 11:03:34 +Exif.Photo.ComponentsConfiguration Undefined 4 1 2 3 0 YCbCr +Exif.Photo.MakerNote Undefined 96 70 85 74 73 70 73 76 77 12 0 0 0 6 0 0 0 7 0 4 0 0 0 48 49 51 48 0 128 2 0 6 0 0 0 90 0 0 0 2 128 4 0 1 0 0 0 157 151 8 0 3 128 3 0 1 0 0 0 21 0 0 0 32 128 3 0 1 0 0 0 1 0 0 0 33 128 3 0 1 0 0 0 3 0 0 0 0 0 0 0 49 51 53 95 67 0 70 85 74 73 70 73 76 77 12 0 0 0 6 0 0 0 7 0 4 0 0 0 48 49 51 48 0 128 2 0 6 0 0 0 90 0 0 0 2 128 4 0 1 0 0 0 157 151 8 0 3 128 3 0 1 0 0 0 21 0 0 0 32 128 3 0 1 0 0 0 1 0 0 0 33 128 3 0 1 0 0 0 3 0 0 0 0 0 0 0 49 51 53 95 67 0 +Exif.MakerNote.Offset Long 1 452 452 +Exif.MakerNote.ByteOrder Ascii 3 II II +Exif.Fujifilm.Version Undefined 4 48 49 51 48 48 49 51 48 +Exif.Fujifilm.FileSource Ascii 6 135_C 135_C +Exif.Fujifilm.OrderNumber Long 1 563101 563101 +Exif.Fujifilm.FrameNumber Short 1 21 21 +Exif.Photo.FlashpixVersion Undefined 4 48 49 48 48 1.00 +Exif.Photo.ColorSpace Short 1 1 sRGB +Exif.Photo.PixelXDimension Long 1 1840 1840 +Exif.Photo.PixelYDimension Long 1 1232 1232 +Exif.Photo.InteroperabilityTag Long 1 548 548 +Exif.Iop.InteroperabilityIndex Ascii 4 R98 R98 +Exif.Iop.InteroperabilityVersion Undefined 4 48 49 48 48 1.00 +Exif.Photo.FileSource Undefined 1 3 Digital still camera +Exif.Photo.SceneType Undefined 1 1 Directly photographed +Exif.Thumbnail.Compression Short 1 6 JPEG (old-style) +Exif.Thumbnail.Orientation Short 1 1 top, left +Exif.Thumbnail.XResolution Rational 1 720000/10000 72 +Exif.Thumbnail.YResolution Rational 1 720000/10000 72 +Exif.Thumbnail.ResolutionUnit Short 1 2 inch +Exif.Thumbnail.JPEGInterchangeFormat Long 1 684 684 +Exif.Thumbnail.JPEGInterchangeFormatLength Long 1 10314 10314